123

Dependencies:   mbed

Fork of LG by igor Apu

device.xml

Committer:
Diletant
Date:
2016-07-03
Revision:
177:672ef279c8e0
Parent:
174:0f86eedd511c
Child:
182:2bd8ec44998f

File content as of revision 177:672ef279c8e0:

<?xml version="1.0" encoding="utf-8" ?>
<root>
    <structure name="device" typedef="Device">
        <structure name="user" typedef="DeviceUserProtocol">
            <variable name="address" typedef="uint16_t" value="0"/>
        </structure>

        <structure name="sensor" typedef="DeviceSensor">
            <structure name="settings" typedef="DeviceSensorSettings">
                <variable name="id" typedef="uint16_t" value="0"/>
                <variable name="block" typedef="uint16_t" value="0"/>
            </structure>
        </structure>
        
        <structure name="counters" typedef="DeviceCounters">
            <structure name="dither" typedef="DeviceCountersDitherLatched">
                <structure name="settings" typedef="DeviceCountersDitherLatchedSettings">
                </structure>
                <structure name="state" typedef="DeviceCountersDitherLatchedState">
                    <variable name="delta[0]" typedef="uint32_t" value="0"/>
                    <variable name="delta[1]" typedef="uint32_t" value="0"/>
                    <variable name="delta[2]" typedef="uint32_t" value="0"/>
                    <variable name="delta[3]" typedef="uint32_t" value="0"/>
                    <variable name="delta[4]" typedef="uint32_t" value="0"/>
                    <variable name="delta[5]" typedef="uint32_t" value="0"/>
                    <variable name="delta[6]" typedef="uint32_t" value="0"/>
                    <variable name="delta[7]" typedef="uint32_t" value="0"/>
                    <variable name="delta[8]" typedef="uint32_t" value="0"/>
                    <variable name="delta[9]" typedef="uint32_t" value="0"/>
                    <variable name="delta[10]" typedef="uint32_t" value="0"/>
                    <variable name="delta[11]" typedef="uint32_t" value="0"/>
                    <variable name="delta[12]" typedef="uint32_t" value="0"/>
                    <variable name="delta[13]" typedef="uint32_t" value="0"/>
                    <variable name="delta[14]" typedef="uint32_t" value="0"/>
                    <variable name="delta[15]" typedef="uint32_t" value="0"/>
                    <variable name="delta[16]" typedef="uint32_t" value="0"/>
                    <variable name="delta[17]" typedef="uint32_t" value="0"/>
                    <variable name="delta[18]" typedef="uint32_t" value="0"/>
                    <variable name="delta[19]" typedef="uint32_t" value="0"/>
                    <variable name="delta[20]" typedef="uint32_t" value="0"/>
                    <variable name="delta[21]" typedef="uint32_t" value="0"/>
                    <variable name="delta[22]" typedef="uint32_t" value="0"/>
                    <variable name="delta[23]" typedef="uint32_t" value="0"/>
                    <variable name="delta[24]" typedef="uint32_t" value="0"/>
                    <variable name="delta[25]" typedef="uint32_t" value="0"/>
                    <variable name="delta[26]" typedef="uint32_t" value="0"/>
                    <variable name="delta[27]" typedef="uint32_t" value="0"/>
                    <variable name="delta[28]" typedef="uint32_t" value="0"/>
                    <variable name="delta[29]" typedef="uint32_t" value="0"/>
                    <variable name="delta[30]" typedef="uint32_t" value="0"/>
                    <variable name="delta[31]" typedef="uint32_t" value="0"/>
                    <variable name="rate" typedef="uint32_t" value="0"/>
                    <variable name="angle" typedef="uint32_t" value="0"/>
                    <variable name="amplitude" typedef="uint32_t" value="0"/>
                    <variable name="displacement" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="meander" typedef="DeviceCountersMeanderLatched">
                <structure name="settings" typedef="DeviceCountersMeanderLatchedSettings">
                </structure>
                <structure name="state" typedef="DeviceCountersMeanderLatchedState">
                    <variable name="a" typedef="uint32_t" value="0"/>
                    <variable name="b" typedef="uint32_t" value="0"/>
                    <variable name="rate[0]" typedef="uint32_t" value="0"/>
                    <variable name="rate[1]" typedef="uint32_t" value="0"/>
                    <variable name="angle[0]" typedef="uint32_t" value="0"/>
                    <variable name="angle[1]" typedef="uint32_t" value="0"/>
                    <variable name="amplitude" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="zero" typedef="DeviceCountersZeroLatched">
                <structure name="settings" typedef="DeviceCountersZeroLatchedSettings">
                </structure>
                <structure name="state" typedef="DeviceCountersZeroLatchedState">
                    <variable name="a" typedef="uint32_t" value="0"/>
                    <variable name="b" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="latch" typedef="DeviceCountersExternalLatch">
                <structure name="settings" typedef="DeviceCountersExternalLatchSettings">
                    <variable name="enabled" typedef="uint16_t" value="0"/>
                    <variable name="signal" typedef="uint16_t" value="0"/>
                    <variable name="format" typedef="uint16_t" value="0"/>
                    <variable name="reset" typedef="uint16_t" value="1"/>
                </structure>
                <structure name="state" typedef="DeviceCountersExternalLatchState">
                    <variable name="enabled" typedef="uint16_t" value="0"/>
                    <variable name="signal" typedef="uint16_t" value="0"/>
                    <variable name="format" typedef="uint16_t" value="0"/>
                    <variable name="reset" typedef="uint16_t" value="1"/>
                    <variable name="clock" typedef="uint16_t" value="0"/>
                    <variable name="angle" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
        </structure>
        
        <structure name="lightUp" typedef="DeviceLightUp">
            <structure name="settings" typedef="DeviceLightUpSettings">
                <variable name="sequence" typedef="uint16_t" value="0x0055"/>
            </structure>
            <structure name="state" typedef="DeviceLightUpState">
                <variable name="enabled" typedef="uint8_t" value="1"/>
                <variable name="sequence" typedef="uint16_t" value="0x0055"/>
            </structure>
        </structure>
        
        <structure name="tss" typedef="DeviceTSS">
            <structure name="temperature" typedef="DeviceTSSTemperature">
                <structure name="settings" typedef="DeviceTSSTemperatureSettings">
                    <structure name="transfer" typedef="DeviceTSSTransferFunction">
                        <variable name="points" typedef="int32_t" value="16"/>
                        <variable name="raw[0]" typedef="int32_t" value="-0x8e0ba2e"/>
                        <variable name="celsius[0]" typedef="int32_t" value="-0x3c0000"/>
                        <variable name="raw[1]" typedef="int32_t" value="-0x6645d17"/>
                        <variable name="celsius[1]" typedef="int32_t" value="-0x320000"/>
                        <variable name="raw[2]" typedef="int32_t" value="-0x3e80000"/>
                        <variable name="celsius[2]" typedef="int32_t" value="-0x280000"/>
                        <variable name="raw[3]" typedef="int32_t" value="-0x16ba2e8"/>
                        <variable name="celsius[3]" typedef="int32_t" value="-0x1e0000"/>
                        <variable name="raw[4]" typedef="int32_t" value="0x110ba2e"/>
                        <variable name="celsius[4]" typedef="int32_t" value="-0x140000"/>
                        <variable name="raw[5]" typedef="int32_t" value="0x38d1745"/>
                        <variable name="celsius[5]" typedef="int32_t" value="-0xa0000"/>
                        <variable name="raw[6]" typedef="int32_t" value="0x609745d"/>
                        <variable name="celsius[6]" typedef="int32_t" value="0x0"/>
                        <variable name="raw[7]" typedef="int32_t" value="0x885d174"/>
                        <variable name="celsius[7]" typedef="int32_t" value="0xa0000"/>
                        <variable name="raw[8]" typedef="int32_t" value="0xb022e8b"/>
                        <variable name="celsius[8]" typedef="int32_t" value="0x140000"/>
                        <variable name="raw[9]" typedef="int32_t" value="0xd7e8ba2"/>
                        <variable name="celsius[9]" typedef="int32_t" value="0x1e0000"/>
                        <variable name="raw[10]" typedef="int32_t" value="0xffae8ba"/>
                        <variable name="celsius[10]" typedef="int32_t" value="0x280000"/>
                        <variable name="raw[11]" typedef="int32_t" value="0x127745d1"/>
                        <variable name="celsius[11]" typedef="int32_t" value="0x320000"/>
                        <variable name="raw[12]" typedef="int32_t" value="0x14f3a2e8"/>
                        <variable name="celsius[12]" typedef="int32_t" value="0x3c0000"/>
                        <variable name="raw[13]" typedef="int32_t" value="0x176fffff"/>
                        <variable name="celsius[13]" typedef="int32_t" value="0x460000"/>
                        <variable name="raw[14]" typedef="int32_t" value="0x19ec5d17"/>
                        <variable name="celsius[14]" typedef="int32_t" value="0x500000"/>
                        <variable name="raw[15]" typedef="int32_t" value="0x1c68ba2e"/>
                        <variable name="celsius[15]" typedef="int32_t" value="0x5a0000"/>
                    </structure>
                </structure>
                
                <structure name="state" typedef="DeviceTSSTemperatureState">
                    <variable name="sum" typedef="int32_t" value="0"/>
                    <variable name="raw" typedef="int32_t" value="0"/>
                    <variable name="celsius" typedef="int32_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="gradient" typedef="DeviceTSSGradient">
                <structure name="settings" typedef="DeviceTSSGradientSettings">
                    <structure name="transfer" typedef="DeviceTSSTransferFunction">
                        <variable name="points" typedef="int32_t" value="16"/>
                        <variable name="raw[0]" typedef="int32_t" value="-0x640000"/>
                        <variable name="celsius[0]" typedef="int32_t" value="-0xa0000"/>
                        <variable name="raw[1]" typedef="int32_t" value="-0x56aaaa"/>
                        <variable name="celsius[1]" typedef="int32_t" value="-0x8aaaa"/>
                        <variable name="raw[2]" typedef="int32_t" value="-0x495555"/>
                        <variable name="celsius[2]" typedef="int32_t" value="-0x75555"/>
                        <variable name="raw[3]" typedef="int32_t" value="-0x3c0000"/>
                        <variable name="celsius[3]" typedef="int32_t" value="-0x60000"/>
                        <variable name="raw[4]" typedef="int32_t" value="-0x2eaaaa"/>
                        <variable name="celsius[4]" typedef="int32_t" value="-0x4aaaa"/>
                        <variable name="raw[5]" typedef="int32_t" value="-0x215555"/>
                        <variable name="celsius[5]" typedef="int32_t" value="-0x35555"/>
                        <variable name="raw[6]" typedef="int32_t" value="-0x140000"/>
                        <variable name="celsius[6]" typedef="int32_t" value="-0x20000"/>
                        <variable name="raw[7]" typedef="int32_t" value="-0x6aaaa"/>
                        <variable name="celsius[7]" typedef="int32_t" value="-0xaaaa"/>
                        <variable name="raw[8]" typedef="int32_t" value="0x6aaaa"/>
                        <variable name="celsius[8]" typedef="int32_t" value="0xaaaa"/>
                        <variable name="raw[9]" typedef="int32_t" value="0x140000"/>
                        <variable name="celsius[9]" typedef="int32_t" value="0x20000"/>
                        <variable name="raw[10]" typedef="int32_t" value="0x215555"/>
                        <variable name="celsius[10]" typedef="int32_t" value="0x35555"/>
                        <variable name="raw[11]" typedef="int32_t" value="0x2eaaaa"/>
                        <variable name="celsius[11]" typedef="int32_t" value="0x4aaaa"/>
                        <variable name="raw[12]" typedef="int32_t" value="0x3c0000"/>
                        <variable name="celsius[12]" typedef="int32_t" value="0x60000"/>
                        <variable name="raw[13]" typedef="int32_t" value="0x495555"/>
                        <variable name="celsius[13]" typedef="int32_t" value="0x75555"/>
                        <variable name="raw[14]" typedef="int32_t" value="0x56aaaa"/>
                        <variable name="celsius[14]" typedef="int32_t" value="0x8aaaa"/>
                        <variable name="raw[15]" typedef="int32_t" value="0x640000"/>
                        <variable name="celsius[15]" typedef="int32_t" value="0xa0000"/>
                    </structure>
                </structure>
                
                <structure name="state" typedef="DeviceTSSGradientState">
                    <variable name="sum" typedef="int32_t" value="0"/>
                    <variable name="raw" typedef="int32_t" value="0"/>
                    <variable name="celsius" typedef="int32_t" value="0"/>
                </structure>
            </structure>
        </structure>
        
        <structure name="ccs" typedef="DeviceCCS">
            <structure name="current[0]" typedef="DeviceCCSCurrent">
                <structure name="settings" typedef="DeviceCCSCurrentSettings">
                     <structure name="transfer" typedef="DeviceCCSTransferFunction">
                        <variable name="points" typedef="int32_t" value="16"/>
                        <variable name="raw[0]" typedef="int32_t" value="0x0"/>
                        <variable name="mA[0]" typedef="int32_t" value="0x0"/>
                        <variable name="raw[1]" typedef="int32_t" value="0x1111111"/>
                        <variable name="mA[1]" typedef="int32_t" value="0x6aaaa"/>
                        <variable name="raw[2]" typedef="int32_t" value="0x2222222"/>
                        <variable name="mA[2]" typedef="int32_t" value="0xd5555"/>
                        <variable name="raw[3]" typedef="int32_t" value="0x3333333"/>
                        <variable name="mA[3]" typedef="int32_t" value="0x140000"/>
                        <variable name="raw[4]" typedef="int32_t" value="0x4444444"/>
                        <variable name="mA[4]" typedef="int32_t" value="0x1aaaaa"/>
                        <variable name="raw[5]" typedef="int32_t" value="0x5555555"/>
                        <variable name="mA[5]" typedef="int32_t" value="0x215555"/>
                        <variable name="raw[6]" typedef="int32_t" value="0x6666666"/>
                        <variable name="mA[6]" typedef="int32_t" value="0x280000"/>
                        <variable name="raw[7]" typedef="int32_t" value="0x7777777"/>
                        <variable name="mA[7]" typedef="int32_t" value="0x2eaaaa"/>
                        <variable name="raw[8]" typedef="int32_t" value="0x8888888"/>
                        <variable name="mA[8]" typedef="int32_t" value="0x355555"/>
                        <variable name="raw[9]" typedef="int32_t" value="0x9999999"/>
                        <variable name="mA[9]" typedef="int32_t" value="0x3c0000"/>
                        <variable name="raw[10]" typedef="int32_t" value="0xaaaaaaa"/>
                        <variable name="mA[10]" typedef="int32_t" value="0x42aaaa"/>
                        <variable name="raw[11]" typedef="int32_t" value="0xbbbbbbb"/>
                        <variable name="mA[11]" typedef="int32_t" value="0x495555"/>
                        <variable name="raw[12]" typedef="int32_t" value="0xccccccc"/>
                        <variable name="mA[12]" typedef="int32_t" value="0x500000"/>
                        <variable name="raw[13]" typedef="int32_t" value="0xddddddd"/>
                        <variable name="mA[13]" typedef="int32_t" value="0x56aaaa"/>
                        <variable name="raw[14]" typedef="int32_t" value="0xeeeeeee"/>
                        <variable name="mA[14]" typedef="int32_t" value="0x5d5555"/>
                        <variable name="raw[15]" typedef="int32_t" value="0x10000000"/>
                        <variable name="mA[15]" typedef="int32_t" value="0x640000"/>
                     </structure>
                </structure>
                <structure name="state" typedef="DeviceCCSCurrentState">
                    <variable name="sum" typedef="int32_t" value="0"/>
                    <variable name="raw" typedef="int32_t" value="0"/>
                    <variable name="mA" typedef="int32_t" value="0"/>
                </structure>
            </structure>
            <structure name="current[1]" typedef="DeviceCCSCurrent">
                <structure name="settings" typedef="DeviceCCSCurrentSettings">
                </structure>
                <structure name="state" typedef="DeviceCCSCurrentState">
                    <variable name="sum" typedef="int32_t" value="0"/>
                    <variable name="raw" typedef="int32_t" value="0"/>
                    <variable name="mA" typedef="int32_t" value="0"/>
                </structure>
            </structure>
        </structure>
        
        <structure name="dither" typedef="DeviceDither">
            <structure name="pulse" typedef="DeviceDitherPulse">
                <structure name="settings" typedef="DeviceDitherPulseSettings">
                    <variable name="width" typedef="int32_t" value="0"/>
                    <variable name="min" typedef="int32_t" value="0"/>
                    <variable name="max" typedef="int32_t" value="0"/>
                </structure>
                
                <structure name="state" typedef="DeviceDitherPulseState">
                    <variable name="width" typedef="int32_t" value="0"/>
                    <variable name="min" typedef="int32_t" value="0"/>
                    <variable name="max" typedef="int32_t" value="0"/>
                    <variable name="rise" typedef="int32_t" value="0"/>
                    <variable name="fall" typedef="int32_t" value="0"/>
                    <variable name="counter" typedef="int32_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="noise" typedef="DeviceDitherNoise">
                <structure name="settings" typedef="DeviceDitherNoiseSettings">
                    <variable name="enabled" typedef="int8_t" value="1"/>
                    <variable name="period" typedef="int32_t" value="0"/>
                    <variable name="range" typedef="int32_t" value="0"/>
                    <variable name="amplitude" typedef="int32_t" value="0"/>
                </structure>
                
                <structure name="state" typedef="DeviceDitherNoiseState">
                    <variable name="enabled" typedef="int8_t" value="1"/>
                    <variable name="period" typedef="int32_t" value="0"/>
                    <variable name="range" typedef="int32_t" value="0"/>
                    <variable name="amplitude" typedef="int32_t" value="0"/>
                    <variable name="counter" typedef="int32_t" value="0"/>
                    <variable name="trigger" typedef="int32_t" value="0"/>
                    <variable name="disturbance" typedef="int32_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="cycle" typedef="DeviceDitherCycle">
                <structure name="settings" typedef="DeviceDitherCycleSettings">
                    <variable name="enabled" typedef="int8_t" value="1"/>
                </structure>
                
                <structure name="state" typedef="DeviceDitherCycleState">
                    <variable name="enabled" typedef="int8_t" value="1"/>
                    <variable name="pin1" typedef="int8_t" value="0"/>
                    <variable name="pin2" typedef="int8_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="detector" typedef="DeviceDitherPhaseDetector">
                <structure name="settings" typedef="DeviceDitherPhaseDetectorSettings">
                    <structure name="filter" typedef="DeviceDitherPhaseDetectorFilterFunction">
                        <variable name="factor[0]" typedef="int32_t" value="-1"/>
                        <variable name="factor[1]" typedef="int32_t" value="-1"/>
                        <variable name="factor[2]" typedef="int32_t" value="-1"/>
                        <variable name="factor[3]" typedef="int32_t" value="-1"/>
                        <variable name="factor[4]" typedef="int32_t" value="-1"/>
                        <variable name="factor[5]" typedef="int32_t" value="-1"/>
                        <variable name="factor[6]" typedef="int32_t" value="-1"/>
                        <variable name="factor[7]" typedef="int32_t" value="-1"/>
                    
                        <variable name="factor[8]" typedef="int32_t" value="-1"/>
                        <variable name="factor[9]" typedef="int32_t" value="-1"/>
                        <variable name="factor[10]" typedef="int32_t" value="-1"/>
                        <variable name="factor[11]" typedef="int32_t" value="-1"/>
                        <variable name="factor[12]" typedef="int32_t" value="-1"/>
                        <variable name="factor[13]" typedef="int32_t" value="-1"/>
                        <variable name="factor[14]" typedef="int32_t" value="-1"/>
                        <variable name="factor[15]" typedef="int32_t" value="-1"/>
                    
                        <variable name="factor[16]" typedef="int32_t" value="1"/>
                        <variable name="factor[17]" typedef="int32_t" value="1"/>
                        <variable name="factor[18]" typedef="int32_t" value="1"/>
                        <variable name="factor[19]" typedef="int32_t" value="1"/>
                        <variable name="factor[20]" typedef="int32_t" value="1"/>
                        <variable name="factor[21]" typedef="int32_t" value="1"/>
                        <variable name="factor[22]" typedef="int32_t" value="1"/>
                        <variable name="factor[23]" typedef="int32_t" value="1"/>
                    
                        <variable name="factor[24]" typedef="int32_t" value="1"/>
                        <variable name="factor[25]" typedef="int32_t" value="1"/>
                        <variable name="factor[26]" typedef="int32_t" value="1"/>
                        <variable name="factor[27]" typedef="int32_t" value="1"/>
                        <variable name="factor[28]" typedef="int32_t" value="1"/>
                        <variable name="factor[29]" typedef="int32_t" value="1"/>
                        <variable name="factor[30]" typedef="int32_t" value="1"/>
                        <variable name="factor[31]" typedef="int32_t" value="1"/>
                    </structure>
                    <structure name="transfer" typedef="DeviceDitherPhaseTransferFunction">
                        <variable name="points" typedef="uint32_t" value="16"/>
                        <variable name="raw[0]" typedef="uint32_t" value="-0x10000"/>
                        <variable name="restored[0]" typedef="uint32_t" value="-0x1921f"/>
                        <variable name="raw[1]" typedef="uint32_t" value="-0xfa67"/>
                        <variable name="restored[1]" typedef="uint32_t" value="-0x15c81"/>
                        <variable name="raw[2]" typedef="uint32_t" value="-0xe9de"/>
                        <variable name="restored[2]" typedef="uint32_t" value="-0x126e4"/>
                        <variable name="raw[3]" typedef="uint32_t" value="-0xcf1b"/>
                        <variable name="restored[3]" typedef="uint32_t" value="-0xf146"/>
                        <variable name="raw[4]" typedef="uint32_t" value="-0xab4c"/>
                        <variable name="restored[4]" typedef="uint32_t" value="-0xbba8"/>
                        <variable name="raw[5]" typedef="uint32_t" value="-0x8000"/>
                        <variable name="restored[5]" typedef="uint32_t" value="-0x860a"/>
                        <variable name="raw[6]" typedef="uint32_t" value="-0x4f1b"/>
                        <variable name="restored[6]" typedef="uint32_t" value="-0x506c"/>
                        <variable name="raw[7]" typedef="uint32_t" value="-0x1ac2"/>
                        <variable name="restored[7]" typedef="uint32_t" value="-0x1ace"/>
                        <variable name="raw[8]" typedef="uint32_t" value="0x1ac2"/>
                        <variable name="restored[8]" typedef="uint32_t" value="0x1ace"/>
                        <variable name="raw[9]" typedef="uint32_t" value="0x4f1b"/>
                        <variable name="restored[9]" typedef="uint32_t" value="0x506c"/>
                        <variable name="raw[10]" typedef="uint32_t" value="0x7fff"/>
                        <variable name="restored[10]" typedef="uint32_t" value="0x860a"/>
                        <variable name="raw[11]" typedef="uint32_t" value="0xab4c"/>
                        <variable name="restored[11]" typedef="uint32_t" value="0xbba8"/>
                        <variable name="raw[12]" typedef="uint32_t" value="0xcf1b"/>
                        <variable name="restored[12]" typedef="uint32_t" value="0xf146"/>
                        <variable name="raw[13]" typedef="uint32_t" value="0xe9de"/>
                        <variable name="restored[13]" typedef="uint32_t" value="0x126e4"/>
                        <variable name="raw[14]" typedef="uint32_t" value="0xfa67"/>
                        <variable name="restored[14]" typedef="uint32_t" value="0x15c81"/>
                        <variable name="raw[15]" typedef="uint32_t" value="0x10000"/>
                        <variable name="restored[15]" typedef="uint32_t" value="0x1921f"/>
                    </structure>
                </structure>
                <structure name="state" typedef="DeviceDitherPhaseDetectorState">
                    <variable name="phase" typedef="int32_t" value="0"/>
                    <variable name="sum" typedef="int32_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="frequency" typedef="DeviceDitherFrequencyRegulator">
                <structure name="settings" typedef="DeviceDitherFrequencyRegulatorSettings">
                    <variable name="enabled" typedef="int8_t" value="1"/>
                    <variable name="min" typedef="int32_t" value="0x01860000"/>
                    <variable name="max" typedef="int32_t" value="0x019A0000"/>
                    <variable name="scale" typedef="int32_t" value="1"/>
                    <structure name="transfer" typedef="DeviceDitherFrequencyRegulatorTransferSettings">
                        <variable name="points" typedef="int32_t" value="16"/>
                        <variable name="error[0]" typedef="int32_t" value="-0x140000"/>
                        <variable name="correction[0]" typedef="int32_t" value="0x10000"/>
                        <variable name="error[1]" typedef="int32_t" value="-0x115555"/>
                        <variable name="correction[1]" typedef="int32_t" value="0xb473"/>
                        <variable name="error[2]" typedef="int32_t" value="-0xeaaaa"/>
                        <variable name="correction[2]" typedef="int32_t" value="0x7aa7"/>
                        <variable name="error[3]" typedef="int32_t" value="-0xc0000"/>
                        <variable name="correction[3]" typedef="int32_t" value="0x4fdf"/>
                        <variable name="error[4]" typedef="int32_t" value="-0x95555"/>
                        <variable name="correction[4]" typedef="int32_t" value="0x3161"/>
                        <variable name="error[5]" typedef="int32_t" value="-0x6aaaa"/>
                        <variable name="correction[5]" typedef="int32_t" value="0x1c71"/>
                        <variable name="error[6]" typedef="int32_t" value="-0x40000"/>
                        <variable name="correction[6]" typedef="int32_t" value="0xe56"/>
                        <variable name="error[7]" typedef="int32_t" value="-0x15555"/>
                        <variable name="correction[7]" typedef="int32_t" value="0x452"/>
                        <variable name="error[8]" typedef="int32_t" value="0x15555"/>
                        <variable name="correction[8]" typedef="int32_t" value="-0x452"/>
                        <variable name="error[9]" typedef="int32_t" value="0x40000"/>
                        <variable name="correction[9]" typedef="int32_t" value="-0xe56"/>
                        <variable name="error[10]" typedef="int32_t" value="0x6aaaa"/>
                        <variable name="correction[10]" typedef="int32_t" value="-0x1c71"/>
                        <variable name="error[11]" typedef="int32_t" value="0x95555"/>
                        <variable name="correction[11]" typedef="int32_t" value="-0x3161"/>
                        <variable name="error[12]" typedef="int32_t" value="0xc0000"/>
                        <variable name="correction[12]" typedef="int32_t" value="-0x4fdf"/>
                        <variable name="error[13]" typedef="int32_t" value="0xeaaaa"/>
                        <variable name="correction[13]" typedef="int32_t" value="-0x7aa7"/>
                        <variable name="error[14]" typedef="int32_t" value="0x115555"/>
                        <variable name="correction[14]" typedef="int32_t" value="-0xb473"/>
                        <variable name="error[15]" typedef="int32_t" value="0x140000"/>
                        <variable name="correction[15]" typedef="int32_t" value="-0x10000"/>
                    </structure>
                </structure>
                
                <structure name="state" typedef="DeviceDitherFrequencyRegulatorState">
                    <variable name="enabled" typedef="uint8_t" value="1"/>
                    <variable name="min" typedef="uint32_t" value="0x01860000"/>
                    <variable name="max" typedef="uint32_t" value="0x019A0000"/>
                    <variable name="frequency" typedef="uint32_t" value="1"/>
                    <variable name="scale" typedef="uint32_t" value="1"/>
                    <variable name="error" typedef="uint32_t" value="0"/>
                    <variable name="correction" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="amplitude" typedef="DeviceDitherAmplitudeRegulator">
                <structure name="settings" typedef="DeviceDitherAmplitudeRegulatorSettings">
                    <variable name="enabled" typedef="int8_t" value="1"/>
                    <variable name="reference" typedef="int32_t" value="1"/>
                    <variable name="scale" typedef="int32_t" value="1"/>
                    <structure name="transfer" typedef="DeviceDitherAmplitudeRegulatorTransferSettings">
                        <variable name="points" typedef="int32_t" value="16"/>
                        <variable name="error[0]" typedef="int32_t" value="-0x140000"/>
                        <variable name="correction[0]" typedef="int32_t" value="0x10000"/>
                        <variable name="error[1]" typedef="int32_t" value="-0x115555"/>
                        <variable name="correction[1]" typedef="int32_t" value="0xb473"/>
                        <variable name="error[2]" typedef="int32_t" value="-0xeaaaa"/>
                        <variable name="correction[2]" typedef="int32_t" value="0x7aa7"/>
                        <variable name="error[3]" typedef="int32_t" value="-0xc0000"/>
                        <variable name="correction[3]" typedef="int32_t" value="0x4fdf"/>
                        <variable name="error[4]" typedef="int32_t" value="-0x95555"/>
                        <variable name="correction[4]" typedef="int32_t" value="0x3161"/>
                        <variable name="error[5]" typedef="int32_t" value="-0x6aaaa"/>
                        <variable name="correction[5]" typedef="int32_t" value="0x1c71"/>
                        <variable name="error[6]" typedef="int32_t" value="-0x40000"/>
                        <variable name="correction[6]" typedef="int32_t" value="0xe56"/>
                        <variable name="error[7]" typedef="int32_t" value="-0x15555"/>
                        <variable name="correction[7]" typedef="int32_t" value="0x452"/>
                        <variable name="error[8]" typedef="int32_t" value="0x15555"/>
                        <variable name="correction[8]" typedef="int32_t" value="-0x452"/>
                        <variable name="error[9]" typedef="int32_t" value="0x40000"/>
                        <variable name="correction[9]" typedef="int32_t" value="-0xe56"/>
                        <variable name="error[10]" typedef="int32_t" value="0x6aaaa"/>
                        <variable name="correction[10]" typedef="int32_t" value="-0x1c71"/>
                        <variable name="error[11]" typedef="int32_t" value="0x95555"/>
                        <variable name="correction[11]" typedef="int32_t" value="-0x3161"/>
                        <variable name="error[12]" typedef="int32_t" value="0xc0000"/>
                        <variable name="correction[12]" typedef="int32_t" value="-0x4fdf"/>
                        <variable name="error[13]" typedef="int32_t" value="0xeaaaa"/>
                        <variable name="correction[13]" typedef="int32_t" value="-0x7aa7"/>
                        <variable name="error[14]" typedef="int32_t" value="0x115555"/>
                        <variable name="correction[14]" typedef="int32_t" value="-0xb473"/>
                        <variable name="error[15]" typedef="int32_t" value="0x140000"/>
                        <variable name="correction[15]" typedef="int32_t" value="-0x10000"/>
                    </structure>
                </structure>
                
                <structure name="state" typedef="DeviceDitherAmplitudeRegulatorState">
                    <variable name="enabled" typedef="int8_t" value="1"/>
                    <variable name="reference" typedef="int32_t" value="1"/>
                    <variable name="scale" typedef="int32_t" value="1"/>
                    <variable name="frequency" typedef="int32_t" value="1"/>
                    <variable name="error" typedef="int32_t" value="0"/>
                    <variable name="correction" typedef="int32_t" value="0"/>
                </structure>
            </structure>
        </structure>
        
        <structure name="isacs" typedef="DeviceISACS">
            <structure name="potentiometers" typedef="DeviceISACSPotentiometers">
                <structure name="settings" typedef="DeviceISACSPotentiometersSettings">
                    <variable name="a" typedef="uint32_t" value="150"/>
                    <variable name="b" typedef="uint32_t" value="150"/>
                </structure>
                <structure name="state" typedef="DeviceISACSPotentiometersState">
                    <variable name="a" typedef="uint32_t" value="150"/>
                    <variable name="b" typedef="uint32_t" value="150"/>
                </structure>
            </structure>
            
            <structure name="input" typedef="DeviceISACSInput">
                <structure name="settings" typedef="DeviceISACSInputSettings">
                    <structure name="transfer" typedef="DeviceISACSInputTransferFunction">
                        <variable name="points" typedef="uint32_t" value="2"/>
                        <variable name="V[0]" typedef="uint32_t" value="0x00000000"/>
                        <variable name="raw[0]" typedef="uint32_t" value="0"/>
                        <variable name="V[1]" typedef="uint32_t" value="0x00040000"/>
                        <variable name="raw[1]" typedef="uint32_t" value="4095"/>
                        <variable name="V[2]" typedef="uint32_t" value="0x00040000"/>
                        <variable name="raw[2]" typedef="uint32_t" value="4095"/>
                        <variable name="V[3]" typedef="uint32_t" value="0x00040000"/>
                        <variable name="raw[3]" typedef="uint32_t" value="4095"/>
                        <variable name="V[4]" typedef="uint32_t" value="0x00040000"/>
                        <variable name="raw[4]" typedef="uint32_t" value="4095"/>
                        <variable name="V[5]" typedef="uint32_t" value="0x00040000"/>
                        <variable name="raw[5]" typedef="uint32_t" value="4095"/>
                        <variable name="V[6]" typedef="uint32_t" value="0x00040000"/>
                        <variable name="raw[6]" typedef="uint32_t" value="4095"/>
                        <variable name="V[7]" typedef="uint32_t" value="0x00040000"/>
                        <variable name="raw[7]" typedef="uint32_t" value="4095"/>
                        <variable name="V[8]" typedef="uint32_t" value="0x00040000"/>
                        <variable name="raw[8]" typedef="uint32_t" value="4095"/>
                        <variable name="V[9]" typedef="uint32_t" value="0x00040000"/>
                        <variable name="raw[9]" typedef="uint32_t" value="4095"/>
                        <variable name="V[10]" typedef="uint32_t" value="0x00040000"/>
                        <variable name="raw[10]" typedef="uint32_t" value="4095"/>
                        <variable name="V[11]" typedef="uint32_t" value="0x00040000"/>
                        <variable name="raw[11]" typedef="uint32_t" value="4095"/>
                        <variable name="V[12]" typedef="uint32_t" value="0x00040000"/>
                        <variable name="raw[12]" typedef="uint32_t" value="4095"/>
                        <variable name="V[13]" typedef="uint32_t" value="0x00040000"/>
                        <variable name="raw[13]" typedef="uint32_t" value="4095"/>
                        <variable name="V[14]" typedef="uint32_t" value="0x00040000"/>
                        <variable name="raw[14]" typedef="uint32_t" value="4095"/>
                        <variable name="V[15]" typedef="uint32_t" value="0x00040000"/>
                        <variable name="raw[15]" typedef="uint32_t" value="4095"/>
                    </structure>
                </structure>
                
                <structure name="state" typedef="DeviceISACSInputState">
                    <variable name="sum" typedef="uint32_t" value="0"/>
                    <variable name="raw" typedef="uint32_t" value="0"/>
                    <variable name="V" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="output" typedef="DeviceISACSOutput">
                <structure name="settings" typedef="DeviceISACSOutputSettings">
                    <structure name="start" typedef="DeviceISACSOutputStart">
                        <variable name="voltage" typedef="int32_t" value="0x000c7fff"/>
                    </structure>
                    <structure name="reset" typedef="DeviceISACSOutputReset">
                        <variable name="voltage" typedef="int32_t" value="0x000c7fff"/>
                    </structure>
                    <structure name="transfer" typedef="DeviceISACSOutputTransferFunction">
                        <variable name="points" typedef="uint32_t" value="2"/>
                        <variable name="voltage[0]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="code[0]" typedef="uint32_t" value="800"/>
                        <variable name="voltage[1]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[1]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[2]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[2]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[3]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[3]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[4]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[4]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[5]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[5]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[6]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[6]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[7]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[7]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[8]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[8]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[9]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[9]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[10]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[10]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[11]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[11]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[12]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[12]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[13]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[13]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[14]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[14]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[15]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[15]" typedef="uint32_t" value="2048"/>
                    </structure>
                </structure>
                
                <structure name="state" typedef="DeviceISACSOutputState">
                    <variable name="voltage" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="regulator" typedef="DeviceISACSRegulator">
                <structure name="settings" typedef="DeviceISACSRegulatorSettings">
                    <structure name="start" typedef="DeviceISACSRegulatorConditionSettings">
                        <variable name="enabled" typedef="uint8_t" value="1"/>
                        <variable name="reference" typedef="uint32_t" value="1"/>
                        <variable name="scale" typedef="uint32_t" value="1"/>
                    </structure>
                    
                    <structure name="regular" typedef="DeviceISACSRegulatorConditionSettings">
                        <variable name="enabled" typedef="uint8_t" value="1"/>
                        <variable name="reference" typedef="uint32_t" value="1"/>
                        <variable name="scale" typedef="uint32_t" value="1"/>
                    </structure>
                    
                    <structure name="reset" typedef="DeviceISACSRegulatorConditionSettings">
                        <variable name="enabled" typedef="uint8_t" value="1"/>
                        <variable name="reference" typedef="uint32_t" value="1"/>
                        <variable name="scale" typedef="uint32_t" value="1"/>
                    </structure>
                    
                    <structure name="transfer" typedef="DeviceISACSCorrectionTransferFunction">
                        <variable name="points" typedef="uint32_t" value="16"/>
                        <variable name="error[0]" typedef="uint32_t" value="-0x20000"/>
                        <variable name="correction[0]" typedef="uint32_t" value="0x10000"/>
                        <variable name="error[1]" typedef="uint32_t" value="-0x1bbbb"/>
                        <variable name="correction[1]" typedef="uint32_t" value="0xb473"/>
                        <variable name="error[2]" typedef="uint32_t" value="-0x17777"/>
                        <variable name="correction[2]" typedef="uint32_t" value="0x7aa7"/>
                        <variable name="error[3]" typedef="uint32_t" value="-0x13333"/>
                        <variable name="correction[3]" typedef="uint32_t" value="0x4fdf"/>
                        <variable name="error[4]" typedef="uint32_t" value="-0xeeee"/>
                        <variable name="correction[4]" typedef="uint32_t" value="0x3161"/>
                        <variable name="error[5]" typedef="uint32_t" value="-0xaaaa"/>
                        <variable name="correction[5]" typedef="uint32_t" value="0x1c71"/>
                        <variable name="error[6]" typedef="uint32_t" value="-0x6666"/>
                        <variable name="correction[6]" typedef="uint32_t" value="0xe56"/>
                        <variable name="error[7]" typedef="uint32_t" value="-0x2222"/>
                        <variable name="correction[7]" typedef="uint32_t" value="0x452"/>
                        <variable name="error[8]" typedef="uint32_t" value="0x2222"/>
                        <variable name="correction[8]" typedef="uint32_t" value="-0x452"/>
                        <variable name="error[9]" typedef="uint32_t" value="0x6666"/>
                        <variable name="correction[9]" typedef="uint32_t" value="-0xe56"/>
                        <variable name="error[10]" typedef="uint32_t" value="0xaaaa"/>
                        <variable name="correction[10]" typedef="uint32_t" value="-0x1c71"/>
                        <variable name="error[11]" typedef="uint32_t" value="0xeeee"/>
                        <variable name="correction[11]" typedef="uint32_t" value="-0x3161"/>
                        <variable name="error[12]" typedef="uint32_t" value="0x13333"/>
                        <variable name="correction[12]" typedef="uint32_t" value="-0x4fdf"/>
                        <variable name="error[13]" typedef="uint32_t" value="0x17777"/>
                        <variable name="correction[13]" typedef="uint32_t" value="-0x7aa7"/>
                        <variable name="error[14]" typedef="uint32_t" value="0x1bbbb"/>
                        <variable name="correction[14]" typedef="uint32_t" value="-0xb473"/>
                        <variable name="error[15]" typedef="uint32_t" value="0x20000"/>
                        <variable name="correction[15]" typedef="uint32_t" value="-0x10000"/>
                    </structure>
                </structure>
                
                <structure name="state" typedef="DeviceISACSRegulatorState">
                    <variable name="enabled" typedef="uint8_t" value="1"/>
                    <variable name="reference" typedef="uint32_t" value="1"/>
                    <variable name="scale" typedef="uint32_t" value="1"/>
                    <variable name="error" typedef="uint32_t" value="0"/>
                    <variable name="correction" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
        </structure>
        
        <structure name="sequencer" typedef="DeviceSequencer">
            <structure name="sampler" typedef="DeviceSequencerSampler">
                <structure name="settings" typedef="DeviceSequencerSamplerSettings">
                    <variable name="enabled" typedef="uint8_t" value="0"/>
                    <variable name="amplitude" typedef="uint32_t" value="0"/>
                    <variable name="sequence[0]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[1]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[2]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[3]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[4]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[5]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[6]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[7]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[8]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[9]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[10]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[11]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[12]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[13]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[14]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[15]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[16]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[17]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[18]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[19]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[20]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[21]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[22]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[23]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[24]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[25]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[26]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[27]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[28]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[29]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[30]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[31]" typedef="uint32_t" value="0"/>
                    <variable name="sequence[32]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[33]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[34]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[35]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[36]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[37]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[38]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[39]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[40]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[41]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[42]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[43]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[44]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[45]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[46]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[47]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[48]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[49]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[50]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[51]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[52]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[53]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[54]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[55]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[56]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[57]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[58]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[59]" typedef="uint32_t" value="1"/>
                    <vaiable name="sequence[60]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[61]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[62]" typedef="uint32_t" value="1"/>
                    <variable name="sequence[63]" typedef="uint32_t" value="1"/>
                    <variable name="position[0]" typedef="uint32_t" value="0"/>
                    <variable name="position[1]" typedef="uint32_t" value="16"/>
                </structure>
                
                <structure name="state" typedef="DeviceSequencerSamplerState">
                    <variable name="enabled" typedef="uint8_t" value="0"/>
                    <variable name="amplitude" typedef="uint32_t" value="0"/>
                    <variable name="position[0]" typedef="uint32_t" value="0"/>
                    <variable name="position[1]" typedef="uint32_t" value="16"/>
                    <variable name="sample[0]" typedef="uint32_t" value="0"/>
                    <variable name="sample[1]" typedef="uint32_t" value="0"/>
                    <variable name="voltage" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="output" typedef="DeviceSequencerOutput">
                <structure name="logic" typedef="DeviceSequencerLogicOutput">
                    <structure name="settings" typedef="DeviceSequencerLogicOutputSettings">
                        <variable name="enabled" typedef="uint8_t" value="0"/>
                    </structure>
                
                    <structure name="state" typedef="DeviceSequencerLogicOutputState">
                        <variable name="enabled" typedef="uint8_t" value="0"/>
                        <variable name="level" typedef="uint8_t" value="0"/>
                    </structure>
                </structure>
            
                <structure name="analog" typedef="DeviceSequencerAnalogOutput">
                    <structure name="settings" typedef="DeviceSequencerAnalogOutputSettings">
                        <variable name="enabled" typedef="uint8_t" value="0"/>
                        <structure name="transfer" typedef="DeviceSequencerAnalogOutputTransferFunction">
                            <variable name="points" typedef="uint32_t" value="16"/>
                            <variable name="code[0]" typedef="uint32_t" value="0x0"/>
                            <variable name="voltage[0]" typedef="uint32_t" value="-30.0V"/>
                            <variable name="code[1]" typedef="uint32_t" value="0x1100"/>
                            <variable name="voltage[1]" typedef="uint32_t" value="-26.0V"/>
                            <variable name="code[2]" typedef="uint32_t" value="0x2200"/>
                            <variable name="voltage[2]" typedef="uint32_t" value="-22.0V"/>
                            <variable name="code[3]" typedef="uint32_t" value="0x3300"/>
                            <variable name="voltage[3]" typedef="uint32_t" value="-18.0V"/>
                            <variable name="code[4]" typedef="uint32_t" value="0x4440"/>
                            <variable name="voltage[4]" typedef="uint32_t" value="-14.0V"/>
                            <variable name="code[5]" typedef="uint32_t" value="0x5540"/>
                            <variable name="voltage[5]" typedef="uint32_t" value="-10.0V"/>
                            <variable name="code[6]" typedef="uint32_t" value="0x6640"/>
                            <variable name="voltage[6]" typedef="uint32_t" value="-6.0V"/>
                            <variable name="code[7]" typedef="uint32_t" value="0x7740"/>
                            <variable name="voltage[7]" typedef="uint32_t" value="-2.0V"/>
                            <variable name="code[8]" typedef="uint32_t" value="0x8880"/>
                            <variable name="voltage[8]" typedef="uint32_t" value="2.0V"/>
                            <variable name="code[9]" typedef="uint32_t" value="0x9980"/>
                            <variable name="voltage[9]" typedef="uint32_t" value="6.0V"/>
                            <variable name="code[10]" typedef="uint32_t" value="0xaa80"/>
                            <variable name="voltage[10]" typedef="uint32_t" value="10.0V"/>
                            <variable name="code[11]" typedef="uint32_t" value="0xbb80"/>
                            <variable name="voltage[11]" typedef="uint32_t" value="14.0V"/>
                            <variable name="code[12]" typedef="uint32_t" value="0xccc0"/>
                            <variable name="voltage[12]" typedef="uint32_t" value="18.0V"/>
                            <variable name="code[13]" typedef="uint32_t" value="0xddc0"/>
                            <variable name="voltage[13]" typedef="uint32_t" value="22.0V"/>
                            <variable name="code[14]" typedef="uint32_t" value="0xeec0"/>
                            <variable name="voltage[14]" typedef="uint32_t" value="26.0V"/>
                            <variable name="code[15]" typedef="uint32_t" value="0xffc0"/>
                            <variable name="voltage[15]" typedef="uint32_t" value="30.0V"/>
                        </structure>
                    </structure>
                
                    <structure name="state" typedef="DeviceSequencerAnalogOutputState">
                        <variable name="enabled" typedef="uint8_t" value="0"/>
                        <variable name="voltage" typedef="uint32_t" value="0"/>
                    </structure>
                </structure>
            </structure>
        </structure>

        <structure name="plcs" typedef="DevicePathLengthControlSystem">
            <structure name="feedback" typedef="DevicePLCSFeedback">
                <structure name="settings" typedef="DevicePLCSFeedbackSettings">
                    <variable name="input" typedef="uint32_t" value="1"/>
                    <variable name="output" typedef="uint32_t" value="0"/>
                    <structure name="transfer" typedef="DevicePLCSFeedbackTransferFunctionSettings">
                        <variable name="points" typedef="uint32_t" value="2"/>
                        <variable name="raw[0]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[0]" typedef="uint32_t" value="800"/>
                        <variable name="raw[1]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="normalized[1]" typedef="uint32_t" value="2048"/>
                        <variable name="raw[2]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="normalized[2]" typedef="uint32_t" value="2048"/>
                        <variable name="raw[3]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="normalized[3]" typedef="uint32_t" value="2048"/>
                        <variable name="raw[4]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="normalized[4]" typedef="uint32_t" value="2048"/>
                        <variable name="raw[5]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="normalized[5]" typedef="uint32_t" value="2048"/>
                        <variable name="raw[6]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="normalized[6]" typedef="uint32_t" value="2048"/>
                        <variable name="raw[7]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="normalized[7]" typedef="uint32_t" value="2048"/>
                        <variable name="raw[8]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="normalized[8]" typedef="uint32_t" value="2048"/>
                        <variable name="raw[9]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="normalized[9]" typedef="uint32_t" value="2048"/>
                        <variable name="raw[10]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="normalized[10]" typedef="uint32_t" value="2048"/>
                        <variable name="raw[11]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="normalized[11]" typedef="uint32_t" value="2048"/>
                        <variable name="raw[12]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="normalized[12]" typedef="uint32_t" value="2048"/>
                        <variable name="raw[13]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="normalized[13]" typedef="uint32_t" value="2048"/>
                        <variable name="raw[14]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="normalized[14]" typedef="uint32_t" value="2048"/>
                        <variable name="raw[15]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="normalized[15]" typedef="uint32_t" value="2048"/>
                    </structure>
                </structure>
                
                <structure name="state" typedef="DevicePLCSFeedbackState">
                    <variable name="input" typedef="uint32_t" value="1"/>
                    <variable name="output" typedef="uint32_t" value="0"/>
                    <variable name="voltage" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="reference" typedef="DevicePLCSReference">
                <structure name="settings" typedef="DevicePLCSReferenceSettings">
                    <variable name="sequencer" typedef="uint32_t" value="0"/>
                    <variable name="delta" typedef="uint32_t" value="1"/>
                </structure>
                
                <structure name="state" typedef="DevicePLCSReferenceState">
                    <variable name="sequencer" typedef="uint32_t" value="0"/>
                    <variable name="delta" typedef="uint32_t" value="1"/>
                </structure>
            </structure>
            
            <structure name="detector" typedef="DevicePLCSDetector">
                <structure name="state" typedef="DevicePLCSDetectorState">
                    <variable name="in[0]" typedef="uint32_t" value="0"/>
                    <variable name="in[1]" typedef="uint32_t" value="0"/>
                    <variable name="out" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
                
            <structure name="bias" typedef="DevicePLCSBias">
                <structure name="settings" typedef="DevicePLCSBiasSettings">
                    <structure name="transfer" typedef="DevicePLCSBiasTransferFunction">
                        <variable name="points" typedef="uint32_t" value="2"/>
                        <variable name="raw[0]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[0]" typedef="uint32_t" value="800"/>
                        <variable name="raw[1]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[1]" typedef="uint32_t" value="800"/>
                        <variable name="raw[2]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[2]" typedef="uint32_t" value="800"/>
                        <variable name="raw[3]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[3]" typedef="uint32_t" value="800"/>
                        <variable name="raw[4]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[4]" typedef="uint32_t" value="800"/>
                        <variable name="raw[5]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[5]" typedef="uint32_t" value="800"/>
                        <variable name="raw[6]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[6]" typedef="uint32_t" value="800"/>
                        <variable name="raw[7]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[7]" typedef="uint32_t" value="800"/>
                        <variable name="raw[8]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[8]" typedef="uint32_t" value="800"/>
                        <variable name="raw[9]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[9]" typedef="uint32_t" value="800"/>
                        <variable name="raw[10]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[10]" typedef="uint32_t" value="800"/>
                        <variable name="raw[11]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[11]" typedef="uint32_t" value="800"/>
                        <variable name="raw[12]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[12]" typedef="uint32_t" value="800"/>
                        <variable name="raw[13]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[13]" typedef="uint32_t" value="800"/>
                        <variable name="raw[14]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[14]" typedef="uint32_t" value="800"/>
                        <variable name="raw[15]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="normalized[15]" typedef="uint32_t" value="800"/>
                    </structure>
                </structure>
                <structure name="state" typedef="DevicePLCSBiasState">
                    <variable name="raw" typedef="uint32_t" value="0"/>
                    <variable name="sum" typedef="uint32_t" value="0"/>
                    <variable name="counter" typedef="uint32_t" value="0"/>
                    <variable name="average" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
       
            <structure name="reset" typedef="DevicePLCSReset">
                    <structure name="levels" typedef="DevicePLCSResetLevels">
                        <variable name="upper" typedef="int32_t" value="12.5V"/>
                        <variable name="lower" typedef="int32_t" value="1.5V"/>
                    </structure>
                    
                    <structure name="up" typedef="DevicePLCSResetTemperatureFunction">
                        <variable name="points" typedef="uint32_t" value="16"/>
                        <variable name="temperature[0]" typedef="int32_t" value="-60C"/>
                        <variable name="voltage[0]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[0]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[1]" typedef="int32_t" value="-50C"/>
                        <variable name="voltage[1]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[1]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[2]" typedef="int32_t" value="-40C"/>
                        <variable name="voltage[2]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[2]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[3]" typedef="int32_t" value="-30C"/>
                        <variable name="voltage[3]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[3]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[4]" typedef="int32_t" value="-20C"/>
                        <variable name="voltage[4]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[4]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[5]" typedef="int32_t" value="-10C"/>
                        <variable name="voltage[5]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[5]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[6]" typedef="int32_t" value="0C"/>
                        <variable name="voltage[6]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[6]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[7]" typedef="int32_t" value="10C"/>
                        <variable name="voltage[7]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[7]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[8]" typedef="int32_t" value="20C"/>
                        <variable name="voltage[8]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[8]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[9]" typedef="int32_t" value="30C"/>
                        <variable name="voltage[9]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[9]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[10]" typedef="int32_t" value="40C"/>
                        <variable name="voltage[10]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[10]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[11]" typedef="int32_t" value="50C"/>
                        <variable name="voltage[11]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[11]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[12]" typedef="int32_t" value="60C"/>
                        <variable name="voltage[12]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[12]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[13]" typedef="int32_t" value="70C"/>
                        <variable name="voltage[13]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[13]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[14]" typedef="int32_t" value="80C"/>
                        <variable name="voltage[14]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[14]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[15]" typedef="int32_t" value="90C"/>
                        <variable name="voltage[15]" typedef="int32_t" value="12.5V"/>
                        <variable name="duration[15]" typedef="uint32_t" value="3s"/>
                    </structure>
                    <structure name="down" typedef="DevicePLCSResetTemperatureFunction">
                        <variable name="points" typedef="uint32_t" value="16"/>
                        <variable name="temperature[0]" typedef="int32_t" value="-60C"/>
                        <variable name="voltage[0]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[0]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[1]" typedef="int32_t" value="-50C"/>
                        <variable name="voltage[1]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[1]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[2]" typedef="int32_t" value="-40C"/>
                        <variable name="voltage[2]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[2]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[3]" typedef="int32_t" value="-30C"/>
                        <variable name="voltage[3]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[3]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[4]" typedef="int32_t" value="-20C"/>
                        <variable name="voltage[4]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[4]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[5]" typedef="int32_t" value="-10C"/>
                        <variable name="voltage[5]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[5]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[6]" typedef="int32_t" value="0C"/>
                        <variable name="voltage[6]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[6]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[7]" typedef="int32_t" value="10C"/>
                        <variable name="voltage[7]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[7]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[8]" typedef="int32_t" value="20C"/>
                        <variable name="voltage[8]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[8]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[9]" typedef="int32_t" value="30C"/>
                        <variable name="voltage[9]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[9]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[10]" typedef="int32_t" value="40C"/>
                        <variable name="voltage[10]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[10]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[11]" typedef="int32_t" value="50C"/>
                        <variable name="voltage[11]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[11]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[12]" typedef="int32_t" value="60C"/>
                        <variable name="voltage[12]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[12]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[13]" typedef="int32_t" value="70C"/>
                        <variable name="voltage[13]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[13]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[14]" typedef="int32_t" value="80C"/>
                        <variable name="voltage[14]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[14]" typedef="uint32_t" value="3s"/>
                        <variable name="temperature[15]" typedef="int32_t" value="90C"/>
                        <variable name="voltage[15]" typedef="int32_t" value="1.5V"/>
                        <variable name="duration[15]" typedef="uint32_t" value="3s"/>
                    </structure>
                
                <structure name="state" typedef="DevicePLCSResetState">
                    <variable name="countdown" typedef="int32_t" value="0"/>
                    <variable name="voltage" typedef="int32_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="regulator" typedef="DevicePLCSRegulator">
                <structure name="settings" typedef="DevicePLCSRegulatorSettings">
                    <variable name="enabled" typedef="uint8_t" value="1"/>
                    <variable name="reference" typedef="uint32_t" value="0"/>
                    <structure name="transfer" typedef="DevicePLCSCorrectionTransferFunction">
                        <variable name="points" typedef="uint32_t" value="16"/>
                        <variable name="error[0]" typedef="int32_t" value="-0x80000"/>
                        <variable name="correction[0]" typedef="int32_t" value="0x10000"/>
                        <variable name="error[1]" typedef="int32_t" value="-0x6eeee"/>
                        <variable name="correction[1]" typedef="int32_t" value="0xb473"/>
                        <variable name="error[2]" typedef="int32_t" value="-0x5dddd"/>
                        <variable name="correction[2]" typedef="int32_t" value="0x7aa7"/>
                        <variable name="error[3]" typedef="int32_t" value="-0x4cccc"/>
                        <variable name="correction[3]" typedef="int32_t" value="0x4fdf"/>
                        <variable name="error[4]" typedef="int32_t" value="-0x3bbbb"/>
                        <variable name="correction[4]" typedef="int32_t" value="0x3161"/>
                        <variable name="error[5]" typedef="int32_t" value="-0x2aaaa"/>
                        <variable name="correction[5]" typedef="int32_t" value="0x1c71"/>
                        <variable name="error[6]" typedef="int32_t" value="-0x19999"/>
                        <variable name="correction[6]" typedef="int32_t" value="0xe56"/>
                        <variable name="error[7]" typedef="int32_t" value="-0x8888"/>
                        <variable name="correction[7]" typedef="int32_t" value="0x452"/>
                        <variable name="error[8]" typedef="int32_t" value="0x8888"/>
                        <variable name="correction[8]" typedef="int32_t" value="-0x452"/>
                        <variable name="error[9]" typedef="int32_t" value="0x19999"/>
                        <variable name="correction[9]" typedef="int32_t" value="-0xe56"/>
                        <variable name="error[10]" typedef="int32_t" value="0x2aaaa"/>
                        <variable name="correction[10]" typedef="int32_t" value="-0x1c71"/>
                        <variable name="error[11]" typedef="int32_t" value="0x3bbbb"/>
                        <variable name="correction[11]" typedef="int32_t" value="-0x3161"/>
                        <variable name="error[12]" typedef="int32_t" value="0x4cccc"/>
                        <variable name="correction[12]" typedef="int32_t" value="-0x4fdf"/>
                        <variable name="error[13]" typedef="int32_t" value="0x5dddd"/>
                        <variable name="correction[13]" typedef="int32_t" value="-0x7aa7"/>
                        <variable name="error[14]" typedef="int32_t" value="0x6eeee"/>
                        <variable name="correction[14]" typedef="int32_t" value="-0xb473"/>
                        <variable name="error[15]" typedef="int32_t" value="0x80000"/>
                        <variable name="correction[15]" typedef="int32_t" value="-0x10000"/>
                    </structure>
                </structure>
                
                <structure name="state" typedef="DevicePLCSRegulatorState">
                    <variable name="enabled" typedef="uint8_t" value="1"/>
                    <variable name="reference" typedef="int32_t" value="0"/>
                    <variable name="error" typedef="int32_t" value="1"/>
                    <variable name="correction" typedef="int32_t" value="1"/>
                </structure>
            </structure>
            
            <structure name="output" typedef="DevicePLCSOutput">
                <structure name="settings" typedef="DevicePLCSOutputSettings">
                    <variable name="enabled" typedef="uint8_t" value="1"/>
                    <variable name="sequencer" typedef="uint8_t" value="1"/>
                    <structure name="start" typedef="DevicePLCSOutputStart">
                        <variable name="voltage" typedef="int32_t" value="0x000c7fff"/>
                    </structure>
                    <structure name="transfer" typedef="DevicePLCSOutputTransferFunction">
                        <variable name="points" typedef="uint32_t" value="2"/>
                        <variable name="voltage[0]" typedef="uint32_t" value="0x00017fff"/>
                        <variable name="code[0]" typedef="uint32_t" value="800"/>
                        <variable name="voltage[1]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[1]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[2]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[2]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[3]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[3]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[4]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[4]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[5]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[5]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[6]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[6]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[7]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[7]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[8]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[8]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[9]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[9]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[10]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[10]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[11]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[11]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[12]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[12]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[13]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[13]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[14]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[14]" typedef="uint32_t" value="2048"/>
                        <variable name="voltage[15]" typedef="uint32_t" value="0x000c7fff"/>
                        <variable name="code[15]" typedef="uint32_t" value="2048"/>
                    </structure>
                </structure>
                
                <structure name="state" typedef="DevicePLCSOutputState">
                    <variable name="enabled" typedef="uint8_t" value="1"/>
                    <variable name="sequencer" typedef="uint8_t" value="1"/>
                    <variable name="voltage" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
        </structure>
        
        <structure name="controller" typedef="DeviceController">
            <variable name="chip" typedef="uint32_t" value="(1768 lsh 16) | 100"/>

            <structure name="flash" typedef="DeviceFlash">
                <structure name="settings" typedef="DeviceFlashSettings">
                    <variable name="hashSector" typedef="uint16_t" value="22"/>
                    <variable name="dataSector" typedef="uint16_t" value="23"/>
                </structure>
            </structure>
            
            <structure name="uart[0]" typedef="DeviceUART">
                <structure name="settings" typedef="DeviceUARTSettings">
                    <variable name="baudRate" typedef="uint32_t" value="921600"/>
                </structure>
                
                <structure name="state" typedef="DeviceUARTState">
                    <variable name="LCR" typedef="uint8_t" value="0"/>
                    <variable name="DLM" typedef="uint8_t" value="0"/>
                    <variable name="DLL" typedef="uint8_t" value="0"/>
                    <variable name="FCR" typedef="uint8_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="uart[1]" typedef="DeviceUART">
                <structure name="settings" typedef="DeviceUARTSettings">
                    <variable name="baudRate" typedef="uint32_t" value="38400"/>
                </structure>
                
                <structure name="state" typedef="DeviceUARTState">
                    <variable name="LCR" typedef="uint8_t" value="0"/>
                    <variable name="DLM" typedef="uint8_t" value="0"/>
                    <variable name="DLL" typedef="uint8_t" value="0"/>
                    <variable name="FCR" typedef="uint8_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="timer[0]" typedef="DeviceTimer">
                <structure name="settings" typedef="DeviceTimerSettings">
                </structure>
                
                <structure name="state" typedef="DeviceTimerState">
                    <variable name="MR0" typedef="uint32_t" value="0"/>
                    <variable name="MCR" typedef="uint32_t" value="0"/>
                    <variable name="TCR" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="SSP" typedef="DeviceSSP">
                <variable name="in[0]" typedef="uint32_t" value="0"/>
                <variable name="in[1]" typedef="uint32_t" value="0"/>
                <variable name="in[2]" typedef="uint32_t" value="0"/>
                <variable name="in[3]" typedef="uint32_t" value="0"/>
                <variable name="in[4]" typedef="uint32_t" value="0"/>
                <variable name="out[0]" typedef="uint32_t" value="0"/>
                <variable name="out[1]" typedef="uint32_t" value="0"/>
            </structure>
            
            <structure name="I2C" typedef="DeviceI2C">
                <structure name="settings" typedef="DeviceI2CSettings">
                    <variable name="trigger" typedef="uint32_t" value="38400"/>
                </structure>
                
                <structure name="state" typedef="DeviceI2CState">
                    <variable name="CON0" typedef="uint32_t" value="0"/>
                    <variable name="buffer[0]" typedef="uint32_t" value="0"/>
                    <variable name="buffer[1]" typedef="uint32_t" value="0"/>
                    <variable name="buffer[2]" typedef="uint32_t" value="0"/>
                    <variable name="buffer[3]" typedef="uint32_t" value="0"/>
                    <variable name="buffer[4]" typedef="uint32_t" value="0"/>
                    <variable name="buffer[5]" typedef="uint32_t" value="0"/>
                    <variable name="position" typedef="uint32_t" value="0"/>
                    <variable name="counter" typedef="uint32_t" value="0"/>
                    <variable name="trigger" typedef="uint32_t" value="0"/>
                    <variable name="enabled" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
            
            <structure name="QEI" typedef="DeviceQEI">
                <structure name="settings" typedef="DeviceQEISettings">
                </structure>
                
                <structure name="state" typedef="DeviceQEIState">
                    <variable name="position" typedef="uint32_t" value="0"/>
                    <variable name="delta" typedef="uint32_t" value="0"/>
                </structure>
            </structure>
        </structure>
    </structure>
    
    <function name="FlashReadAll" result="void">
    </function>
    <function name="FlashWriteAll" result="void">
    </function>
    <function name="StartLightUp" result="void">
    </function>
</root>