Home

serial port protocol studio

image

Contents

1. COM port protocol files contain the implementation of a serial port communication protocol This protocol file describes the relationship between the action generated from or to the player and the strings sent on the serial port cable This implementation is described as an XML document representing a finite state machine and associated transitions The inputs to this state machine are e Requests to initiate a new control action for instance request to power off the display e Characters received on the serial port e Timer expirations The outputs are e Characters sent out to the controlled device e Actions for interactivity content trigged by the serial port e Logs depending on the input on the serial port The relationship between the inputs and the output is described using a finite state machine The XML description is made of a list of states Each state may have a list of actions to be performed on entering or leaving the state and must contain at least one transition Transitions from one state to another are based on an input and may contain a list of actions to be performed when the transition is taken that is after the out actions for the current state and before the actions of the new state Document structure lt protocol gt This is the top level element it must be in the Spinetix namespace http www spinetix com namespace 1 0 spx The mandatory target attribute specifies the type of target controlled
2. gotos transmit poweroff gt onStart command MuteOn goto transmit_muteon gt onStart command MuteOff gotos transmit muteoff gt onStart command SelectInput goto select input start set var Input to PARAM1 gt onStart onStart command SetVolume goto transmit_vol gt set var Volume to d PARAM1 60 100 gt onStart state It will lead to the following set of commands visible on the SPP Studio E XX gt 8 iD Open Settings Restart Clear Log Log Level PowerOn PowerOff i MuteOn MuteOf Selectlnput Set Volume Parameters Pressing any button is equivalent to sending the command using the lt auxCmd gt on the HMP100 For instance e The PowerOn button is equivalent to the execution of an SVG file including the element auxCmd target monitor command PowerOn gt e The SetVolume button with a value of 50 in the first parameters text box is equivalent to the execution of an SVG file including the element lt auxCmd target monitor command SetVolume paraml 50 gt Checking the files With SPP Studio you can see the characters which are sent and received on the RS232 interface The Dialog between the PC and the appliance is shown just under the parameters input The characters sent to the appliance are shown in blue The characters sent from the appliance are shown in italic black Non printable characters are shown using their ch
3. Protocols drop box By default only a limited number of protocol files are pre loaded on the HMP100 To add a new protocol for your screen follow the step below e Create a protocol file as described in the previous section e Use the Upload Protocol File to store it on the HMP100 You can store as many protocol file as you wish on the device but only one of them can be activated at the time e Select the protocol file you want to use in the Protocols drop box You can choose to use either pre loaded files designed by SpinetiX identified by the prefix sys before the name of the protocol or files that you have uploaded using the Upload function Configuring IOs The drop down menu below shows an HMP100 s configuration where the following protocol files can be selected 18 SpinetiX Technical Documentation Serial Port v2 1 No protocol files the RS232 interface is disabled disabled A system version of the Sharp Aquos protocol sys sharp aquos An uploaded protocol file for the LG LF65 screen LG LF65 An uploaded protocol file for the Sharp Aquos monitors sharp_aquos sys LG LF65 sharp Once a protocol file is selected you might choose to change the serial port configuration or to enable automatic power on and power off of the attached screen Checking the Control monitor power check box will force the HMP100 to send the PowerOn and PowerOff commands at specified times in 24 hours format regardless of the conten
4. Serial Port Protocol Studio application presented in the Serial Port Protocol Studio section e The protocol file must be uploaded to the HMP100 and enabled as described in the section e When using the serial port you need to build or purchase the serial port cable to connect your appliance to the HMP100 e Special SpinetiX elements lt auxCmd gt need to be included into your content to control the appliance as described in the Controlling appliances section For more information on controlling appliance with the serial port you can check the RS232 section of the FORUM 2009 SpinetiX S A All rights reserved TABLE OF CONTENTS DisdlaiMmE sist EET 2 INFO UCI n MES 3 Table of Conte nterni ce trt itte artes e e dee euet ier de Se ENR 4 Protocol Synta iia A AAA AE Pee Pe AAA AAA 5 Document StEUCLEUFe al a alas 5 S PrOtOCO gt a A ca de V a ds 5 States todo deer decepta deb pe meta Te e eevee d e 6 SATIS ces eae nated en aacteahea NR REEEERARERTRR a 6 OUCH A ex ee dae RG a a EV RN 7 eoi 7 ALAN SITIONS tas deer ea edt eee AA AAA EPI ree ER dA E EE verme leu ea Eee 7 onStalt Sect sort dd m IC E tn rM AM M AE 8 sonUpdates cn pbi sia PRO ane RU TIR 8 SOM PUE gt d tau du A S D EE dte at OET 8 OMIM ORG so eas nter eue ere m Cc et cL irt de estate apt 9 onDigitalInput oiii i repe E Eri cw ORI pe E e Y 39 RAT Pea Y o vee RITU E NUT IS 9 onAnaloginpit 5 et esee vec ta tees lars cleus a cats hae amet ert sven TE m
5. The HMP100 uses the following rules to decide whether the input is analog or digital e any HID input control which has a usage in the button page of the HID usage tables spec or has a logical min max range of 1 is considered as a digital input the minimum value is reported as open 0 and any other value is reported as closed 1 e all other HID input controls are considered analog inputs no normalization is done on the values the raw logical values are reported The HMP100 uses the following rules to decide whether an output is analog or digital e any HID output control which has a usage in the button page of the HID usage tables spec or has a logical min max range of 1 is considered as a digital output the open 0 value is sent to the device as the minimum logical value the closed 1 value is sent as the minimum 1 e all other HID output controls are considered analog outputs no normalization is done on the values the values are sent as the raw logical values 16 SpinetiX Technical Documentation Serial Port v2 1 I O devices which have all HID controls ignored are completely skipped and have no associated device number Control to device port mapping The HMP maps the HID controls of each I O device to port numbers as follows e Digital input o Each control is assigned a sequential port number starting at one in the order of appearance in the HID report descriptor e Analog input o Controls which are rec
6. The protocol must understand the SetVolume command with a parameters for the volume Custom SVG syntax Sending command to appliances connected to the HMP100 using the RS232 connection is done using the lt auxCmd gt element The lt auxCmd gt uses the following attributes 20 target target mandatory Type of target to control It must match the target of the protocol file command command mandatory Name of the command to execute It must match one of the command attribute of the OnStart element of the protocol file parami to param9 parameters optional Optional parameters It is a string a number or a regular expression The content of the parameter paramX will be stored in PARAMX when executing the fsm file begin begin value list optional 0 if not present See http www w3 org TR SVGMobilei2 animate html ZTimingAttributes for more information about the begin attribute SpinetiX Technical Documentation Serial Port v2 1 It is possible to animate the attribute of the lt auxCmd gt like any other media element Example lt auxCmd target monitor command PowerOn gt lt auxCmd target monitor command PowerOn begin 5s lt auxCmd target monitor command SetVolume paraml 30 gt lt auxCmd target monitor command SelectInput paraml AV1 gt It is recommended to use a complete file to execute RS232 command 21 2009 SpinetiX S A All rights rese
7. example below is composed of two states The first one start waits to the player to send a PowerOff command Once this command has been received the machine moves to the do_power_off state The string KK 00 O1W is send to the serial port and a timer is trigged There are two possibility for the machine to move back to the initial state either when the OK r is received or when the timer expires protocol target monitor startup start xmlns http www spinetix com namespace 1 0 spx state xml id start gt onStart command PowerOff goto do power off gt state state xml ids do power off in write data KX 00 01 amp xD gt lt setTimer timer RxTimeout expiration 500ms gt lt in gt lt out gt resetTimer timer RxTimeout gt lt out gt lt onInput match OK amp xD goto start gt lt complete status success gt lt onInput gt lt onTimeout timer RxTimeout goto start gt lt complete status failure gt lt onTimeout gt lt state gt lt protocol gt lt in gt List of actions to be performed when entering the parent state Each state may contain at most one lt in gt element SpinetiX Technical Documentation Serial Port v2 1 Example state xml id action gt in log level info message Entering state action gt lt in gt eel lt state gt lt out gt List of actions to be performed when leavi
8. AL CABLE To connect the HMP100 to an RS232 appliance you will need a special cable The cable can ordered from SpinetiX at the following address http www spinetix com store The serial cable s connections are given below TIP HMP RS232 Rx E RING HMP RS232 Tx 3 p SHELD GROUND e BON Dumas i 3 5 mm Mini Jack 3 contacts stereo SUBD 9 Female with Locking Screws L wTw 1 PNB m PIN 07 nc PINO6 nc D PINOS Cable Braid Signal Ground Gnd Tx Rx SUBD 9F Shield Tip Ring Jack 3 5mm PIN 04 ne TIP PIN 03 Wire 2 Color2 Receive Jack lt Transmit SUBD 9 Wire 1 Color 1 Transmit Jack Receive SUBD 9 00000 PINO AE 0000 Jack35 SUBD WIRE FUNCTION Warning Do not plug or unplug the RS232 cable from the HMP100 when the HMP100 is turned on This might cause irreversible damage to the HMP100 and or the device connected on the other side of the cable 26
9. E 10 EONTIMEDUES eri AE GLE GU ay 10 SOMOS iria RR PIX RN ERR A Ya RDRA NS PRRRIYGN WR PIIQXR NR EPI GR RRRIQ a nOD 11 Olinall DAG aed vae t dorada 11 PACU IVS cicer o oe e er x m Ee FER UE Pee e EXE ENTER X ERE ees 12 pc ty 12 SIOgo thori cA to ad E ED tala E E at 12 Esame E A A E a AA 12 resetTIleE ive arar OSA ROI etc 30 Y IA ROI Y Oe S ROI I e iara E iranran 13 Ido E 13 Catole hE S uM 13 ji E E A E E TE 14 digitalOutplib EAEE sett re E t E E eS al alae site Y 14 coriplebe2 E N A N D e e A AAA 15 Format SUlINGS iio A A a 15 DIOS UA dae 16 Supported coftrols oci reser TR needa Pe AR LENT 16 Control to device port mappings soc irinin nenon tese rue dan PRNO ee VOR tem asda UR YII 17 configure HMPIOO IOS POE iaa A i de x io D ede roe oe edm nx Ht ca vs 18 Enabling RS2327 Digital TOS aromien vei tex ote x ro ve EH UB Rt Ra e e sia a ties 18 Configuring TOS nd AE AA AD O ARA AR 18 Controlling appliances A A A A Sean tad 20 Predefined Templates ii A re Pe ARR REOR 20 CUSTOM SVG SY MAX so O A id 20 Serial Port Protocol Studio r arnon roce oec AA poene AAA Gao vat ALA OA 22 Getting Started csset vi er ote OU re CUR RE RUN RI KT eae sda odd OUR NA OR meddle 22 Sending COmMandS curia IEA Ea ea teasers desvelegvas ad Dd 22 Checking the ls is a A E E oe a Wad x t o 23 SerlialCabl me EE 26 WARMING PPM 26 SpinetiX Technical Documentation Serial Port v2 1 PROTOCOL SYNTAX
10. E BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES Hyper Media Player HMP100 User Manual v2 0 2009 SpinetiX S A All rights reserved SpinetiX and HMP Hyper Media Player are registered trademarks and all logo and graphic designs are trademarks of SpinetiX S A Other product and company names appearing in SpinetiX S A products and materials are used for identification purposes only and may be trademarks or registered trademarks of their respective companies Registered and unregistered trademarks used in any SpinetiX S A products and materials are the exclusive property of their respective owners SpinetiX S A Rue des Terreaux 17 1003 Lausanne Switzerland www spinetix com info spinetix com SpinetiX Technical Documentation Serial Port v2 1 INTRODUCTION The SpinetiX HMP100 can control external appliances using its serial port RS232 interface or USB IOs such as the U HID products The RS232 of interface is supported in particular by most professional monitors to allow switch on off operations or image configurations The USB IOs can be used as inputs or outputs to allow the interaction between the HMP100 and external devices To control an appliance trough the serial or the USB port interface you need the following e A protocol file for your appliance The protocol should follow the Spinetix proprietary syntax described in the Protocol Syntax section e Testing and debugging your protocol file can be done on a PC using the
11. PORT and 1OVAL respectively IOVAL will be 1 for close and O for open If such no transition is available that will match a digital input line change on the current state the change is remembered and may be matched in any state thereafter This can be useful to for instance only check the digital input lines in the start state Example lt onDigitalINput device 1 port 1 action close goto sensor close gt lt onAnalogInput gt device lt number gt Device number of the analog input line port lt number gt Port number of the analog input line Change state when an analog input state changes The device and port attributes are used to filter respectively on the device number and port number of the analog input line If unspecified any line changing level will trigger the transition The device number port number and new input level are available in the special variables IODEVICE IOPORT and IOVAL respectively If such no transition is available that will match the analog input line change on the current state the change is remembered and may be matched in any state thereafter This can be useful to for instance only check the analog input lines in the start state Example onAnalogINput device 1 port 1 goto temperature changed gt lt onTimeout gt timer lt timer name gt Name of the timer triggering the change of state 10 SpinetiX Technic
12. RROR 1 9 0 9 amp xD matched a line with E R R O R anda number with one or more digits whose value is stored in the 1 variable Alternatively a data attribute instead of match will do a literal match for all characters no regular expression Example onInput data L goto L input gt lt onInput match 0K 0 9 0 9 amp xD amp xA goto ok state gt lt onIgnored gt Change state when an input character is not matched by any other rule Note that if no goto attribute is given it will stay within the same state but avoid outputting warning messages about ignored characters Example onIgnored goto start lt onDigitalInput gt device lt number gt Device number of the digital input line port number 2009 SpinetiX S A All rights reserved Port number of the digital input line action open close lt unspecified gt Type of action that will trigger the transition Change state when a digital input state changes The device and port attributes are used to filter respectively on the device number and port number of the digital input line If unspecified any line changing state will trigger the transition The action attribute is either open close or unspecified If unspecified both changes will trigger the transition The device number port number and new state are available in the special variables IODEVICE IO
13. al Documentation Serial Port v2 1 Change state when a timer expires The timer name is in the timer attribute Timers are created by the lt setTimer gt action Example onTimeout timer RxTimeout goto rx timeout onTest var lt variable name gt Name of the variable to test stringEqualTo lt string gt Check that the variable is equal to the given string stringNotEqualTo lt string gt Check that the variable is not equal to the given string numberEqualTo lt number gt Check that the variable is equal to the given number numberNotEqualTo lt number gt Check that the variable is not equal to the given number numberLessThan lt number gt Check that the variable is less than the given number numberLessThanOrEqual lt number gt Check that the variable is less or equal to the given number numberGreaterThan lt number gt Check that the variable is greater than the given number numberGreaterThanOrEqual lt number gt Check that the variable is greater or equal to the given number Change state based on the content of a variable The var attribute specifies the variable name One of the following comparators specifies the value to test for stringEqualTo stringNotEqualTo numberEqualTo numberNotEqualTo numberLessThan numberLessThanOrEqual numberGreaterThan numberGreaterThanOrEqual Example onTest var RetryCount num
14. aracter code i e amp xD means characters 13 end of line Mn As an example let us use the protocol file of example A in the annexes The example below shows the dialog between the PC and a Sharp Aquaos when the user presses the MuteOn MuteOff and SetVolume button with an input of 50 for the volume e The mute on command is sent MUTE0001 n and the screen replies that the settings have been modified as expected OK n e The mute off command is sent MUTE0002 n and the screen replies that the settings have been modified as expected OK n 23 2009 SpinetiX S A All rights reserved The volume command is sent VOLOO301n and the screen replies that the settings have been modified as expected OK n Note that the Sharp Aquos expects a volume between 0 and 60 whereas we have defined in the protocol file that the volume was between 0 and 100 Thus the value of 50 has to be converted to 30 when sent to the screen using the set command in the protocol file set var Data to d SPARAM1 60 100 gt B 2 D Open Settings Run Restart ClearLog Log Level MuteOn Parameters 50 MUTEODO1 amp xD OK XD MUTEODO2 c xD OK4 xD VOLMOO30 xD OX amp XD MuteOff Setvolume It is possible to increase the logging level of the finite state machine to indicate exactly what is happening during the exchange To do so change the Log Level to Debug The debugging mode wi
15. berLessThan 3 goto retry gt onTest var Deviceld stringEqualTo HMP100 goto new_device gt lt onFallback gt Unconditional transition to a new state Typically for a catch all type of condition As all transitions are evaluated in the order specified in the XML description it should typically the last element of the list of possible transitions 11 2009 SpinetiX S A All rights reserved Example onTest var input stringEqualTo VGA goto select vga gt onTest var input stringEqualTo DVI goto select dvi gt onFallback goto select other Actions Each time the finite state machine changes state it is possible to specify actions to be executed The actions may be specified for each transition described in the previous section As a special case a list of action may also be specified in the in and out tags directly under state write data string Write the given string to the serial interface Send out some characters on the serial port as specified by the data attribute Example write data KX 00 018 amp xD amp xA log mesage lt string gt Write the given string in the log file level trace debug info warning error Logging level of the string Add an entry to the system log The level attribute is mandatory it must be one of debug trace info warning or error The m
16. by this protocol such as monitor It must match the target attribute from the lt auxCmd gt tag in SVG content on the player The optional startup and start attributes may override the name of the two mandatory states respectively the state that the machine is in when it starts up and the state from which new commands are dispatched By default the names are respectively startup and start Start command transitions can only be processed from the start state A startup state is mandatory but it may be the same as the start state Example The example below shows a very simple protocol file which sends a PWR OFF or PWR ON string to the serial interface when a PowerOff or PowerOn command is received 2009 SpinetiX S A All rights reserved protocol target monitor startup start xmlns http www spinetix com namespace 1 0 spx state xml id start gt onStart command PowerOff gt write data PWR OFF amp xD gt lt onStart gt onStart command PowerOn gt write data PWR ON amp xD gt lt onStart gt lt state gt lt protocol gt lt state gt Each state is described in a matching state element It must have a unique xml id attribute A state may contain at most one lt in gt and one lt out gt element that are lists of actions to be performed on entering respectively leaving the state It must contain at least one transition element Example The
17. ed a sequential port number starting at one in the order of appearance in the HID report descriptor o Analog outputs are currently only listed the firmware has currently no support for manipulating analog outputs The mapping of HID controls to ports is output to the HMP player logs each time a new I O device is enumerated to aid in diagnosing Note that digital analog and input output have all separate port numbering spaces within the same I O device 17 2009 SpinetiX S A All rights reserved CONFIGURE HMP100 IO PORT Enabling RS232 Digital IOs Enabling the IOs support is done using the HTTP administration interface and the Serial Port menu as shown in the image below SpinetiX HMP100 Web Access Information Status Settings Snapshot Protocols disabled Display Info pn o _ Use fixed schedule for display power Storage m Logs Turn monitor ON 00 00 Turn monitor OFF 24 00 C Modify COM port settings Administration Baud rate 960 Display Settings Data bits 8 y Newark elige Parity none Media Sources o Security lop bits lv Date Time Apply Apply RS232 USB IO b Pull Mode Upload Protocol File Firmware Update Maintenance Serial Number 00 1d 50 00 00 1e Copyright c 2010 SpinetiX SA All rights reserved Software copyrights and licenses By default the serial port control is disabled It is enabled by selecting a protocol file in the
18. essage attribute contains the log message Example log levels info message Monitor is powered off gt setTimer timer lt timer name gt Name of the timer to be created expiration lt time in sec gt Duration in seconds of the timer period lt time in sec gt Repetition time of the timer 12 SpinetiX Technical Documentation Serial Port v2 1 Start a single shot or periodic timer The timer attribute specifies a reference name for the timer used to associate with lt onTimeout gt transitions e Fora single shot timeout use the expiration attribute with a time in seconds postfixed by s or a time in milliseconds postfixed by ms This selects the expiration date as a relative time e Fora periodic timer the expiration attribute specifies the first expiration and the period attribute specifies how often the timer will expire In effect each time the timer expires it is reset to the value of the period attribute Examples lt setTimer timer RxTimeout expiration 100ms gt lt setTimer timer PeriodicCheck expiration 0 period 60s gt lt resetTimer gt timer lt timer name gt Name of the timer to be reset Cancel a timer previously setup by lt setTimer gt The timer attribute must match the reference name of a previously set timer Example resetTimer timer RxTimeout gt lt set gt var
19. ll indicate all the steps taken by the finite state machine to send and receive information from to the appliance For instance the effect of the MuteOn command using the example A protocol file is shown in the example below 24 The finite state machine starts with the state start The command MuteOn is received The variables Command and Data are set respectively to MUTE and 1 The FSM moves to the state transmit and sends the MUTEO01 n characters The FSM receives OK n from the screen and thus moves from the transmit state back to the start state ready to receive new commands SpinetiX Technical Documentation Serial Port v2 1 E x gt a 4 mn Open Settings Restat Clear Log Log Level MuteOn MuteOff Set Volume Parameters MUTEOO01 amp xD OK amp xD 1210923556 218 init Starting init command 1210923556 218 init ce Entering state start ey voe ub UE all DT IEEE eg Oe INN AN a uso zs Gag sells CARE a WE 1210923562 249 MuteOn Setting variable Data to 1 1210923562 249 MuteOn trace Leaving state start 1210923562 312 Receiving character code 4F Qo 1210923562 312 teOn ce Receiving character code 4B K 1210923562 312 teOn ce Receiving character code 0D D 1210923562312 MuteOn trace Leaving state transmit 1210923562312 MuteOn trace Entering state start 25 2009 SpinetiX S A All rights reserved SERI
20. lt variable name gt Name of the variable to be set to lt string gt lt number gt Value of the variable to set Change the value of a variable The variable name is specified by the var attribute the new value is in the to attribute Example set var Data to 30 update name lt shared variable gt Name of the shared variable to be modified value lt string gt lt number gt Value of the shared variable time lt UTC timestamp gt 13 2009 SpinetiX S A All rights reserved Optional value of the time at which the variable should be modified Update the value of a shared variable The name is specified by the name attribute and the new value by the value attribute The shared variable may local MyVariable or remote MyVariable MyServer The optional time attribute may be used to specify a UTC timestamp for the update in seconds since Jan 1st 1970 Example update name weather value sunny fire event mousedown mouseup mousemove mousewheel keydown keyup keystate textInput focusin focusout Name of the event to be triggered time lt UTC timestamp Optional value of the time at which the event should be fired Send a UI trigger to the SVG document The event type is specified by the event attribute The optional time attribute may be used to specify a UTC timestamp for the event in seconds
21. ng the parent state Each state may contain at most one lt out gt element Example lt state xml id action gt Deel lt out gt log level info message Leaving state action gt lt out gt lt state gt lt config gt This section contains a list of parameters global variables that should be set before start up according to user provided configuration Each parameter is described in a lt param gt element with the following attributes e name variable name e value default value e type variable type either int number or string This works as an indication of possible values for the user e desc user readable description of what this parameter is Example lt config gt param name id value 0 type int desc Monitor ID gt config Transitions Transition elements are used to make the finite state machine go from one state to another The following transitions are supported lt onStart gt onUpdate lt onInput gt lt onIgnored gt lt onDigitalInput gt onAnalogInput lt onTimeout gt lt onTest gt and lt onFallback gt 2009 SpinetiX S A All rights reserved All transition elements take a goto attribute which specifies the id of the target state to transition to It may be omitted in which case the transition is reflective to the same state and neither the in nor out actions list are triggered goto lt state id gt Id of
22. o be received in the order SpinetiX Technical Documentation Serial Port v2 1 specified and starting at the first character it will not match inside the input For instance the match string abc will match abcx x is retained in the input buffer for later matches but it won t match xabc because the start character does not match In the same example if abx is received the transition is not taken but both a and b are eaten taken out of the receive buffer as a mismatch is detected only when receiving the x The match string may contain the following special characters e Character ranges specified inside brackets o a z matches any characters from the ascii code of a to the code of z Use 0 9 to match a digit o abc matches any of a b or c o multiple ranges are allowed e g a zA Z o Use a to match either a or e The to match a repetition of O or more of the previous character or character range e The to optionally match the previous character or range e The V to escape a special character so that is interpreted literally Use for the backslash itself e A pair of parenthesis around characters inside the match expression will allow this sequence to be stored inside the special n variable when the transition is taken Some example match strings e OK 0 9 0 9 amp xD amp xA matches a line starting with O K followed by digits and the CR LF terminators e E
23. ognized as Microsoft DirectInput Joystick controls are mapped in the same way as in DirectInput The first of each X Y Z RX RY or RZ axis is assigned port number 1 2 3 4 5 or 6 respectively The first of each slider and dial are assigned to ports 7 and 8 the two sliders in DirectInput s Joystick in order of appearance in the HID report descriptor The wheel is assigned port number 3 the Z axis in DirectInput s Joystick if that port is not already assigned The steering is assigned port number 1 the X axis in DirectInput s Joystick if that port is not already assigned The accelerator is assigned port number 2 the Y axis in DirectInput s Joystick if that port is not already assigned The rudder and brake are assigned port number 6 the RZ axis in DirectInput s Joystick if that port is not already assigned The throttle is assigned port 7 if not already assigned otherwise 8 if that port is not already assigned o All other controls or controls above which could not be assigned the port because it is already assigned to another control are assigned sequential port numbers starting at 128 in the order of appearance in the HID report descriptor e Digital output Controls assigned to this range may change port number in future releases of the firmware o Each control is assigned a sequential port number starting at one in the order of appearance in the HID report descriptor e Analog output o Each control is assign
24. ped c SPINETIX SpinetiX Technical Documentation RS232 and USB IO v2 1 Revision 2010 March 3 2009 SpinetiX S A All rights reserved DISCLAIMER THE SPECIFICATIONS AND INFORMATION REGARDING THE PRODUCTS IN THIS MANUAL ARE SUBJECT TO CHANGE WITHOUT NOTICE ALL STATEMENTS INFORMATION AND RECOMMENDATIONS IN THIS MANUAL ARE BELIEVED TO BE ACCURATE BUT ARE PRESENTED WITHOUT WARRANTY OF ANY KIND EXPRESS OR IMPLIED USERS MUST TAKE FULL RESPONSIBILITY FOR THEIR APPLICATION OF ANY PRODUCTS THE SOFTWARE LICENSE AND LIMITED WARRANTY FOR THE ACCOMPANYING PRODUCT ARE SET FORTH IN THE INFORMATION PACKET THAT IS SHIPPED WITH THE PRODUCT AND ARE INCORPORATED HEREIN BY THIS REFERENCE IF YOU ARE UNABLE TO LOCATE THE SOFTWARE LICENSE OR LIMITED WARRANTY CONTACT YOUR SPINETIX REPRESENTATIVE FOR A COPY NOTWITHSTANDING ANY OTHER WARRANTY HEREIN ALL DOCUMENT FILES AND SOFTWARE OF THESE SUPPLIERS ARE PROVIDED AS IS WITH ALL FAULTS SPINETIX DISCLAIMS ALL WARRANTIES EXPRESSED OR IMPLIED INCLUDING WITHOUT LIMITATION THOSE OF MERCHANTABILITY FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OR ARISING FROM A COURSE OF DEALING USAGE OR TRADE PRACTICE IN NO EVENT SHALL SPINETIX OR ITS SUPPLIERS BE LIABLE FOR ANY INDIRECT SPECIAL CONSEQUENTIAL OR INCIDENTAL DAMAGES INCLUDING WITHOUT LIMITATION LOST PROFITS OR LOSS OR DAMAGE TO DATA ARISING OUT OF THE USE OR INABILITY TO USE THIS MANUAL EVEN IF SPINETIX OR ITS SUPPLIERS HAV
25. rved SERIAL PORT PROTOCOL STUDIO The SPP Studio application lets you check your protocol files from a PC connected to your appliance monitor for instance This should help you in debugging the protocol files and check that the appliance behaves as expected The SSP Studio lets you test protocol files To edit your protocol files you will need an external XML editor 2 Serial Port Protocols Studio SEE File E gt e A n Open Settings In Restart Clear Log Log Level Getting Started In order to work with your protocol files you need to perform the following operations e Make sure that your RS232 port settings are correct The Settings button is used to configure the speed and the various options for the transmission on the RS232 port The default settings should work with most appliances e Open you protocol file using the Open button e Start the finite state machine using the Run button Now SPP Studio is ready to send commands to your appliance Sending Commands Depending on your protocol files a different set of command will be shown in the SPP Studio interface SPP Studio will add a command button for each lt onStart gt elements of start state of your protocol file For instance the following file state xml id start desc Start command gt onStart command PowerOn goto transmit_poweron gt 22 SpinetiX Technical Documentation Serial Port v2 1 onStart command PowerOff
26. s and applications Each USB interface exposed by a USB physical device is considered as an independent I O device by the HMP100 Only I O devices which have non ignored controls are left open the others are ignored The HMP100 will periodically rescan the bus for device removal or insertion After a settle period the I O devices are renumbered with consecutive numbers starting at 1 Numbering depends on USB device IDs and should thus be stable across reboots if no new USB HID devices are removed or inserted However USB devices which are identical and which have the same name or no serial number cannot be reliably distinguished In such situations numbering should depend on USB plug location in the USB hub although it may be unstable See the HID and HID Usage Tables specifications for details on HID available at http www usb org developers hidpage Supported controls The following HID controls are ignored by the HMP100 e all constant fields are ignored typically used for padding in HID reports e all HID controls input or output under a mouse keyboard keypad or system control application collection are ignored this avoids conflicts with keyboards and mice which are handled as input events to the SVG DOM e all HID controls which are not under one of the following HID application collections are ignored o Generic Desktop Controls o Simulation Controls o Game Controls e feature HID controls are not supported and thus ignored
27. since Jan 1st 1970 The following attribute are required according to the event type e mousedown mouseup X y and button e mousemove x and y e mousewheel x y and delta e keydown keyup key and keystate optional bit mask e textInput data e focusin focusout no attribute required Example fire event mousedown x 45 yz 20 button 0 gt lt fire event keydown key Enter gt lt fire event keydown key A gt lt digitalOutput gt device lt number gt Device number of the digital input line port lt number gt Port number of the digital input line action open close Action to be performed on the given IO 14 SpinetiX Technical Documentation Serial Port v2 1 Set the state of the digital output line identifed by the device and port attributes The action attribute must be either open or close Example digitalOutput device 1 port 1 action open gt lt complete gt status success failure Status of the current command Signal the completion of the current command The mandatory status attribute should be set to success if the command was successful otherwise it should be set to failure Example complete status success Format strings The data to message and match attribute values may be formatted according to the content of some variables by using a format
28. string The string formatting facility is based on the C language printf format specification strings where the character is replaced by the value of a variable The should be followed by a format specification character and a variable name between curly braces for string values or a numerical expression for integer or floating point values Numerical expression are basically composed of variable names numbers and the and operators with usual priorities and meaning and the possibility to use parenthesis for grouping For example e write data KX 02x id amp xD formats the integer variable id as a two digit hexadecimal number padded with zero e set var Count to d Count 1 gt will increment the Count variable The following format characters are supported and may be prefixed by the relevant precision and padding flags e s for strings c for a single character where the numerical expression is evaluated to an ascii code e g c 65 for the A character d for signed integer u for unsigned integer o for octal integer x for hexadecimal integer using letters a to f X for hexadecimal integer using letters A to F f Ye YE g and G for floating point numbers is the 9o character itself 15 2009 SpinetiX S A All rights reserved DIGITAL I O SUPPORT Digital I O on HMP100 supports any USB HID This allows to generically support a wide array of I O device
29. t uploaded on the device In the example below the HMP100 has been configured to use the LG LF65 protocol and automatically turn the screen ON at 8 00 and OFF at 20 00 Protocols LG LF65 E Control monitor power Turn monitor ON 08 00 Turn monitor OFF 20 00 If you want to have a finer controls on the actions performed by the HMP100 on the serial port you need to used serial port command in your hyper media project This procedure is explained in more details in the next section 19 2009 SpinetiX S A All rights reserved CONTROLLING APPLIANCES Predefined Templates HMD comes with a set of predefined documents for sending commands on the serial port Those templates can be found under MyTemplates SerialPort These files can then be used in any multi layer playlist document or schedule document a spx templates SerialPort v 2 m v 2 s m mute svg power svg Sources svg s volume svg The following templates are provided Mute with the configurable On Off option Let you turn on and off the audio of the monitor The protocol must understand the MuteOn and MuteOff command Power with the configurable On Off option Let you turn on and off the monitor The protocol must understand the PowerOn and PowerOff command Source with configurable destination The protocol must understand some or all off the following commands HDMI1 HMDM2 VGA AV1 AV2 AV3 Volume with a configurable level between 0 and 100
30. the target state of the transition If omitted the transition is reflective to the same state lt onStart gt command lt string gt Name of the action triggered by the lt auxCmd gt tag inside SVG content Change state on receiving a request from the user to start a new command This is triggered by an lt auxCmd gt tag inside SVG content with a matching command attribute These are only valid in the start state Parameters was passed in the command are available in the variables PARAM1 PARAM2 Example onStart command PowerOn gotos transmit power on onUpdate name lt shared variable gt Name of the shared variable triggering the change of state Change state when a shared variable is updated This transition is only valid in the start state The name of the variable its value and the timestamp are available in the special variables NAME VALUE and TIMESTAMP respectively The timestamp is in second since Jan 1st 1970 UTC Example onUpdate name temp thermometer goto temp_change gt onInput match lt string gt Regular expression to be matched data lt string gt Literal string to be matched The change of state is based on new input characters The match attribute contains a regular expression that is matched against the input stream It may be as simple as one character Multiple characters are interpreted as the sequence t

Download Pdf Manuals

image

Related Search

Related Contents

Simple eText Production User Manual  Télécharger le rapport  Snapper SS5200E User's Manual  MANUAL DE INSTALACIÓN Y MANTENIMIENTO  Cisco Spare 72.3-GB hot-plug SAS drive for MCS 7845-I2  

Copyright © All rights reserved.
Failed to retrieve file