Subversion Repositories HomeAutomation

Rev

Rev 1421 | Rev 1427 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | SVN | RSS feed

  1. <?xml version="1.0" standalone="yes"?>
  2. <root>
  3.   <classes>
  4.     <class id="0" name="nmt" description="Networkmanagement used only for packets with the nmt-protcol header"/>
  5.     <class id="11" name="mnmt" description="Module networkmanagement, right now only used for requesting module listing from a node"/>
  6.     <class id="12" name="act" description="Actuator nmt_messages"/>
  7.     <class id="13" name="sns" description="Sensor nmt_messages"/>
  8.     <class id="14" name="def" description="Default, not to be used"/>
  9.     <class id="15" name="tst" description="Testing stuff"/>
  10.     <class id="10" name="chn" description="Control channel based"/>
  11.   </classes>
  12.   <commands>
  13.     <command id="0" name="List" type="global" module="" description="Message that module send to tell the world what it is">
  14.       <variables>
  15.         <variable name="HardwareId" type="uint" start_bit="0" bit_length="32" unit="" description=""/>
  16.         <variable name="NumberOfModules" type="uint" start_bit="32" bit_length="8" unit="" description=""/>
  17.         <variable name="SequenceNumber" type="uint" start_bit="40" bit_length="8" unit="" description=""/>
  18.       </variables>
  19.     </command>
  20.    
  21.     <command id="2" name="Debug" type="global" module="" description="Used for debugging, should not be used for anything real"/>
  22.     <command id="3" name="Report_Interval" type="global" module="" description="Get/Set interval of reporting">
  23.       <variables>
  24.         <variable name="Time" type="uint" start_bit="0" bit_length="8" unit="Second" description=""/>
  25.       </variables>
  26.     </command>
  27.    
  28.     <command id="64" name="Pwm" type="physical" module="" description="Message for pwm data">
  29.       <variables>
  30.         <variable name="Id" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  31.         <variable name="Value" type="uint" start_bit="8" bit_length="16" unit="" description=""/>
  32.       </variables>
  33.     </command>
  34.     <command id="65" name="Temperature_Celsius" type="physical" module="" description="Temperature data">
  35.       <variables>
  36.         <variable name="SensorId" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  37.         <variable name="Value" type="float" start_bit="8" bit_length="16" unit="Celsius" description=""/>
  38.       </variables>
  39.     </command>
  40.     <command id="66" name="Humidity_Percent" type="physical" module="" description="Humidity data">
  41.       <variables>
  42.         <variable name="SensorId" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  43.         <variable name="Value" type="float" start_bit="8" bit_length="16" unit="" description=""/>
  44.       </variables>
  45.     </command>
  46.     <command id="67" name="Voltage" type="physical" module="" description="Voltage data">
  47.       <variables>
  48.         <variable name="SensorId" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  49.         <variable name="Value" type="float" start_bit="8" bit_length="16" unit="Volt" description=""/>
  50.       </variables>
  51.     </command>
  52.     <command id="68" name="Phonenumber" type="physical" module="" description="Phonenumber data">
  53.       <variables>
  54.         <variable name="Number" type="hexstring" start_bit="0" bit_length="64" unit="" description=""/>
  55.       </variables>
  56.     </command>
  57.     <command id="69" name="Rotary_Switch" type="physical" module="" description="Command to transmit a rotary encoder switch status">
  58.       <variables>
  59.         <variable name="SwitchId" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  60.         <variable name="Direction" type="enum" start_bit="8" bit_length="8" unit="" description="">
  61.           <value id="0" name="Clockwise"/>
  62.           <value id="1" name="Counterclockwise"/>
  63.         </variable>
  64.         <variable name="Steps" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  65.         <variable name="Position" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  66.       </variables>
  67.     </command>
  68.     <command id="70" name="Button" type="physical" module="" description="">
  69.       <variables>
  70.         <variable name="SwitchId" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  71.         <variable name="Status" type="enum" start_bit="8" bit_length="8" unit="" description="">
  72.           <value id="1" name="Pressed"/>
  73.           <value id="0" name="Released"/>
  74.         </variable>
  75.       </variables>
  76.     </command>
  77.     <command id="71" name="IR" type="physical" module="" description="IR data protocol encoding">
  78.       <variables>
  79.         <variable name="Status" type="enum" start_bit="0" bit_length="8" unit="" description="State of remote button">
  80.           <value id="1" name="Pressed"/>
  81.           <value id="0" name="Released"/>
  82.         </variable>
  83.         <variable name="Protocol" type="enum" start_bit="8" bit_length="8" unit="" description="Button protocol">
  84.           <value id="0" name="RC5"/>
  85.           <value id="1" name="RC6"/>
  86.           <value id="2" name="RCMM"/>
  87.           <value id="3" name="SIRC"/>
  88.           <value id="4" name="Sharp"/>
  89.           <value id="5" name="NEC"/>
  90.           <value id="6" name="Samsung"/>
  91.           <value id="7" name="Marantz"/>
  92.           <value id="8" name="Panasonic"/>
  93.           <value id="255" name="Unknown"/>
  94.         </variable>
  95.         <variable name="IRdata" type="uint" start_bit="16" bit_length="32" unit="" description="Button protocol unique ID"/>
  96.       </variables>
  97.     </command>
  98.     <command id="72" name="Current" type="physical" module="" description="Current data">
  99.       <variables>
  100.         <variable name="SensorId" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  101.         <variable name="Value" type="float" start_bit="8" bit_length="16" unit="Ampere" description=""/>
  102.       </variables>
  103.     </command>
  104.     <command id="73" name="ElectricPower" type="physical" module="" description="Message with data from a power meter">
  105.       <variables>
  106.         <variable name="Power" type="uint" start_bit="0" bit_length="16" unit="Watt" description=""/>
  107.         <variable name="EnergySum" type="uint" start_bit="16" bit_length="32" unit="W/h" description=""/>
  108.         <variable name="Power32" type="uint" start_bit="48" bit_length="16" unit="Watt" description="Average of 32 measurments"/>
  109.       </variables>
  110.     </command>
  111.     <command id="74" name="SetPin" type="physical" module="" description="">
  112.       <variables>
  113.         <variable name="PinId" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  114.         <variable name="Status" type="enum" start_bit="8" bit_length="8" unit="" description="">
  115.           <value id="1" name="High"/>
  116.           <value id="0" name="Low"/>
  117.         </variable>
  118.       </variables>
  119.     </command>
  120.         <command id="75" name="PinStatus" type="physical" module="" description="">
  121.       <variables>
  122.         <variable name="PinId" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  123.         <variable name="Status" type="enum" start_bit="8" bit_length="8" unit="" description="">
  124.           <value id="1" name="High"/>
  125.           <value id="0" name="Low"/>
  126.         </variable>
  127.       </variables>
  128.     </command>
  129.     <command id="128" name="setEnergy" type="specific" module="power" description="Set the energy value on the power meter module">
  130.       <variables>
  131.         <variable name="Energy" type="uint" start_bit="0" bit_length="32" unit="W/h" description=""/>
  132.       </variables>
  133.     </command>
  134.     <command id="128" name="IRraw" type="specific" module="irReceive" description="If a protocol not could be found, then send raw data">
  135.      <variables>
  136.         <variable name="Act1" type="uint" start_bit="0" bit_length="16" unit="Millisecond" description="First active time"/>
  137.         <variable name="Pas1" type="uint" start_bit="16" bit_length="16" unit="Millisecond" description="First passive time"/>
  138.         <variable name="Act2" type="uint" start_bit="32" bit_length="16" unit="Millisecond" description="Second active time"/>
  139.         <variable name="Pas2" type="uint" start_bit="48" bit_length="16" unit="Millisecond" description="Second passive time"/>
  140.       </variables>
  141.     </command>
  142.     <command id="128" name="Position" type="specific" module="nmea" description="WGS80 LAT/LONG Position">
  143.     <variables>
  144.         <variable name="Lat_deg" type="uint" start_bit="0" bit_length="8" unit="Degrees" description="Degrees Lat"/>
  145.         <variable name="Lat_min" type="uint" start_bit="8" bit_length="8" unit="'" description="Minutes lat"/>
  146.         <variable name="Lat_sec" type="uint" start_bit="16" bit_length="15" unit="''" description="Seconds Lat"/>
  147.         <variable name="Lat_CD" type="uint" start_bit="31" bit_length="1" unit="" description="N/S"/>
  148.         <variable name="Lon_deg" type="uint" start_bit="32" bit_length="8" unit="Degrees" description="Degrees Lat"/>
  149.         <variable name="Lon_min" type="uint" start_bit="40" bit_length="8" unit="'" description="Minutes lat"/>
  150.         <variable name="Lon_sec" type="uint" start_bit="48" bit_length="15" unit="''" description="Seconds Lat"/>
  151.         <variable name="Lon_CD" type="uint" start_bit="63" bit_length="1" unit="" description="E/W"/>      
  152.     </variables>
  153.     </command>
  154.     <command id="128" name="Printf" type="specific" module="Debug" description="Used for sending debug text with printf">
  155.      <variables>
  156.         <variable name="Text" type="ascii" start_bit="0" bit_length="64" unit="" description=""/>
  157.       </variables>
  158.     </command>
  159.     <command id="128" name="LCD_Clear" type="specific" module="HD44789" description="Clear LCD"/>
  160.     <command id="129" name="LCD_Cursor" type="specific" module="HD44789" description="Set LCD cursor position">
  161.       <variables>
  162.         <variable name="X" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  163.         <variable name="Y" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  164.       </variables>
  165.     </command>
  166.     <command id="130" name="LCD_Text" type="specific" module="HD44789" description="Print text on LCD">
  167.       <variables>
  168.         <variable name="Text" type="ascii" start_bit="0" bit_length="64" unit="" description=""/>
  169.       </variables>
  170.     </command>
  171.      <command id="131" name="LCD_Size" type="specific" module="HD44789" description="Size of LCD">
  172.       <variables>
  173.         <variable name="Width" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  174.         <variable name="Height" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  175.       </variables>
  176.     </command>
  177.     <command id="132" name="LCD_Backlight" type="specific" module="HD44789" description="Set LCD backlight brightness">
  178.       <variables>
  179.         <variable name="Strength" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  180.       </variables>
  181.     </command>
  182.       <command id="133" name="LCD_TextAt" type="specific" module="HD44789" description="Print text on LCD">
  183.       <variables>
  184.         <variable name="X" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  185.         <variable name="Y" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  186.         <variable name="Text" type="ascii" start_bit="16" bit_length="48" unit="" description=""/>
  187.       </variables>
  188.     </command>
  189.    
  190.     <command id="128" name="DEBUG" type="specific" module="PID" description="Debug data from PID regulator">
  191.     <variables>
  192.       <variable name="P_term" type="uint" start_bit="0" bit_length="16" unit="" description=""/>
  193.       <variable name="I_term" type="uint" start_bit="16" bit_length="16" unit="" description=""/>
  194.       <variable name="D_term" type="uint" start_bit="32" bit_length="16" unit="" description=""/>
  195.       <variable name="Sum" type="int" start_bit="48" bit_length="16" unit="" description=""/>
  196.     </variables>
  197.       </command>
  198.       <command id="129" name="CONFIG_SENSOR" type="specific" module="PID" description="Configure PID regulator, if message is sent with 0 data bytes, module will respond with current configuration">
  199.     <variables>
  200.       <variable name="sensorModuleType" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  201.       <variable name="sensorModuleId" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  202.       <variable name="sensorId" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  203.     </variables>
  204.       </command>
  205.       <command id="130" name="CONFIG_ACTUATOR" type="specific" module="PID" description="Configure PID regulator, if message is sent with 0 data bytes, module will respond with current configuration">
  206.     <variables>
  207.       <variable name="actuatorModuleType" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  208.       <variable name="actuatorModuleId" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  209.       <variable name="actuatorId" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  210.     </variables>
  211.       </command>
  212.       <command id="131" name="CONFIG_PARAMETER" type="specific" module="PID" description="Configure PID regulator constants, if message is sent with 0 data bytes, module will respond with current configuration">
  213.     <variables>
  214.       <variable name="K_P" type="float" start_bit="0" bit_length="16" unit="" description=""/>
  215.       <variable name="K_I" type="float" start_bit="16" bit_length="16" unit="" description=""/>
  216.       <variable name="K_D" type="float" start_bit="32" bit_length="16" unit="" description=""/>
  217.       <variable name="TimeUnit" type="enum" start_bit="48" bit_length="1" unit="" description="">
  218.         <value id="0" name="s"/>
  219.         <value id="1" name="ms"/>
  220.       </variable>
  221.       <variable name="RegulatorTime" type="uint" start_bit="49" bit_length="15" unit="" description=""/>
  222.     </variables>
  223.       </command>
  224.       <command id="132" name="PID_STATUS" type="specific" module="PID" description="information about the pid controller">
  225.     <variables>
  226.       <variable name="Measurment" type="float" start_bit="0" bit_length="16" unit="" description=""/>
  227.       <variable name="Reference" type="float" start_bit="16" bit_length="16" unit="" description=""/>
  228.       <variable name="PWM" type="uint" start_bit="32" bit_length="16" unit="" description=""/>
  229.       <variable name="Sum" type="int" start_bit="48" bit_length="16" unit="" description=""/>
  230.     </variables>
  231.       </command>
  232.       <command id="128" name="CONFIG" type="specific" module="SlowPWM" description="Configure PWM output, if message is sent with 0 data bytes, module will respond with current configuration">
  233.     <variables>
  234.       <variable name="pwmPeriod" type="uint" start_bit="0" bit_length="16" unit="" description=""/>
  235.       <variable name="pwmDefaultValue" type="uint" start_bit="16" bit_length="16" unit="" description=""/>
  236.       <variable name="DefaultState" type="enum" start_bit="32" bit_length="2" unit="" description="">
  237.         <value id="0" name="LOW"/>
  238.         <value id="1" name="HIGH"/>
  239.         <value id="2" name="TRISTATE"/>
  240.       </variable>
  241.        <variable name="StartUpState" type="enum" start_bit="34" bit_length="1" unit="" description="">
  242.         <value id="0" name="ON"/>
  243.         <value id="1" name="OFF"/>
  244.       </variable>
  245.     </variables>
  246.       </command>
  247.       <command id="128" name="LCD_Clear" type="specific" module="KS0108" description="Clear LCD">
  248.       <variables>
  249.         <variable name="Inverted" type="enum" start_bit="0" bit_length="1" unit="" description="Set to 1 of you want an inverted screen">
  250.       <value id="0" name="Standard"/>
  251.           <value id="1" name="Inverted"/>
  252.     </variable>
  253.       </variables>
  254.     </command>
  255.     <command id="129" name="LCD_Cursor" type="specific" module="KS0108" description="Set LCD cursor position">
  256.       <variables>
  257.         <variable name="X" type="uint" start_bit="0" bit_length="8" unit="" description="Char position in x direction"/>
  258.         <variable name="Y" type="uint" start_bit="8" bit_length="8" unit="" description="Char position in y direction"/>
  259.     <variable name="Inverted" type="enum" start_bit="16" bit_length="1" unit="" description="Set to 1 of you want an inverted output">
  260.       <value id="0" name="Standard"/>
  261.           <value id="1" name="Inverted"/>
  262.     </variable>
  263.     <variable name="Transparent" type="enum" start_bit="17" bit_length="1" unit="" description="Set to 1 of you want to keep screen background">
  264.       <value id="0" name="Standard"/>
  265.       <value id="1" name="Transparent"/>
  266.     </variable>
  267.       </variables>
  268.     </command>
  269.     <command id="130" name="LCD_Text" type="specific" module="KS0108" description="Print text on LCD on current postion, according to the latest LCD_Cursor command">
  270.       <variables>
  271.         <variable name="Text" type="ascii" start_bit="0" bit_length="64" unit="" description=""/>
  272.       </variables>
  273.     </command>
  274.     <command id="131" name="LCD_Invert" type="specific" module="KS0108" description="Invert LCD">
  275.       <variables>
  276.         <variable name="Inverted" type="enum" start_bit="0" bit_length="1" unit="" description="Set to 1 of you want an inverted screen">
  277.       <value id="0" name="Standard"/>
  278.           <value id="1" name="Inverted"/>
  279.     </variable>
  280.       </variables>
  281.     </command>
  282.     <command id="132" name="LCD_Backlight" type="specific" module="KS0108" description="Set LCD backlight brightness">
  283.       <variables>
  284.         <variable name="Strength" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  285.       </variables>
  286.     </command>
  287.     <command id="133" name="LCD_TextAt" type="specific" module="KS0108" description="Print text on LCD">
  288.       <variables>
  289.         <variable name="Inverted" type="enum" start_bit="0" bit_length="1" unit="" description="Set to 1 of you want an inverted screen">
  290.       <value id="0" name="Standard"/>
  291.           <value id="1" name="Inverted"/>
  292.     </variable>
  293.     <variable name="Transparent" type="enum" start_bit="1" bit_length="1" unit="" description="Set to 1 of you want to keep screen background">
  294.       <value id="0" name="Standard"/>
  295.       <value id="1" name="Transparent"/>
  296.     </variable>  
  297.     <variable name="X" type="uint" start_bit="2" bit_length="6" unit="" description=""/>
  298.         <variable name="Y" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  299.         <variable name="Text" type="ascii" start_bit="16" bit_length="48" unit="" description=""/>
  300.       </variables>
  301.     </command>
  302.     <command id="134" name="LCD_DrawRect" type="specific" module="KS0108" description="Draw a rectangle on LCD">
  303.       <variables>
  304.         <variable name="Inverted" type="enum" start_bit="0" bit_length="1" unit="" description="Set to 1 of you want an inverted screen">
  305.       <value id="0" name="Standard"/>
  306.           <value id="1" name="Inverted"/>
  307.     </variable>
  308.     <variable name="Fill" type="enum" start_bit="1" bit_length="1" unit="" description="Set to 1 of you want the rectangle filled">
  309.       <value id="0" name="NoFill"/>
  310.       <value id="1" name="Fill"/>
  311.     </variable>  
  312.     <variable name="X" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  313.         <variable name="Y" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  314.     <variable name="Width" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  315.     <variable name="Height" type="uint" start_bit="32" bit_length="8" unit="" description=""/>
  316.     <variable name="Radius" type="uint" start_bit="40" bit_length="8" unit="" description="Only valid for non-fill rectangles"/>
  317.       </variables>
  318.       </command>
  319.      
  320.       <command id="135" name="LCD_DrawLine" type="specific" module="KS0108" description="Draw a line on LCD">
  321.     <variables>
  322.       <variable name="Inverted" type="enum" start_bit="0" bit_length="1" unit="" description="Set to 1 of you want an inverted screen">
  323.         <value id="0" name="Standard"/>
  324.         <value id="1" name="Inverted"/>
  325.       </variable>
  326.       <variable name="X1" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  327.       <variable name="Y1" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  328.       <variable name="X2" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  329.       <variable name="Y2" type="uint" start_bit="32" bit_length="8" unit="" description=""/>
  330.     </variables>
  331.       </command>
  332.    
  333.       <command id="136" name="LCD_DrawCircle" type="specific" module="KS0108" description="Draw a circle on LCD">
  334.     <variables>
  335.       <variable name="Inverted" type="enum" start_bit="0" bit_length="1" unit="" description="Set to 1 of you want an inverted screen">
  336.         <value id="0" name="Standard"/>
  337.         <value id="1" name="Inverted"/>
  338.       </variable>
  339.       <variable name="Xcentre" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  340.       <variable name="Ycentre" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  341.       <variable name="Radius" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  342.     </variables>
  343.       </command>    
  344.  
  345.     <command id="137" name="LCD_InvertRect" type="specific" module="KS0108" description="Invert pixels in an rectangle on the LCD">
  346.       <variables>
  347.     <variable name="X" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  348.         <variable name="Y" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  349.     <variable name="Width" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  350.     <variable name="Height" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  351.       </variables>
  352.     </command>
  353.    
  354.     <command id="138" name="LCD_New_Image" type="specific" module="KS0108" description="Store a new image in eeprom">
  355.       <variables>
  356.     <variable name="image_id" type="uint" start_bit="0" bit_length="8" unit="" description="the new image id"/>
  357.         <variable name="size_X" type="uint" start_bit="8" bit_length="8" unit="" description="Size in x direction"/>
  358.         <variable name="size_Y" type="uint" start_bit="16" bit_length="8" unit="" description="Size in y direction"/>
  359.       </variables>
  360.     </command>
  361.         <command id="139" name="LCD_Ack" type="specific" module="KS0108" description="Data correctly received">
  362.       <variables>
  363.     <variable name="packet_id" type="uint" start_bit="0" bit_length="8" unit="" description="Id of the packet that is acknoleged"/>
  364.       </variables>
  365.     </command>
  366.      
  367.         <command id="140" name="LCD_Error" type="specific" module="KS0108" description="Data error"/>
  368.    
  369.         <command id="141" name="LCD_Image_Data" type="specific" module="KS0108" description="Data"/>
  370.         <command id="141" name="LCD_Image_Data_7" type="specific" module="KS0108" description="Data">
  371.       <variables>
  372.         <variable name="Id" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  373.         <variable name="Data0" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  374.         <variable name="Data1" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  375.         <variable name="Data2" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  376.         <variable name="Data3" type="uint" start_bit="32" bit_length="8" unit="" description=""/>
  377.         <variable name="Data4" type="uint" start_bit="40" bit_length="8" unit="" description=""/>
  378.         <variable name="Data5" type="uint" start_bit="48" bit_length="8" unit="" description=""/>
  379.     <variable name="Data6" type="uint" start_bit="56" bit_length="8" unit="" description=""/>
  380.       </variables>
  381.     </command>
  382.     <command id="141" name="LCD_Image_Data_6" type="specific" module="KS0108" description="Data">
  383.       <variables>
  384.         <variable name="Id" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  385.         <variable name="Data0" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  386.         <variable name="Data1" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  387.         <variable name="Data2" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  388.         <variable name="Data3" type="uint" start_bit="32" bit_length="8" unit="" description=""/>
  389.         <variable name="Data4" type="uint" start_bit="40" bit_length="8" unit="" description=""/>
  390.         <variable name="Data5" type="uint" start_bit="48" bit_length="8" unit="" description=""/>
  391.       </variables>
  392.     </command>
  393.     <command id="141" name="LCD_Image_Data_5" type="specific" module="KS0108" description="Data">
  394.       <variables>
  395.         <variable name="Id" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  396.         <variable name="Data0" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  397.         <variable name="Data1" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  398.         <variable name="Data2" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  399.         <variable name="Data3" type="uint" start_bit="32" bit_length="8" unit="" description=""/>
  400.         <variable name="Data4" type="uint" start_bit="40" bit_length="8" unit="" description=""/>
  401.       </variables>
  402.     </command>
  403.     <command id="141" name="LCD_Image_Data_4" type="specific" module="KS0108" description="Data">
  404.       <variables>
  405.         <variable name="Id" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  406.         <variable name="Data0" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  407.         <variable name="Data1" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  408.         <variable name="Data2" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  409.         <variable name="Data3" type="uint" start_bit="32" bit_length="8" unit="" description=""/>
  410.       </variables>
  411.     </command>
  412.     <command id="141" name="LCD_Image_Data_3" type="specific" module="KS0108" description="Data">
  413.       <variables>
  414.         <variable name="Id" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  415.         <variable name="Data0" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  416.         <variable name="Data1" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  417.         <variable name="Data2" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  418.       </variables>
  419.     </command>
  420.     <command id="141" name="LCD_Image_Data_2" type="specific" module="KS0108" description="Data">
  421.       <variables>
  422.         <variable name="Id" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  423.         <variable name="Data0" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  424.         <variable name="Data1" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  425.       </variables>
  426.     </command>
  427.     <command id="141" name="LCD_Image_Data_1" type="specific" module="KS0108" description="Data">
  428.       <variables>
  429.         <variable name="Id" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  430.         <variable name="Data0" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  431.       </variables>
  432.     </command>
  433.     <command id="142" name="LCD_Data_id_Error" type="specific" module="KS0108" description="Wrong data id received">
  434.       <variables>
  435.     <variable name="id" type="uint" start_bit="0" bit_length="8" unit="" description="The expected id"/>
  436.       </variables>
  437.     </command>
  438.    
  439.         <command id="143" name="LCD_Data_Done" type="specific" module="KS0108" description="All data sent">
  440.       <variables>
  441.       </variables>
  442.     </command>
  443.    
  444.     <command id="128" name="Demo" type="specific" module="Dimmer230" description="Fade to x+steps, then to x-steps and then back to x. If x is close to, or at, top or bottom then fade more to the other direction">
  445.      <variables>
  446.         <variable name="Channel" type="uint" start_bit="0" bit_length="8" unit="" description="Dimmer channel"/>
  447.         <variable name="Speed" type="uint" start_bit="8" bit_length="8" unit="" description="Speed is 1/127 steps per 10ms up to 127 steps per 10ms"/>
  448.         <variable name="Steps" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  449.       </variables>
  450.     </command>
  451.    
  452.     <command id="129" name="Start_Fade" type="specific" module="Dimmer230" description="Fade in a direction and don't stop until another command is received or top/bottom is reached">
  453.      <variables>
  454.         <variable name="Channel" type="uint" start_bit="0" bit_length="8" unit="" description="Dimmer channel"/>
  455.         <variable name="Speed" type="uint" start_bit="8" bit_length="8" unit="" description="Speed is 1/127 steps per 10ms up to 127 steps per 10ms, set speed to 0 if no fading is to be used (go to target immediately)"/>
  456.         <variable name="Direction" type="enum" start_bit="16" bit_length="8" unit="" description="">
  457.             <value id="0" name="Decrease"/>
  458.             <value id="1" name="Increase"/>
  459.         </variable>
  460.       </variables>
  461.     </command>
  462.     <command id="130" name="Stop_Fade" type="specific" module="Dimmer230" description="If a fade is in progress, then stop">
  463.       <variables>
  464.         <variable name="Channel" type="uint" start_bit="0" bit_length="8" unit="" description="Dimmer channel"/>
  465.       </variables>
  466.     </command>
  467.     <command id="131" name="Abs_Fade" type="specific" module="Dimmer230" description="Fade to a defined value, stops when another command is received">
  468.      <variables>
  469.         <variable name="Channel" type="uint" start_bit="0" bit_length="8" unit="" description="Dimmer channel"/>
  470.         <variable name="Speed" type="uint" start_bit="8" bit_length="8" unit="" description="Speed is 1/127 steps per 10ms up to 127 steps per 10ms, set speed to 0 if no fading is to be used (go to target immediately)"/>
  471.         <variable name="EndValue" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  472.       </variables>
  473.     </command>
  474.     <command id="132" name="Rel_Fade" type="specific" module="Dimmer230" description="Fade a number of steps in a defined direction, stops when another command is received or top/bottom is reached">
  475.      <variables>
  476.         <variable name="Channel" type="uint" start_bit="0" bit_length="8" unit="" description="Dimmer channel"/>
  477.         <variable name="Speed" type="uint" start_bit="8" bit_length="8" unit="" description="Speed is 1/127 steps per 10ms up to 127 steps per 10ms, set speed to 0 if no fading is to be used (go to target immediately)"/>
  478.         <variable name="Direction" type="enum" start_bit="16" bit_length="8" unit="" description="">
  479.             <value id="0" name="Decrease"/>
  480.             <value id="1" name="Increase"/>
  481.         </variable>
  482.         <variable name="Steps" type="uint" start_bit="24" bit_length="8" unit="" description="Number of steps to fade"/>
  483.       </variables>
  484.     </command>
  485.     <command id="133" name="Netinfo" type="specific" module="Dimmer230" description="Information about the connected net power">
  486.      <variables>
  487.         <variable name="Connection" type="enum" start_bit="0" bit_length="1" unit="" description="If the dimmer is connected to net power">
  488.             <value id="0" name="Disconnected"/>
  489.             <value id="1" name="Connected"/>
  490.         </variable>
  491.         <variable name="Frequency" type="enum" start_bit="1" bit_length="2" unit="" description="Frequency of the net power">
  492.             <value id="0" name="Error_Unknown"/>
  493.             <value id="1" name="50Hz"/>
  494.             <value id="2" name="60Hz"/>
  495.         </variable>
  496.         <variable name="DimmerValue" type="uint" start_bit="8" bit_length="8" unit="" description="Current dimmer value"/>
  497.         <variable name="Channel" type="uint" start_bit="16" bit_length="8" unit="" description="Dimmer channel"/>
  498.       </variables>
  499.     </command>
  500.     <command id="128" name="Demo" type="specific" module="hwPWM" description="Fade to x+steps, then to x-steps and then back to x. If x is close to, or at, top or bottom then fade more to the other direction">
  501.      <variables>
  502.         <variable name="Channel" type="uint" start_bit="0" bit_length="8" unit="" description="Dimmer channel"/>
  503.         <variable name="Speed" type="uint" start_bit="8" bit_length="8" unit="" description="Speed is 1/127 steps per 10ms up to 127 steps per 10ms"/>
  504.         <variable name="Steps" type="uint" start_bit="16" bit_length="16" unit="" description="number of percent to step in %/100"/>
  505.       </variables>
  506.     </command>
  507.    
  508.     <command id="129" name="Start_Fade" type="specific" module="hwPWM" description="Fade in a direction and don't stop until another command is received or top/bottom is reached">
  509.      <variables>
  510.         <variable name="Channel" type="uint" start_bit="0" bit_length="8" unit="" description="Dimmer channel"/>
  511.         <variable name="Speed" type="uint" start_bit="8" bit_length="8" unit="" description="Speed is 1/127 steps per 10ms up to 127 steps per 10ms, set speed to 0 if no fading is to be used (go to target immediately)"/>
  512.         <variable name="Direction" type="enum" start_bit="16" bit_length="8" unit="" description="">
  513.             <value id="0" name="Decrease"/>
  514.             <value id="1" name="Increase"/>
  515.         </variable>
  516.       </variables>
  517.     </command>
  518.     <command id="130" name="Stop_Fade" type="specific" module="hwPWM" description="If a fade is in progress, then stop">
  519.       <variables>
  520.         <variable name="Channel" type="uint" start_bit="0" bit_length="8" unit="" description="Dimmer channel"/>
  521.       </variables>
  522.     </command>
  523.     <command id="131" name="Abs_Fade" type="specific" module="hwPWM" description="Fade to a defined value, stops when another command is received">
  524.      <variables>
  525.         <variable name="Channel" type="uint" start_bit="0" bit_length="8" unit="" description="Dimmer channel"/>
  526.         <variable name="Speed" type="uint" start_bit="8" bit_length="8" unit="" description="Speed is 1/127 steps per 10ms up to 127 steps per 10ms, set speed to 0 if no fading is to be used (go to target immediately)"/>
  527.         <variable name="EndValue" type="uint" start_bit="16" bit_length="16" unit="" description="end value in percent in %/100"/>
  528.       </variables>
  529.     </command>
  530.     <command id="132" name="Rel_Fade" type="specific" module="hwPWM" description="Fade a number of steps in a defined direction, stops when another command is received or top/bottom is reached">
  531.      <variables>
  532.         <variable name="Channel" type="uint" start_bit="0" bit_length="8" unit="" description="Dimmer channel"/>
  533.         <variable name="Speed" type="uint" start_bit="8" bit_length="8" unit="" description="Speed is 1/127 steps per 10ms up to 127 steps per 10ms, set speed to 0 if no fading is to be used (go to target immediately)"/>
  534.         <variable name="Direction" type="enum" start_bit="16" bit_length="8" unit="" description="">
  535.             <value id="0" name="Decrease"/>
  536.             <value id="1" name="Increase"/>
  537.         </variable>
  538.         <variable name="Steps" type="uint" start_bit="24" bit_length="16" unit="" description="Number of percent to step in %/100"/>
  539.       </variables>
  540.     </command>
  541.  
  542.     <command id="128" name="CONFIG" type="specific" module="softPWM" description="Configure the PWM">
  543.      <variables>
  544.         <variable name="Period" type="uint" start_bit="0" bit_length="16" unit="ms" description=""/>
  545.         <variable name="Resolution" type="uint" start_bit="16" bit_length="8" unit="ms" description=""/>
  546.      </variables>
  547.     </command>
  548.     <command id="128" name="Gesture" type="specific" module="Touch" description="Parsed touch data as a gesture">
  549.      <variables>
  550.         <variable name="f1" type="uint" start_bit="0" bit_length="8" unit="#" description="Indicates the number of intersection points between an input gesture g(x) and the straight line f(x) which connects the first and last point of the gesture"/>
  551.         <variable name="f7" type="uint" start_bit="8" bit_length="8" unit="#" description="Indicates the number of intersection points between an input gesture g(x) and all horizontal lines yi, where i is between 0 and n, that constitute a gesture"/>
  552.         <variable name="f3" type="enum" start_bit="16" bit_length="1" unit="" description="Indicates the sign value of area gap between g(x) and f(x)">
  553.            <value id="0" name="M"/>
  554.            <value id="1" name="P"/>
  555.         </variable>
  556.         <variable name="f4" type="enum" start_bit="17" bit_length="1" unit="" description="Represents the sign value of the sum of the x coordinates of all the points that constitute strokes minus the x coordinates of the last point">
  557.            <value id="0" name="M"/>
  558.            <value id="1" name="P"/>
  559.         </variable>
  560.         <variable name="f5" type="enum" start_bit="18" bit_length="1" unit="" description="Checks the sign value of the sum of the x coordinates of all the points that constitute strokes minus x coordinates of the first point">
  561.            <value id="0" name="M"/>
  562.            <value id="1" name="P"/>
  563.         </variable>
  564.         <variable name="f6" type="enum" start_bit="19" bit_length="1" unit="" description="Indicates the sign value of the y coordinates of the last point minus y coordinates of the first point">
  565.            <value id="0" name="M"/>
  566.            <value id="1" name="P"/>
  567.         </variable>
  568.         <variable name="f8" type="enum" start_bit="20" bit_length="1" unit="" description="Checks whether or not x coordinates of all the points except for the first point and the last point is between x0 and xn">
  569.            <value id="0" name="M"/>
  570.            <value id="1" name="P"/>
  571.         </variable>
  572.         <variable name="f9" type="enum" start_bit="21" bit_length="1" unit="" description="Represents the sign value of the multiplication of x coordinates of the first point and the last point minus the mediate value of x coordinates of all the points">
  573.            <value id="0" name="M"/>
  574.            <value id="1" name="P"/>
  575.         </variable>
  576.         <variable name="f2" type="enum" start_bit="22" bit_length="2" unit="" description="Checks if the y coordinates of the points which exist between the intersection point and the last point are greater than the y coordinates of the intersection point">
  577.            <value id="0" name="M"/>
  578.            <value id="1" name="P"/>
  579.            <value id="2" name="U"/>
  580.         </variable>
  581.      </variables>
  582.     </command>
  583.     <command id="129" name="Raw" type="specific" module="Touch" description="Raw touch data">
  584.      <variables>
  585.         <variable name="Status" type="enum" start_bit="0" bit_length="8" unit="" description="Gives the current push status">
  586.           <value id="1" name="Pressed"/>
  587.           <value id="0" name="Released"/>
  588.         </variable>
  589.         <variable name="X" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  590.         <variable name="Y" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  591.      </variables>
  592.     </command>
  593.   </commands>
  594.   <modules>
  595.     <module id="0" name="Debug" class="tst"/>
  596.     <module id="1" name="Default" class="def"/>
  597.     <module id="3" name="DS18x20" class="sns"/>
  598.     <module id="5" name="FOST02" class="sns"/>
  599.     <module id="6" name="BusVoltage" class="sns"/>
  600.     <module id="7" name="SimpleDTMF" class="sns"/>
  601.     <module id="8" name="Rotary" class="sns"/>
  602.     <module id="9" name="HD44789" class="act"/>
  603.     <module id="10" name="Dimmer230" class="act"/>
  604.     <module id="11" name="KS0108" class="act"/>
  605.     <module id="12" name="RGBdriver" class="act"/>
  606.     <module id="13" name="hwPWM" class="act"/>
  607.     <module id="14" name="irReceive" class="sns"/>
  608.     <module id="15" name="nmea" class="sns"/>
  609.     <module id="16" name="irTransmit" class="sns"/>
  610.     <module id="17" name="TC1047A" class="sns"/>
  611.     <module id="18" name="PID" class="act"/>
  612.     <module id="19" name="SlowPWM" class="act"/>
  613.     <module id="20" name="power" class="sns"/>
  614.     <module id="21" name="softPWM" class="act"/>
  615.     <module id="22" name="Touch" class="sns"/>
  616.     <module id="23" name="RotaryHex" class="sns"/>
  617.     <module id="24" name="output" class="act"/>
  618.     <module id="25" name="input" class="sns"/>
  619.     <module id="30" name="ChnMaster" class="chn"/>
  620.     <module id="31" name="ChnController" class="chn"/>
  621.   </modules>
  622.   <defines>
  623.     <define id="1" group="DirectionFlag" name="From_Owner"/>
  624.     <define id="0" group="DirectionFlag" name="To_Owner"/>
  625.   </defines>
  626.   <nmt_messages>
  627.     <nmt_message id="0" name="Time"/>
  628.     <nmt_message id="4" name="Reset">
  629.       <variables>
  630.         <variable name="HardwareId" type="uint" start_bit="0" bit_length="32" unit="" description=""/>
  631.       </variables>
  632.     </nmt_message>
  633.     <nmt_message id="8" name="Bios_Start">
  634.       <variables>
  635.         <variable name="BiosVersion" type="uint" start_bit="0" bit_length="16" unit="" description=""/>
  636.         <variable name="HasApplication" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  637.         <variable name="HardwareId" type="uint" start_bit="32" bit_length="32" unit="" description=""/>
  638.       </variables>
  639.     </nmt_message>
  640.     <nmt_message id="12" name="Pgm_Start">
  641.       <variables>
  642.         <variable name="Address0" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  643.         <variable name="Address1" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  644.         <variable name="Address2" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  645.         <variable name="Address3" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  646.         <variable name="HardwareId" type="uint" start_bit="32" bit_length="32" unit="" description=""/>
  647.       </variables>
  648.     </nmt_message>
  649.     <nmt_message id="16" name="Pgm_Data">
  650.       <variables>
  651.         <variable name="Offset" type="uint" start_bit="0" bit_length="16" unit="" description=""/>
  652.         <variable name="Data" type="uint" start_bit="16" bit_length="48" unit="" description=""/>
  653.       </variables>
  654.     </nmt_message>
  655.     <nmt_message id="16" name="Pgm_Data_48">
  656.       <variables>
  657.         <variable name="Offset0" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  658.         <variable name="Offset1" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  659.         <variable name="Data0" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  660.         <variable name="Data1" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  661.         <variable name="Data2" type="uint" start_bit="32" bit_length="8" unit="" description=""/>
  662.         <variable name="Data3" type="uint" start_bit="40" bit_length="8" unit="" description=""/>
  663.         <variable name="Data4" type="uint" start_bit="48" bit_length="8" unit="" description=""/>
  664.         <variable name="Data5" type="uint" start_bit="56" bit_length="8" unit="" description=""/>
  665.       </variables>
  666.     </nmt_message>
  667.     <nmt_message id="16" name="Pgm_Data_8">
  668.       <variables>
  669.         <variable name="Offset0" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  670.         <variable name="Offset1" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  671.         <variable name="Data0" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  672.       </variables>
  673.     </nmt_message>
  674.     <nmt_message id="16" name="Pgm_Data_16">
  675.       <variables>
  676.         <variable name="Offset0" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  677.         <variable name="Offset1" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  678.         <variable name="Data0" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  679.         <variable name="Data1" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  680.       </variables>
  681.     </nmt_message>
  682.     <nmt_message id="16" name="Pgm_Data_24">
  683.       <variables>
  684.         <variable name="Offset0" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  685.         <variable name="Offset1" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  686.         <variable name="Data0" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  687.         <variable name="Data1" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  688.         <variable name="Data2" type="uint" start_bit="32" bit_length="8" unit="" description=""/>
  689.       </variables>
  690.     </nmt_message>
  691.     <nmt_message id="16" name="Pgm_Data_32">
  692.       <variables>
  693.         <variable name="Offset0" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  694.         <variable name="Offset1" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  695.         <variable name="Data0" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  696.         <variable name="Data1" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  697.         <variable name="Data2" type="uint" start_bit="32" bit_length="8" unit="" description=""/>
  698.         <variable name="Data3" type="uint" start_bit="40" bit_length="8" unit="" description=""/>
  699.       </variables>
  700.     </nmt_message>
  701.     <nmt_message id="16" name="Pgm_Data_40">
  702.       <variables>
  703.         <variable name="Offset0" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  704.         <variable name="Offset1" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  705.         <variable name="Data0" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  706.         <variable name="Data1" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  707.         <variable name="Data2" type="uint" start_bit="32" bit_length="8" unit="" description=""/>
  708.         <variable name="Data3" type="uint" start_bit="40" bit_length="8" unit="" description=""/>
  709.         <variable name="Data4" type="uint" start_bit="48" bit_length="8" unit="" description=""/>
  710.       </variables>
  711.     </nmt_message>
  712.     <nmt_message id="20" name="Pgm_End"/>
  713.     <nmt_message id="24" name="Pgm_Copy">
  714.       <variables>
  715.         <variable name="Source0" type="uint" start_bit="0" bit_length="8" unit="" description=""/>
  716.         <variable name="Source1" type="uint" start_bit="8" bit_length="8" unit="" description=""/>
  717.         <variable name="Destination0" type="uint" start_bit="16" bit_length="8" unit="" description=""/>
  718.         <variable name="Destination1" type="uint" start_bit="24" bit_length="8" unit="" description=""/>
  719.         <variable name="Length0" type="uint" start_bit="32" bit_length="8" unit="" description=""/>
  720.         <variable name="Length1" type="uint" start_bit="40" bit_length="8" unit="" description=""/>
  721.       </variables>
  722.     </nmt_message>
  723.     <nmt_message id="28" name="Pgm_Ack">
  724.       <variables>
  725.         <variable name="Data" type="uint" start_bit="0" bit_length="16" unit="" description=""/>
  726.       </variables>
  727.     </nmt_message>
  728.     <nmt_message id="32" name="Pgm_Nack">
  729.       <variables>
  730.         <variable name="Offset" type="uint" start_bit="0" bit_length="16" unit="" description=""/>
  731.       </variables>
  732.     </nmt_message>
  733.     <nmt_message id="36" name="Start_App" description="Send to node to start the application in the node">
  734.       <variables>
  735.         <variable name="HardwareId" type="uint" start_bit="0" bit_length="32" unit="" description=""/>
  736.       </variables>
  737.     </nmt_message>
  738.     <nmt_message id="40" name="App_Start" description="Sent by the application in a node when it starts">
  739.       <variables>
  740.         <variable name="HardwareId" type="uint" start_bit="0" bit_length="32" unit="" description=""/>
  741.       </variables>
  742.     </nmt_message>
  743.     <nmt_message id="44" name="Heartbeat">
  744.       <variables>
  745.         <variable name="HardwareId" type="uint" start_bit="0" bit_length="32" unit="" description=""/>
  746.         <variable name="NumberOfModules" type="uint" start_bit="32" bit_length="8" unit="" description=""/>
  747.       </variables>
  748.     </nmt_message>
  749.   </nmt_messages>
  750. </root>
  751.