Compare commits

..

No commits in common. "master" and "step_dps" have entirely different histories.

83 changed files with 6629 additions and 27070 deletions

View file

@ -24,7 +24,7 @@ class appdata(tcobject):
subtype = 0
size = 0
comment = ""
delta = 3
delta = 1
def bin(self):
return b""

View file

@ -1,29 +0,0 @@
#!/usr/bin/python3
"""
This script generates XML telecommands for:
- updating the unit configuration of HET/EPT1&2 to version v0009 in the ICU RAM
- updating the unit configuration of HET/EPT1&2 to version v0009 in the EEPROMs
- sending index tables for switching between CLOSE/FAR mode
- sending index tables for changing the temperature configuration
To reproduce to original set of commands, the git repository should be at the state tagged with 'hetept-v0009':
git checkout hetept-v0009
"""
def main(cf_dir='./solo/configurations/', op_dir='./xml_tcs_hetept_v0010/'):
from solo.hetept.config_update import write_xml_cf_to_icu, write_xml_cf_to_eeprom, write_xml_table_index_execution
fm1_txt = cf_dir + 'hetept1/v0010/hetept_config_fm1.txt'
fm2_txt = cf_dir+ 'hetept2/v0010/hetept_config_fm2.txt'
write_xml_cf_to_icu(fm1_txt, op_dir, 0x20000, eeprom_page=0x0)
write_xml_cf_to_icu(fm2_txt, op_dir, 0x40000, eeprom_page=0x0)
write_xml_cf_to_eeprom(fm1_txt, op_dir, eeprom_page=0x0, pointer_reset=0x30000+0x80)
write_xml_cf_to_eeprom(fm2_txt, op_dir, eeprom_page=0x0, pointer_reset=0x50000+0x80)
write_xml_table_index_execution(op_dir)
if __name__ == "__main__":
import sys, os
sys.path[1:1] = [os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "..", ".."))]
main(cf_dir='../')

View file

@ -1,7 +0,0 @@
<TCs>
<TC type="128" subtype="103" id="ZID52541" comment="Switch HE1 to calibration for -6.0 deg C" delta="00:00:03">
<parameter name="SensorID" id="PID00083">2</parameter>
<parameter name="IndexTable" id="PID00084">1</parameter>
<parameter name="BlockIndex" id="PID00077">10</parameter>
</TC>
</TCs>

View file

@ -1,7 +0,0 @@
<TCs>
<TC type="128" subtype="103" id="ZID52541" comment="Switch HE1 to calibration for -0.8 deg C" delta="00:00:03">
<parameter name="SensorID" id="PID00083">2</parameter>
<parameter name="IndexTable" id="PID00084">1</parameter>
<parameter name="BlockIndex" id="PID00077">11</parameter>
</TC>
</TCs>

View file

@ -1,7 +0,0 @@
<TCs>
<TC type="128" subtype="103" id="ZID52541" comment="Switch HE1 to nominal mode" delta="00:00:03">
<parameter name="SensorID" id="PID00083">2</parameter>
<parameter name="IndexTable" id="PID00084">1</parameter>
<parameter name="BlockIndex" id="PID00077">2</parameter>
</TC>
</TCs>

View file

@ -1,7 +0,0 @@
<TCs>
<TC type="128" subtype="103" id="ZID52541" comment="Switch HE1 to close mode" delta="00:00:03">
<parameter name="SensorID" id="PID00083">2</parameter>
<parameter name="IndexTable" id="PID00084">1</parameter>
<parameter name="BlockIndex" id="PID00077">4</parameter>
</TC>
</TCs>

View file

@ -1,7 +0,0 @@
<TCs>
<TC type="128" subtype="103" id="ZID52541" comment="Switch HE1 to far mode" delta="00:00:03">
<parameter name="SensorID" id="PID00083">2</parameter>
<parameter name="IndexTable" id="PID00084">1</parameter>
<parameter name="BlockIndex" id="PID00077">8</parameter>
</TC>
</TCs>

View file

@ -1,7 +0,0 @@
<TCs>
<TC type="128" subtype="103" id="ZID52541" comment="Switch HE1 to calibration for -11.6 deg C" delta="00:00:03">
<parameter name="SensorID" id="PID00083">2</parameter>
<parameter name="IndexTable" id="PID00084">1</parameter>
<parameter name="BlockIndex" id="PID00077">9</parameter>
</TC>
</TCs>

View file

@ -1,7 +0,0 @@
<TCs>
<TC type="128" subtype="103" id="ZID52541" comment="Switch HE2 to calibration for -0.8 deg C" delta="00:00:03">
<parameter name="SensorID" id="PID00083">3</parameter>
<parameter name="IndexTable" id="PID00084">2</parameter>
<parameter name="BlockIndex" id="PID00077">10</parameter>
</TC>
</TCs>

View file

@ -1,7 +0,0 @@
<TCs>
<TC type="128" subtype="103" id="ZID52541" comment="Switch HE2 to calibration for +4.4 deg C" delta="00:00:03">
<parameter name="SensorID" id="PID00083">3</parameter>
<parameter name="IndexTable" id="PID00084">2</parameter>
<parameter name="BlockIndex" id="PID00077">11</parameter>
</TC>
</TCs>

View file

@ -1,7 +0,0 @@
<TCs>
<TC type="128" subtype="103" id="ZID52541" comment="Switch HE2 to nominal mode" delta="00:00:03">
<parameter name="SensorID" id="PID00083">3</parameter>
<parameter name="IndexTable" id="PID00084">2</parameter>
<parameter name="BlockIndex" id="PID00077">2</parameter>
</TC>
</TCs>

View file

@ -1,7 +0,0 @@
<TCs>
<TC type="128" subtype="103" id="ZID52541" comment="Switch HE2 to close mode" delta="00:00:03">
<parameter name="SensorID" id="PID00083">3</parameter>
<parameter name="IndexTable" id="PID00084">2</parameter>
<parameter name="BlockIndex" id="PID00077">4</parameter>
</TC>
</TCs>

View file

@ -1,7 +0,0 @@
<TCs>
<TC type="128" subtype="103" id="ZID52541" comment="Switch HE2 to far mode" delta="00:00:03">
<parameter name="SensorID" id="PID00083">3</parameter>
<parameter name="IndexTable" id="PID00084">2</parameter>
<parameter name="BlockIndex" id="PID00077">8</parameter>
</TC>
</TCs>

View file

@ -1,7 +0,0 @@
<TCs>
<TC type="128" subtype="103" id="ZID52541" comment="Switch HE2 to calibration for -6.0 deg C" delta="00:00:03">
<parameter name="SensorID" id="PID00083">3</parameter>
<parameter name="IndexTable" id="PID00084">2</parameter>
<parameter name="BlockIndex" id="PID00077">9</parameter>
</TC>
</TCs>

View file

@ -1,23 +0,0 @@
msg(0x000f, 3, 0x0000093500090002)
msg(0x2662, 3, 0x00004a000000d22c)
msg(0x2663, 3, 0x003003f20010002d)
msg(0x2664, 3, 0x00004e010000d22c)
msg(0x2665, 3, 0x003003f200100019)
msg(0x2666, 3, 0x000052000000d230)
msg(0x2667, 3, 0x003003f10010002e)
msg(0x266a, 3, 0x000056010000d230)
msg(0x266b, 3, 0x003003f100100019)
msg(0x266c, 3, 0x00005a000000d234)
msg(0x266d, 3, 0x000c03e80004002d)
msg(0x266e, 3, 0x00005e010000d234)
msg(0x266f, 3, 0x000c03e800040019)
msg(0x2670, 3, 0x000062000000d238)
msg(0x2671, 3, 0x000c04020004002d)
msg(0x2672, 3, 0x000066010000d238)
msg(0x2673, 3, 0x000c040200040019)
msg(0x2674, 3, 0x00006a010000d23c)
msg(0x2675, 3, 0x3c00000000000001)
msg(0x2676, 3, 0x00006e010000d240)
msg(0x2677, 3, 0x03c0000000000004)
msg(0x2697, 1, 0x00000000000000ff)
msg(0x2696, 3, 0x0003e8010000413c)

View file

@ -1,14 +0,0 @@
<TCs>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">c00f0000093500090002e66200004a000000d22ce663003003f20010002de66400004e010000d22ce665003003f200100019e666000052000000d230e667003003f10010002ee66a000056010000d230e66b003003f100100019e66c00005a000000d234e66d000c03e80004002de66e00005e010000d234e66f000c03e800040019e670000062000000d238e671000c04020004002de672000066010000d238e673000c040200040019e67400006a010000d23ce6753c00000000000001e67600006e010000d240</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">3</parameter>
<parameter name="Messages" id="PID00075">e67703c0000000000004669700ffe6960003e8010000413c</parameter>
</TC>
</TCs>

View file

@ -1,69 +0,0 @@
msg(0x2694, 3, 0x00012c0100000000)
msg(0x2695, 0, 0x0000000000000000)
msg(0x0000, 2, 0x0000000002000000)
msg(0x000f, 3, 0x0000093500090003)
msg(0x2405, 3, 0x0350000009020000)
msg(0x2406, 3, 0x890400000100000c)
msg(0x2407, 3, 0x1c009e0dd90d6a07)
msg(0x2408, 3, 0x99006007840060fe)
msg(0x2409, 3, 0x440060fc9b000112)
msg(0x240a, 3, 0xc3700000c0c03d00)
msg(0x240b, 3, 0x06f7cbff01000016)
msg(0x240c, 3, 0x06f7fdfd01000018)
msg(0x240d, 3, 0x11190017e0000019)
msg(0x240e, 3, 0x091600000100001c)
msg(0x240f, 3, 0x091800000100001e)
msg(0x2410, 3, 0x111f001de000001f)
msg(0x2411, 3, 0x1c009e21d9216a07)
msg(0x2412, 3, 0x9c009e1bd91b6a07)
msg(0x2413, 3, 0xc3700000c0c03d00)
msg(0x2414, 3, 0x19096a07dc009e09)
msg(0x2415, 3, 0x85ff6007a040002a)
msg(0x2416, 3, 0x6001002b8c00002c)
msg(0x2417, 3, 0x80c03d00040060fc)
msg(0x2418, 3, 0x440060fe1b000130)
msg(0x2419, 3, 0x89050003a0004032)
msg(0x241a, 3, 0x857f0033a0c00034)
msg(0x241b, 3, 0x8804000281000036)
msg(0x241c, 3, 0x9900ef37857fef37)
msg(0x241d, 3, 0x8c35193903d00000)
msg(0x241e, 3, 0x03b0000020000000)
msg(0x241f, 3, 0x60000100a0000200)
msg(0x2420, 3, 0x06f7f5f801000040)
msg(0x2421, 3, 0x06f7cffa01000042)
msg(0x2422, 3, 0x11430041e0000043)
msg(0x2423, 3, 0x20000041a0000043)
msg(0x2424, 3, 0x0350000009400000)
msg(0x2425, 3, 0x894200000100004a)
msg(0x2426, 3, 0x1c009e4bd94b6a45)
msg(0x2427, 3, 0x99006045840060f8)
msg(0x2428, 3, 0x440060fa9b000150)
msg(0x2429, 3, 0xc3700000c0c07b00)
msg(0x242a, 3, 0x06f7e9f901000054)
msg(0x242b, 3, 0x06f7ebfb01000056)
msg(0x242c, 3, 0x11570055e0000057)
msg(0x242d, 3, 0x095400000100005a)
msg(0x242e, 3, 0x095600000100005c)
msg(0x242f, 3, 0x115d005be000005d)
msg(0x2430, 3, 0x1c009e5fd95f6a45)
msg(0x2431, 3, 0x9c009e59d9596a45)
msg(0x2432, 3, 0xc3700000c0c07b00)
msg(0x2433, 3, 0x19476a45dc009e47)
msg(0x2434, 3, 0x85ff6045a0430068)
msg(0x2435, 3, 0x7fff00698c00006a)
msg(0x2436, 3, 0x80c07b00040060fa)
msg(0x2437, 3, 0x440060f81b00016e)
msg(0x2438, 3, 0x89410043a0004070)
msg(0x2439, 3, 0x857f0071a0c08072)
msg(0x243a, 3, 0x8842004081000074)
msg(0x243b, 3, 0x9900ef75857fef75)
msg(0x243c, 3, 0x8c73197703d00000)
msg(0x243d, 3, 0x03b0000020000000)
msg(0x243e, 3, 0x60000100a0000200)
msg(0x243f, 3, 0x087d003f1c00017e)
msg(0x2440, 3, 0xe000020014000001)
msg(0x2441, 3, 0x8700008000000000)
msg(0x2694, 3, 0x00012c0100008000)
msg(0x2695, 2, 0x00000000083f0000)
msg(0x2697, 1, 0x00000000000000ff)
msg(0x2696, 3, 0x0003e8010000413c)

View file

@ -1,26 +0,0 @@
<TCs>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">22</parameter>
<parameter name="Messages" id="PID00075">e69400012c01000000002695800002000000c00f0000093500090003e4050350000009020000e406890400000100000ce4071c009e0dd90d6a07e40899006007840060fee409440060fc9b000112e40ac3700000c0c03d00e40b06f7cbff01000016e40c06f7fdfd01000018e40d11190017e0000019e40e091600000100001ce40f091800000100001ee410111f001de000001fe4111c009e21d9216a07e4129c009e1bd91b6a07e413c3700000c0c03d00e41419096a07dc009e09e41585ff6007a040002ae4166001002b8c00002c</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e41780c03d00040060fce418440060fe1b000130e41989050003a0004032e41a857f0033a0c00034e41b8804000281000036e41c9900ef37857fef37e41d8c35193903d00000e41e03b0000020000000e41f60000100a0000200e42006f7f5f801000040e42106f7cffa01000042e42211430041e0000043e42320000041a0000043e4240350000009400000e425894200000100004ae4261c009e4bd94b6a45e42799006045840060f8e428440060fa9b000150e429c3700000c0c07b00e42a06f7e9f901000054</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e42b06f7ebfb01000056e42c11570055e0000057e42d095400000100005ae42e095600000100005ce42f115d005be000005de4301c009e5fd95f6a45e4319c009e59d9596a45e432c3700000c0c07b00e43319476a45dc009e47e43485ff6045a0430068e4357fff00698c00006ae43680c07b00040060fae437440060f81b00016ee43889410043a0004070e439857f0071a0c08072e43a8842004081000074e43b9900ef75857fef75e43c8c73197703d00000e43d03b0000020000000e43e60000100a0000200</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">7</parameter>
<parameter name="Messages" id="PID00075">e43f087d003f1c00017ee440e000020014000001e4418700008000000000e69400012c0100008000a695083f0000669700ffe6960003e8010000413c</parameter>
</TC>
</TCs>

View file

@ -1,5 +0,0 @@
msg(0x000f, 3, 0x0000093500090004)
msg(0x268c, 3, 0x0000af1f0000c002)
msg(0x268d, 3, 0x007270e00a0c8600)
msg(0x2697, 1, 0x00000000000000ff)
msg(0x2696, 3, 0x0003e8010000413c)

View file

@ -1,8 +0,0 @@
<TCs>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">5</parameter>
<parameter name="Messages" id="PID00075">c00f0000093500090004e68c0000af1f0000c002e68d007270e00a0c8600669700ffe6960003e8010000413c</parameter>
</TC>
</TCs>

View file

@ -1,202 +0,0 @@
msg(0x2694, 3, 0x00012c0100000000)
msg(0x2695, 0, 0x0000000000000000)
msg(0x0000, 2, 0x0000000002000000)
msg(0x000f, 3, 0x0000093500090005)
msg(0x2400, 3, 0x09e000e000800000)
msg(0x2401, 3, 0x06f7edfe01000002)
msg(0x2402, 3, 0x06f7d3fc01000004)
msg(0x2403, 3, 0x11050003e0000005)
msg(0x2404, 3, 0x20000003a0000005)
msg(0x2405, 3, 0x0350000009020000)
msg(0x2406, 3, 0x890400000100000c)
msg(0x2407, 3, 0x1c009e0dd90d6a07)
msg(0x2408, 3, 0x99006007840060fe)
msg(0x2409, 3, 0x440060fc9b000112)
msg(0x240a, 3, 0xc3700000c0c03d00)
msg(0x240b, 3, 0x06f7cbff01000016)
msg(0x240c, 3, 0x06f7fdfd01000018)
msg(0x240d, 3, 0x11190017e0000019)
msg(0x240e, 3, 0x091600000100001c)
msg(0x240f, 3, 0x091800000100001e)
msg(0x2410, 3, 0x111f001de000001f)
msg(0x2411, 3, 0x1c009e21d9216a07)
msg(0x2412, 3, 0x9c009e1bd91b6a07)
msg(0x2413, 3, 0xc3700000c0c03d00)
msg(0x2414, 3, 0x19096a07dc009e09)
msg(0x2415, 3, 0x85ff6007a040002a)
msg(0x2416, 3, 0x6001002b8c00002c)
msg(0x2417, 3, 0x80c03d00040060fc)
msg(0x2418, 3, 0x440060fe1b000130)
msg(0x2419, 3, 0x89050003a0004032)
msg(0x241a, 3, 0x857f0033a0c00034)
msg(0x241b, 3, 0x8804000281000036)
msg(0x241c, 3, 0x9900ef37857fef37)
msg(0x241d, 3, 0x8c35193903d00000)
msg(0x241e, 3, 0x03b0000020000000)
msg(0x241f, 3, 0x60000100a0000200)
msg(0x2420, 3, 0x06f7f5f801000040)
msg(0x2421, 3, 0x06f7cffa01000042)
msg(0x2422, 3, 0x11430041e0000043)
msg(0x2423, 3, 0x20000041a0000043)
msg(0x2424, 3, 0x0350000009400000)
msg(0x2425, 3, 0x894200000100004a)
msg(0x2426, 3, 0x1c009e4bd94b6a45)
msg(0x2427, 3, 0x99006045840060f8)
msg(0x2428, 3, 0x440060fa9b000150)
msg(0x2429, 3, 0xc3700000c0c07b00)
msg(0x242a, 3, 0x06f7e9f901000054)
msg(0x242b, 3, 0x06f7ebfb01000056)
msg(0x242c, 3, 0x11570055e0000057)
msg(0x242d, 3, 0x095400000100005a)
msg(0x242e, 3, 0x095600000100005c)
msg(0x242f, 3, 0x115d005be000005d)
msg(0x2430, 3, 0x1c009e5fd95f6a45)
msg(0x2431, 3, 0x9c009e59d9596a45)
msg(0x2432, 3, 0xc3700000c0c07b00)
msg(0x2433, 3, 0x19476a45dc009e47)
msg(0x2434, 3, 0x85ff6045a0430068)
msg(0x2435, 3, 0x7fff00698c00006a)
msg(0x2436, 3, 0x80c07b00040060fa)
msg(0x2437, 3, 0x440060f81b00016e)
msg(0x2438, 3, 0x89410043a0004070)
msg(0x2439, 3, 0x857f0071a0c08072)
msg(0x243a, 3, 0x8842004081000074)
msg(0x243b, 3, 0x9900ef75857fef75)
msg(0x243c, 3, 0x8c73197703d00000)
msg(0x243d, 3, 0x03b0000020000000)
msg(0x243e, 3, 0x60000100a0000200)
msg(0x243f, 3, 0x087d003f1c00017e)
msg(0x2440, 3, 0xe000020014000001)
msg(0x2441, 3, 0x8700008000000000)
msg(0x2480, 3, 0x09e000e02088b800)
msg(0x2481, 3, 0x08000801140200e8)
msg(0x2482, 3, 0xe00000ea86eb4f04)
msg(0x2483, 3, 0xc6aa7405140200f7)
msg(0x2484, 3, 0xe00000eb86eb3308)
msg(0x2485, 3, 0xc6aa5109140a0006)
msg(0x2486, 3, 0xa000000a0100000c)
msg(0x2487, 3, 0xe0000004a0000008)
msg(0x2488, 3, 0x03d00000140200e3)
msg(0x2489, 3, 0xe00000e286eaf012)
msg(0x248a, 3, 0xc6aa2113140200e4)
msg(0x248b, 3, 0xe00000e586eb4016)
msg(0x248c, 3, 0xc6aa681714180014)
msg(0x248d, 3, 0xa00000180100001a)
msg(0x248e, 3, 0xe0000012a0000016)
msg(0x248f, 3, 0x200000006000011e)
msg(0x2490, 3, 0xa000011f06e91be9)
msg(0x2491, 3, 0x010000211c22351b)
msg(0x2492, 3, 0x9900b522c400600f)
msg(0x2493, 3, 0xdc000125c400601d)
msg(0x2494, 3, 0xdc00012780c27700)
msg(0x2495, 3, 0x081a000c0100002a)
msg(0x2496, 3, 0x140200e7e00000e6)
msg(0x2497, 3, 0x86de522dc69bb92e)
msg(0x2498, 3, 0x140200f4e00000f6)
msg(0x2499, 3, 0x86de5231c69bb932)
msg(0x249a, 3, 0x082f113301000034)
msg(0x249b, 3, 0x22000000142b5535)
msg(0x249c, 3, 0xdc00df35c0c23a00)
msg(0x249d, 3, 0x1900df3580c27700)
msg(0x249e, 3, 0x1900022003d00000)
msg(0x249f, 3, 0xd40000202000000c)
msg(0x24a0, 3, 0xc6cfdb3f46cfba40)
msg(0x24a1, 3, 0x010000410942002b)
msg(0x24a2, 3, 0x06cc00420844002b)
msg(0x24a3, 3, 0x3ffdb64511000046)
msg(0x24a4, 3, 0x80c175003ffee145)
msg(0x24a5, 3, 0x11000049c0c27700)
msg(0x24a6, 3, 0x059fd32b1900a049)
msg(0x24a7, 3, 0xe0000036cc4c004e)
msg(0x24a8, 3, 0xc7000f00c0c17f00)
msg(0x24a9, 3, 0x1900d949c0c27700)
msg(0x24aa, 3, 0x1900ee4980c16200)
msg(0x24ab, 3, 0x19000443c0c27700)
msg(0x24ac, 3, 0x3ffee74216000058)
msg(0x24ad, 3, 0x2000a036a001e036)
msg(0x24ae, 3, 0x2000004c9149e000)
msg(0x24af, 3, 0xa000015d0c5e005b)
msg(0x24b0, 3, 0x07000e0000c17f00)
msg(0x24b1, 3, 0x1900044340c16e00)
msg(0x24b2, 3, 0x051f004308000164)
msg(0x24b3, 3, 0x3ffef449051f0066)
msg(0x24b4, 3, 0x2002003608670068)
msg(0x24b5, 3, 0x0c65b069c0c27700)
msg(0x24b6, 3, 0x07000d0000c17f00)
msg(0x24b7, 3, 0x3ffec7429100006e)
msg(0x24b8, 3, 0xc0c2770020014036)
msg(0x24b9, 3, 0x0c4c007107000d00)
msg(0x24ba, 3, 0x00c17f00051f0043)
msg(0x24bb, 3, 0x05ff004620040036)
msg(0x24bc, 3, 0x087590770c761078)
msg(0x24bd, 3, 0x19000443c0c27700)
msg(0x24be, 3, 0x19007046c7000c00)
msg(0x24bf, 3, 0x87000b000400e0e1)
msg(0x24c0, 3, 0x1400007f80000000)
msg(0x24c1, 3, 0x00c0020000000000)
msg(0x2500, 3, 0x09e000e02088b800)
msg(0x2501, 3, 0x08000801140200f2)
msg(0x2502, 3, 0xe00000f386eb3104)
msg(0x2503, 3, 0xc6aa3405140200f1)
msg(0x2504, 3, 0xe00000f086eb8108)
msg(0x2505, 3, 0xc6aaa009140a0006)
msg(0x2506, 3, 0xa000000a0100000c)
msg(0x2507, 3, 0xe0000004a0000008)
msg(0x2508, 3, 0x03d00000140200ed)
msg(0x2509, 3, 0xe00000ec86eb0412)
msg(0x250a, 3, 0xc6aa7913140200ef)
msg(0x250b, 3, 0xe00000ee86eb0616)
msg(0x250c, 3, 0xc6aa291714180014)
msg(0x250d, 3, 0xa00000180100001a)
msg(0x250e, 3, 0xe0000012a0000016)
msg(0x250f, 3, 0x200000006000011e)
msg(0x2510, 3, 0xa000011f06e969f5)
msg(0x2511, 3, 0x010000211c22351b)
msg(0x2512, 3, 0x9900b522c400600f)
msg(0x2513, 3, 0xdc000125c400601d)
msg(0x2514, 3, 0xdc00012780c27700)
msg(0x2515, 3, 0x081a000c0100002a)
msg(0x2516, 3, 0x140200e7e00000e6)
msg(0x2517, 3, 0x86de522dc69bb92e)
msg(0x2518, 3, 0x140200f4e00000f6)
msg(0x2519, 3, 0x86de5231c69bb932)
msg(0x251a, 3, 0x082f113301000034)
msg(0x251b, 3, 0x23000000142b5535)
msg(0x251c, 3, 0xdc00df3580c13a00)
msg(0x251d, 3, 0xc400602ddc00013a)
msg(0x251e, 3, 0xc4006031dc00013c)
msg(0x251f, 3, 0xd41b350d80c27700)
msg(0x2520, 3, 0x141a000ce000001a)
msg(0x2521, 3, 0x1900022003d00000)
msg(0x2522, 3, 0xd400002020000041)
msg(0x2523, 3, 0xc6cfdb4146cfba46)
msg(0x2524, 3, 0x0100004706bc0048)
msg(0x2525, 3, 0x082a31340100004a)
msg(0x2526, 3, 0x084b00493ffe414c)
msg(0x2527, 3, 0x1100004dc0c27700)
msg(0x2528, 3, 0x19009f4dd900ef1b)
msg(0x2529, 3, 0xd900ef0dc57faf4b)
msg(0x252a, 3, 0xe0140036cc530054)
msg(0x252b, 3, 0xc7000a00c0c27300)
msg(0x252c, 3, 0x3fff384d11000058)
msg(0x252d, 3, 0xc0c2770019002158)
msg(0x252e, 3, 0xc57ff84be0148036)
msg(0x252f, 3, 0xcc5c005dc7000900)
msg(0x2530, 3, 0xc0c273000948004b)
msg(0x2531, 3, 0x2000206108000262)
msg(0x2532, 3, 0x051f006319006b58)
msg(0x2533, 3, 0xc51f4b58e0150036)
msg(0x2534, 3, 0xc8660067cc64b068)
msg(0x2535, 3, 0xc7000800c0c27300)
msg(0x2536, 3, 0x05ff776620190036)
msg(0x2537, 3, 0x086c106d0c64906e)
msg(0x2538, 3, 0x1900936cc7000700)
msg(0x2539, 3, 0x870006000400e0e1)
msg(0x253a, 3, 0x1400007380000000)
msg(0x253b, 3, 0x00c002000400e0e1)
msg(0x253c, 3, 0x14000077c0c00000)
msg(0x253d, 3, 0x0700030000000000)
msg(0x2694, 3, 0x00012c0100008000)
msg(0x2695, 2, 0x00000000083f0000)
msg(0x2697, 1, 0x00000000000000ff)
msg(0x2696, 3, 0x0003e8010000413c)

View file

@ -1,62 +0,0 @@
<TCs>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">22</parameter>
<parameter name="Messages" id="PID00075">e69400012c01000000002695800002000000c00f0000093500090005e40009e000e000800000e40106f7edfe01000002e40206f7d3fc01000004e40311050003e0000005e40420000003a0000005e4050350000009020000e406890400000100000ce4071c009e0dd90d6a07e40899006007840060fee409440060fc9b000112e40ac3700000c0c03d00e40b06f7cbff01000016e40c06f7fdfd01000018e40d11190017e0000019e40e091600000100001ce40f091800000100001ee410111f001de000001fe4111c009e21d9216a07</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e4129c009e1bd91b6a07e413c3700000c0c03d00e41419096a07dc009e09e41585ff6007a040002ae4166001002b8c00002ce41780c03d00040060fce418440060fe1b000130e41989050003a0004032e41a857f0033a0c00034e41b8804000281000036e41c9900ef37857fef37e41d8c35193903d00000e41e03b0000020000000e41f60000100a0000200e42006f7f5f801000040e42106f7cffa01000042e42211430041e0000043e42320000041a0000043e4240350000009400000e425894200000100004a</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e4261c009e4bd94b6a45e42799006045840060f8e428440060fa9b000150e429c3700000c0c07b00e42a06f7e9f901000054e42b06f7ebfb01000056e42c11570055e0000057e42d095400000100005ae42e095600000100005ce42f115d005be000005de4301c009e5fd95f6a45e4319c009e59d9596a45e432c3700000c0c07b00e43319476a45dc009e47e43485ff6045a0430068e4357fff00698c00006ae43680c07b00040060fae437440060f81b00016ee43889410043a0004070e439857f0071a0c08072</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e43a8842004081000074e43b9900ef75857fef75e43c8c73197703d00000e43d03b0000020000000e43e60000100a0000200e43f087d003f1c00017ee440e000020014000001e4418700008000000000e48009e000e02088b800e48108000801140200e8e482e00000ea86eb4f04e483c6aa7405140200f7e484e00000eb86eb3308e485c6aa5109140a0006e486a000000a0100000ce487e0000004a0000008e48803d00000140200e3e489e00000e286eaf012e48ac6aa2113140200e4e48be00000e586eb4016</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e48cc6aa681714180014e48da00000180100001ae48ee0000012a0000016e48f200000006000011ee490a000011f06e91be9e491010000211c22351be4929900b522c400600fe493dc000125c400601de494dc00012780c27700e495081a000c0100002ae496140200e7e00000e6e49786de522dc69bb92ee498140200f4e00000f6e49986de5231c69bb932e49a082f113301000034e49b22000000142b5535e49cdc00df35c0c23a00e49d1900df3580c27700e49e1900022003d00000e49fd40000202000000c</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e4a0c6cfdb3f46cfba40e4a1010000410942002be4a206cc00420844002be4a33ffdb64511000046e4a480c175003ffee145e4a511000049c0c27700e4a6059fd32b1900a049e4a7e0000036cc4c004ee4a8c7000f00c0c17f00e4a91900d949c0c27700e4aa1900ee4980c16200e4ab19000443c0c27700e4ac3ffee74216000058e4ad2000a036a001e036e4ae2000004c9149e000e4afa000015d0c5e005be4b007000e0000c17f00e4b11900044340c16e00e4b2051f004308000164e4b33ffef449051f0066</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e4b42002003608670068e4b50c65b069c0c27700e4b607000d0000c17f00e4b73ffec7429100006ee4b8c0c2770020014036e4b90c4c007107000d00e4ba00c17f00051f0043e4bb05ff004620040036e4bc087590770c761078e4bd19000443c0c27700e4be19007046c7000c00e4bf87000b000400e0e1e4c01400007f80000000e4c100c0020000000000e50009e000e02088b800e50108000801140200f2e502e00000f386eb3104e503c6aa3405140200f1e504e00000f086eb8108e505c6aaa009140a0006</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e506a000000a0100000ce507e0000004a0000008e50803d00000140200ede509e00000ec86eb0412e50ac6aa7913140200efe50be00000ee86eb0616e50cc6aa291714180014e50da00000180100001ae50ee0000012a0000016e50f200000006000011ee510a000011f06e969f5e511010000211c22351be5129900b522c400600fe513dc000125c400601de514dc00012780c27700e515081a000c0100002ae516140200e7e00000e6e51786de522dc69bb92ee518140200f4e00000f6e51986de5231c69bb932</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e51a082f113301000034e51b23000000142b5535e51cdc00df3580c13a00e51dc400602ddc00013ae51ec4006031dc00013ce51fd41b350d80c27700e520141a000ce000001ae5211900022003d00000e522d400002020000041e523c6cfdb4146cfba46e5240100004706bc0048e525082a31340100004ae526084b00493ffe414ce5271100004dc0c27700e52819009f4dd900ef1be529d900ef0dc57faf4be52ae0140036cc530054e52bc7000a00c0c27300e52c3fff384d11000058e52dc0c2770019002158</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e52ec57ff84be0148036e52fcc5c005dc7000900e530c0c273000948004be5312000206108000262e532051f006319006b58e533c51f4b58e0150036e534c8660067cc64b068e535c7000800c0c27300e53605ff776620190036e537086c106d0c64906ee5381900936cc7000700e539870006000400e0e1e53a1400007380000000e53b00c002000400e0e1e53c14000077c0c00000e53d0700030000000000e69400012c0100008000a695083f0000669700ffe6960003e8010000413c</parameter>
</TC>
</TCs>

View file

@ -1,4 +0,0 @@
msg(0x268c, 3, 0x0000af1f0000c002)
msg(0x268d, 3, 0x007270e00f78ff00)
msg(0x2697, 1, 0x00000000000000ff)
msg(0x2696, 3, 0x0003e8010000413c)

View file

@ -1,8 +0,0 @@
<TCs>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">4</parameter>
<parameter name="Messages" id="PID00075">e68c0000af1f0000c002e68d007270e00f78ff00669700ffe6960003e8010000413c</parameter>
</TC>
</TCs>

View file

@ -1,23 +0,0 @@
msg(0x000f, 3, 0x0000093500090002)
msg(0x2662, 3, 0x00004a000000d22c)
msg(0x2663, 3, 0x003003ec0010002d)
msg(0x2664, 3, 0x00004e010000d22c)
msg(0x2665, 3, 0x003003ec00100019)
msg(0x2666, 3, 0x000052000000d230)
msg(0x2667, 3, 0x003003eb0010002e)
msg(0x266a, 3, 0x000056010000d230)
msg(0x266b, 3, 0x003003eb00100019)
msg(0x266c, 3, 0x00005a000000d234)
msg(0x266d, 3, 0x000c03ec0004002c)
msg(0x266e, 3, 0x00005e010000d234)
msg(0x266f, 3, 0x000c03ec00040018)
msg(0x2670, 3, 0x000062000000d238)
msg(0x2671, 3, 0x000c03c50004002d)
msg(0x2672, 3, 0x000066010000d238)
msg(0x2673, 3, 0x000c03c500040019)
msg(0x2674, 3, 0x00006a010000d23c)
msg(0x2675, 3, 0x3c00000000000001)
msg(0x2676, 3, 0x00006e010000d240)
msg(0x2677, 3, 0x03c0000000000004)
msg(0x2697, 1, 0x00000000000000ff)
msg(0x2696, 3, 0x0003e8010000413c)

View file

@ -1,14 +0,0 @@
<TCs>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">c00f0000093500090002e66200004a000000d22ce663003003ec0010002de66400004e010000d22ce665003003ec00100019e666000052000000d230e667003003eb0010002ee66a000056010000d230e66b003003eb00100019e66c00005a000000d234e66d000c03ec0004002ce66e00005e010000d234e66f000c03ec00040018e670000062000000d238e671000c03c50004002de672000066010000d238e673000c03c500040019e67400006a010000d23ce6753c00000000000001e67600006e010000d240</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">3</parameter>
<parameter name="Messages" id="PID00075">e67703c0000000000004669700ffe6960003e8010000413c</parameter>
</TC>
</TCs>

View file

@ -1,69 +0,0 @@
msg(0x2694, 3, 0x00012c0100000000)
msg(0x2695, 0, 0x0000000000000000)
msg(0x0000, 2, 0x0000000002000000)
msg(0x000f, 3, 0x0000093500090003)
msg(0x2405, 3, 0x0350000009020000)
msg(0x2406, 3, 0x890400000100000c)
msg(0x2407, 3, 0x1c009e0dd90d6a07)
msg(0x2408, 3, 0x99006007840060fe)
msg(0x2409, 3, 0x440060fc9b000112)
msg(0x240a, 3, 0xc3700000c0c03d00)
msg(0x240b, 3, 0x06f848ff01000016)
msg(0x240c, 3, 0x06f7f6fd01000018)
msg(0x240d, 3, 0x11190017e0000019)
msg(0x240e, 3, 0x091600000100001c)
msg(0x240f, 3, 0x091800000100001e)
msg(0x2410, 3, 0x111f001de000001f)
msg(0x2411, 3, 0x1c009e21d9216a07)
msg(0x2412, 3, 0x9c009e1bd91b6a07)
msg(0x2413, 3, 0xc3700000c0c03d00)
msg(0x2414, 3, 0x19096a07dc009e09)
msg(0x2415, 3, 0x85ff6007a040002a)
msg(0x2416, 3, 0x6001002b8c00002c)
msg(0x2417, 3, 0x80c03d00040060fc)
msg(0x2418, 3, 0x440060fe1b000130)
msg(0x2419, 3, 0x89050003a0004032)
msg(0x241a, 3, 0x857f0033a0c00034)
msg(0x241b, 3, 0x8804000281000036)
msg(0x241c, 3, 0x9900ef37857fef37)
msg(0x241d, 3, 0x8c35193903d00000)
msg(0x241e, 3, 0x03b0000020000000)
msg(0x241f, 3, 0x60000100a0000200)
msg(0x2420, 3, 0x06f7dbf801000040)
msg(0x2421, 3, 0x06f7cffa01000042)
msg(0x2422, 3, 0x11430041e0000043)
msg(0x2423, 3, 0x20000041a0000043)
msg(0x2424, 3, 0x0350000009400000)
msg(0x2425, 3, 0x894200000100004a)
msg(0x2426, 3, 0x1c009e4bd94b6a45)
msg(0x2427, 3, 0x99006045840060f8)
msg(0x2428, 3, 0x440060fa9b000150)
msg(0x2429, 3, 0xc3700000c0c07b00)
msg(0x242a, 3, 0x06f7f6f901000054)
msg(0x242b, 3, 0x06f7f8fb01000056)
msg(0x242c, 3, 0x11570055e0000057)
msg(0x242d, 3, 0x095400000100005a)
msg(0x242e, 3, 0x095600000100005c)
msg(0x242f, 3, 0x115d005be000005d)
msg(0x2430, 3, 0x1c009e5fd95f6a45)
msg(0x2431, 3, 0x9c009e59d9596a45)
msg(0x2432, 3, 0xc3700000c0c07b00)
msg(0x2433, 3, 0x19476a45dc009e47)
msg(0x2434, 3, 0x85ff6045a0430068)
msg(0x2435, 3, 0x7fff00698c00006a)
msg(0x2436, 3, 0x80c07b00040060fa)
msg(0x2437, 3, 0x440060f81b00016e)
msg(0x2438, 3, 0x89410043a0004070)
msg(0x2439, 3, 0x857f0071a0c08072)
msg(0x243a, 3, 0x8842004081000074)
msg(0x243b, 3, 0x9900ef75857fef75)
msg(0x243c, 3, 0x8c73197703d00000)
msg(0x243d, 3, 0x03b0000020000000)
msg(0x243e, 3, 0x60000100a0000200)
msg(0x243f, 3, 0x087d003f1c00017e)
msg(0x2440, 3, 0xe000020014000001)
msg(0x2441, 3, 0x8700008000000000)
msg(0x2694, 3, 0x00012c0100008000)
msg(0x2695, 2, 0x00000000083f0000)
msg(0x2697, 1, 0x00000000000000ff)
msg(0x2696, 3, 0x0003e8010000413c)

View file

@ -1,26 +0,0 @@
<TCs>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">22</parameter>
<parameter name="Messages" id="PID00075">e69400012c01000000002695800002000000c00f0000093500090003e4050350000009020000e406890400000100000ce4071c009e0dd90d6a07e40899006007840060fee409440060fc9b000112e40ac3700000c0c03d00e40b06f848ff01000016e40c06f7f6fd01000018e40d11190017e0000019e40e091600000100001ce40f091800000100001ee410111f001de000001fe4111c009e21d9216a07e4129c009e1bd91b6a07e413c3700000c0c03d00e41419096a07dc009e09e41585ff6007a040002ae4166001002b8c00002c</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e41780c03d00040060fce418440060fe1b000130e41989050003a0004032e41a857f0033a0c00034e41b8804000281000036e41c9900ef37857fef37e41d8c35193903d00000e41e03b0000020000000e41f60000100a0000200e42006f7dbf801000040e42106f7cffa01000042e42211430041e0000043e42320000041a0000043e4240350000009400000e425894200000100004ae4261c009e4bd94b6a45e42799006045840060f8e428440060fa9b000150e429c3700000c0c07b00e42a06f7f6f901000054</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e42b06f7f8fb01000056e42c11570055e0000057e42d095400000100005ae42e095600000100005ce42f115d005be000005de4301c009e5fd95f6a45e4319c009e59d9596a45e432c3700000c0c07b00e43319476a45dc009e47e43485ff6045a0430068e4357fff00698c00006ae43680c07b00040060fae437440060f81b00016ee43889410043a0004070e439857f0071a0c08072e43a8842004081000074e43b9900ef75857fef75e43c8c73197703d00000e43d03b0000020000000e43e60000100a0000200</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">7</parameter>
<parameter name="Messages" id="PID00075">e43f087d003f1c00017ee440e000020014000001e4418700008000000000e69400012c0100008000a695083f0000669700ffe6960003e8010000413c</parameter>
</TC>
</TCs>

View file

@ -1,202 +0,0 @@
msg(0x2694, 3, 0x00012c0100000000)
msg(0x2695, 0, 0x0000000000000000)
msg(0x0000, 2, 0x0000000002000000)
msg(0x000f, 3, 0x0000093500090005)
msg(0x2400, 3, 0x09e000e000800000)
msg(0x2401, 3, 0x06f7e8fe01000002)
msg(0x2402, 3, 0x06f808fc01000004)
msg(0x2403, 3, 0x11050003e0000005)
msg(0x2404, 3, 0x20000003a0000005)
msg(0x2405, 3, 0x0350000009020000)
msg(0x2406, 3, 0x890400000100000c)
msg(0x2407, 3, 0x1c009e0dd90d6a07)
msg(0x2408, 3, 0x99006007840060fe)
msg(0x2409, 3, 0x440060fc9b000112)
msg(0x240a, 3, 0xc3700000c0c03d00)
msg(0x240b, 3, 0x06f848ff01000016)
msg(0x240c, 3, 0x06f7f6fd01000018)
msg(0x240d, 3, 0x11190017e0000019)
msg(0x240e, 3, 0x091600000100001c)
msg(0x240f, 3, 0x091800000100001e)
msg(0x2410, 3, 0x111f001de000001f)
msg(0x2411, 3, 0x1c009e21d9216a07)
msg(0x2412, 3, 0x9c009e1bd91b6a07)
msg(0x2413, 3, 0xc3700000c0c03d00)
msg(0x2414, 3, 0x19096a07dc009e09)
msg(0x2415, 3, 0x85ff6007a040002a)
msg(0x2416, 3, 0x6001002b8c00002c)
msg(0x2417, 3, 0x80c03d00040060fc)
msg(0x2418, 3, 0x440060fe1b000130)
msg(0x2419, 3, 0x89050003a0004032)
msg(0x241a, 3, 0x857f0033a0c00034)
msg(0x241b, 3, 0x8804000281000036)
msg(0x241c, 3, 0x9900ef37857fef37)
msg(0x241d, 3, 0x8c35193903d00000)
msg(0x241e, 3, 0x03b0000020000000)
msg(0x241f, 3, 0x60000100a0000200)
msg(0x2420, 3, 0x06f7dbf801000040)
msg(0x2421, 3, 0x06f7cffa01000042)
msg(0x2422, 3, 0x11430041e0000043)
msg(0x2423, 3, 0x20000041a0000043)
msg(0x2424, 3, 0x0350000009400000)
msg(0x2425, 3, 0x894200000100004a)
msg(0x2426, 3, 0x1c009e4bd94b6a45)
msg(0x2427, 3, 0x99006045840060f8)
msg(0x2428, 3, 0x440060fa9b000150)
msg(0x2429, 3, 0xc3700000c0c07b00)
msg(0x242a, 3, 0x06f7f6f901000054)
msg(0x242b, 3, 0x06f7f8fb01000056)
msg(0x242c, 3, 0x11570055e0000057)
msg(0x242d, 3, 0x095400000100005a)
msg(0x242e, 3, 0x095600000100005c)
msg(0x242f, 3, 0x115d005be000005d)
msg(0x2430, 3, 0x1c009e5fd95f6a45)
msg(0x2431, 3, 0x9c009e59d9596a45)
msg(0x2432, 3, 0xc3700000c0c07b00)
msg(0x2433, 3, 0x19476a45dc009e47)
msg(0x2434, 3, 0x85ff6045a0430068)
msg(0x2435, 3, 0x7fff00698c00006a)
msg(0x2436, 3, 0x80c07b00040060fa)
msg(0x2437, 3, 0x440060f81b00016e)
msg(0x2438, 3, 0x89410043a0004070)
msg(0x2439, 3, 0x857f0071a0c08072)
msg(0x243a, 3, 0x8842004081000074)
msg(0x243b, 3, 0x9900ef75857fef75)
msg(0x243c, 3, 0x8c73197703d00000)
msg(0x243d, 3, 0x03b0000020000000)
msg(0x243e, 3, 0x60000100a0000200)
msg(0x243f, 3, 0x087d003f1c00017e)
msg(0x2440, 3, 0xe000020014000001)
msg(0x2441, 3, 0x8700008000000000)
msg(0x2480, 3, 0x09e000e02088b800)
msg(0x2481, 3, 0x08000801140200e8)
msg(0x2482, 3, 0xe00000ea86eb1a04)
msg(0x2483, 3, 0xc6a9e105140200f7)
msg(0x2484, 3, 0xe00000eb86eaf008)
msg(0x2485, 3, 0xc6a9a809140a0006)
msg(0x2486, 3, 0xa000000a0100000c)
msg(0x2487, 3, 0xe0000004a0000008)
msg(0x2488, 3, 0x03d00000140200e3)
msg(0x2489, 3, 0xe00000e286eabb12)
msg(0x248a, 3, 0xc6a9bb13140200e4)
msg(0x248b, 3, 0xe00000e586eb9216)
msg(0x248c, 3, 0xc6a9fb1714180014)
msg(0x248d, 3, 0xa00000180100001a)
msg(0x248e, 3, 0xe0000012a0000016)
msg(0x248f, 3, 0x200000006000011e)
msg(0x2490, 3, 0xa000011f06e909e9)
msg(0x2491, 3, 0x010000211c22351b)
msg(0x2492, 3, 0x9900b522c400600f)
msg(0x2493, 3, 0xdc000125c400601d)
msg(0x2494, 3, 0xdc00012780c27700)
msg(0x2495, 3, 0x081a000c0100002a)
msg(0x2496, 3, 0x140200e7e00000e6)
msg(0x2497, 3, 0x86de202dc69b822e)
msg(0x2498, 3, 0x140200f4e00000f6)
msg(0x2499, 3, 0x86de2031c69b8232)
msg(0x249a, 3, 0x082f113301000034)
msg(0x249b, 3, 0x22000000142b5535)
msg(0x249c, 3, 0xdc00df35c0c23a00)
msg(0x249d, 3, 0x1900df3580c27700)
msg(0x249e, 3, 0x1900022003d00000)
msg(0x249f, 3, 0xd40000202000000c)
msg(0x24a0, 3, 0xc6cfdb3f46cfba40)
msg(0x24a1, 3, 0x010000410942002b)
msg(0x24a2, 3, 0x06cc00420844002b)
msg(0x24a3, 3, 0x3ffdb64511000046)
msg(0x24a4, 3, 0x80c175003ffee145)
msg(0x24a5, 3, 0x11000049c0c27700)
msg(0x24a6, 3, 0x059fd32b1900a049)
msg(0x24a7, 3, 0xe0000036cc4c004e)
msg(0x24a8, 3, 0xc7000f00c0c17f00)
msg(0x24a9, 3, 0x1900d949c0c27700)
msg(0x24aa, 3, 0x1900ee4980c16200)
msg(0x24ab, 3, 0x19000443c0c27700)
msg(0x24ac, 3, 0x3ffee74216000058)
msg(0x24ad, 3, 0x2000a036a001e036)
msg(0x24ae, 3, 0x2000004c9149e000)
msg(0x24af, 3, 0xa000015d0c5e005b)
msg(0x24b0, 3, 0x07000e0000c17f00)
msg(0x24b1, 3, 0x1900044340c16e00)
msg(0x24b2, 3, 0x051f004308000164)
msg(0x24b3, 3, 0x3ffef449051f0066)
msg(0x24b4, 3, 0x2002003608670068)
msg(0x24b5, 3, 0x0c65b069c0c27700)
msg(0x24b6, 3, 0x07000d0000c17f00)
msg(0x24b7, 3, 0x3ffec7429100006e)
msg(0x24b8, 3, 0xc0c2770020014036)
msg(0x24b9, 3, 0x0c4c007107000d00)
msg(0x24ba, 3, 0x00c17f00051f0043)
msg(0x24bb, 3, 0x05ff004620040036)
msg(0x24bc, 3, 0x087590770c761078)
msg(0x24bd, 3, 0x19000443c0c27700)
msg(0x24be, 3, 0x19007046c7000c00)
msg(0x24bf, 3, 0x87000b000400e0e1)
msg(0x24c0, 3, 0x1400007f80000000)
msg(0x24c1, 3, 0x00c0020000000000)
msg(0x2500, 3, 0x09e000e02088b800)
msg(0x2501, 3, 0x08000801140200f2)
msg(0x2502, 3, 0xe00000f386ec4904)
msg(0x2503, 3, 0xc6aa0b05140200f1)
msg(0x2504, 3, 0xe00000f086eb0f08)
msg(0x2505, 3, 0xc6a98e09140a0006)
msg(0x2506, 3, 0xa000000a0100000c)
msg(0x2507, 3, 0xe0000004a0000008)
msg(0x2508, 3, 0x03d00000140200ed)
msg(0x2509, 3, 0xe00000ec86eaf712)
msg(0x250a, 3, 0xc6a9c513140200ef)
msg(0x250b, 3, 0xe00000ee86eafb16)
msg(0x250c, 3, 0xc6a9c31714180014)
msg(0x250d, 3, 0xa00000180100001a)
msg(0x250e, 3, 0xe0000012a0000016)
msg(0x250f, 3, 0x200000006000011e)
msg(0x2510, 3, 0xa000011f06e96bf5)
msg(0x2511, 3, 0x010000211c22351b)
msg(0x2512, 3, 0x9900b522c400600f)
msg(0x2513, 3, 0xdc000125c400601d)
msg(0x2514, 3, 0xdc00012780c27700)
msg(0x2515, 3, 0x081a000c0100002a)
msg(0x2516, 3, 0x140200e7e00000e6)
msg(0x2517, 3, 0x86de202dc69b822e)
msg(0x2518, 3, 0x140200f4e00000f6)
msg(0x2519, 3, 0x86de2031c69b8232)
msg(0x251a, 3, 0x082f113301000034)
msg(0x251b, 3, 0x23000000142b5535)
msg(0x251c, 3, 0xdc00df3580c13a00)
msg(0x251d, 3, 0xc400602ddc00013a)
msg(0x251e, 3, 0xc4006031dc00013c)
msg(0x251f, 3, 0xd41b350d80c27700)
msg(0x2520, 3, 0x141a000ce000001a)
msg(0x2521, 3, 0x1900022003d00000)
msg(0x2522, 3, 0xd400002020000041)
msg(0x2523, 3, 0xc6cfdb4146cfba46)
msg(0x2524, 3, 0x0100004706bc0048)
msg(0x2525, 3, 0x082a31340100004a)
msg(0x2526, 3, 0x084b00493ffe414c)
msg(0x2527, 3, 0x1100004dc0c27700)
msg(0x2528, 3, 0x19009f4dd900ef1b)
msg(0x2529, 3, 0xd900ef0dc57faf4b)
msg(0x252a, 3, 0xe0140036cc530054)
msg(0x252b, 3, 0xc7000a00c0c27300)
msg(0x252c, 3, 0x3fff384d11000058)
msg(0x252d, 3, 0xc0c2770019002158)
msg(0x252e, 3, 0xc57ff84be0148036)
msg(0x252f, 3, 0xcc5c005dc7000900)
msg(0x2530, 3, 0xc0c273000948004b)
msg(0x2531, 3, 0x2000206108000262)
msg(0x2532, 3, 0x051f006319006b58)
msg(0x2533, 3, 0xc51f4b58e0150036)
msg(0x2534, 3, 0xc8660067cc64b068)
msg(0x2535, 3, 0xc7000800c0c27300)
msg(0x2536, 3, 0x05ff776620190036)
msg(0x2537, 3, 0x086c106d0c64906e)
msg(0x2538, 3, 0x1900936cc7000700)
msg(0x2539, 3, 0x870006000400e0e1)
msg(0x253a, 3, 0x1400007380000000)
msg(0x253b, 3, 0x00c002000400e0e1)
msg(0x253c, 3, 0x14000077c0c00000)
msg(0x253d, 3, 0x0700030000000000)
msg(0x2694, 3, 0x00012c0100008000)
msg(0x2695, 2, 0x00000000083f0000)
msg(0x2697, 1, 0x00000000000000ff)
msg(0x2696, 3, 0x0003e8010000413c)

View file

@ -1,62 +0,0 @@
<TCs>
<TC type="128" subtype="102" id="ZID52540" comment="DELAY=1000ms" delta="00:16:40">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">22</parameter>
<parameter name="Messages" id="PID00075">e69400012c01000000002695800002000000c00f0000093500090005e40009e000e000800000e40106f7e8fe01000002e40206f808fc01000004e40311050003e0000005e40420000003a0000005e4050350000009020000e406890400000100000ce4071c009e0dd90d6a07e40899006007840060fee409440060fc9b000112e40ac3700000c0c03d00e40b06f848ff01000016e40c06f7f6fd01000018e40d11190017e0000019e40e091600000100001ce40f091800000100001ee410111f001de000001fe4111c009e21d9216a07</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e4129c009e1bd91b6a07e413c3700000c0c03d00e41419096a07dc009e09e41585ff6007a040002ae4166001002b8c00002ce41780c03d00040060fce418440060fe1b000130e41989050003a0004032e41a857f0033a0c00034e41b8804000281000036e41c9900ef37857fef37e41d8c35193903d00000e41e03b0000020000000e41f60000100a0000200e42006f7dbf801000040e42106f7cffa01000042e42211430041e0000043e42320000041a0000043e4240350000009400000e425894200000100004a</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e4261c009e4bd94b6a45e42799006045840060f8e428440060fa9b000150e429c3700000c0c07b00e42a06f7f6f901000054e42b06f7f8fb01000056e42c11570055e0000057e42d095400000100005ae42e095600000100005ce42f115d005be000005de4301c009e5fd95f6a45e4319c009e59d9596a45e432c3700000c0c07b00e43319476a45dc009e47e43485ff6045a0430068e4357fff00698c00006ae43680c07b00040060fae437440060f81b00016ee43889410043a0004070e439857f0071a0c08072</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e43a8842004081000074e43b9900ef75857fef75e43c8c73197703d00000e43d03b0000020000000e43e60000100a0000200e43f087d003f1c00017ee440e000020014000001e4418700008000000000e48009e000e02088b800e48108000801140200e8e482e00000ea86eb1a04e483c6a9e105140200f7e484e00000eb86eaf008e485c6a9a809140a0006e486a000000a0100000ce487e0000004a0000008e48803d00000140200e3e489e00000e286eabb12e48ac6a9bb13140200e4e48be00000e586eb9216</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e48cc6a9fb1714180014e48da00000180100001ae48ee0000012a0000016e48f200000006000011ee490a000011f06e909e9e491010000211c22351be4929900b522c400600fe493dc000125c400601de494dc00012780c27700e495081a000c0100002ae496140200e7e00000e6e49786de202dc69b822ee498140200f4e00000f6e49986de2031c69b8232e49a082f113301000034e49b22000000142b5535e49cdc00df35c0c23a00e49d1900df3580c27700e49e1900022003d00000e49fd40000202000000c</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e4a0c6cfdb3f46cfba40e4a1010000410942002be4a206cc00420844002be4a33ffdb64511000046e4a480c175003ffee145e4a511000049c0c27700e4a6059fd32b1900a049e4a7e0000036cc4c004ee4a8c7000f00c0c17f00e4a91900d949c0c27700e4aa1900ee4980c16200e4ab19000443c0c27700e4ac3ffee74216000058e4ad2000a036a001e036e4ae2000004c9149e000e4afa000015d0c5e005be4b007000e0000c17f00e4b11900044340c16e00e4b2051f004308000164e4b33ffef449051f0066</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e4b42002003608670068e4b50c65b069c0c27700e4b607000d0000c17f00e4b73ffec7429100006ee4b8c0c2770020014036e4b90c4c007107000d00e4ba00c17f00051f0043e4bb05ff004620040036e4bc087590770c761078e4bd19000443c0c27700e4be19007046c7000c00e4bf87000b000400e0e1e4c01400007f80000000e4c100c0020000000000e50009e000e02088b800e50108000801140200f2e502e00000f386ec4904e503c6aa0b05140200f1e504e00000f086eb0f08e505c6a98e09140a0006</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e506a000000a0100000ce507e0000004a0000008e50803d00000140200ede509e00000ec86eaf712e50ac6a9c513140200efe50be00000ee86eafb16e50cc6a9c31714180014e50da00000180100001ae50ee0000012a0000016e50f200000006000011ee510a000011f06e96bf5e511010000211c22351be5129900b522c400600fe513dc000125c400601de514dc00012780c27700e515081a000c0100002ae516140200e7e00000e6e51786de202dc69b822ee518140200f4e00000f6e51986de2031c69b8232</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e51a082f113301000034e51b23000000142b5535e51cdc00df3580c13a00e51dc400602ddc00013ae51ec4006031dc00013ce51fd41b350d80c27700e520141a000ce000001ae5211900022003d00000e522d400002020000041e523c6cfdb4146cfba46e5240100004706bc0048e525082a31340100004ae526084b00493ffe414ce5271100004dc0c27700e52819009f4dd900ef1be529d900ef0dc57faf4be52ae0140036cc530054e52bc7000a00c0c27300e52c3fff384d11000058e52dc0c2770019002158</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e52ec57ff84be0148036e52fcc5c005dc7000900e530c0c273000948004be5312000206108000262e532051f006319006b58e533c51f4b58e0150036e534c8660067cc64b068e535c7000800c0c27300e53605ff776620190036e537086c106d0c64906ee5381900936cc7000700e539870006000400e0e1e53a1400007380000000e53b00c002000400e0e1e53c14000077c0c00000e53d0700030000000000e69400012c0100008000a695083f0000669700ffe6960003e8010000413c</parameter>
</TC>
</TCs>

View file

@ -1,38 +0,0 @@
#! /usr/bin/python3
from solo.patch import patch
class hetept92(patch):
def assemble(self, **aa):
if self.config is None:
raise ValueError("Please provide a config=")
self.scratch(subversion=2)
C = self.config
self.new_conf = C.CONFIG(
unit=C.unit,
model=C.model,
temperature=C.nominal.temperature,
env=C.nominal.env,
version=9, patch=2)
self.diff = self.new_conf.diff(C.nominal)
def send(self, msg):
self.send_scratch(msg)
self.diff.ppss(msg)
self.send_ping(msg)
def main(self, fmts=["xml", "msg"]):
for fmt in fmts:
fn = "hetept%s_v0009_patch2.%s" % (self.config.unit[-1], fmt)
self.emit(f=fn, fmt=fmt)
import solo.hetept.config
patch1 = hetept92(name="fm1", config=solo.hetept.config.fm1(config_page=0x10000, patch=1))
patch2 = hetept92(name="fm2", config=solo.hetept.config.fm2(config_page=0x10000, patch=1))
def main():
patch1.main()
patch2.main()

View file

@ -1,40 +0,0 @@
#! /usr/bin/python3
from solo.patch import patch
class hetept93(patch):
def assemble(self, **aa):
if self.config is None:
raise ValueError("Please provide a config=")
self.scratch(subversion=3)
C = self.config
self.new_conf = C.CONFIG(
unit=C.unit,
model=C.model,
temperature=C.nominal.temperature,
env=C.nominal.env,
version=9, patch=3)
self.diff = self.new_conf.diff(C.nominal)
def send(self, msg):
self.send_stop_l3(msg)
self.send_scratch(msg)
self.send_l3(msg, self.diff.l3)
self.send_start_l3(msg)
self.send_ping(msg)
def main(self, fmts=["xml", "msg"]):
for fmt in fmts:
fn = "hetept%s_v0009_patch3.%s" % (self.config.unit[-1], fmt)
self.emit(f=fn, fmt=fmt)
import solo.hetept.config
patch1 = hetept93(name="fm1", config=solo.hetept.config.fm1(config_page=0x10000, patch=2))
patch2 = hetept93(name="fm2", config=solo.hetept.config.fm2(config_page=0x10000, patch=2))
def main():
patch1.main()
patch2.main()

View file

@ -1,35 +0,0 @@
#! /usr/bin/python3
from solo.patch import patch
class hetept91(patch):
def assemble(self, **aa):
if self.config is None:
raise ValueError("Please provide a config=")
self.scratch(subversion=1)
C = self.config
self.new_conf = C.CONFIG(
unit=C.unit,
model=C.model,
temperature=C.nominal.temperature,
env=C.nominal.env,
patch=1 )
self.diff = self.new_conf.diff(C.nominal)
def send(self, msg):
self.send_stop_l3(msg)
self.send_scratch(msg)
self.send_l3(msg, self.diff.l3)
self.send_start_l3(msg)
self.send_ping(msg)
import solo.hetept.config
patch1 = hetept91(name="fm1", config=solo.hetept.config.fm1(config_page=0x10000))
patch2 = hetept91(name="fm2", config=solo.hetept.config.fm2(config_page=0x10000))
if __name__=="__main__":
patch1.main()
patch2.main()

View file

@ -1,83 +0,0 @@
msg(0x2694, 3, 0x00012c0100000000)
msg(0x2695, 0, 0x0000000000000000)
msg(0x0000, 2, 0x0000000002000000)
msg(0x000f, 3, 0x0000093500090001)
msg(0x2494, 3, 0xdc00012780c27500)
msg(0x249c, 3, 0xdc00df35c0c23a00)
msg(0x249d, 3, 0x1c00fa2b8400602d)
msg(0x249e, 3, 0x9b00013b84006031)
msg(0x249f, 3, 0x9b00013dd900df35)
msg(0x24a0, 3, 0x80c2750019000220)
msg(0x24a1, 3, 0x03d00000d4000020)
msg(0x24a2, 3, 0x2000000cc6cfdb44)
msg(0x24a3, 3, 0x46cfba4501000046)
msg(0x24a4, 3, 0x0947002b06cc0047)
msg(0x24a5, 3, 0x0849002b3ffdb64a)
msg(0x24a6, 3, 0x1100004b80c17a00)
msg(0x24a7, 3, 0x3ffee14a1100004e)
msg(0x24a8, 3, 0xc0c27500059fd32b)
msg(0x24a9, 3, 0x1900a04ee0000036)
msg(0x24aa, 3, 0xcc510053c7000f00)
msg(0x24ab, 3, 0xc0c184001900d94e)
msg(0x24ac, 3, 0xc0c275001900ee4e)
msg(0x24ad, 3, 0x80c1670019000448)
msg(0x24ae, 3, 0xc0c275003ffee747)
msg(0x24af, 3, 0x1600005d2000a036)
msg(0x24b0, 3, 0xa001e03620000051)
msg(0x24b1, 3, 0x914ee000a0000162)
msg(0x24b2, 3, 0x0c63006007000e00)
msg(0x24b3, 3, 0x00c1840019000448)
msg(0x24b4, 3, 0x40c17300051f0048)
msg(0x24b5, 3, 0x080001693ffef44e)
msg(0x24b6, 3, 0x051f006b20020036)
msg(0x24b7, 3, 0x086c006d0c6ab06e)
msg(0x24b8, 3, 0xc0c2750007000d00)
msg(0x24b9, 3, 0x00c184003ffec747)
msg(0x24ba, 3, 0x91000073c0c27500)
msg(0x24bb, 3, 0x200140360c510076)
msg(0x24bc, 3, 0x07000d0000c18400)
msg(0x24bd, 3, 0x051f004805ff004b)
msg(0x24be, 3, 0x20040036087a907c)
msg(0x24bf, 3, 0x0c7b107d19000448)
msg(0x24c0, 3, 0xc0c275001900704b)
msg(0x24c1, 3, 0xc7000c0087000b00)
msg(0x24c2, 3, 0x0400e0e114000084)
msg(0x24c3, 3, 0x8000000000c00200)
msg(0x2514, 3, 0xdc00012780c27500)
msg(0x251c, 3, 0xdc00df3580c13a00)
msg(0x251d, 3, 0xc400602ddc00013a)
msg(0x251e, 3, 0xc4006031dc00013c)
msg(0x251f, 3, 0xd41b350d80c27500)
msg(0x2520, 3, 0x141a000ce000001a)
msg(0x2521, 3, 0x1900022003d00000)
msg(0x2522, 3, 0xd400002020000041)
msg(0x2523, 3, 0xc6cfdb4146cfba46)
msg(0x2524, 3, 0x0100004706bc0048)
msg(0x2525, 3, 0x082a31340100004a)
msg(0x2526, 3, 0x084b00493ffe414c)
msg(0x2527, 3, 0x1100004dc0c27500)
msg(0x2528, 3, 0x19009f4dc57faf4b)
msg(0x2529, 3, 0xe0140036cc510052)
msg(0x252a, 3, 0xc7000a00c0c27100)
msg(0x252b, 3, 0x3fff384d11000056)
msg(0x252c, 3, 0xc0c2750019002156)
msg(0x252d, 3, 0xc57ff84be0148036)
msg(0x252e, 3, 0xcc5a005bc7000900)
msg(0x252f, 3, 0xc0c271000948004b)
msg(0x2530, 3, 0x2000205f08000260)
msg(0x2531, 3, 0x051f006119006b56)
msg(0x2532, 3, 0xc51f4b56e0150036)
msg(0x2533, 3, 0xc8640065cc62b066)
msg(0x2534, 3, 0xc7000800c0c27100)
msg(0x2535, 3, 0x05ff776420190036)
msg(0x2536, 3, 0x086a106b0c62906c)
msg(0x2537, 3, 0x1900936ac7000700)
msg(0x2538, 3, 0x870006000400e0e1)
msg(0x2539, 3, 0x1400007180000000)
msg(0x253a, 3, 0x00c002000400e0e1)
msg(0x253b, 3, 0x14000075c0c00000)
msg(0x253c, 3, 0x0700030000000000)
msg(0x2694, 3, 0x00012c0100008000)
msg(0x2695, 2, 0x00000000083f0000)
msg(0x2697, 1, 0x00000000000000ff)
msg(0x2696, 3, 0x0003e8010000413c)

View file

@ -1,83 +0,0 @@
msg(0x2694, 3, 0x00012c0100000000)
msg(0x2695, 0, 0x0000000000000000)
msg(0x0000, 2, 0x0000000002000000)
msg(0x000f, 3, 0x0000093500090001)
msg(0x2494, 3, 0xdc00012780c27500)
msg(0x249c, 3, 0xdc00df35c0c23a00)
msg(0x249d, 3, 0x1c00fa2b8400602d)
msg(0x249e, 3, 0x9b00013b84006031)
msg(0x249f, 3, 0x9b00013dd900df35)
msg(0x24a0, 3, 0x80c2750019000220)
msg(0x24a1, 3, 0x03d00000d4000020)
msg(0x24a2, 3, 0x2000000cc6cfdb44)
msg(0x24a3, 3, 0x46cfba4501000046)
msg(0x24a4, 3, 0x0947002b06cc0047)
msg(0x24a5, 3, 0x0849002b3ffdb64a)
msg(0x24a6, 3, 0x1100004b80c17a00)
msg(0x24a7, 3, 0x3ffee14a1100004e)
msg(0x24a8, 3, 0xc0c27500059fd32b)
msg(0x24a9, 3, 0x1900a04ee0000036)
msg(0x24aa, 3, 0xcc510053c7000f00)
msg(0x24ab, 3, 0xc0c184001900d94e)
msg(0x24ac, 3, 0xc0c275001900ee4e)
msg(0x24ad, 3, 0x80c1670019000448)
msg(0x24ae, 3, 0xc0c275003ffee747)
msg(0x24af, 3, 0x1600005d2000a036)
msg(0x24b0, 3, 0xa001e03620000051)
msg(0x24b1, 3, 0x914ee000a0000162)
msg(0x24b2, 3, 0x0c63006007000e00)
msg(0x24b3, 3, 0x00c1840019000448)
msg(0x24b4, 3, 0x40c17300051f0048)
msg(0x24b5, 3, 0x080001693ffef44e)
msg(0x24b6, 3, 0x051f006b20020036)
msg(0x24b7, 3, 0x086c006d0c6ab06e)
msg(0x24b8, 3, 0xc0c2750007000d00)
msg(0x24b9, 3, 0x00c184003ffec747)
msg(0x24ba, 3, 0x91000073c0c27500)
msg(0x24bb, 3, 0x200140360c510076)
msg(0x24bc, 3, 0x07000d0000c18400)
msg(0x24bd, 3, 0x051f004805ff004b)
msg(0x24be, 3, 0x20040036087a907c)
msg(0x24bf, 3, 0x0c7b107d19000448)
msg(0x24c0, 3, 0xc0c275001900704b)
msg(0x24c1, 3, 0xc7000c0087000b00)
msg(0x24c2, 3, 0x0400e0e114000084)
msg(0x24c3, 3, 0x8000000000c00200)
msg(0x2514, 3, 0xdc00012780c27500)
msg(0x251c, 3, 0xdc00df3580c13a00)
msg(0x251d, 3, 0xc400602ddc00013a)
msg(0x251e, 3, 0xc4006031dc00013c)
msg(0x251f, 3, 0xd41b350d80c27500)
msg(0x2520, 3, 0x141a000ce000001a)
msg(0x2521, 3, 0x1900022003d00000)
msg(0x2522, 3, 0xd400002020000041)
msg(0x2523, 3, 0xc6cfdb4146cfba46)
msg(0x2524, 3, 0x0100004706bc0048)
msg(0x2525, 3, 0x082a31340100004a)
msg(0x2526, 3, 0x084b00493ffe414c)
msg(0x2527, 3, 0x1100004dc0c27500)
msg(0x2528, 3, 0x19009f4dc57faf4b)
msg(0x2529, 3, 0xe0140036cc510052)
msg(0x252a, 3, 0xc7000a00c0c27100)
msg(0x252b, 3, 0x3fff384d11000056)
msg(0x252c, 3, 0xc0c2750019002156)
msg(0x252d, 3, 0xc57ff84be0148036)
msg(0x252e, 3, 0xcc5a005bc7000900)
msg(0x252f, 3, 0xc0c271000948004b)
msg(0x2530, 3, 0x2000205f08000260)
msg(0x2531, 3, 0x051f006119006b56)
msg(0x2532, 3, 0xc51f4b56e0150036)
msg(0x2533, 3, 0xc8640065cc62b066)
msg(0x2534, 3, 0xc7000800c0c27100)
msg(0x2535, 3, 0x05ff776420190036)
msg(0x2536, 3, 0x086a106b0c62906c)
msg(0x2537, 3, 0x1900936ac7000700)
msg(0x2538, 3, 0x870006000400e0e1)
msg(0x2539, 3, 0x1400007180000000)
msg(0x253a, 3, 0x00c002000400e0e1)
msg(0x253b, 3, 0x14000075c0c00000)
msg(0x253c, 3, 0x0700030000000000)
msg(0x2694, 3, 0x00012c0100008000)
msg(0x2695, 2, 0x00000000083f0000)
msg(0x2697, 1, 0x00000000000000ff)
msg(0x2696, 3, 0x0003e8010000413c)

View file

@ -1,32 +0,0 @@
#! /usr/bin/python3
from solo.patch import patch
class hetept95(patch):
def assemble(self, **aa):
if self.config is None:
raise ValueError("Please provide a config=")
self.scratch(subversion=5)
self.l3 = self.config.nominal.l3
self.l3_code = [(a,d) for a,d in self.l3.l3_code if a < 0x300]
self.l3.l3_code = self.l3_code
def send(self, msg):
self.send_stop_l3(msg)
self.send_scratch(msg)
self.send_l3(msg, self.l3, init=True, pad=True, fill=False)
self.send_start_l3(msg)
self.send_ping(msg)
def main(self, fmts=["xml", "msg"]):
for fmt in fmts:
fn = "hetept%s_v0009_patch5.%s" % (self.config.unit[-1], fmt)
self.emit(f=fn, fmt=fmt)
import solo.hetept.config
patch1 = hetept95(name="fm1", config=solo.hetept.config.fm1(config_page=0x10000))
patch2 = hetept95(name="fm2", config=solo.hetept.config.fm2(config_page=0x10000))
def main():
patch1.main()

View file

@ -1,44 +0,0 @@
#! /usr/bin/python3
from solo.patch import patch
class hetept94(patch):
def assemble(self, T, **aa):
self.OH_C = T
if self.config is None:
raise ValueError("Please provide a config=")
self.scratch(subversion=4)
self.ppss_oh = self.config.ppss.find_flags("OPHEATER")[0]
OH_DC_ESTIMATE = 60
OH_SHIFT = 0
OH_DCMAX = 70
def send(self, msg):
self.send_scratch(msg)
self.config.ppss.set_opheater_setpoint(
msg = msg,
T = self.OH_C,
dcmax = self.OH_DCMAX *192//100,
dc_estimate=self.OH_DC_ESTIMATE *192//100,
shift = self.OH_SHIFT )
self.send_ping(msg)
def revert(self, msg):
self.ppss_oh(msg)
self.send_ping(msg)
def main(self, fmts=["xml", "msg"]):
for fmt in fmts:
fn = "hetept%s_v0009_patch4.%s" % (self.config.unit[-1], fmt)
self.emit(f=fn, fmt=fmt)
fn = "hetept%s_v0009_revert4.%s" % (self.config.unit[-1], fmt)
self.emit(f=fn, fmt=fmt, revert=True)
import solo.hetept.config
patch1 = hetept94(name="fm1", T=-6.0, config=solo.hetept.config.fm1(config_page=0x10000, patch=3))
patch2 = hetept94(name="fm2", T=-1.0, config=solo.hetept.config.fm2(config_page=0x10000, patch=3))
def main():
patch1.main()
patch2.main()

View file

@ -1,48 +0,0 @@
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">22</parameter>
<parameter name="Messages" id="PID00075">e69400012c01000000002695800002000000c00f0000093500090001e494dc00012780c27500e49cdc00df35c0c23a00e49d1c00fa2b8400602de49e9b00013b84006031e49f9b00013dd900df35e4a080c2750019000220e4a103d00000d4000020e4a22000000cc6cfdb44e4a346cfba4501000046e4a40947002b06cc0047e4a50849002b3ffdb64ae4a61100004b80c17a00e4a73ffee14a1100004ee4a8c0c27500059fd32be4a91900a04ee0000036e4aacc510053c7000f00e4abc0c184001900d94ee4acc0c275001900ee4e</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e4ad80c1670019000448e4aec0c275003ffee747e4af1600005d2000a036e4b0a001e03620000051e4b1914ee000a0000162e4b20c63006007000e00e4b300c1840019000448e4b440c17300051f0048e4b5080001693ffef44ee4b6051f006b20020036e4b7086c006d0c6ab06ee4b8c0c2750007000d00e4b900c184003ffec747e4ba91000073c0c27500e4bb200140360c510076e4bc07000d0000c18400e4bd051f004805ff004be4be20040036087a907ce4bf0c7b107d19000448e4c0c0c275001900704b</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e4c1c7000c0087000b00e4c20400e0e114000084e4c38000000000c00200e514dc00012780c27500e51cdc00df3580c13a00e51dc400602ddc00013ae51ec4006031dc00013ce51fd41b350d80c27500e520141a000ce000001ae5211900022003d00000e522d400002020000041e523c6cfdb4146cfba46e5240100004706bc0048e525082a31340100004ae526084b00493ffe414ce5271100004dc0c27500e52819009f4dc57faf4be529e0140036cc510052e52ac7000a00c0c27100e52b3fff384d11000056</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">2</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">21</parameter>
<parameter name="Messages" id="PID00075">e52cc0c2750019002156e52dc57ff84be0148036e52ecc5a005bc7000900e52fc0c271000948004be5302000205f08000260e531051f006119006b56e532c51f4b56e0150036e533c8640065cc62b066e534c7000800c0c27100e53505ff776420190036e536086a106b0c62906ce5371900936ac7000700e538870006000400e0e1e5391400007180000000e53a00c002000400e0e1e53b14000075c0c00000e53c0700030000000000e69400012c0100008000a695083f0000669700ffe6960003e8010000413c</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">22</parameter>
<parameter name="Messages" id="PID00075">e69400012c01000000002695800002000000c00f0000093500090001e494dc00012780c27500e49cdc00df35c0c23a00e49d1c00fa2b8400602de49e9b00013b84006031e49f9b00013dd900df35e4a080c2750019000220e4a103d00000d4000020e4a22000000cc6cfdb44e4a346cfba4501000046e4a40947002b06cc0047e4a50849002b3ffdb64ae4a61100004b80c17a00e4a73ffee14a1100004ee4a8c0c27500059fd32be4a91900a04ee0000036e4aacc510053c7000f00e4abc0c184001900d94ee4acc0c275001900ee4e</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e4ad80c1670019000448e4aec0c275003ffee747e4af1600005d2000a036e4b0a001e03620000051e4b1914ee000a0000162e4b20c63006007000e00e4b300c1840019000448e4b440c17300051f0048e4b5080001693ffef44ee4b6051f006b20020036e4b7086c006d0c6ab06ee4b8c0c2750007000d00e4b900c184003ffec747e4ba91000073c0c27500e4bb200140360c510076e4bc07000d0000c18400e4bd051f004805ff004be4be20040036087a907ce4bf0c7b107d19000448e4c0c0c275001900704b</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">20</parameter>
<parameter name="Messages" id="PID00075">e4c1c7000c0087000b00e4c20400e0e114000084e4c38000000000c00200e514dc00012780c27500e51cdc00df3580c13a00e51dc400602ddc00013ae51ec4006031dc00013ce51fd41b350d80c27500e520141a000ce000001ae5211900022003d00000e522d400002020000041e523c6cfdb4146cfba46e5240100004706bc0048e525082a31340100004ae526084b00493ffe414ce5271100004dc0c27500e52819009f4dc57faf4be529e0140036cc510052e52ac7000a00c0c27100e52b3fff384d11000056</parameter>
</TC>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">21</parameter>
<parameter name="Messages" id="PID00075">e52cc0c2750019002156e52dc57ff84be0148036e52ecc5a005bc7000900e52fc0c271000948004be5302000205f08000260e531051f006119006b56e532c51f4b56e0150036e533c8640065cc62b066e534c7000800c0c27100e53505ff776420190036e536086a106b0c62906ce5371900936ac7000700e538870006000400e0e1e5391400007180000000e53a00c002000400e0e1e53b14000075c0c00000e53c0700030000000000e69400012c0100008000a695083f0000669700ffe6960003e8010000413c</parameter>
</TC>

View file

@ -1,66 +0,0 @@
# HET/EPT1 FM1, version 10, rev 0
# env = {CLOSE}
# version/dps: 10/0
# apid/flags, n("section"sum enc/fmt)
# apid: 0x0300 + Tag
# flags: /-separated flags: 0..3 or 'h' or 'r'
# n: dps_items in section
# section: section name; may not contain whitespace
# sum, enc: cadence
# fmt: 0..3: float16, log2, uint24, encoded
# version: 0010
# S20data
0x0320/0x0, 4("S20_e_S" 0/1), 4("S20_e_A" 0/1), 1("S20_p_S" 0/1), 1("S20_p_A" 0/1)
# Low Latency
0x0331/0x0/0x2, 8("LL_EPT_e_S" 3/1), 8("LL_EPT_e_A" 3/1), 18("LL_EPT_i_S" 3/1), 18("LL_EPT_i_A" 3/1), 1("LL_EPT_T_e_S" 1/3), 1("LL_EPT_T_e_A" 1/3), 2("LL_EPT_T_i_S" 1/3), 2("LL_EPT_T_i_A" 1/3), 2("LL_HETB_p_S" 3/1), 2("LL_HETB_p_A" 3/1), 10("LL_HETC_p_S" 3/1), 10("LL_HETC_p_A" 3/1), 2("LL_HETP_p_S" 3/1), 2("LL_HETP_p_A" 3/1), 2("LL_HETP_p_E" 3/1), 1("LL_HETB_e_S" 3/1), 1("LL_HETB_e_A" 3/1), 3("LL_HETC_e_S" 3/1), 3("LL_HETC_e_A" 3/1), 2("LL_HETB_he3_S" 5/1), 2("LL_HETB_he3_A" 5/1), 2("LL_HETB_he4_S" 5/1), 2("LL_HETB_he4_A" 5/1), 4("LL_HETC_he3_S" 5/1), 4("LL_HETC_he3_A" 5/1), 8("LL_HETC_he4_S" 5/1), 8("LL_HETC_he4_A" 5/1), 4("LL_HETB_he_S" 5/1), 4("LL_HETB_he_A" 5/1), 2("LL_HETP_he_S" 5/1), 2("LL_HETP_he_A" 5/1), 2("LL_HETP_he_E" 5/1), 6("LL_HETB_cno_S" 6/1), 6("LL_HETB_cno_A" 6/1), 9("LL_HETC_cno_S" 6/1), 9("LL_HETC_cno_A" 6/1), 2("LL_HETP_cno_S" 7/1), 2("LL_HETP_cno_A" 7/1), 2("LL_HETP_cno_E" 7/1), 2("LL_HETB_fe_S" 6/1), 2("LL_HETB_fe_A" 6/1), 3("LL_HETC_fe_S" 7/1), 3("LL_HETC_fe_A" 7/1), 1("LL_HETP_fe_S" 7/1), 1("LL_HETP_fe_A" 7/1), 3("LL_HETC_T_p_S" 1/3), 3("LL_HETC_T_p_A" 1/3), 1("LL_HETC_T_e_S" 1/3), 1("LL_HETC_T_e_A" 1/3)
# Nominal
0x0351/0x0, 77("NO_EPT_mag_S" 0/3), 77("NO_EPT_mag_A" 0/3), 77("NO_EPT_foil_S" 0/3), 77("NO_EPT_foil_A" 0/3), 2("NO_EPTP_e_S" 1/3), 2("NO_EPTP_e_A" 1/3), 4("NO_EPTP_p_S" 1/3), 4("NO_EPTP_p_A" 1/3), 4("NO_EPTP_p_E" 1/3), 2("NO_EPTP_he3_S" 3/3), 2("NO_EPTP_he3_A" 3/3), 1("NO_EPTP_he3_E" 3/3), 2("NO_EPTP_he4_S" 3/3), 2("NO_EPTP_he4_A" 3/3), 1("NO_EPTP_he4_E" 3/3), 1("NO_EPTP_he_S" 3/3), 1("NO_EPTP_he_A" 3/3), 4("NO_EPTP_he_E" 3/3), 1("NO_HETP_bg_S" 6/3), 1("NO_HETP_bg_A" 6/3), 1("NO_HETB_bg_S" 6/3), 1("NO_HETB_bg_A" 6/3), 5("NO_HETB_p_S" 1/3), 5("NO_HETB_p_A" 1/3), 1("NO_HETB_tail_high_p_S" 1/3), 1("NO_HETB_tail_high_p_A" 1/3), 31("NO_HETC_p_S" 1/3), 31("NO_HETC_p_A" 1/3), 2("NO_HETP_p_S" 1/3), 2("NO_HETP_p_A" 1/3), 3("NO_HETP_p_E" 3/3), 1("NO_HETB_H_p_S" 0/3), 1("NO_HETB_H_p_A" 0/3), 3("NO_HETC_H_p_S" 0/3), 3("NO_HETC_H_p_A" 0/3), 1("NO_HETB_e_S" 0/3), 1("NO_HETB_e_A" 0/3), 3("NO_HETC_e_S" 0/3), 3("NO_HETC_e_A" 0/3), 1("NO_HETC_H_e_S" 3/3), 1("NO_HETC_H_e_A" 3/3), 4("NO_HETB_he3_S" 3/3), 4("NO_HETB_he3_A" 3/3), 4("NO_HETB_he4_S" 3/3), 4("NO_HETB_he4_A" 3/3), 5("NO_HETC_he3_S" 3/3), 5("NO_HETC_he3_A" 3/3), 11("NO_HETC_he4_S" 3/3), 11("NO_HETC_he4_A" 3/3), 6("NO_HETB_he_S" 1/3), 6("NO_HETB_he_A" 1/3), 2("NO_HETP_he_S" 4/3), 2("NO_HETP_he_A" 4/3), 4("NO_HETP_he_E" 4/3), 12("NO_HETC_c_S" 4/3), 12("NO_HETC_c_A" 4/3), 12("NO_HETC_n_S" 4/3), 12("NO_HETC_n_A" 4/3), 12("NO_HETC_o_S" 4/3), 12("NO_HETC_o_A" 4/3), 5("NO_HETB_c_S" 4/3), 5("NO_HETB_c_A" 4/3), 5("NO_HETB_n_S" 4/3), 5("NO_HETB_n_A" 4/3), 5("NO_HETB_o_S" 4/3), 5("NO_HETB_o_A" 4/3), 2("NO_HETP_cno_S" 6/3), 2("NO_HETP_cno_A" 6/3), 6("NO_HETP_cno_E" 6/3), 11("NO_HETC_fe_S" 5/3), 11("NO_HETC_fe_A" 5/3), 5("NO_HETB_fe_S" 5/3), 5("NO_HETB_fe_A" 5/3), 2("NO_HETP_fe_S" 6/3), 2("NO_HETP_fe_A" 6/3), 3("NO_HETP_fe_E" 6/3)
# Burst1n
0x0361/0x0, 48("B1_EPT_mag_S" 2/3), 48("B1_EPT_mag_A" 2/3), 2("B1_EPTP_he3_S" 1/3), 2("B1_EPTP_he3_A" 1/3), 1("B1_EPTP_he3_E" 1/3), 2("B1_EPTP_he4_S" 1/3), 2("B1_EPTP_he4_A" 1/3), 1("B1_EPTP_he4_E" 1/3)
# Unstable
0x0355/0x0, 1("NU_HETB_tail_low_p_S" 5/3), 1("NU_HETB_tail_low_p_A" 5/3), 2("NU_HETB_he34_S" 4/3), 2("NU_HETB_he34_A" 4/3), 5("NU_HETP_lbb_E" 5/3), 1("NU_HETB_cno_S" 5/3), 1("NU_HETB_cno_A" 5/3), 11("NU_HETC_ne_S" 5/3), 11("NU_HETC_ne_A" 5/3), 11("NU_HETC_mg_S" 5/3), 11("NU_HETC_mg_A" 5/3), 11("NU_HETC_si_S" 5/3), 11("NU_HETC_si_A" 5/3), 11("NU_HETC_s_S" 5/3), 11("NU_HETC_s_A" 5/3), 5("NU_HETB_ne_S" 5/3), 5("NU_HETB_ne_A" 5/3), 5("NU_HETB_mg_S" 5/3), 5("NU_HETB_mg_A" 5/3), 5("NU_HETB_si_S" 5/3), 5("NU_HETB_si_A" 5/3), 5("NU_HETB_s_S" 5/3), 5("NU_HETB_s_A" 5/3), 1("NU_HETB_wpen_nemgsis_S" 6/3), 1("NU_HETB_wpen_nemgsis_A" 6/3), 7("NU_HETP_nemgsis_E" 7/3), 11("NU_HETC_ar_S" 5/3), 11("NU_HETC_ar_A" 5/3), 11("NU_HETC_ca_S" 5/3), 11("NU_HETC_ca_A" 5/3), 11("NU_HETC_ni_S" 5/3), 11("NU_HETC_ni_A" 5/3), 5("NU_HETB_ar_S" 5/3), 5("NU_HETB_ar_A" 5/3), 5("NU_HETB_ca_S" 5/3), 5("NU_HETB_ca_A" 5/3), 5("NU_HETB_ni_S" 5/3), 5("NU_HETB_ni_A" 5/3), 1("NU_HETB_wpen_arcafeni_S" 6/3), 1("NU_HETB_wpen_arcafeni_A" 6/3), 2("NU_HETG_p_E" 4/3)
# Burst2n
0x0369/0x0, 6("B2_HETB_p_S" 0/3), 6("B2_HETB_p_A" 0/3), 62("B2_HETC_p_S" 0/3), 62("B2_HETC_p_A" 0/3), 2("B2_HETP_p_S" 0/3), 2("B2_HETP_p_A" 0/3), 3("B2_HETP_p_E" 0/3), 4("B2_HETB_he3_S" 1/3), 4("B2_HETB_he3_A" 1/3), 6("B2_HETB_he4_S" 1/3), 6("B2_HETB_he4_A" 1/3), 5("B2_HETC_he3_S" 1/3), 5("B2_HETC_he3_A" 1/3), 11("B2_HETC_he4_S" 1/3), 11("B2_HETC_he4_A" 1/3), 4("B2_HETB_he_S" 0/3), 4("B2_HETB_he_A" 0/3), 2("B2_HETP_he_S" 1/3), 2("B2_HETP_he_A" 1/3), 3("B2_HETP_he_E" 1/3), 7("B2_HETG_p_E" 1/3)
# HET/EPT1 FM1, version 10, rev 0
# env = {FAR}
# version/dps: 10/0
# apid/flags, n("section"sum enc/fmt)
# apid: 0x0300 + Tag
# flags: /-separated flags: 0..3 or 'h' or 'r'
# n: dps_items in section
# section: section name; may not contain whitespace
# sum, enc: cadence
# fmt: 0..3: float16, log2, uint24, encoded
# version: 0000
# S20data
0x0320/0x0, 4("S20_e_S" 0/1), 4("S20_e_A" 0/1), 1("S20_p_S" 0/1), 1("S20_p_A" 0/1)
# Low Latency
0x0331/0x0/0x2, 8("LL_EPT_e_S" 3/1), 8("LL_EPT_e_A" 3/1), 18("LL_EPT_i_S" 3/1), 18("LL_EPT_i_A" 3/1), 1("LL_EPT_T_e_S" 1/3), 1("LL_EPT_T_e_A" 1/3), 2("LL_EPT_T_i_S" 1/3), 2("LL_EPT_T_i_A" 1/3), 2("LL_HETB_p_S" 3/1), 2("LL_HETB_p_A" 3/1), 10("LL_HETC_p_S" 3/1), 10("LL_HETC_p_A" 3/1), 2("LL_HETP_p_S" 3/1), 2("LL_HETP_p_A" 3/1), 2("LL_HETP_p_E" 3/1), 1("LL_HETB_e_S" 3/1), 1("LL_HETB_e_A" 3/1), 3("LL_HETC_e_S" 3/1), 3("LL_HETC_e_A" 3/1), 2("LL_HETB_he3_S" 5/1), 2("LL_HETB_he3_A" 5/1), 2("LL_HETB_he4_S" 5/1), 2("LL_HETB_he4_A" 5/1), 4("LL_HETC_he3_S" 5/1), 4("LL_HETC_he3_A" 5/1), 8("LL_HETC_he4_S" 5/1), 8("LL_HETC_he4_A" 5/1), 4("LL_HETB_he_S" 5/1), 4("LL_HETB_he_A" 5/1), 2("LL_HETP_he_S" 5/1), 2("LL_HETP_he_A" 5/1), 2("LL_HETP_he_E" 5/1), 6("LL_HETB_cno_S" 6/1), 6("LL_HETB_cno_A" 6/1), 9("LL_HETC_cno_S" 6/1), 9("LL_HETC_cno_A" 6/1), 2("LL_HETP_cno_S" 7/1), 2("LL_HETP_cno_A" 7/1), 2("LL_HETP_cno_E" 7/1), 2("LL_HETB_fe_S" 6/1), 2("LL_HETB_fe_A" 6/1), 3("LL_HETC_fe_S" 7/1), 3("LL_HETC_fe_A" 7/1), 1("LL_HETP_fe_S" 7/1), 1("LL_HETP_fe_A" 7/1), 3("LL_HETC_T_p_S" 1/3), 3("LL_HETC_T_p_A" 1/3), 1("LL_HETC_T_e_S" 1/3), 1("LL_HETC_T_e_A" 1/3)
# Nominal
0x0351/0x1, 77("NO_EPT_mag_S" 1/3), 77("NO_EPT_mag_A" 1/3), 77("NO_EPT_foil_S" 1/3), 77("NO_EPT_foil_A" 1/3), 2("NO_EPTP_e_S" 3/3), 2("NO_EPTP_e_A" 3/3), 4("NO_EPTP_p_S" 3/3), 4("NO_EPTP_p_A" 3/3), 4("NO_EPTP_p_E" 3/3), 2("NO_EPTP_he3_S" 4/3), 2("NO_EPTP_he3_A" 4/3), 1("NO_EPTP_he3_E" 4/3), 2("NO_EPTP_he4_S" 4/3), 2("NO_EPTP_he4_A" 4/3), 1("NO_EPTP_he4_E" 4/3), 1("NO_EPTP_he_S" 4/3), 1("NO_EPTP_he_A" 4/3), 4("NO_EPTP_he_E" 4/3), 1("NO_HETP_bg_S" 6/3), 1("NO_HETP_bg_A" 6/3), 1("NO_HETB_bg_S" 6/3), 1("NO_HETB_bg_A" 6/3), 5("NO_HETB_p_S" 3/3), 5("NO_HETB_p_A" 3/3), 1("NO_HETB_tail_high_p_S" 3/3), 1("NO_HETB_tail_high_p_A" 3/3), 31("NO_HETC_p_S" 3/3), 31("NO_HETC_p_A" 3/3), 2("NO_HETP_p_S" 3/3), 2("NO_HETP_p_A" 3/3), 3("NO_HETP_p_E" 4/3), 1("NO_HETB_H_p_S" 1/3), 1("NO_HETB_H_p_A" 1/3), 3("NO_HETC_H_p_S" 1/3), 3("NO_HETC_H_p_A" 1/3), 1("NO_HETB_e_S" 1/3), 1("NO_HETB_e_A" 1/3), 3("NO_HETC_e_S" 1/3), 3("NO_HETC_e_A" 1/3), 1("NO_HETC_H_e_S" 4/3), 1("NO_HETC_H_e_A" 4/3), 4("NO_HETB_he3_S" 4/3), 4("NO_HETB_he3_A" 4/3), 4("NO_HETB_he4_S" 4/3), 4("NO_HETB_he4_A" 4/3), 5("NO_HETC_he3_S" 4/3), 5("NO_HETC_he3_A" 4/3), 11("NO_HETC_he4_S" 4/3), 11("NO_HETC_he4_A" 4/3), 6("NO_HETB_he_S" 3/3), 6("NO_HETB_he_A" 3/3), 2("NO_HETP_he_S" 5/3), 2("NO_HETP_he_A" 5/3), 4("NO_HETP_he_E" 5/3), 12("NO_HETC_c_S" 5/3), 12("NO_HETC_c_A" 5/3), 12("NO_HETC_n_S" 5/3), 12("NO_HETC_n_A" 5/3), 12("NO_HETC_o_S" 5/3), 12("NO_HETC_o_A" 5/3), 5("NO_HETB_c_S" 5/3), 5("NO_HETB_c_A" 5/3), 5("NO_HETB_n_S" 5/3), 5("NO_HETB_n_A" 5/3), 5("NO_HETB_o_S" 5/3), 5("NO_HETB_o_A" 5/3), 2("NO_HETP_cno_S" 6/3), 2("NO_HETP_cno_A" 6/3), 6("NO_HETP_cno_E" 6/3), 11("NO_HETC_fe_S" 6/3), 11("NO_HETC_fe_A" 6/3), 5("NO_HETB_fe_S" 6/3), 5("NO_HETB_fe_A" 6/3), 2("NO_HETP_fe_S" 6/3), 2("NO_HETP_fe_A" 6/3), 3("NO_HETP_fe_E" 6/3)
# Burst1n
0x0361/0x1, 48("B1_EPT_mag_S" 2/3), 48("B1_EPT_mag_A" 2/3), 2("B1_EPTP_he3_S" 1/3), 2("B1_EPTP_he3_A" 1/3), 1("B1_EPTP_he3_E" 1/3), 2("B1_EPTP_he4_S" 1/3), 2("B1_EPTP_he4_A" 1/3), 1("B1_EPTP_he4_E" 1/3)
# Unstable
0x0355/0x1, 1("NU_HETB_tail_low_p_S" 6/3), 1("NU_HETB_tail_low_p_A" 6/3), 2("NU_HETB_he34_S" 5/3), 2("NU_HETB_he34_A" 5/3), 5("NU_HETP_lbb_E" 6/3), 1("NU_HETB_cno_S" 6/3), 1("NU_HETB_cno_A" 6/3), 11("NU_HETC_ne_S" 6/3), 11("NU_HETC_ne_A" 6/3), 11("NU_HETC_mg_S" 6/3), 11("NU_HETC_mg_A" 6/3), 11("NU_HETC_si_S" 6/3), 11("NU_HETC_si_A" 6/3), 11("NU_HETC_s_S" 6/3), 11("NU_HETC_s_A" 6/3), 5("NU_HETB_ne_S" 6/3), 5("NU_HETB_ne_A" 6/3), 5("NU_HETB_mg_S" 6/3), 5("NU_HETB_mg_A" 6/3), 5("NU_HETB_si_S" 6/3), 5("NU_HETB_si_A" 6/3), 5("NU_HETB_s_S" 6/3), 5("NU_HETB_s_A" 6/3), 1("NU_HETB_wpen_nemgsis_S" 6/3), 1("NU_HETB_wpen_nemgsis_A" 6/3), 7("NU_HETP_nemgsis_E" 7/3), 11("NU_HETC_ar_S" 6/3), 11("NU_HETC_ar_A" 6/3), 11("NU_HETC_ca_S" 6/3), 11("NU_HETC_ca_A" 6/3), 11("NU_HETC_ni_S" 6/3), 11("NU_HETC_ni_A" 6/3), 5("NU_HETB_ar_S" 6/3), 5("NU_HETB_ar_A" 6/3), 5("NU_HETB_ca_S" 6/3), 5("NU_HETB_ca_A" 6/3), 5("NU_HETB_ni_S" 6/3), 5("NU_HETB_ni_A" 6/3), 1("NU_HETB_wpen_arcafeni_S" 6/3), 1("NU_HETB_wpen_arcafeni_A" 6/3), 2("NU_HETG_p_E" 5/3)
# Burst2n
0x0369/0x1, 6("B2_HETB_p_S" 0/3), 6("B2_HETB_p_A" 0/3), 62("B2_HETC_p_S" 0/3), 62("B2_HETC_p_A" 0/3), 2("B2_HETP_p_S" 0/3), 2("B2_HETP_p_A" 0/3), 3("B2_HETP_p_E" 0/3), 4("B2_HETB_he3_S" 1/3), 4("B2_HETB_he3_A" 1/3), 6("B2_HETB_he4_S" 1/3), 6("B2_HETB_he4_A" 1/3), 5("B2_HETC_he3_S" 1/3), 5("B2_HETC_he3_A" 1/3), 11("B2_HETC_he4_S" 1/3), 11("B2_HETC_he4_A" 1/3), 4("B2_HETB_he_S" 0/3), 4("B2_HETB_he_A" 0/3), 2("B2_HETP_he_S" 1/3), 2("B2_HETP_he_A" 1/3), 3("B2_HETP_he_E" 1/3), 1("B2_HETB_e_S" 0/3), 1("B2_HETB_e_A" 0/3), 3("B2_HETC_e_S" 0/3), 3("B2_HETC_e_A" 0/3), 7("B2_HETG_p_E" 1/3)

View file

@ -1,31 +0,0 @@
#<tag>:\n\t<ad> <us> <mod_phase> <mod_cadence> <header>\n...
0x48:
0x0148 6 1 600 0x0000007f
0x0548 9 3 600 0x10040090
0x0548 11 8 3600 0x080400c0
0x0548 12 68 3600 0x0c0400a0
0x0548 13 128 3600 0x100f00000
0x0548 15 188 3600 0x202c2000
0x0548 60 0 600 0x10040030
0x0548 85 0 600 0x10040000
0x0848 170 0 60 0x0000820c
0x0848 171 298 3600 0x000081e7
0x54:
0x0554 21 7 300 0x100a00000
0x0554 23 17 300 0x100a00100
0x0554 24 27 300 0x100a00200
0x0554 25 37 300 0x100a00300
0x0554 27 47 300 0x100a00400
0x0554 28 57 300 0x100a00500
0x0554 29 67 300 0x100a00600
0x0554 31 77 300 0x100a00700
0x0554 32 87 300 0x100a00800
0x0554 33 97 300 0x100a00900
0x0554 35 107 300 0x100a00a00
0x0554 36 117 300 0x100a00b00
0x0554 37 127 300 0x100a00c00
0x0554 39 137 300 0x100a00d00
0x0554 40 147 300 0x100a00e00
0x0554 41 157 300 0x100a00f00

File diff suppressed because it is too large Load diff

View file

@ -1,5 +0,0 @@
msg(0x000f, 3, 0x0000093500090004)
msg(0x268c, 3, 0x0000af1f0000c002)
msg(0x268d, 3, 0x007270e009188600)
msg(0x2697, 1, 0x00000000000000ff)
msg(0x2696, 3, 0x0003e8010000413c)

View file

@ -1,8 +0,0 @@
<TCs>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">5</parameter>
<parameter name="Messages" id="PID00075">c00f0000093500090004e68c0000af1f0000c002e68d007270e009188600669700ffe6960003e8010000413c</parameter>
</TC>
</TCs>

View file

@ -1,4 +0,0 @@
msg(0x268c, 3, 0x0000af1f0000c002)
msg(0x268d, 3, 0x007270e00f78ff00)
msg(0x2697, 1, 0x00000000000000ff)
msg(0x2696, 3, 0x0003e8010000413c)

View file

@ -1,8 +0,0 @@
<TCs>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">3</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">4</parameter>
<parameter name="Messages" id="PID00075">e68c0000af1f0000c002e68d007270e00f78ff00669700ffe6960003e8010000413c</parameter>
</TC>
</TCs>

View file

@ -1,7 +0,0 @@
#! /usr/bin/python3
from ...hetept1.v0009.hetept_config_hetele_patch5 import patch2
def main():
patch2.main()

View file

@ -1,66 +0,0 @@
# HET/EPT2 FM2, version 10, rev 0
# env = {CLOSE}
# version/dps: 10/0
# apid/flags, n("section"sum enc/fmt)
# apid: 0x0300 + Tag
# flags: /-separated flags: 0..3 or 'h' or 'r'
# n: dps_items in section
# section: section name; may not contain whitespace
# sum, enc: cadence
# fmt: 0..3: float16, log2, uint24, encoded
# version: 0010
# S20data
0x0320/0x0, 4("S20_e_N" 0/1), 4("S20_e_D" 0/1), 1("S20_p_N" 0/1), 1("S20_p_D" 0/1)
# Low Latency
0x0332/0x0/0x2, 8("LL_EPT_e_N" 3/1), 8("LL_EPT_e_D" 3/1), 18("LL_EPT_i_N" 3/1), 18("LL_EPT_i_D" 3/1), 1("LL_EPT_T_e_N" 1/3), 1("LL_EPT_T_e_D" 1/3), 2("LL_EPT_T_i_N" 1/3), 2("LL_EPT_T_i_D" 1/3), 2("LL_HETB_p_N" 3/1), 2("LL_HETB_p_D" 3/1), 10("LL_HETC_p_N" 3/1), 10("LL_HETC_p_D" 3/1), 2("LL_HETP_p_N" 3/1), 2("LL_HETP_p_D" 3/1), 2("LL_HETP_p_P" 3/1), 1("LL_HETB_e_N" 3/1), 1("LL_HETB_e_D" 3/1), 3("LL_HETC_e_N" 3/1), 3("LL_HETC_e_D" 3/1), 2("LL_HETB_he3_N" 5/1), 2("LL_HETB_he3_D" 5/1), 2("LL_HETB_he4_N" 5/1), 2("LL_HETB_he4_D" 5/1), 4("LL_HETC_he3_N" 5/1), 4("LL_HETC_he3_D" 5/1), 8("LL_HETC_he4_N" 5/1), 8("LL_HETC_he4_D" 5/1), 4("LL_HETB_he_N" 5/1), 4("LL_HETB_he_D" 5/1), 2("LL_HETP_he_N" 5/1), 2("LL_HETP_he_D" 5/1), 2("LL_HETP_he_P" 5/1), 6("LL_HETB_cno_N" 6/1), 6("LL_HETB_cno_D" 6/1), 9("LL_HETC_cno_N" 6/1), 9("LL_HETC_cno_D" 6/1), 2("LL_HETP_cno_N" 7/1), 2("LL_HETP_cno_D" 7/1), 2("LL_HETP_cno_P" 7/1), 2("LL_HETB_fe_N" 6/1), 2("LL_HETB_fe_D" 6/1), 3("LL_HETC_fe_N" 7/1), 3("LL_HETC_fe_D" 7/1), 1("LL_HETP_fe_N" 7/1), 1("LL_HETP_fe_D" 7/1), 3("LL_HETC_T_p_N" 1/3), 3("LL_HETC_T_p_D" 1/3), 1("LL_HETC_T_e_N" 1/3), 1("LL_HETC_T_e_D" 1/3)
# Nominal
0x0352/0x0, 77("NO_EPT_mag_N" 0/3), 77("NO_EPT_mag_D" 0/3), 77("NO_EPT_foil_N" 0/3), 77("NO_EPT_foil_D" 0/3), 2("NO_EPTP_e_N" 1/3), 2("NO_EPTP_e_D" 1/3), 4("NO_EPTP_p_N" 1/3), 4("NO_EPTP_p_D" 1/3), 4("NO_EPTP_p_P" 1/3), 2("NO_EPTP_he3_N" 3/3), 2("NO_EPTP_he3_D" 3/3), 1("NO_EPTP_he3_P" 3/3), 2("NO_EPTP_he4_N" 3/3), 2("NO_EPTP_he4_D" 3/3), 1("NO_EPTP_he4_P" 3/3), 1("NO_EPTP_he_N" 3/3), 1("NO_EPTP_he_D" 3/3), 4("NO_EPTP_he_P" 3/3), 1("NO_HETP_bg_N" 6/3), 1("NO_HETP_bg_D" 6/3), 1("NO_HETB_bg_N" 6/3), 1("NO_HETB_bg_D" 6/3), 5("NO_HETB_p_N" 1/3), 5("NO_HETB_p_D" 1/3), 1("NO_HETB_tail_high_p_N" 1/3), 1("NO_HETB_tail_high_p_D" 1/3), 31("NO_HETC_p_N" 1/3), 31("NO_HETC_p_D" 1/3), 2("NO_HETP_p_N" 1/3), 2("NO_HETP_p_D" 1/3), 3("NO_HETP_p_P" 3/3), 1("NO_HETB_H_p_N" 0/3), 1("NO_HETB_H_p_D" 0/3), 3("NO_HETC_H_p_N" 0/3), 3("NO_HETC_H_p_D" 0/3), 1("NO_HETB_e_N" 0/3), 1("NO_HETB_e_D" 0/3), 3("NO_HETC_e_N" 0/3), 3("NO_HETC_e_D" 0/3), 1("NO_HETC_H_e_N" 3/3), 1("NO_HETC_H_e_D" 3/3), 4("NO_HETB_he3_N" 3/3), 4("NO_HETB_he3_D" 3/3), 4("NO_HETB_he4_N" 3/3), 4("NO_HETB_he4_D" 3/3), 5("NO_HETC_he3_N" 3/3), 5("NO_HETC_he3_D" 3/3), 11("NO_HETC_he4_N" 3/3), 11("NO_HETC_he4_D" 3/3), 6("NO_HETB_he_N" 1/3), 6("NO_HETB_he_D" 1/3), 2("NO_HETP_he_N" 4/3), 2("NO_HETP_he_D" 4/3), 4("NO_HETP_he_P" 4/3), 12("NO_HETC_c_N" 4/3), 12("NO_HETC_c_D" 4/3), 12("NO_HETC_n_N" 4/3), 12("NO_HETC_n_D" 4/3), 12("NO_HETC_o_N" 4/3), 12("NO_HETC_o_D" 4/3), 5("NO_HETB_c_N" 4/3), 5("NO_HETB_c_D" 4/3), 5("NO_HETB_n_N" 4/3), 5("NO_HETB_n_D" 4/3), 5("NO_HETB_o_N" 4/3), 5("NO_HETB_o_D" 4/3), 2("NO_HETP_cno_N" 6/3), 2("NO_HETP_cno_D" 6/3), 6("NO_HETP_cno_P" 6/3), 11("NO_HETC_fe_N" 5/3), 11("NO_HETC_fe_D" 5/3), 5("NO_HETB_fe_N" 5/3), 5("NO_HETB_fe_D" 5/3), 2("NO_HETP_fe_N" 6/3), 2("NO_HETP_fe_D" 6/3), 3("NO_HETP_fe_P" 6/3)
# Burst1n
0x0362/0x0, 48("B1_EPT_mag_N" 2/3), 48("B1_EPT_mag_D" 2/3), 2("B1_EPTP_he3_N" 1/3), 2("B1_EPTP_he3_D" 1/3), 1("B1_EPTP_he3_P" 1/3), 2("B1_EPTP_he4_N" 1/3), 2("B1_EPTP_he4_D" 1/3), 1("B1_EPTP_he4_P" 1/3)
# Unstable
0x0356/0x0, 1("NU_HETB_tail_low_p_N" 5/3), 1("NU_HETB_tail_low_p_D" 5/3), 2("NU_HETB_he34_N" 4/3), 2("NU_HETB_he34_D" 4/3), 5("NU_HETP_lbb_P" 5/3), 1("NU_HETB_cno_N" 5/3), 1("NU_HETB_cno_D" 5/3), 11("NU_HETC_ne_N" 5/3), 11("NU_HETC_ne_D" 5/3), 11("NU_HETC_mg_N" 5/3), 11("NU_HETC_mg_D" 5/3), 11("NU_HETC_si_N" 5/3), 11("NU_HETC_si_D" 5/3), 11("NU_HETC_s_N" 5/3), 11("NU_HETC_s_D" 5/3), 5("NU_HETB_ne_N" 5/3), 5("NU_HETB_ne_D" 5/3), 5("NU_HETB_mg_N" 5/3), 5("NU_HETB_mg_D" 5/3), 5("NU_HETB_si_N" 5/3), 5("NU_HETB_si_D" 5/3), 5("NU_HETB_s_N" 5/3), 5("NU_HETB_s_D" 5/3), 1("NU_HETB_wpen_nemgsis_N" 6/3), 1("NU_HETB_wpen_nemgsis_D" 6/3), 7("NU_HETP_nemgsis_P" 7/3), 11("NU_HETC_ar_N" 5/3), 11("NU_HETC_ar_D" 5/3), 11("NU_HETC_ca_N" 5/3), 11("NU_HETC_ca_D" 5/3), 11("NU_HETC_ni_N" 5/3), 11("NU_HETC_ni_D" 5/3), 5("NU_HETB_ar_N" 5/3), 5("NU_HETB_ar_D" 5/3), 5("NU_HETB_ca_N" 5/3), 5("NU_HETB_ca_D" 5/3), 5("NU_HETB_ni_N" 5/3), 5("NU_HETB_ni_D" 5/3), 1("NU_HETB_wpen_arcafeni_N" 6/3), 1("NU_HETB_wpen_arcafeni_D" 6/3), 2("NU_HETG_p_P" 4/3)
# Burst2n
0x036a/0x0, 6("B2_HETB_p_N" 0/3), 6("B2_HETB_p_D" 0/3), 62("B2_HETC_p_N" 0/3), 62("B2_HETC_p_D" 0/3), 2("B2_HETP_p_N" 0/3), 2("B2_HETP_p_D" 0/3), 3("B2_HETP_p_P" 0/3), 4("B2_HETB_he3_N" 1/3), 4("B2_HETB_he3_D" 1/3), 6("B2_HETB_he4_N" 1/3), 6("B2_HETB_he4_D" 1/3), 5("B2_HETC_he3_N" 1/3), 5("B2_HETC_he3_D" 1/3), 11("B2_HETC_he4_N" 1/3), 11("B2_HETC_he4_D" 1/3), 4("B2_HETB_he_N" 0/3), 4("B2_HETB_he_D" 0/3), 2("B2_HETP_he_N" 1/3), 2("B2_HETP_he_D" 1/3), 3("B2_HETP_he_P" 1/3), 7("B2_HETG_p_P" 1/3)
# HET/EPT2 FM2, version 10, rev 0
# env = {FAR}
# version/dps: 10/0
# apid/flags, n("section"sum enc/fmt)
# apid: 0x0300 + Tag
# flags: /-separated flags: 0..3 or 'h' or 'r'
# n: dps_items in section
# section: section name; may not contain whitespace
# sum, enc: cadence
# fmt: 0..3: float16, log2, uint24, encoded
# version: 0000
# S20data
0x0320/0x0, 4("S20_e_N" 0/1), 4("S20_e_D" 0/1), 1("S20_p_N" 0/1), 1("S20_p_D" 0/1)
# Low Latency
0x0332/0x0/0x2, 8("LL_EPT_e_N" 3/1), 8("LL_EPT_e_D" 3/1), 18("LL_EPT_i_N" 3/1), 18("LL_EPT_i_D" 3/1), 1("LL_EPT_T_e_N" 1/3), 1("LL_EPT_T_e_D" 1/3), 2("LL_EPT_T_i_N" 1/3), 2("LL_EPT_T_i_D" 1/3), 2("LL_HETB_p_N" 3/1), 2("LL_HETB_p_D" 3/1), 10("LL_HETC_p_N" 3/1), 10("LL_HETC_p_D" 3/1), 2("LL_HETP_p_N" 3/1), 2("LL_HETP_p_D" 3/1), 2("LL_HETP_p_P" 3/1), 1("LL_HETB_e_N" 3/1), 1("LL_HETB_e_D" 3/1), 3("LL_HETC_e_N" 3/1), 3("LL_HETC_e_D" 3/1), 2("LL_HETB_he3_N" 5/1), 2("LL_HETB_he3_D" 5/1), 2("LL_HETB_he4_N" 5/1), 2("LL_HETB_he4_D" 5/1), 4("LL_HETC_he3_N" 5/1), 4("LL_HETC_he3_D" 5/1), 8("LL_HETC_he4_N" 5/1), 8("LL_HETC_he4_D" 5/1), 4("LL_HETB_he_N" 5/1), 4("LL_HETB_he_D" 5/1), 2("LL_HETP_he_N" 5/1), 2("LL_HETP_he_D" 5/1), 2("LL_HETP_he_P" 5/1), 6("LL_HETB_cno_N" 6/1), 6("LL_HETB_cno_D" 6/1), 9("LL_HETC_cno_N" 6/1), 9("LL_HETC_cno_D" 6/1), 2("LL_HETP_cno_N" 7/1), 2("LL_HETP_cno_D" 7/1), 2("LL_HETP_cno_P" 7/1), 2("LL_HETB_fe_N" 6/1), 2("LL_HETB_fe_D" 6/1), 3("LL_HETC_fe_N" 7/1), 3("LL_HETC_fe_D" 7/1), 1("LL_HETP_fe_N" 7/1), 1("LL_HETP_fe_D" 7/1), 3("LL_HETC_T_p_N" 1/3), 3("LL_HETC_T_p_D" 1/3), 1("LL_HETC_T_e_N" 1/3), 1("LL_HETC_T_e_D" 1/3)
# Nominal
0x0352/0x1, 77("NO_EPT_mag_N" 1/3), 77("NO_EPT_mag_D" 1/3), 77("NO_EPT_foil_N" 1/3), 77("NO_EPT_foil_D" 1/3), 2("NO_EPTP_e_N" 3/3), 2("NO_EPTP_e_D" 3/3), 4("NO_EPTP_p_N" 3/3), 4("NO_EPTP_p_D" 3/3), 4("NO_EPTP_p_P" 3/3), 2("NO_EPTP_he3_N" 4/3), 2("NO_EPTP_he3_D" 4/3), 1("NO_EPTP_he3_P" 4/3), 2("NO_EPTP_he4_N" 4/3), 2("NO_EPTP_he4_D" 4/3), 1("NO_EPTP_he4_P" 4/3), 1("NO_EPTP_he_N" 4/3), 1("NO_EPTP_he_D" 4/3), 4("NO_EPTP_he_P" 4/3), 1("NO_HETP_bg_N" 6/3), 1("NO_HETP_bg_D" 6/3), 1("NO_HETB_bg_N" 6/3), 1("NO_HETB_bg_D" 6/3), 5("NO_HETB_p_N" 3/3), 5("NO_HETB_p_D" 3/3), 1("NO_HETB_tail_high_p_N" 3/3), 1("NO_HETB_tail_high_p_D" 3/3), 31("NO_HETC_p_N" 3/3), 31("NO_HETC_p_D" 3/3), 2("NO_HETP_p_N" 3/3), 2("NO_HETP_p_D" 3/3), 3("NO_HETP_p_P" 4/3), 1("NO_HETB_H_p_N" 1/3), 1("NO_HETB_H_p_D" 1/3), 3("NO_HETC_H_p_N" 1/3), 3("NO_HETC_H_p_D" 1/3), 1("NO_HETB_e_N" 1/3), 1("NO_HETB_e_D" 1/3), 3("NO_HETC_e_N" 1/3), 3("NO_HETC_e_D" 1/3), 1("NO_HETC_H_e_N" 4/3), 1("NO_HETC_H_e_D" 4/3), 4("NO_HETB_he3_N" 4/3), 4("NO_HETB_he3_D" 4/3), 4("NO_HETB_he4_N" 4/3), 4("NO_HETB_he4_D" 4/3), 5("NO_HETC_he3_N" 4/3), 5("NO_HETC_he3_D" 4/3), 11("NO_HETC_he4_N" 4/3), 11("NO_HETC_he4_D" 4/3), 6("NO_HETB_he_N" 3/3), 6("NO_HETB_he_D" 3/3), 2("NO_HETP_he_N" 5/3), 2("NO_HETP_he_D" 5/3), 4("NO_HETP_he_P" 5/3), 12("NO_HETC_c_N" 5/3), 12("NO_HETC_c_D" 5/3), 12("NO_HETC_n_N" 5/3), 12("NO_HETC_n_D" 5/3), 12("NO_HETC_o_N" 5/3), 12("NO_HETC_o_D" 5/3), 5("NO_HETB_c_N" 5/3), 5("NO_HETB_c_D" 5/3), 5("NO_HETB_n_N" 5/3), 5("NO_HETB_n_D" 5/3), 5("NO_HETB_o_N" 5/3), 5("NO_HETB_o_D" 5/3), 2("NO_HETP_cno_N" 6/3), 2("NO_HETP_cno_D" 6/3), 6("NO_HETP_cno_P" 6/3), 11("NO_HETC_fe_N" 6/3), 11("NO_HETC_fe_D" 6/3), 5("NO_HETB_fe_N" 6/3), 5("NO_HETB_fe_D" 6/3), 2("NO_HETP_fe_N" 6/3), 2("NO_HETP_fe_D" 6/3), 3("NO_HETP_fe_P" 6/3)
# Burst1n
0x0362/0x1, 48("B1_EPT_mag_N" 2/3), 48("B1_EPT_mag_D" 2/3), 2("B1_EPTP_he3_N" 1/3), 2("B1_EPTP_he3_D" 1/3), 1("B1_EPTP_he3_P" 1/3), 2("B1_EPTP_he4_N" 1/3), 2("B1_EPTP_he4_D" 1/3), 1("B1_EPTP_he4_P" 1/3)
# Unstable
0x0356/0x1, 1("NU_HETB_tail_low_p_N" 6/3), 1("NU_HETB_tail_low_p_D" 6/3), 2("NU_HETB_he34_N" 5/3), 2("NU_HETB_he34_D" 5/3), 5("NU_HETP_lbb_P" 6/3), 1("NU_HETB_cno_N" 6/3), 1("NU_HETB_cno_D" 6/3), 11("NU_HETC_ne_N" 6/3), 11("NU_HETC_ne_D" 6/3), 11("NU_HETC_mg_N" 6/3), 11("NU_HETC_mg_D" 6/3), 11("NU_HETC_si_N" 6/3), 11("NU_HETC_si_D" 6/3), 11("NU_HETC_s_N" 6/3), 11("NU_HETC_s_D" 6/3), 5("NU_HETB_ne_N" 6/3), 5("NU_HETB_ne_D" 6/3), 5("NU_HETB_mg_N" 6/3), 5("NU_HETB_mg_D" 6/3), 5("NU_HETB_si_N" 6/3), 5("NU_HETB_si_D" 6/3), 5("NU_HETB_s_N" 6/3), 5("NU_HETB_s_D" 6/3), 1("NU_HETB_wpen_nemgsis_N" 6/3), 1("NU_HETB_wpen_nemgsis_D" 6/3), 7("NU_HETP_nemgsis_P" 7/3), 11("NU_HETC_ar_N" 6/3), 11("NU_HETC_ar_D" 6/3), 11("NU_HETC_ca_N" 6/3), 11("NU_HETC_ca_D" 6/3), 11("NU_HETC_ni_N" 6/3), 11("NU_HETC_ni_D" 6/3), 5("NU_HETB_ar_N" 6/3), 5("NU_HETB_ar_D" 6/3), 5("NU_HETB_ca_N" 6/3), 5("NU_HETB_ca_D" 6/3), 5("NU_HETB_ni_N" 6/3), 5("NU_HETB_ni_D" 6/3), 1("NU_HETB_wpen_arcafeni_N" 6/3), 1("NU_HETB_wpen_arcafeni_D" 6/3), 2("NU_HETG_p_P" 5/3)
# Burst2n
0x036a/0x1, 6("B2_HETB_p_N" 0/3), 6("B2_HETB_p_D" 0/3), 62("B2_HETC_p_N" 0/3), 62("B2_HETC_p_D" 0/3), 2("B2_HETP_p_N" 0/3), 2("B2_HETP_p_D" 0/3), 3("B2_HETP_p_P" 0/3), 4("B2_HETB_he3_N" 1/3), 4("B2_HETB_he3_D" 1/3), 6("B2_HETB_he4_N" 1/3), 6("B2_HETB_he4_D" 1/3), 5("B2_HETC_he3_N" 1/3), 5("B2_HETC_he3_D" 1/3), 11("B2_HETC_he4_N" 1/3), 11("B2_HETC_he4_D" 1/3), 4("B2_HETB_he_N" 0/3), 4("B2_HETB_he_D" 0/3), 2("B2_HETP_he_N" 1/3), 2("B2_HETP_he_D" 1/3), 3("B2_HETP_he_P" 1/3), 1("B2_HETB_e_N" 0/3), 1("B2_HETB_e_D" 0/3), 3("B2_HETC_e_N" 0/3), 3("B2_HETC_e_D" 0/3), 7("B2_HETG_p_P" 1/3)

View file

@ -1,31 +0,0 @@
#<tag>:\n\t<ad> <us> <mod_phase> <mod_cadence> <header>\n...
0x48:
0x0148 6 1 600 0x0000007f
0x0548 9 3 600 0x10040090
0x0548 11 8 3600 0x080400c0
0x0548 12 68 3600 0x0c0400a0
0x0548 13 128 3600 0x100f00000
0x0548 15 188 3600 0x202c2000
0x0548 60 0 600 0x10040030
0x0548 85 0 600 0x10040000
0x0848 170 0 60 0x0000820c
0x0848 171 298 3600 0x000081e7
0x54:
0x0554 21 7 300 0x100a00000
0x0554 23 17 300 0x100a00100
0x0554 24 27 300 0x100a00200
0x0554 25 37 300 0x100a00300
0x0554 27 47 300 0x100a00400
0x0554 28 57 300 0x100a00500
0x0554 29 67 300 0x100a00600
0x0554 31 77 300 0x100a00700
0x0554 32 87 300 0x100a00800
0x0554 33 97 300 0x100a00900
0x0554 35 107 300 0x100a00a00
0x0554 36 117 300 0x100a00b00
0x0554 37 127 300 0x100a00c00
0x0554 39 137 300 0x100a00d00
0x0554 40 147 300 0x100a00e00
0x0554 41 157 300 0x100a00f00

File diff suppressed because it is too large Load diff

View file

@ -1,46 +0,0 @@
# b'STEP FS, version 5, rev 0\n'# env = {FAR}:
# apid/flags, n("section"sum enc/fmt)
# apid: 0x0300 + Tag
# flags: /-separated flags: 0..3 or 'h' or 'r'
# n: dps_items in section
# section: section name; may not contain whitespace
# sum, enc: cadence
# fmt: 0..3: float16, log2, uint24, encoded
# version: 0006
# Low Latency
0x0333/0x0/0x2, 24("LL_STEP_energy_res_int" 4), 24("LL_STEP_energy_res_mag" 4), 24("LL_STEP_energy_res_bkgnd_int" 4), 24("LL_STEP_energy_res_bkgnd_mag" 4), 4("LL_STEP_time_res_int" 0/3), 4("LL_STEP_time_res_mag" 0/3), 4("LL_STEP_time_res_bkgnd_int" 0/3), 4("LL_STEP_time_res_bkgnd_mag" 0/3)
# Auxiliary
0x0337/0x0, 1("AUX_STEP_time_res_int" 0/1), 1("AUX_STEP_time_res_mag" 0/1), 1("AUX_STEP_time_res_bkgnd_int" 0/1), 1("AUX_STEP_time_res_bkgnd_mag" 0/1), 32("AUX_STEP_basic_int" 2/3), 32("AUX_STEP_basic_mag" 2/3), 32("AUX_STEP_basic_bkgnd_int" 2/3), 32("AUX_STEP_basic_bkgnd_mag" 2/3)
# Burst1n
0x0363/0x0, 256("B1_STEP_basic_int" 0/3), 256("B1_STEP_basic_mag" 0/3), 48("B1_STEP_eres_int" 0/3), 48("B1_STEP_eres_mag" 0/3)
# Nominal
0x0353/0x0, 128("NO_STEP_basic_int" 4/3), 128("NO_STEP_basic_mag" 4/3), 12("NO_STEP_tres_rows_int" 1/3), 12("NO_STEP_tres_rows_mag" 1/3), 20("NO_STEP_tres_cols_int" 1/3), 20("NO_STEP_tres_cols_mag" 1/3), 4("NO_STEP_tres_bkgnd_int" 1/3), 4("NO_STEP_tres_bkgnd_mag" 1/3), 48("NO_STEP_eres_int" 4/3), 48("NO_STEP_eres_mag" 4/3), 15("NO_STEP_multi_int" 4/3), 15("NO_STEP_multi_mag" 4/3)
# b'STEP FS, version 5, rev 0\n'# env = {CLOSE}:
# apid/flags, n("section"sum enc/fmt)
# apid: 0x0300 + Tag
# flags: /-separated flags: 0..3 or 'h' or 'r'
# n: dps_items in section
# section: section name; may not contain whitespace
# sum, enc: cadence
# fmt: 0..3: float16, log2, uint24, encoded
# version: 0000
# Low Latency
0x0333/0x0/0x2, 24("LL_STEP_energy_res_int" 4), 24("LL_STEP_energy_res_mag" 4), 24("LL_STEP_energy_res_bkgnd_int" 4), 24("LL_STEP_energy_res_bkgnd_mag" 4), 4("LL_STEP_time_res_int" 0/3), 4("LL_STEP_time_res_mag" 0/3), 4("LL_STEP_time_res_bkgnd_int" 0/3), 4("LL_STEP_time_res_bkgnd_mag" 0/3)
# Auxiliary
0x0337/0x1, 1("AUX_STEP_time_res_int" 0/1), 1("AUX_STEP_time_res_mag" 0/1), 1("AUX_STEP_time_res_bkgnd_int" 0/1), 1("AUX_STEP_time_res_bkgnd_mag" 0/1), 32("AUX_STEP_basic_int" 2/3), 32("AUX_STEP_basic_mag" 2/3), 32("AUX_STEP_basic_bkgnd_int" 2/3), 32("AUX_STEP_basic_bkgnd_mag" 2/3)
# Burst1n
0x0363/0x1, 256("B1_STEP_basic_int" 0/3), 256("B1_STEP_basic_mag" 0/3), 48("B1_STEP_eres_int" 0/3), 48("B1_STEP_eres_mag" 0/3)
# Nominal
0x0353/0x1, 128("NO_STEP_basic_int" 2/3), 128("NO_STEP_basic_mag" 2/3), 12("NO_STEP_tres_rows_int" 0/3), 12("NO_STEP_tres_rows_mag" 0/3), 20("NO_STEP_tres_cols_int" 0/3), 20("NO_STEP_tres_cols_mag" 0/3), 4("NO_STEP_tres_bkgnd_int" 0/3), 4("NO_STEP_tres_bkgnd_mag" 0/3), 48("NO_STEP_eres_int" 2/3), 48("NO_STEP_eres_mag" 2/3), 15("NO_STEP_multi_int" 1/3), 15("NO_STEP_multi_mag" 1/3)

File diff suppressed because it is too large Load diff

View file

@ -1,13 +0,0 @@
c00f0000094200090003
e64e0001a41f00008544
a64f10040030
e6500001bd1f00008544
a65110040000
e6520001d61f00008525
a653100400b0
e6540001f91f00008526
a65510040080
e6200000111f00044144
66210300
665900ff
e6580003e8010000413c

View file

@ -1,36 +0,0 @@
#! /usr/bin/python3
from solo.patch import patch
from solo.solomsgclass import solomsg
class step83(patch):
def assemble(self, **aa):
from solo.step.config.fs import make
if self.config is None:
self.config = make()
self.scratch(subversion=3)
self.items = []
self.items.append(self.config.ppss.find_flags("HKC", 0x30)[0].copy())
self.items.append(self.config.ppss.find_flags("HKC", 0x00)[0].copy())
self.items.append(self.config.ppss.find_flags("ICU", 0x25)[0].copy())
self.items.append(self.config.ppss.find_flags("ICU", 0x26)[0].copy())
self.items.append(self.config.ppss.find_flags("LIFETIME" )[0].copy())
self.items[0].mod = self.items[2].mod
self.items[1].mod = self.items[3].mod
self.items[2].msg.da |= 0x80
self.items[3].msg.da |= 0x80
self.items[4].msg.da |= solomsg.RREG["step_deadtime"]
def send(self, msg):
self.send_scratch(msg)
for m in self.items:
m(msg)
self.send_ping(msg)
p83 = step83(name="counter_clear")
main=p83.main
if __name__=="__main__":
main()

View file

@ -1,8 +0,0 @@
<TCs>
<TC type="128" subtype="102" id="ZID52540" comment="" delta="00:00:01">
<parameter name="SensorID" id="PID00069">0</parameter>
<parameter name="Flags" id="PID00085">15</parameter>
<parameter name="NMessages" id="PID00086">13</parameter>
<parameter name="Messages" id="PID00075">c00f0000094200090003e64e0001a41f00008544a64f10040030e6500001bd1f00008544a65110040000e6520001d61f00008525a653100400b0e6540001f91f00008526a65510040080e6200000111f0004414466210300665900ffe6580003e8010000413c</parameter>
</TC>
</TCs>

View file

@ -1,56 +0,0 @@
E₁= 0.98 keV, ΔE= 1.16 keV, 60 sec
E₁= 2.14 keV, ΔE= 0.19 keV, 60 sec
E₁= 2.34 keV, ΔE= 0.21 keV, 60 sec
E₁= 2.54 keV, ΔE= 0.24 keV, 60 sec
E₁= 2.78 keV, ΔE= 0.26 keV, 60 sec
E₁= 3.04 keV, ΔE= 0.27 keV, 60 sec
E₁= 3.31 keV, ΔE= 0.29 keV, 60 sec
E₁= 3.60 keV, ΔE= 0.32 keV, 60 sec
E₁= 3.92 keV, ΔE= 0.37 keV, 1 sec
E₁= 4.29 keV, ΔE= 0.38 keV, 1 sec
E₁= 4.67 keV, ΔE= 0.42 keV, 1 sec
E₁= 5.09 keV, ΔE= 0.48 keV, 1 sec
E₁= 5.57 keV, ΔE= 0.51 keV, 1 sec
E₁= 6.08 keV, ΔE= 0.54 keV, 1 sec
E₁= 6.62 keV, ΔE= 0.58 keV, 1 sec
E₁= 7.20 keV, ΔE= 0.64 keV, 1 sec
E₁= 7.84 keV, ΔE= 0.74 keV, 1 sec
E₁= 8.58 keV, ΔE= 0.77 keV, 1 sec
E₁= 9.34 keV, ΔE= 0.83 keV, 1 sec
E₁= 10.18 keV, ΔE= 0.96 keV, 1 sec
E₁= 11.14 keV, ΔE= 1.02 keV, 1 sec
E₁= 12.16 keV, ΔE= 1.09 keV, 1 sec
E₁= 13.25 keV, ΔE= 1.15 keV, 1 sec
E₁= 14.40 keV, ΔE= 1.28 keV, 1 sec
E₁= 15.68 keV, ΔE= 1.47 keV, 1 sec
E₁= 17.15 keV, ΔE= 1.54 keV, 1 sec
E₁= 18.69 keV, ΔE= 1.66 keV, 1 sec
E₁= 20.35 keV, ΔE= 1.92 keV, 1 sec
E₁= 22.27 keV, ΔE= 2.05 keV, 1 sec
E₁= 24.32 keV, ΔE= 2.18 keV, 1 sec
E₁= 26.50 keV, ΔE= 2.30 keV, 1 sec
E₁= 28.80 keV, ΔE= 2.56 keV, 1 sec
E₁= 31.36 keV, ΔE= 2.94 keV, 1 sec
E₁= 34.30 keV, ΔE= 3.07 keV, 1 sec
E₁= 37.38 keV, ΔE= 3.33 keV, 1 sec
E₁= 40.70 keV, ΔE= 3.84 keV, 1 sec
E₁= 44.54 keV, ΔE= 4.10 keV, 1 sec
E₁= 48.64 keV, ΔE= 4.35 keV, 1 sec
E₁= 52.99 keV, ΔE= 4.61 keV, 1 sec
E₁= 57.60 keV, ΔE= 5.12 keV, 1 sec
E₁= 62.72 keV, ΔE= 5.89 keV, 60 sec
E₁= 68.61 keV, ΔE= 6.14 keV, 60 sec
E₁= 74.75 keV, ΔE= 6.66 keV, 60 sec
E₁= 81.41 keV, ΔE= 7.68 keV, 60 sec
E₁= 89.09 keV, ΔE= 8.19 keV, 60 sec
E₁= 97.28 keV, ΔE= 8.70 keV, 60 sec
E₁= 105.98 keV, ΔE= 9.22 keV, 60 sec
E₁= 115.20 keV, ΔE= 10.24 keV, 60 sec
E₁= 125.44 keV, ΔE= 11.78 keV, 60 sec
E₁= 137.22 keV, ΔE= 12.29 keV, 60 sec
E₁= 149.50 keV, ΔE= 13.31 keV, 60 sec
E₁= 162.82 keV, ΔE= 15.36 keV, 60 sec
E₁= 178.18 keV, ΔE= 16.38 keV, 60 sec
E₁= 194.56 keV, ΔE= 17.41 keV, 60 sec
E₁= 211.97 keV, ΔE= 18.43 keV, 60 sec
E₁= 230.40 keV, ΔE= 142.34 keV, 60 sec

View file

@ -1,72 +0,0 @@
# STEP FS, version 9, rev 0
# env = nominal
# version/dps: 9/0
# apid/flags, n("section"sum enc/fmt)
# apid: 0x0300 + Tag
# flags: /-separated flags: 0..3 or 'h' or 'r'
# n: dps_items in section
# section: section name; may not contain whitespace
# sum, enc: cadence
# fmt: 0..3: float16, log2, uint24, encoded
# version: 0009
# Low Latency
0x0333/0x0/0x2, 24("LL_STEP_energy_res_int" 4), 24("LL_STEP_energy_res_mag" 4), 24("LL_STEP_energy_res_bkgnd_int" 4), 24("LL_STEP_energy_res_bkgnd_mag" 4), 4("LL_STEP_time_res_int" 0/3), 4("LL_STEP_time_res_mag" 0/3), 4("LL_STEP_time_res_bkgnd_int" 0/3), 4("LL_STEP_time_res_bkgnd_mag" 0/3), 15("LL_STEP_multi_int" 4/3), 15("LL_STEP_multi_mag" 4/3)
# STEP 0 MAIN
0x0353/0x0/0x2, 32("STEP_M_0_00" 2/3), 32("STEP_M_0_01" 2/3), 32("STEP_M_0_02" 2/3), 32("STEP_M_0_03" 2/3), 32("STEP_M_0_04" 2/3), 32("STEP_M_0_05" 2/3), 32("STEP_M_0_06" 2/3), 32("STEP_M_0_07" 2/3), 32("STEP_M_0_08" 2/3), 32("STEP_M_0_09" 2/3), 32("STEP_M_0_10" 2/3), 32("STEP_M_0_11" 2/3), 32("STEP_M_0_12" 2/3), 32("STEP_M_0_13" 2/3), 32("STEP_M_0_14" 2/3), 32("STEP_M_0_15" 2/3)
# STEP 1 MAIN
0x0353/0x1/0x3, 32("STEP_M_1_00" 2/3), 32("STEP_M_1_01" 2/3), 32("STEP_M_1_02" 2/3), 32("STEP_M_1_03" 2/3), 32("STEP_M_1_04" 2/3), 32("STEP_M_1_05" 2/3), 32("STEP_M_1_06" 2/3), 32("STEP_M_1_07" 2/3), 32("STEP_M_1_08" 2/3), 32("STEP_M_1_09" 2/3), 32("STEP_M_1_10" 2/3), 32("STEP_M_1_11" 2/3), 32("STEP_M_1_12" 2/3), 32("STEP_M_1_13" 2/3), 32("STEP_M_1_14" 2/3), 32("STEP_M_1_15" 2/3)
# STEP 0 MAIN
0x0357/0x0/0x2, 32("STEP_M_0_00" 0/3), 32("STEP_M_0_01" 0/3), 32("STEP_M_0_02" 0/3), 32("STEP_M_0_03" 0/3), 32("STEP_M_0_04" 0/3), 32("STEP_M_0_05" 0/3), 32("STEP_M_0_06" 0/3), 32("STEP_M_0_07" 0/3), 32("STEP_M_0_08" 0/3), 32("STEP_M_0_09" 0/3), 32("STEP_M_0_10" 0/3), 32("STEP_M_0_11" 0/3), 32("STEP_M_0_12" 0/3), 32("STEP_M_0_13" 0/3), 32("STEP_M_0_14" 0/3), 32("STEP_M_0_15" 0/3)
# STEP 1 MAIN
0x0357/0x1/0x3, 32("STEP_M_1_00" 0/3), 32("STEP_M_1_01" 0/3), 32("STEP_M_1_02" 0/3), 32("STEP_M_1_03" 0/3), 32("STEP_M_1_04" 0/3), 32("STEP_M_1_05" 0/3), 32("STEP_M_1_06" 0/3), 32("STEP_M_1_07" 0/3), 32("STEP_M_1_08" 0/3), 32("STEP_M_1_09" 0/3), 32("STEP_M_1_10" 0/3), 32("STEP_M_1_11" 0/3), 32("STEP_M_1_12" 0/3), 32("STEP_M_1_13" 0/3), 32("STEP_M_1_14" 0/3), 32("STEP_M_1_15" 0/3)
# STEP 0 AUX
0x035f/0x0/0x2, 24("STEP_A_0_00" 4/3), 24("STEP_A_0_01" 4/3), 24("STEP_A_0_02" 4/3), 24("STEP_A_0_03" 4/3), 24("STEP_A_0_04" 4/3), 24("STEP_A_0_05" 4/3), 24("STEP_A_0_06" 4/3), 24("STEP_A_0_07" 4/3), 24("STEP_A_0_08" 4/3), 24("STEP_A_0_09" 4/3), 24("STEP_A_0_10" 4/3), 24("STEP_A_0_11" 4/3), 24("STEP_A_0_12" 4/3), 24("STEP_A_0_13" 4/3), 24("STEP_A_0_14" 4/3), 24("STEP_A_0_15" 4/3)
# STEP 1 AUX
0x035f/0x1/0x3, 24("STEP_A_1_00" 4/3), 24("STEP_A_1_01" 4/3), 24("STEP_A_1_02" 4/3), 24("STEP_A_1_03" 4/3), 24("STEP_A_1_04" 4/3), 24("STEP_A_1_05" 4/3), 24("STEP_A_1_06" 4/3), 24("STEP_A_1_07" 4/3), 24("STEP_A_1_08" 4/3), 24("STEP_A_1_09" 4/3), 24("STEP_A_1_10" 4/3), 24("STEP_A_1_11" 4/3), 24("STEP_A_1_12" 4/3), 24("STEP_A_1_13" 4/3), 24("STEP_A_1_14" 4/3), 24("STEP_A_1_15" 4/3)
# STEP FS, version 9, rev 0
# env = highrate
# version/dps: 9/1
# apid/flags, n("section"sum enc/fmt)
# apid: 0x0300 + Tag
# flags: /-separated flags: 0..3 or 'h' or 'r'
# n: dps_items in section
# section: section name; may not contain whitespace
# sum, enc: cadence
# fmt: 0..3: float16, log2, uint24, encoded
# version: 0009
# Low Latency
0x0333/0x0/0x2, 24("LL_STEP_energy_res_int" 4), 24("LL_STEP_energy_res_mag" 4), 24("LL_STEP_energy_res_bkgnd_int" 4), 24("LL_STEP_energy_res_bkgnd_mag" 4), 4("LL_STEP_time_res_int" 0/3), 4("LL_STEP_time_res_mag" 0/3), 4("LL_STEP_time_res_bkgnd_int" 0/3), 4("LL_STEP_time_res_bkgnd_mag" 0/3), 15("LL_STEP_multi_int" 4/3), 15("LL_STEP_multi_mag" 4/3)
# STEP 0 MAIN
0x0353/0x0/0x2, 32("STEP_M_0_00" 2/3), 32("STEP_M_0_01" 2/3), 32("STEP_M_0_02" 2/3), 32("STEP_M_0_03" 2/3), 32("STEP_M_0_04" 2/3), 32("STEP_M_0_05" 2/3), 32("STEP_M_0_06" 2/3), 32("STEP_M_0_07" 2/3), 32("STEP_M_0_08" 2/3), 32("STEP_M_0_09" 2/3), 32("STEP_M_0_10" 2/3), 32("STEP_M_0_11" 2/3), 32("STEP_M_0_12" 2/3), 32("STEP_M_0_13" 2/3), 32("STEP_M_0_14" 2/3), 32("STEP_M_0_15" 2/3)
# STEP 1 MAIN
0x0353/0x1/0x3, 32("STEP_M_1_00" 2/3), 32("STEP_M_1_01" 2/3), 32("STEP_M_1_02" 2/3), 32("STEP_M_1_03" 2/3), 32("STEP_M_1_04" 2/3), 32("STEP_M_1_05" 2/3), 32("STEP_M_1_06" 2/3), 32("STEP_M_1_07" 2/3), 32("STEP_M_1_08" 2/3), 32("STEP_M_1_09" 2/3), 32("STEP_M_1_10" 2/3), 32("STEP_M_1_11" 2/3), 32("STEP_M_1_12" 2/3), 32("STEP_M_1_13" 2/3), 32("STEP_M_1_14" 2/3), 32("STEP_M_1_15" 2/3)
# STEP 0 MAIN
0x0357/0x0/0x2, 32("STEP_M_0_00" 0/3), 32("STEP_M_0_01" 0/3), 32("STEP_M_0_02" 0/3), 32("STEP_M_0_03" 0/3), 32("STEP_M_0_04" 0/3), 32("STEP_M_0_05" 0/3), 32("STEP_M_0_06" 0/3), 32("STEP_M_0_07" 0/3), 32("STEP_M_0_08" 0/3), 32("STEP_M_0_09" 0/3), 32("STEP_M_0_10" 0/3), 32("STEP_M_0_11" 0/3), 32("STEP_M_0_12" 0/3), 32("STEP_M_0_13" 0/3), 32("STEP_M_0_14" 0/3), 32("STEP_M_0_15" 0/3)
# STEP 1 MAIN
0x0357/0x1/0x3, 32("STEP_M_1_00" 0/3), 32("STEP_M_1_01" 0/3), 32("STEP_M_1_02" 0/3), 32("STEP_M_1_03" 0/3), 32("STEP_M_1_04" 0/3), 32("STEP_M_1_05" 0/3), 32("STEP_M_1_06" 0/3), 32("STEP_M_1_07" 0/3), 32("STEP_M_1_08" 0/3), 32("STEP_M_1_09" 0/3), 32("STEP_M_1_10" 0/3), 32("STEP_M_1_11" 0/3), 32("STEP_M_1_12" 0/3), 32("STEP_M_1_13" 0/3), 32("STEP_M_1_14" 0/3), 32("STEP_M_1_15" 0/3)
# STEP 0 AUX
0x035f/0x0/0x2, 24("STEP_A_0_00" 4/3), 24("STEP_A_0_01" 4/3), 24("STEP_A_0_02" 4/3), 24("STEP_A_0_03" 4/3), 24("STEP_A_0_04" 4/3), 24("STEP_A_0_05" 4/3), 24("STEP_A_0_06" 4/3), 24("STEP_A_0_07" 4/3), 24("STEP_A_0_08" 4/3), 24("STEP_A_0_09" 4/3), 24("STEP_A_0_10" 4/3), 24("STEP_A_0_11" 4/3), 24("STEP_A_0_12" 4/3), 24("STEP_A_0_13" 4/3), 24("STEP_A_0_14" 4/3), 24("STEP_A_0_15" 4/3)
# STEP 1 AUX
0x035f/0x1/0x3, 24("STEP_A_1_00" 4/3), 24("STEP_A_1_01" 4/3), 24("STEP_A_1_02" 4/3), 24("STEP_A_1_03" 4/3), 24("STEP_A_1_04" 4/3), 24("STEP_A_1_05" 4/3), 24("STEP_A_1_06" 4/3), 24("STEP_A_1_07" 4/3), 24("STEP_A_1_08" 4/3), 24("STEP_A_1_09" 4/3), 24("STEP_A_1_10" 4/3), 24("STEP_A_1_11" 4/3), 24("STEP_A_1_12" 4/3), 24("STEP_A_1_13" 4/3), 24("STEP_A_1_14" 4/3), 24("STEP_A_1_15" 4/3)

View file

@ -11,8 +11,8 @@ from ..base_config import *
class hetept_config(unit_config):
TYPE = "HETEPT"
def __init__(self, ppss=None, l3=None, ana=None, science=None, dps=None,
unit='HET/EPT1', model=None, variant=None, temperature=25, env=None,
patch=0, verbose=1, dp_flag=0, version=0, OH_degC=-10, **kwargs):
unit='HET/EPT1', model=None, variant=None, temperature=25, env=None,
verbose=1, dp_flag=0, version=0, **kwargs):
from .ppss import hetept_ppss
from .dps import hetept_dps
from .l3trigger import hetept_l3_trigger
@ -28,8 +28,7 @@ class hetept_config(unit_config):
if ppss is None:
if dps is None:
if l3 is None:
l3 = hetept_l3_trigger(model=self.model, variant=self.variant, temperature=temperature,
patch=patch, verbose=verbose)
l3 = hetept_l3_trigger(model=self.model, variant=self.variant, temperature=temperature, verbose=verbose)
if science is None:
science = data.science(hetept_l3config=l3.config())
dps = hetept_dps(l3, science, unit=unit, env=env, verbosity=verbose+1, flg=dp_flag, version=version)
@ -37,8 +36,7 @@ class hetept_config(unit_config):
l3 = dps.l3
if ana is None:
ana = hetept_l1l2(calib=l3.scales())
ppss = hetept_ppss(ana=ana, dps=dps, dps_us=110000, clear_us=820000, OH_degC=OH_degC, verbose=verbose)
ppss = hetept_ppss(ana=ana, dps=dps, dps_us=110000, clear_us=820000, verbose=verbose)
self.ppss = ppss
self.dps = self.ppss.dps
self.l3 = self.dps.l3

View file

@ -9,11 +9,8 @@
from . import base_config
from .base_config import hetept_config, hetept_config_table
# attempt to reproduce what was flown 2021-2023
VERSION = 10
SUBVERSION = 0
ENV = ["CLOSE", "FAR"]
VERSION = 9
ENV = ["FAR", "CLOSE"]
TEMPERATURE = [25., 15. , 5. , -5.]
@ -87,32 +84,28 @@ def pqm(calib=False, anatest=False, **kwargs):
calib_ppss=calib_ppss, **kwargs)
return table
def fm1(start_modulus=3600, streamtest=False, OH_degC=-6.0, **kwargs):
def fm1(start_modulus=3600, streamtest=False, **kwargs):
UNIT="HET/EPT1"
MODEL="FM1"
UNIT_ID = 0xF1
TEMPERATURE = [-6.0, -11.60, -0.8]
TEMPERATURE = base_config.get_temperatures(minT=-40, maxT=20)
table = hetept_config_table(
unit=UNIT, model=MODEL, env=ENV, temperature=TEMPERATURE,
scratch=SUBVERSION, version=VERSION,
start_modulus=start_modulus,
streamtest=streamtest, OH_degC=OH_degC,
**kwargs )
scratch=UNIT_ID, version=VERSION, start_modulus=start_modulus,
streamtest=streamtest, **kwargs )
return table
def fm2(start_modulus=3600, streamtest=False, OH_degC=-1.0, **kwargs):
def fm2(start_modulus=3600, streamtest=False, **kwargs):
UNIT="HET/EPT2"
MODEL="FM2"
UNIT_ID = 0xF2
TEMPERATURE = [-0.8, -6.0, 4.40]
TEMPERATURE = base_config.get_temperatures(minT=-40, maxT=20)
table = hetept_config_table(
unit=UNIT, model=MODEL, env=ENV, temperature=TEMPERATURE,
scratch=SUBVERSION, version=VERSION,
start_modulus=start_modulus,
streamtest=streamtest, OH_degC=OH_degC,
**kwargs )
scratch=UNIT_ID, version=VERSION, start_modulus=start_modulus,
streamtest=streamtest, **kwargs )
return table
def fs(start_modulus=60, streamtest=True, minT=-40, maxT=20, **kwargs):

View file

@ -32,7 +32,7 @@ def write_xml_cf_to_icu(cf_txt, op_dir, conf_mem_addr, eeprom_page=None):
return ct_table
def write_xml_cf_to_eeprom(cf_txt, op_dir, eeprom_page=None, pointer_reset=None):
def write_xml_cf_to_eeprom(cf_txt, op_dir, eeprom_page=None):
"""
Loads .txt-format configuration tables and writes XML commands to write the configuration tables to the
unit eeprom.
@ -51,9 +51,6 @@ def write_xml_cf_to_eeprom(cf_txt, op_dir, eeprom_page=None, pointer_reset=None)
# create xml commands for writing the new config to the EEPROM
tc_seq_eeprom = ct_table.upload_index_patch()
if pointer_reset:
tc_seq_eeprom[1][-1] = telecom.store_messages_to_config_store(pointer_reset, unit=ct_table.magic.unit, flags=12, delta=300, comment="Reset table pointer to default table location")
write_xml(op_dir + 'hetept%i_v%04d_%s_to_EEPROM.tcs' % (ct_table.magic.unit - 1, ct_table.magic.version, hex(ct_table.crc)), tc_seq_eeprom)
return ct_table
@ -69,13 +66,8 @@ def write_xml_table_index_execution(op_dir):
telecom.write_xml(op_dir + 'he2_to_index_2.xml', [telecom.send_table_index('HE2', 2, comment='Switch HE2 to nominal mode')])
# create xml commands to change the temperature config
telecom.write_xml(op_dir + 'he1_to_index_9.xml', [telecom.send_table_index('HE1', 9, comment='Switch HE1 to calibration for -11.6 deg C')])
telecom.write_xml(op_dir + 'he1_to_index_10.xml', [telecom.send_table_index('HE1', 10, comment='Switch HE1 to calibration for -6.0 deg C')])
telecom.write_xml(op_dir + 'he1_to_index_11.xml', [telecom.send_table_index('HE1', 11, comment='Switch HE1 to calibration for -0.8 deg C')])
telecom.write_xml(op_dir + 'he2_to_index_9.xml', [telecom.send_table_index('HE2', 9, comment='Switch HE2 to calibration for -6.0 deg C')])
telecom.write_xml(op_dir + 'he2_to_index_10.xml', [telecom.send_table_index('HE2', 10, comment='Switch HE2 to calibration for -0.8 deg C')])
telecom.write_xml(op_dir + 'he2_to_index_11.xml', [telecom.send_table_index('HE2', 11, comment='Switch HE2 to calibration for +4.4 deg C')])
telecom.write_xml(op_dir + 'he1_to_index_13.xml', [telecom.send_table_index('HE1', 13, comment='Switch HE1 to calibration for -11.6 deg C')])
telecom.write_xml(op_dir + 'he2_to_index_14.xml', [telecom.send_table_index('HE2', 14, comment='Switch HE2 to calibration for -6.0 deg C')])
# create xml commands to change to close/far mode
telecom.write_xml(op_dir + 'he1_to_index_4.xml', [telecom.send_table_index('HE1', 4, comment='Switch HE1 to close mode')])

View file

@ -71,12 +71,12 @@ class hetept_l1l2(heteptana):
self.set_thres(self.HET+self.EPT, idx=idx)
def set_default_thresholds(self, idx="low", ept_A_thr=1000):
def set_default_thresholds(self, idx="low"):
self.set_thres(self.EPT_C, 45*keV, idx="high")
self.set_thres(self.EPT_C, 25*keV, idx="low")
# EPT_A threshold must be above all x-talk
self.set_thres(self.EPT_A, ept_A_thr*keV)
self.set_thres(self.EPT_A, 60*keV)
AH = [a for a in self.HET_A1+self.HET_A2 if a[-1]=='H']
AL = [a for a in self.HET_A1+self.HET_A2 if a[-1]=='L']
@ -113,12 +113,12 @@ class hetept_l1l2(heteptana):
self.l2[3].disable()
# EPT
self.l1bits(0, "C1", "C2", "A1", "A2")
self.l1bits(2, "C3", "C4", "A3", "A4")
self.l1bits(0, "C1", "C2")
self.l1bits(1, "A1", "A2")
self.l1bits(2, "C3", "C4")
self.l1bits(3, "A3", "A4")
self.l2[0].set(any=(0,), mask=self.ch("C1", "A1", "C2", "A2"))
self.l2[1].set(any=(2,), mask=self.ch("C3", "A3", "C4", "A4"))
self.l2[0].set(any=(0,), none=(1,), mask=self.ch("C1", "A1", "C2", "A2"))
self.l2[1].set(any=(2,), none=(3,), mask=self.ch("C3", "A3", "C4", "A4"))
a1 = 6; A1 = self.HET_A1
b1 = 7; B1 = self.HET_B1

View file

@ -1,6 +1,5 @@
L3 pass 1: -2vv -g dis ept.l3
opening include file hetept_config.l3 at level 1
patch_level = 0x3
event_base := R[0x0e0]
hetmask := R[0x0e0]
eptmask := R[0x0e1]
@ -79,7 +78,7 @@ het_pha_e_AB := 0xf
het_pha_stop_invalid := 0x3
define .macro DO_EPT_AFTER_HET
define .macro DO_EPT_INSTEAD_OF_HET
closing include file hetept_config.l3, line 154, level 1
closing include file hetept_config.l3, line 150, level 1
opening include file ept_calib.l3 at level 1
ept_gain = 0.94
C1_calib = 0.94
@ -102,13 +101,12 @@ ept_hist_offset = 0x60
ept_hist_length = 0xff
ept2d_e0 = 0x1
ept_2dhist_offset = 0xef
ept_2dhist_cutoff = 0xef
ept_2dhist_cutoff = 0xbf
define .macro EPT_TVCAL
closing include file ept_calib.l3, line 90, level 1
not opening forward file .ept.forward in twopass mode
define .macro EPT
.=R[0x000] # was R[0x000]
EPT code start address R[0x000]
@0 :09e000e0 SUB R[224]>>0 - R[224]>>0
@1 :00800000 NOP
C1C2_2dhist_offset := 0x0
@ -123,133 +121,107 @@ C4C3_2dhist_offset := 0x40
@8 :20000003 ADDI R[3]+0
@9 :a0000005 ifN ADDI R[5]+0
@10 :03500000 BITS C
@11 :09020000 SUB R[0]>>0 - R[2]>>0
@12 :89040000 ifN SUB R[0]>>0 - R[4]>>0
@13 :0100000c LOG R[12]
@14 :1c009e0d CMP R[13] > R[0]+158
@15 :d90d6a07 ifC CMP R[7] < R[13]+106
@16 :99006007 ifN CMP R[7] < R[0]+96
@17 :840060fe ifN BRNG R[254]{3:0}
@18 :440060fc ifS BRNG R[252]{3:0}
@19 :9b000112 ifN CMP R[18] <= R[0]+1
@20 :c3700000 ifC BITS 0
@21 :c0c00000 ifC GOTO R[0]
@22 :06f785ff MULI R[255]*1925>>15 # 0.05875
@23 :01000016 LOG R[22]
@24 :06f785fd MULI R[253]*1925>>15 # 0.05875
@25 :01000018 LOG R[24]
@26 :11190017 CMP R[23]+0 < R[25]
@27 :e0000019 ifC ADDI R[25]+0
@28 :09160000 SUB R[0]>>0 - R[22]>>0
@29 :0100001c LOG R[28]
@30 :09180000 SUB R[0]>>0 - R[24]>>0
@31 :0100001e LOG R[30]
@32 :111f001d CMP R[29]+0 < R[31]
@33 :e000001f ifC ADDI R[31]+0
@34 :1c009e21 CMP R[33] > R[0]+158
@35 :d9216a07 ifC CMP R[7] < R[33]+106
@36 :9c009e1b ifN CMP R[27] > R[0]+158
@37 :d91b6a07 ifC CMP R[7] < R[27]+106
@38 :c3700000 ifC BITS 0
@39 :c0c00000 ifC GOTO R[0]
@40 :19096a07 CMP R[7] < R[9]+106
@41 :dc009e09 ifC CMP R[9] > R[0]+158
@42 :85ff6007 ifN TRIM R[7], 96, 255
@43 :a040002a ifN ADDI R[42]+16384
@44 :6001002b ifS ADDI R[43]+256
@45 :8c00002c ifN HIST R[44]>>0 + R[0]>>0
@46 :80c00000 ifN GOTO R[0]
@47 :040060fc BRNG R[252]{3:0}
@48 :440060fe ifS BRNG R[254]{3:0}
@49 :1b000130 CMP R[48] <= R[0]+1
@50 :89050003 ifN SUB R[3]>>0 - R[5]>>0
@51 :a0004032 ifN ADDI R[50]+64
@52 :857f0033 ifN TRIM R[51], 0, 127
@53 :a0c00034 ifN ADDI R[52]+49152
@54 :88040002 ifN ADD R[2]>>0 + R[4]>>0
@55 :81000036 ifN LOG R[54]
@56 :9900ef37 ifN CMP R[55] < R[0]+239
@57 :857fef37 ifN TRIM R[55], 239, 127
@58 :8c351939 ifN HIST R[57]<<7 + R[53]>>1
@59 :03d00000 BITS ~C
@60 :03b00000 BITC 1
C1C2_exit = R[0x03d]
@61 :20000000 ADDI R[0]+0
@62 :60000100 ifS ADDI R[0]+1
@63 :a0000200 ifN ADDI R[0]+2
closing include file EPT, line 127, level 1
@11 :19006007 CMP R[7] < R[0]+96
@12 :840060fe ifN BRNG R[254]{3:0}
@13 :440060fc ifS BRNG R[252]{3:0}
@14 :9b00010d ifN CMP R[13] <= R[0]+1
@15 :c3700000 ifC BITS 0
@16 :c0c00000 ifC GOTO R[0]
@17 :06f785ff MULI R[255]*1925>>15 # 0.05875
@18 :01000011 LOG R[17]
@19 :06f785fd MULI R[253]*1925>>15 # 0.05875
@20 :01000013 LOG R[19]
@21 :11140012 CMP R[18]+0 < R[20]
@22 :e0000014 ifC ADDI R[20]+0
@23 :1c009e16 CMP R[22] > R[0]+158
@24 :d9166a07 ifC CMP R[7] < R[22]+106
@25 :c3700000 ifC BITS 0
@26 :c0c00000 ifC GOTO R[0]
@27 :19096a07 CMP R[7] < R[9]+106
@28 :dc009e09 ifC CMP R[9] > R[0]+158
@29 :85ff6007 ifN TRIM R[7], 96, 255
@30 :a040001d ifN ADDI R[29]+16384
@31 :6001001e ifS ADDI R[30]+256
@32 :8c00001f ifN HIST R[31]>>0 + R[0]>>0
@33 :80c00000 ifN GOTO R[0]
@34 :040060fc BRNG R[252]{3:0}
@35 :440060fe ifS BRNG R[254]{3:0}
@36 :1b000123 CMP R[35] <= R[0]+1
@37 :89050003 ifN SUB R[3]>>0 - R[5]>>0
@38 :a0004025 ifN ADDI R[37]+64
@39 :857f0026 ifN TRIM R[38], 0, 127
@40 :a0c00027 ifN ADDI R[39]+49152
@41 :88040002 ifN ADD R[2]>>0 + R[4]>>0
@42 :81000029 ifN LOG R[41]
@43 :9900bf2a ifN CMP R[42] < R[0]+191
@44 :857fef2a ifN TRIM R[42], 239, 127
@45 :8c28192c ifN HIST R[44]<<7 + R[40]>>1
@46 :03d00000 BITS ~C
@47 :03b00000 BITC 1
C1C2_exit = R[0x030]
@48 :20000000 ADDI R[0]+0
@49 :60000100 ifS ADDI R[0]+1
@50 :a0000200 ifN ADDI R[0]+2
closing include file EPT, line 100, level 1
.call EPT ['4', '3', 'C3E-C4E']
@64 :06f785f8 MULI R[248]*1925>>15 # 0.05875
@65 :01000040 LOG R[64]
@66 :06f785fa MULI R[250]*1925>>15 # 0.05875
@51 :06f785f8 MULI R[248]*1925>>15 # 0.05875
@52 :01000033 LOG R[51]
@53 :06f785fa MULI R[250]*1925>>15 # 0.05875
@54 :01000035 LOG R[53]
@55 :11360034 CMP R[52]+0 < R[54]
@56 :e0000036 ifC ADDI R[54]+0
@57 :20000034 ADDI R[52]+0
@58 :a0000036 ifN ADDI R[54]+0
@59 :03500000 BITS C
@60 :19006038 CMP R[56] < R[0]+96
@61 :840060f8 ifN BRNG R[248]{3:0}
@62 :440060fa ifS BRNG R[250]{3:0}
@63 :9b00013e ifN CMP R[62] <= R[0]+1
@64 :c3700000 ifC BITS 0
@65 :c0c00000 ifC GOTO R[0]
@66 :06f785f9 MULI R[249]*1925>>15 # 0.05875
@67 :01000042 LOG R[66]
@68 :11430041 CMP R[65]+0 < R[67]
@69 :e0000043 ifC ADDI R[67]+0
@70 :20000041 ADDI R[65]+0
@71 :a0000043 ifN ADDI R[67]+0
@72 :03500000 BITS C
@73 :09400000 SUB R[0]>>0 - R[64]>>0
@74 :89420000 ifN SUB R[0]>>0 - R[66]>>0
@75 :0100004a LOG R[74]
@76 :1c009e4b CMP R[75] > R[0]+158
@77 :d94b6a45 ifC CMP R[69] < R[75]+106
@78 :99006045 ifN CMP R[69] < R[0]+96
@79 :840060f8 ifN BRNG R[248]{3:0}
@80 :440060fa ifS BRNG R[250]{3:0}
@81 :9b000150 ifN CMP R[80] <= R[0]+1
@82 :c3700000 ifC BITS 0
@83 :c0c00000 ifC GOTO R[0]
@84 :06f785f9 MULI R[249]*1925>>15 # 0.05875
@85 :01000054 LOG R[84]
@86 :06f785fb MULI R[251]*1925>>15 # 0.05875
@87 :01000056 LOG R[86]
@88 :11570055 CMP R[85]+0 < R[87]
@89 :e0000057 ifC ADDI R[87]+0
@90 :09540000 SUB R[0]>>0 - R[84]>>0
@91 :0100005a LOG R[90]
@92 :09560000 SUB R[0]>>0 - R[86]>>0
@93 :0100005c LOG R[92]
@94 :115d005b CMP R[91]+0 < R[93]
@95 :e000005d ifC ADDI R[93]+0
@96 :1c009e5f CMP R[95] > R[0]+158
@97 :d95f6a45 ifC CMP R[69] < R[95]+106
@98 :9c009e59 ifN CMP R[89] > R[0]+158
@99 :d9596a45 ifC CMP R[69] < R[89]+106
@100:c3700000 ifC BITS 0
@101:c0c00000 ifC GOTO R[0]
@102:19476a45 CMP R[69] < R[71]+106
@103:dc009e47 ifC CMP R[71] > R[0]+158
@104:85ff6045 ifN TRIM R[69], 96, 255
@105:a0430068 ifN ADDI R[104]+17152
@106:7fff0069 ifS ADDI R[105]-256
@107:8c00006a ifN HIST R[106]>>0 + R[0]>>0
@108:80c00000 ifN GOTO R[0]
@109:040060fa BRNG R[250]{3:0}
@110:440060f8 ifS BRNG R[248]{3:0}
@111:1b00016e CMP R[110] <= R[0]+1
@112:89410043 ifN SUB R[67]>>0 - R[65]>>0
@113:a0004070 ifN ADDI R[112]+64
@114:857f0071 ifN TRIM R[113], 0, 127
@115:a0c08072 ifN ADDI R[114]+49280
@116:88420040 ifN ADD R[64]>>0 + R[66]>>0
@117:81000074 ifN LOG R[116]
@118:9900ef75 ifN CMP R[117] < R[0]+239
@119:857fef75 ifN TRIM R[117], 239, 127
@120:8c731977 ifN HIST R[119]<<7 + R[115]>>1
@121:03d00000 BITS ~C
@122:03b00000 BITC 1
C4C3_exit = R[0x07b]
@123:20000000 ADDI R[0]+0
@124:60000100 ifS ADDI R[0]+1
@125:a0000200 ifN ADDI R[0]+2
closing include file EPT, line 127, level 1
@126:087d003f ADD R[63]>>0 + R[125]>>0
@127:1c00017e CMP R[126] > R[0]+1
@128:e0000200 ifC ADDI R[0]+2
@129:14000001 CMP R[1]+0 > R[0]
@130:87000080 ifN PHA R[128]+0
@131:00000000 STOP
EPT code end address R[0x084]
@68 :06f785fb MULI R[251]*1925>>15 # 0.05875
@69 :01000044 LOG R[68]
@70 :11450043 CMP R[67]+0 < R[69]
@71 :e0000045 ifC ADDI R[69]+0
@72 :1c009e47 CMP R[71] > R[0]+158
@73 :d9476a38 ifC CMP R[56] < R[71]+106
@74 :c3700000 ifC BITS 0
@75 :c0c00000 ifC GOTO R[0]
@76 :193a6a38 CMP R[56] < R[58]+106
@77 :dc009e3a ifC CMP R[58] > R[0]+158
@78 :85ff6038 ifN TRIM R[56], 96, 255
@79 :a043004e ifN ADDI R[78]+17152
@80 :7fff004f ifS ADDI R[79]-256
@81 :8c000050 ifN HIST R[80]>>0 + R[0]>>0
@82 :80c00000 ifN GOTO R[0]
@83 :040060fa BRNG R[250]{3:0}
@84 :440060f8 ifS BRNG R[248]{3:0}
@85 :1b000154 CMP R[84] <= R[0]+1
@86 :89340036 ifN SUB R[54]>>0 - R[52]>>0
@87 :a0004056 ifN ADDI R[86]+64
@88 :857f0057 ifN TRIM R[87], 0, 127
@89 :a0c08058 ifN ADDI R[88]+49280
@90 :88350033 ifN ADD R[51]>>0 + R[53]>>0
@91 :8100005a ifN LOG R[90]
@92 :9900bf5b ifN CMP R[91] < R[0]+191
@93 :857fef5b ifN TRIM R[91], 239, 127
@94 :8c59195d ifN HIST R[93]<<7 + R[89]>>1
@95 :03d00000 BITS ~C
@96 :03b00000 BITC 1
C4C3_exit = R[0x061]
@97 :20000000 ADDI R[0]+0
@98 :60000100 ifS ADDI R[0]+1
@99 :a0000200 ifN ADDI R[0]+2
closing include file EPT, line 100, level 1
@100:08630032 ADD R[50]>>0 + R[99]>>0
@101:1c000164 CMP R[100] > R[0]+1
@102:e0000200 ifC ADDI R[0]+2
@103:14000001 CMP R[1]+0 > R[0]
@104:87000066 ifN PHA R[102]+0
@105:00000000 STOP
EPT code end address R[0x06a]
L3 pass 2: 2 forward conflicts
opening include file hetept_config.l3 at level 1
event_base := R[0x0e0]
@ -330,7 +302,7 @@ het_pha_e_AB := 0xf
het_pha_stop_invalid := 0x3
define .macro DO_EPT_AFTER_HET
define .macro DO_EPT_INSTEAD_OF_HET
closing include file hetept_config.l3, line 154, level 1
closing include file hetept_config.l3, line 150, level 1
opening include file ept_calib.l3 at level 1
ept_gain = 0.94
C1_calib = 0.94
@ -353,13 +325,12 @@ ept_hist_offset = 0x60
ept_hist_length = 0xff
ept2d_e0 = 0x1
ept_2dhist_offset = 0xef
ept_2dhist_cutoff = 0xef
ept_2dhist_cutoff = 0xbf
define .macro EPT_TVCAL
closing include file ept_calib.l3, line 90, level 1
not opening forward file .ept.forward in twopass mode
define .macro EPT
.=R[0x000] # was R[0x084]
EPT code start address R[0x000]
.=R[0x000] # was R[0x06a]
@0 :09e000e0 SUB R[224]>>0 - R[224]>>0
@1 :00800000 NOP
C1C2_2dhist_offset := 0x0
@ -374,133 +345,107 @@ C4C3_2dhist_offset := 0x40
@8 :20000003 ADDI R[3]+0
@9 :a0000005 ifN ADDI R[5]+0
@10 :03500000 BITS C
@11 :09020000 SUB R[0]>>0 - R[2]>>0
@12 :89040000 ifN SUB R[0]>>0 - R[4]>>0
@13 :0100000c LOG R[12]
@14 :1c009e0d CMP R[13] > R[0]+158
@15 :d90d6a07 ifC CMP R[7] < R[13]+106
@16 :99006007 ifN CMP R[7] < R[0]+96
@17 :840060fe ifN BRNG R[254]{3:0}
@18 :440060fc ifS BRNG R[252]{3:0}
@19 :9b000112 ifN CMP R[18] <= R[0]+1
@20 :c3700000 ifC BITS 0
@21 :c0c03d00 ifC GOTO R[61]
@22 :06f785ff MULI R[255]*1925>>15 # 0.05875
@23 :01000016 LOG R[22]
@24 :06f785fd MULI R[253]*1925>>15 # 0.05875
@25 :01000018 LOG R[24]
@26 :11190017 CMP R[23]+0 < R[25]
@27 :e0000019 ifC ADDI R[25]+0
@28 :09160000 SUB R[0]>>0 - R[22]>>0
@29 :0100001c LOG R[28]
@30 :09180000 SUB R[0]>>0 - R[24]>>0
@31 :0100001e LOG R[30]
@32 :111f001d CMP R[29]+0 < R[31]
@33 :e000001f ifC ADDI R[31]+0
@34 :1c009e21 CMP R[33] > R[0]+158
@35 :d9216a07 ifC CMP R[7] < R[33]+106
@36 :9c009e1b ifN CMP R[27] > R[0]+158
@37 :d91b6a07 ifC CMP R[7] < R[27]+106
@38 :c3700000 ifC BITS 0
@39 :c0c03d00 ifC GOTO R[61]
@40 :19096a07 CMP R[7] < R[9]+106
@41 :dc009e09 ifC CMP R[9] > R[0]+158
@42 :85ff6007 ifN TRIM R[7], 96, 255
@43 :a040002a ifN ADDI R[42]+16384
@44 :6001002b ifS ADDI R[43]+256
@45 :8c00002c ifN HIST R[44]>>0 + R[0]>>0
@46 :80c03d00 ifN GOTO R[61]
@47 :040060fc BRNG R[252]{3:0}
@48 :440060fe ifS BRNG R[254]{3:0}
@49 :1b000130 CMP R[48] <= R[0]+1
@50 :89050003 ifN SUB R[3]>>0 - R[5]>>0
@51 :a0004032 ifN ADDI R[50]+64
@52 :857f0033 ifN TRIM R[51], 0, 127
@53 :a0c00034 ifN ADDI R[52]+49152
@54 :88040002 ifN ADD R[2]>>0 + R[4]>>0
@55 :81000036 ifN LOG R[54]
@56 :9900ef37 ifN CMP R[55] < R[0]+239
@57 :857fef37 ifN TRIM R[55], 239, 127
@58 :8c351939 ifN HIST R[57]<<7 + R[53]>>1
@59 :03d00000 BITS ~C
@60 :03b00000 BITC 1
C1C2_exit = R[0x03d]
@61 :20000000 ADDI R[0]+0
@62 :60000100 ifS ADDI R[0]+1
@63 :a0000200 ifN ADDI R[0]+2
closing include file EPT, line 127, level 1
@11 :19006007 CMP R[7] < R[0]+96
@12 :840060fe ifN BRNG R[254]{3:0}
@13 :440060fc ifS BRNG R[252]{3:0}
@14 :9b00010d ifN CMP R[13] <= R[0]+1
@15 :c3700000 ifC BITS 0
@16 :c0c03000 ifC GOTO R[48]
@17 :06f785ff MULI R[255]*1925>>15 # 0.05875
@18 :01000011 LOG R[17]
@19 :06f785fd MULI R[253]*1925>>15 # 0.05875
@20 :01000013 LOG R[19]
@21 :11140012 CMP R[18]+0 < R[20]
@22 :e0000014 ifC ADDI R[20]+0
@23 :1c009e16 CMP R[22] > R[0]+158
@24 :d9166a07 ifC CMP R[7] < R[22]+106
@25 :c3700000 ifC BITS 0
@26 :c0c03000 ifC GOTO R[48]
@27 :19096a07 CMP R[7] < R[9]+106
@28 :dc009e09 ifC CMP R[9] > R[0]+158
@29 :85ff6007 ifN TRIM R[7], 96, 255
@30 :a040001d ifN ADDI R[29]+16384
@31 :6001001e ifS ADDI R[30]+256
@32 :8c00001f ifN HIST R[31]>>0 + R[0]>>0
@33 :80c03000 ifN GOTO R[48]
@34 :040060fc BRNG R[252]{3:0}
@35 :440060fe ifS BRNG R[254]{3:0}
@36 :1b000123 CMP R[35] <= R[0]+1
@37 :89050003 ifN SUB R[3]>>0 - R[5]>>0
@38 :a0004025 ifN ADDI R[37]+64
@39 :857f0026 ifN TRIM R[38], 0, 127
@40 :a0c00027 ifN ADDI R[39]+49152
@41 :88040002 ifN ADD R[2]>>0 + R[4]>>0
@42 :81000029 ifN LOG R[41]
@43 :9900bf2a ifN CMP R[42] < R[0]+191
@44 :857fef2a ifN TRIM R[42], 239, 127
@45 :8c28192c ifN HIST R[44]<<7 + R[40]>>1
@46 :03d00000 BITS ~C
@47 :03b00000 BITC 1
C1C2_exit = R[0x030]
@48 :20000000 ADDI R[0]+0
@49 :60000100 ifS ADDI R[0]+1
@50 :a0000200 ifN ADDI R[0]+2
closing include file EPT, line 100, level 1
.call EPT ['4', '3', 'C3E-C4E']
@64 :06f785f8 MULI R[248]*1925>>15 # 0.05875
@65 :01000040 LOG R[64]
@66 :06f785fa MULI R[250]*1925>>15 # 0.05875
@51 :06f785f8 MULI R[248]*1925>>15 # 0.05875
@52 :01000033 LOG R[51]
@53 :06f785fa MULI R[250]*1925>>15 # 0.05875
@54 :01000035 LOG R[53]
@55 :11360034 CMP R[52]+0 < R[54]
@56 :e0000036 ifC ADDI R[54]+0
@57 :20000034 ADDI R[52]+0
@58 :a0000036 ifN ADDI R[54]+0
@59 :03500000 BITS C
@60 :19006038 CMP R[56] < R[0]+96
@61 :840060f8 ifN BRNG R[248]{3:0}
@62 :440060fa ifS BRNG R[250]{3:0}
@63 :9b00013e ifN CMP R[62] <= R[0]+1
@64 :c3700000 ifC BITS 0
@65 :c0c06100 ifC GOTO R[97]
@66 :06f785f9 MULI R[249]*1925>>15 # 0.05875
@67 :01000042 LOG R[66]
@68 :11430041 CMP R[65]+0 < R[67]
@69 :e0000043 ifC ADDI R[67]+0
@70 :20000041 ADDI R[65]+0
@71 :a0000043 ifN ADDI R[67]+0
@72 :03500000 BITS C
@73 :09400000 SUB R[0]>>0 - R[64]>>0
@74 :89420000 ifN SUB R[0]>>0 - R[66]>>0
@75 :0100004a LOG R[74]
@76 :1c009e4b CMP R[75] > R[0]+158
@77 :d94b6a45 ifC CMP R[69] < R[75]+106
@78 :99006045 ifN CMP R[69] < R[0]+96
@79 :840060f8 ifN BRNG R[248]{3:0}
@80 :440060fa ifS BRNG R[250]{3:0}
@81 :9b000150 ifN CMP R[80] <= R[0]+1
@82 :c3700000 ifC BITS 0
@83 :c0c07b00 ifC GOTO R[123]
@84 :06f785f9 MULI R[249]*1925>>15 # 0.05875
@85 :01000054 LOG R[84]
@86 :06f785fb MULI R[251]*1925>>15 # 0.05875
@87 :01000056 LOG R[86]
@88 :11570055 CMP R[85]+0 < R[87]
@89 :e0000057 ifC ADDI R[87]+0
@90 :09540000 SUB R[0]>>0 - R[84]>>0
@91 :0100005a LOG R[90]
@92 :09560000 SUB R[0]>>0 - R[86]>>0
@93 :0100005c LOG R[92]
@94 :115d005b CMP R[91]+0 < R[93]
@95 :e000005d ifC ADDI R[93]+0
@96 :1c009e5f CMP R[95] > R[0]+158
@97 :d95f6a45 ifC CMP R[69] < R[95]+106
@98 :9c009e59 ifN CMP R[89] > R[0]+158
@99 :d9596a45 ifC CMP R[69] < R[89]+106
@100:c3700000 ifC BITS 0
@101:c0c07b00 ifC GOTO R[123]
@102:19476a45 CMP R[69] < R[71]+106
@103:dc009e47 ifC CMP R[71] > R[0]+158
@104:85ff6045 ifN TRIM R[69], 96, 255
@105:a0430068 ifN ADDI R[104]+17152
@106:7fff0069 ifS ADDI R[105]-256
@107:8c00006a ifN HIST R[106]>>0 + R[0]>>0
@108:80c07b00 ifN GOTO R[123]
@109:040060fa BRNG R[250]{3:0}
@110:440060f8 ifS BRNG R[248]{3:0}
@111:1b00016e CMP R[110] <= R[0]+1
@112:89410043 ifN SUB R[67]>>0 - R[65]>>0
@113:a0004070 ifN ADDI R[112]+64
@114:857f0071 ifN TRIM R[113], 0, 127
@115:a0c08072 ifN ADDI R[114]+49280
@116:88420040 ifN ADD R[64]>>0 + R[66]>>0
@117:81000074 ifN LOG R[116]
@118:9900ef75 ifN CMP R[117] < R[0]+239
@119:857fef75 ifN TRIM R[117], 239, 127
@120:8c731977 ifN HIST R[119]<<7 + R[115]>>1
@121:03d00000 BITS ~C
@122:03b00000 BITC 1
C4C3_exit = R[0x07b]
@123:20000000 ADDI R[0]+0
@124:60000100 ifS ADDI R[0]+1
@125:a0000200 ifN ADDI R[0]+2
closing include file EPT, line 127, level 1
@126:087d003f ADD R[63]>>0 + R[125]>>0
@127:1c00017e CMP R[126] > R[0]+1
@128:e0000200 ifC ADDI R[0]+2
@129:14000001 CMP R[1]+0 > R[0]
@130:87000080 ifN PHA R[128]+0
@131:00000000 STOP
EPT code end address R[0x084]
@68 :06f785fb MULI R[251]*1925>>15 # 0.05875
@69 :01000044 LOG R[68]
@70 :11450043 CMP R[67]+0 < R[69]
@71 :e0000045 ifC ADDI R[69]+0
@72 :1c009e47 CMP R[71] > R[0]+158
@73 :d9476a38 ifC CMP R[56] < R[71]+106
@74 :c3700000 ifC BITS 0
@75 :c0c06100 ifC GOTO R[97]
@76 :193a6a38 CMP R[56] < R[58]+106
@77 :dc009e3a ifC CMP R[58] > R[0]+158
@78 :85ff6038 ifN TRIM R[56], 96, 255
@79 :a043004e ifN ADDI R[78]+17152
@80 :7fff004f ifS ADDI R[79]-256
@81 :8c000050 ifN HIST R[80]>>0 + R[0]>>0
@82 :80c06100 ifN GOTO R[97]
@83 :040060fa BRNG R[250]{3:0}
@84 :440060f8 ifS BRNG R[248]{3:0}
@85 :1b000154 CMP R[84] <= R[0]+1
@86 :89340036 ifN SUB R[54]>>0 - R[52]>>0
@87 :a0004056 ifN ADDI R[86]+64
@88 :857f0057 ifN TRIM R[87], 0, 127
@89 :a0c08058 ifN ADDI R[88]+49280
@90 :88350033 ifN ADD R[51]>>0 + R[53]>>0
@91 :8100005a ifN LOG R[90]
@92 :9900bf5b ifN CMP R[91] < R[0]+191
@93 :857fef5b ifN TRIM R[91], 239, 127
@94 :8c59195d ifN HIST R[93]<<7 + R[89]>>1
@95 :03d00000 BITS ~C
@96 :03b00000 BITC 1
C4C3_exit = R[0x061]
@97 :20000000 ADDI R[0]+0
@98 :60000100 ifS ADDI R[0]+1
@99 :a0000200 ifN ADDI R[0]+2
closing include file EPT, line 100, level 1
@100:08630032 ADD R[50]>>0 + R[99]>>0
@101:1c000164 CMP R[100] > R[0]+1
@102:e0000200 ifC ADDI R[0]+2
@103:14000001 CMP R[1]+0 > R[0]
@104:87000066 ifN PHA R[102]+0
@105:00000000 STOP
EPT code end address R[0x06a]
@0 :09e000e0 SUB R[224]>>0 - R[224]>>0
@1 :00800000 NOP
@2 :06f785fe MULI R[254]*1925>>15 # 0.05875
@ -512,124 +457,98 @@ EPT code end address R[0x084]
@8 :20000003 ADDI R[3]+0
@9 :a0000005 ifN ADDI R[5]+0
@10 :03500000 BITS C
@11 :09020000 SUB R[0]>>0 - R[2]>>0
@12 :89040000 ifN SUB R[0]>>0 - R[4]>>0
@13 :0100000c LOG R[12]
@14 :1c009e0d CMP R[13] > R[0]+158
@15 :d90d6a07 ifC CMP R[7] < R[13]+106
@16 :99006007 ifN CMP R[7] < R[0]+96
@17 :840060fe ifN BRNG R[254]{3:0}
@18 :440060fc ifS BRNG R[252]{3:0}
@19 :9b000112 ifN CMP R[18] <= R[0]+1
@20 :c3700000 ifC BITS 0
@21 :c0c03d00 ifC GOTO R[61]
@22 :06f785ff MULI R[255]*1925>>15 # 0.05875
@23 :01000016 LOG R[22]
@24 :06f785fd MULI R[253]*1925>>15 # 0.05875
@25 :01000018 LOG R[24]
@26 :11190017 CMP R[23]+0 < R[25]
@27 :e0000019 ifC ADDI R[25]+0
@28 :09160000 SUB R[0]>>0 - R[22]>>0
@29 :0100001c LOG R[28]
@30 :09180000 SUB R[0]>>0 - R[24]>>0
@31 :0100001e LOG R[30]
@32 :111f001d CMP R[29]+0 < R[31]
@33 :e000001f ifC ADDI R[31]+0
@34 :1c009e21 CMP R[33] > R[0]+158
@35 :d9216a07 ifC CMP R[7] < R[33]+106
@36 :9c009e1b ifN CMP R[27] > R[0]+158
@37 :d91b6a07 ifC CMP R[7] < R[27]+106
@38 :c3700000 ifC BITS 0
@39 :c0c03d00 ifC GOTO R[61]
@40 :19096a07 CMP R[7] < R[9]+106
@41 :dc009e09 ifC CMP R[9] > R[0]+158
@42 :85ff6007 ifN TRIM R[7], 96, 255
@43 :a040002a ifN ADDI R[42]+16384
@44 :6001002b ifS ADDI R[43]+256
@45 :8c00002c ifN HIST R[44]>>0 + R[0]>>0
@46 :80c03d00 ifN GOTO R[61]
@47 :040060fc BRNG R[252]{3:0}
@48 :440060fe ifS BRNG R[254]{3:0}
@49 :1b000130 CMP R[48] <= R[0]+1
@50 :89050003 ifN SUB R[3]>>0 - R[5]>>0
@51 :a0004032 ifN ADDI R[50]+64
@52 :857f0033 ifN TRIM R[51], 0, 127
@53 :a0c00034 ifN ADDI R[52]+49152
@54 :88040002 ifN ADD R[2]>>0 + R[4]>>0
@55 :81000036 ifN LOG R[54]
@56 :9900ef37 ifN CMP R[55] < R[0]+239
@57 :857fef37 ifN TRIM R[55], 239, 127
@58 :8c351939 ifN HIST R[57]<<7 + R[53]>>1
@59 :03d00000 BITS ~C
@60 :03b00000 BITC 1
@61 :20000000 ADDI R[0]+0
@62 :60000100 ifS ADDI R[0]+1
@63 :a0000200 ifN ADDI R[0]+2
@64 :06f785f8 MULI R[248]*1925>>15 # 0.05875
@65 :01000040 LOG R[64]
@66 :06f785fa MULI R[250]*1925>>15 # 0.05875
@11 :19006007 CMP R[7] < R[0]+96
@12 :840060fe ifN BRNG R[254]{3:0}
@13 :440060fc ifS BRNG R[252]{3:0}
@14 :9b00010d ifN CMP R[13] <= R[0]+1
@15 :c3700000 ifC BITS 0
@16 :c0c03000 ifC GOTO R[48]
@17 :06f785ff MULI R[255]*1925>>15 # 0.05875
@18 :01000011 LOG R[17]
@19 :06f785fd MULI R[253]*1925>>15 # 0.05875
@20 :01000013 LOG R[19]
@21 :11140012 CMP R[18]+0 < R[20]
@22 :e0000014 ifC ADDI R[20]+0
@23 :1c009e16 CMP R[22] > R[0]+158
@24 :d9166a07 ifC CMP R[7] < R[22]+106
@25 :c3700000 ifC BITS 0
@26 :c0c03000 ifC GOTO R[48]
@27 :19096a07 CMP R[7] < R[9]+106
@28 :dc009e09 ifC CMP R[9] > R[0]+158
@29 :85ff6007 ifN TRIM R[7], 96, 255
@30 :a040001d ifN ADDI R[29]+16384
@31 :6001001e ifS ADDI R[30]+256
@32 :8c00001f ifN HIST R[31]>>0 + R[0]>>0
@33 :80c03000 ifN GOTO R[48]
@34 :040060fc BRNG R[252]{3:0}
@35 :440060fe ifS BRNG R[254]{3:0}
@36 :1b000123 CMP R[35] <= R[0]+1
@37 :89050003 ifN SUB R[3]>>0 - R[5]>>0
@38 :a0004025 ifN ADDI R[37]+64
@39 :857f0026 ifN TRIM R[38], 0, 127
@40 :a0c00027 ifN ADDI R[39]+49152
@41 :88040002 ifN ADD R[2]>>0 + R[4]>>0
@42 :81000029 ifN LOG R[41]
@43 :9900bf2a ifN CMP R[42] < R[0]+191
@44 :857fef2a ifN TRIM R[42], 239, 127
@45 :8c28192c ifN HIST R[44]<<7 + R[40]>>1
@46 :03d00000 BITS ~C
@47 :03b00000 BITC 1
@48 :20000000 ADDI R[0]+0
@49 :60000100 ifS ADDI R[0]+1
@50 :a0000200 ifN ADDI R[0]+2
@51 :06f785f8 MULI R[248]*1925>>15 # 0.05875
@52 :01000033 LOG R[51]
@53 :06f785fa MULI R[250]*1925>>15 # 0.05875
@54 :01000035 LOG R[53]
@55 :11360034 CMP R[52]+0 < R[54]
@56 :e0000036 ifC ADDI R[54]+0
@57 :20000034 ADDI R[52]+0
@58 :a0000036 ifN ADDI R[54]+0
@59 :03500000 BITS C
@60 :19006038 CMP R[56] < R[0]+96
@61 :840060f8 ifN BRNG R[248]{3:0}
@62 :440060fa ifS BRNG R[250]{3:0}
@63 :9b00013e ifN CMP R[62] <= R[0]+1
@64 :c3700000 ifC BITS 0
@65 :c0c06100 ifC GOTO R[97]
@66 :06f785f9 MULI R[249]*1925>>15 # 0.05875
@67 :01000042 LOG R[66]
@68 :11430041 CMP R[65]+0 < R[67]
@69 :e0000043 ifC ADDI R[67]+0
@70 :20000041 ADDI R[65]+0
@71 :a0000043 ifN ADDI R[67]+0
@72 :03500000 BITS C
@73 :09400000 SUB R[0]>>0 - R[64]>>0
@74 :89420000 ifN SUB R[0]>>0 - R[66]>>0
@75 :0100004a LOG R[74]
@76 :1c009e4b CMP R[75] > R[0]+158
@77 :d94b6a45 ifC CMP R[69] < R[75]+106
@78 :99006045 ifN CMP R[69] < R[0]+96
@79 :840060f8 ifN BRNG R[248]{3:0}
@80 :440060fa ifS BRNG R[250]{3:0}
@81 :9b000150 ifN CMP R[80] <= R[0]+1
@82 :c3700000 ifC BITS 0
@83 :c0c07b00 ifC GOTO R[123]
@84 :06f785f9 MULI R[249]*1925>>15 # 0.05875
@85 :01000054 LOG R[84]
@86 :06f785fb MULI R[251]*1925>>15 # 0.05875
@87 :01000056 LOG R[86]
@88 :11570055 CMP R[85]+0 < R[87]
@89 :e0000057 ifC ADDI R[87]+0
@90 :09540000 SUB R[0]>>0 - R[84]>>0
@91 :0100005a LOG R[90]
@92 :09560000 SUB R[0]>>0 - R[86]>>0
@93 :0100005c LOG R[92]
@94 :115d005b CMP R[91]+0 < R[93]
@95 :e000005d ifC ADDI R[93]+0
@96 :1c009e5f CMP R[95] > R[0]+158
@97 :d95f6a45 ifC CMP R[69] < R[95]+106
@98 :9c009e59 ifN CMP R[89] > R[0]+158
@99 :d9596a45 ifC CMP R[69] < R[89]+106
@100:c3700000 ifC BITS 0
@101:c0c07b00 ifC GOTO R[123]
@102:19476a45 CMP R[69] < R[71]+106
@103:dc009e47 ifC CMP R[71] > R[0]+158
@104:85ff6045 ifN TRIM R[69], 96, 255
@105:a0430068 ifN ADDI R[104]+17152
@106:7fff0069 ifS ADDI R[105]-256
@107:8c00006a ifN HIST R[106]>>0 + R[0]>>0
@108:80c07b00 ifN GOTO R[123]
@109:040060fa BRNG R[250]{3:0}
@110:440060f8 ifS BRNG R[248]{3:0}
@111:1b00016e CMP R[110] <= R[0]+1
@112:89410043 ifN SUB R[67]>>0 - R[65]>>0
@113:a0004070 ifN ADDI R[112]+64
@114:857f0071 ifN TRIM R[113], 0, 127
@115:a0c08072 ifN ADDI R[114]+49280
@116:88420040 ifN ADD R[64]>>0 + R[66]>>0
@117:81000074 ifN LOG R[116]
@118:9900ef75 ifN CMP R[117] < R[0]+239
@119:857fef75 ifN TRIM R[117], 239, 127
@120:8c731977 ifN HIST R[119]<<7 + R[115]>>1
@121:03d00000 BITS ~C
@122:03b00000 BITC 1
@123:20000000 ADDI R[0]+0
@124:60000100 ifS ADDI R[0]+1
@125:a0000200 ifN ADDI R[0]+2
@126:087d003f ADD R[63]>>0 + R[125]>>0
@127:1c00017e CMP R[126] > R[0]+1
@128:e0000200 ifC ADDI R[0]+2
@129:14000001 CMP R[1]+0 > R[0]
@130:87000080 ifN PHA R[128]+0
@131:00000000 STOP
@68 :06f785fb MULI R[251]*1925>>15 # 0.05875
@69 :01000044 LOG R[68]
@70 :11450043 CMP R[67]+0 < R[69]
@71 :e0000045 ifC ADDI R[69]+0
@72 :1c009e47 CMP R[71] > R[0]+158
@73 :d9476a38 ifC CMP R[56] < R[71]+106
@74 :c3700000 ifC BITS 0
@75 :c0c06100 ifC GOTO R[97]
@76 :193a6a38 CMP R[56] < R[58]+106
@77 :dc009e3a ifC CMP R[58] > R[0]+158
@78 :85ff6038 ifN TRIM R[56], 96, 255
@79 :a043004e ifN ADDI R[78]+17152
@80 :7fff004f ifS ADDI R[79]-256
@81 :8c000050 ifN HIST R[80]>>0 + R[0]>>0
@82 :80c06100 ifN GOTO R[97]
@83 :040060fa BRNG R[250]{3:0}
@84 :440060f8 ifS BRNG R[248]{3:0}
@85 :1b000154 CMP R[84] <= R[0]+1
@86 :89340036 ifN SUB R[54]>>0 - R[52]>>0
@87 :a0004056 ifN ADDI R[86]+64
@88 :857f0057 ifN TRIM R[87], 0, 127
@89 :a0c08058 ifN ADDI R[88]+49280
@90 :88350033 ifN ADD R[51]>>0 + R[53]>>0
@91 :8100005a ifN LOG R[90]
@92 :9900bf5b ifN CMP R[91] < R[0]+191
@93 :857fef5b ifN TRIM R[91], 239, 127
@94 :8c59195d ifN HIST R[93]<<7 + R[89]>>1
@95 :03d00000 BITS ~C
@96 :03b00000 BITC 1
@97 :20000000 ADDI R[0]+0
@98 :60000100 ifS ADDI R[0]+1
@99 :a0000200 ifN ADDI R[0]+2
@100:08630032 ADD R[50]>>0 + R[99]>>0
@101:1c000164 CMP R[100] > R[0]+1
@102:e0000200 ifC ADDI R[0]+2
@103:14000001 CMP R[1]+0 > R[0]
@104:87000066 ifN PHA R[102]+0
@105:00000000 STOP

View file

@ -42,17 +42,9 @@ MinE = ifN ADDI C$2E
BITS C
# Test if the other segment has significant negative signal.
SUB Z - C$1K
mMinK = ifN SUB Z - C$2K
mMinE = LOG mMinK
CMP mMinE > Z+cut_ept_ac_thres
ifC CMP MaxE < mMinE + cut_ept_ac_ratio
# Check if we are above the minimum energy limit, otherwise abort (S=0 for PHA buffer selection)
ifN CMP MaxE < Z+ept_hist_offset
CMP MaxE < Z+ept_hist_offset
# test if the central channel has seen a peak, T>1
@ -74,20 +66,11 @@ A$2E = LOG A$2K
CMP A$1E < A$2E
ANTI = ifC ADDI A$2E
# Test the anticoincidence channels sees signifivant negative or
# positive signal and exceed the crosstalk limit vs the hit central
# pixel.
# Test if the anticoicidence is above noise
# and exceed the crosstalk limit vs the hit central pixel
mA$1K = SUB Z - A$1K
mA$1E = LOG mA$1K
mA$2K = SUB Z - A$2K
mA$2E = LOG mA$2K
CMP mA$1E < mA$2E
mANTI = ifC ADDI mA$2E
CMP mANTI < ANTI
mANTI = ifC ADDI ANTI
CMP mANTI > Z+cut_ept_ac_thres
ifC CMP MaxE < mANTI + cut_ept_ac_ratio
CMP ANTI > Z+cut_ept_ac_thres
ifC CMP MaxE < ANTI+cut_ept_ac_ratio
# C=1 S=0 for invalid event PHA
@ -147,8 +130,6 @@ PHA_C$1C$2 = ifN ADDI Z + ept_pha_stop
################## begin code #####################
. = 0x000
.print EPT code start address $.
Z = SUB R[0xe0]-R[0xe0]
# Flag that we were not called from HET
didHET = NOP

View file

@ -161,8 +161,7 @@ het_gcr_C_min = $LOG(het_gcr_e0*1e6/eV_BGO)
cut_het_b3_max = $LOG(40e3/eV_Si)
cut_C_AB_ratio = $LOGR(10.*BGO_Si) #TESTING! -> this is original $LOGR(10./BGO_Si) # C [125eV], AB [31.25eV]
cut_AB_leak_thres = $LOG(800e3/eV_Si)
cut_C_ABC_electron_maxSSD = $LOG(500e3/eV_Si)
cut_C_thres = $LOG(1000e3/eV_BGO)
cut_C_thres = $LOG(500e3/eV_BGO)
het_path_length_IO = 0.991 # 2016-12-02 Robert E. geant4
het_path_length_OO = 0.983 # 2016-12-02 Robert E. geant4

View file

@ -1,6 +1,5 @@
L3 pass 1: -2vv -g dis het_pen.l3
opening include file hetept_config.l3 at level 1
patch_level = 0x3
event_base := R[0x0e0]
hetmask := R[0x0e0]
eptmask := R[0x0e1]
@ -79,7 +78,7 @@ het_pha_e_AB := 0xf
het_pha_stop_invalid := 0x3
define .macro DO_EPT_AFTER_HET
define .macro DO_EPT_INSTEAD_OF_HET
closing include file hetept_config.l3, line 154, level 1
closing include file hetept_config.l3, line 150, level 1
opening include file het_calib.l3 at level 1
het_high_gain = 1.9
het_high_low = 13.5
@ -142,21 +141,19 @@ het_gcr_C_min = 0xff
cut_het_b3_max = 0xb5
cut_C_AB_ratio = 0x55
cut_AB_leak_thres = 0xfa
cut_C_thres = 0xdf
cut_C_thres = 0xcf
het_path_length_IO = 0.991
het_path_length_OO = 0.983
HET_AB_gamma = -0.25
HET_AB_LET_rotation = 0.75
HET_AB_TOT_min = 0.15
cut_HET_AB_TOT_min = 0xd3
HET_AB_p_1d_A_min = 3.1
cut_HET_AB_p_1d_A_min = 0x119
HET_AB_p_1d_A_min = 3
cut_HET_AB_p_1d_A_min = 0x118
HET_AB_he_1d_A_min = 12.3
cut_HET_AB_he_1d_A_min = 0x139
HET_AB_ratio_min = 1
HET_AB_X_offset := 0x0
HET_AB_1D_PHA = 1.2
HET_AB_1D_PHA_l := 0x4
HET_AB_e_min = 0.001
HET_AB_e_max = 0x1
HET_AB_p_min = 0xc
@ -224,10 +221,9 @@ HET_ABC_TOT_p_min = 6
cut_HET_ABC_TOT_e_min := 0xaf
cut_HET_ABC_TOT_p_min := 0xf8
define .macro HET_TVCAL
closing include file het_calib.l3, line 352, level 1
closing include file het_calib.l3, line 346, level 1
not opening forward file .het_pen.forward in twopass mode
.=R[0x300] # was R[0x000]
HET pen code start address R[0x300]
.call HET_INIT []
@768:09e000e0 SUB R[224]>>0 - R[224]>>0
@769:2088b800 ADDI R[0]+35000
@ -434,7 +430,6 @@ closing include file GAIN_SEL_C, line 4, level 1
@916:00800000 NOP
@917:00800000 NOP
reject_pen = R[0x396]
reject_pen code address R[0x396]
.call GAIN_SEL_C []
.call GAIN_SEL ['C1', 'BGO']
@918:140200e7 CMP R[231]+0 > R[2]
@ -568,7 +563,7 @@ het_pha_e_AB := 0xf
het_pha_stop_invalid := 0x3
define .macro DO_EPT_AFTER_HET
define .macro DO_EPT_INSTEAD_OF_HET
closing include file hetept_config.l3, line 154, level 1
closing include file hetept_config.l3, line 150, level 1
opening include file het_calib.l3 at level 1
het_high_gain = 1.9
het_high_low = 13.5
@ -631,21 +626,19 @@ het_gcr_C_min = 0xff
cut_het_b3_max = 0xb5
cut_C_AB_ratio = 0x55
cut_AB_leak_thres = 0xfa
cut_C_thres = 0xdf
cut_C_thres = 0xcf
het_path_length_IO = 0.991
het_path_length_OO = 0.983
HET_AB_gamma = -0.25
HET_AB_LET_rotation = 0.75
HET_AB_TOT_min = 0.15
cut_HET_AB_TOT_min = 0xd3
HET_AB_p_1d_A_min = 3.1
cut_HET_AB_p_1d_A_min = 0x119
HET_AB_p_1d_A_min = 3
cut_HET_AB_p_1d_A_min = 0x118
HET_AB_he_1d_A_min = 12.3
cut_HET_AB_he_1d_A_min = 0x139
HET_AB_ratio_min = 1
HET_AB_X_offset := 0x0
HET_AB_1D_PHA = 1.2
HET_AB_1D_PHA_l := 0x4
HET_AB_e_min = 0.001
HET_AB_e_max = 0x1
HET_AB_p_min = 0xc
@ -713,10 +706,9 @@ HET_ABC_TOT_p_min = 6
cut_HET_ABC_TOT_e_min := 0xaf
cut_HET_ABC_TOT_p_min := 0xf8
define .macro HET_TVCAL
closing include file het_calib.l3, line 352, level 1
closing include file het_calib.l3, line 346, level 1
not opening forward file .het_pen.forward in twopass mode
.=R[0x300] # was R[0x3bb]
HET pen code start address R[0x300]
.call HET_INIT []
@768:09e000e0 SUB R[224]>>0 - R[224]>>0
@769:2088b800 ADDI R[0]+35000
@ -923,7 +915,6 @@ closing include file GAIN_SEL_C, line 4, level 1
@916:00800000 NOP
@917:00800000 NOP
reject_pen = R[0x396]
reject_pen code address R[0x396]
.call GAIN_SEL_C []
.call GAIN_SEL ['C1', 'BGO']
@918:140200e7 CMP R[231]+0 > R[2]

View file

@ -16,8 +16,6 @@
# penetrating particle trigger
. = 0x300
.print HET pen code start address $.
.call HET_INIT
het_inizd = .-0x300
@ -132,8 +130,6 @@ H = HIST H + X>>2
NOP # wait a bit so the HIST instructions are not too close
reject_pen=.
.print reject_pen code address $.
# Do the GCR trigger separately after rejection or acceptance
.call GAIN_SEL_C
.call CALIB_GUARD B1

File diff suppressed because it is too large Load diff

View file

@ -63,19 +63,22 @@ hist_base = ADDI Z + het_hist_stop_$1
# choose ABC or ABnC
CMP CS+cut_C_AB_ratio > AB #CS*BGO_Si*10>AB #ifC = ABC, ifN = ABnC
ifC CMP CS > Z + cut_C_thres
.endmacro
. = 0x100 #This is from direction 1 , memory mapped to ABnC trigger, starting at 0x100
.print HET 1 start address $.
.call HET_STOP 1
ifC GOTO het_stop_ABC #check HET_stop condition bit for ABnC ABC, ifC ABC, ifN ABnC
het_stop_ABnC=.
.print het_stop_ABnC address $.
# C must be less than cut_C_thres
CMP CS < Z+cut_C_thres
# and when AB has little energy, either C age must be invalid
CMP AB > Z+cut_AB_leak_thres
C1T = ifN BRNG C1U{3:0}
ifN CMP C1T <= Z+1
C2T = ifN BRNG C2U{3:0}
ifN CMP C2T <= Z+1
ifC CMP CS < Z+cut_C_thres
ifN GOTO reject_stop
.ifdef V_NO_PLC
@ -178,12 +181,9 @@ het_stop_ABnC_done = .
.print HET stopping AB~C code end address $.
. = 0x200 #Entry point for direction 2, memory mapped to ABC trigger, starting at 0x200
.print HET 1 start address $.
.call HET_STOP 2
ifN GOTO het_stop_ABnC #check HET_stop condition bit for ABnC ABC, ifC ABC, ifN ABnC
het_stop_ABC=.
.print het_stop_ABC address $.
# Particles stopping in C: A&B&C
@ -237,8 +237,6 @@ Y = ADDI Y - cut_HET_ABC_e_min
# electrons: histogram 128 x 1 using total energy
CMP Y < Z + cut_HET_ABC_e_max - cut_HET_ABC_e_min
ifC CMP B < Z + cut_C_ABC_electron_maxSSD
ifC CMP A < Z + cut_C_ABC_electron_maxSSD
TOTE = ifC TRIM TOT, cut_HET_ABC_TOT_e_min, 127
H = ifC ADDI hist_base + hist_HET_ABC_e

View file

@ -10,10 +10,6 @@
.name hetept_config_l3
.version $Revision$
.ifndef patch_level
patch_level = 0
.endif
######################### L3 PHA records ##########################
event_base := R[256-32]
hetmask := event_base+0

View file

@ -5,9 +5,9 @@ from .. import l3
class hetept_l3_trigger(l3.l3):
args = ["-2vqd"] + ["-I"+os.path.abspath(os.path.join(os.path.dirname(__file__),"l3"))]
args = ["-2qd"] + ["-I"+os.path.abspath(os.path.join(os.path.dirname(__file__),"l3"))]
def __init__(self, model=None, variant=None, temperature=25.0, patch=0,
def __init__(self, model=None, variant=None, temperature=25.0,
sources=["ept.l3", "het_stopping.l3", "het_pen.l3"], args=[],
verbose=1):
l3.l3.__init__(self)
@ -23,11 +23,9 @@ class hetept_l3_trigger(l3.l3):
if variant:
self.variant = variant
self.args.append("-DV_"+variant)
self.args.append("-Dpatch_level=%d" % patch)
self.args.append("-DT_HET1=%.2f" % temperature)
self.temperature = temperature
self.args.extend(sources)
sys.stderr.write("L3: %s\n" % repr(self.args))
self.compile(self.args)
def scales(self):

View file

@ -22,18 +22,16 @@ class hetept_ppss(ppss_table):
HK_SLOW_cadence = 3600
DRIBBLE_cadence = 3600
TEMP_IDX = 4
OH_DC_ESTIMATE = 60
OH_SHIFT = 0
OH_DCMAX = 70
OH_SETPOINT_C = -50
OH_SETPOINT = HK_T_to_ADC(OH_SETPOINT_C)
def __init__(self, ana, dps=None, dps_us=100000, clear_us=810000, OH_degC=-50, verbose=1):
def __init__(self, ana, dps=None, dps_us=100000, clear_us=810000, verbose=1):
ppss_table.__init__(self, verbose=verbose)
self.ana = ana
self.dps = dps
self.dps_us = dps_us
self.clear_us = clear_us
self.OH_SETPOINT = HK_T_to_ADC(OH_degC, dc_estimate=self.OH_DC_ESTIMATE, shift=self.OH_SHIFT)
self.assemble()
def assemble(self):
@ -111,10 +109,7 @@ class hetept_ppss(ppss_table):
self.add(ppss_item( 170, ppss_modulus(self.HK_ANA_cadence, 0), read_ana(tag=self.TAG_HK, counter=2, HK=1, clock=1)), search=True, HK=True, ANA=True) # ANA counters and temperatures
# set op-heater
self.add(ppss_item( 175, ppss_modulus( 60, 0), opheater(setpoint=self.OH_SETPOINT,
dcmax=self.OH_DCMAX *192//100,
shift = self.OH_SHIFT )
), search=True, OPHEATER=True)
self.add(ppss_item( 175, ppss_modulus( 60, 0), opheater(setpoint=self.OH_SETPOINT)), search=True, OPHEATER=True)
# ICU HK packet parameters, L3 trigger classes, msgs received
self.add(ppss_item( 4, ppss_modulus( 60, 2), read_counters(tag=0x27, a=0x36, n=4, wsize=1)), search=True, ICU=0x27)
@ -201,11 +196,10 @@ class hetept_ppss(ppss_table):
t += 1e6 - disabled
return t / 1.e6
def set_opheater_setpoint(self, msg, T, dc_estimate=None, shift=0, **aa):
def set_opheater_setpoint(self, msg, T):
p = self.find_flags("OPHEATER")[0]
dc = HK_T_to_ADC(T, dc_estimate=dc_estimate, shift=shift)
ppss_item(p.us, p.mod, opheater(setpoint=dc, shift=shift, **aa), index=p.index)(msg)
sys.stderr.write("OP heater setpoint: %.1f C = %d ADC\n" %(T, dc))
ppss_item(p.us, p.mod, opheater(setpoint=HK_T_to_ADC(T)), index=p.index)(msg)
sys.stderr.write("OP heater setpoint: %d C = %d ADC\n" %(T, HK_T_to_ADC(T)))
def i800(self, flag="EEPROM_UPLOAD"):
from ..solomsgclass import msg_print

View file

@ -1,6 +1,6 @@
#! /usr/bin/ipython3 --profile=solo_patch
import solo.solomsgclass, solo.ppss_table
import solo.solomsgclass
import sys
class patch:
@ -10,36 +10,31 @@ class patch:
self.name=name
self.assemble(**aa)
def __call__(self, msg, revert=False, **aa):
if revert:
self.revert(msg, **aa)
else:
self.send(msg, **aa)
def __call__(self, msg):
self.send(msg)
def xml(self, f=sys.stdout, **aa):
def xml(self, f=sys.stdout):
import solo.cdpu.telecom
msg = solo.cdpu.telecom.msg_telecommands()
self(msg, **aa)
f.write("<TCs>\n")
self(msg)
f.write("\n".join([x.xml() for x in msg.tc(unit=self.config.unit)])+"\n")
f.write("</TCs>\n")
def hex(self, f=sys.stdout):
self(solo.solomsgclass.msg_hexdump(f), **aa)
self(solo.solomsgclass.msg_hexdump(f))
def msgs(self, f=sys.stdout, **aa):
self(solo.solomsgclass.msg_print(f), **aa)
def msgs(self, f=sys.stdout):
self(solo.solomsgclass.msg_print(f))
def emit(self, f=sys.stdout, fmt="print", **aa):
def emit(self, f=sys.stdout, fmt="print"):
if isinstance(f, str):
with open(f, "w") as ff:
self.emit(ff, fmt, **aa)
self.emit(ff, fmt)
elif fmt=="hex":
self.hex(f, **aa)
self.hex(f)
elif fmt=="xml":
self.xml(f, **aa)
self.xml(f)
else:
self.msgs(f, **aa)
self.msgs(f)
def main(self):
fmt = sys.argv[1:]
@ -70,6 +65,7 @@ class patch:
def send_stop_l3(self, msg, flag="START_DATA"):
self.start_data = self.config.ppss.find_flags(flag)[0]
self.start_data_msg = self.start_data.msg
import solo.ppss_table
self.start_data.msg = solo.ppss_table.msg()
self.start_data(msg)
self.send_msg0(msg, l3_enable=0)
@ -81,41 +77,9 @@ class patch:
def send_msg0(self, msg, **aa):
solo.solomsgclass.solomsg(msg).msg0(**aa)
def send_l3(self, msg, l3, pad=True, init=True, **flags):
smsg = solo.solomsgclass.solomsg(msg)
if init:
smsg.l3_init(**flags)
l3.load(smsg.l3_code)
if pad:
smsg.l3_pad()
def assert_unit(self, unit):
if not unit in self.config.unit:
raise ValueError("This unit is not %s, but %s" % (unit, self.config.unit))
def disable_ana(self, msg):
self.assert_unit("HET/EPT")
self.start_data = self.config.ppss.find_flags("START_DATA")[0]
self.enable_analog = self.config.ppss.find_flags("ENABLE_ANALOG")[0]
self.start_data_msg = self.start_data.msg
self.enable_analog_msg = self.enable_analog.msg
capture=solo.solomsgclass.msg_capture()
capture.msg0(hetept_enable=1)
capture.msg0(hetept_enable=0)
self.enable_analog.msg = solo.ppss_table.msg0(
self.enable_analog_msg.da & ~capture[0].da | capture[1].da )
self.start_data.msg = solo.ppss_table.msg0(
self.start_data_msg.da & ~capture[0].da | capture[1].da )
self.start_data(msg)
self.enable_analog(msg)
self.send_msg0(msg, hetept_enable=0)
def reenable_ana(self, msg):
self.enable_analog.msg = self.enable_analog_msg
self.start_data.msg = self.start_data_msg
self.enable_analog(msg)
self.start_data(msg)
def send_l3(self, msg, l3):
l3.load(solo.solomsgclass.solomsg(msg).l3_code)
# examples:
def assemble(self, subversion=99, **aa):

View file

@ -708,7 +708,7 @@ class ppss_table(more_items):
tag = m.msg.ad & 0xff
msg_type = m.msg.ad >> 8
if tag in tm_tags and msg_type in msg_types and m.mod.cadence():
if not(tag & 0x20 == 0x20) or icu:
if not ((tag & 0x20 == 0x20) or icu):
msg_timing = m.msg.ad, m.us, m.mod.phase(), m.mod.cadence(), m.msg.da
tags[tag].append(msg_timing)
elif msg_type == 0x03 and self.dps is not None and sci: # sci packet

View file

@ -74,7 +74,7 @@ class HK_SOLO(object):
AtoV = 3.3
VB = (0.03726, 0.01186)
@classmethod
def T_to_ADC(cls, T, dc_estimate=0, shift=0):
def T_to_ADC(cls, T, dc_estimate=0):
"temperature in °C to ADC value"
from math import exp
R = cls.R25*exp(cls.B25/(T+273.0) - cls.B25/298.0)
@ -83,8 +83,8 @@ class HK_SOLO(object):
# Reduce the target temperature to accomodate the
# estimated opheater duty cycle.
TT=T
for n in range(5):
TTT = cls.ADC_to_T(A + (dc_estimate<<shift))
for n in range(10):
TTT = cls.ADC_to_T(A + dc_estimate)
TT -= TTT-T
A = cls.T_to_ADC(TT)
sys.stderr.write("Temp SPY: %.1f°C %.1f°C %.1f°C\n" % (T,TT,TTT))

View file

@ -3,7 +3,7 @@
"Message table for STEP"
VERSION=9
VERSION=8
SUBVERSION=2
import sys, os, json
@ -30,7 +30,6 @@ class step_config(unit_config):
def __init__(self, ppss=None, science=None, dps=None, l3=None,
model=None, env="FAR", variant=None, scratch=0,
small=False,
**kwargs):
self.args = {}
@ -70,13 +69,11 @@ class step_config(unit_config):
if ppss is None:
if self.small:
# This is variant=="small"
small=True
large=False
else:
large=True
# we may pass a tuple in the small= argument for interleaved pixel mode.
self.small = small
small=False
self.ppss = step_ppss.step_ppss(
large=large, small=small,

View file

@ -8,7 +8,7 @@ FS_ix1_thr = [11] * 32
FS_ix2_thr = [11] * 32
def make():
return step_base_config.make_step( config_page=0x10000,
return step_base_config.make_step(
model = 'FS',
orbit = 'FAR',
temperature = [-36],

View file

@ -217,7 +217,43 @@ class LL_STEP(science_data):
self.append(step_data(l3, "STEP_energy_res_bkgnd", "LOWLATENCY", 60, "float").d(**LL_std).add(step_bins(4*keV, 80*keV, n=24, p1=0, p2=0, cu_gap=True)))
self.append(step_data(l3, "STEP_time_res", "LOWLATENCY", 1, "varLL", 1).d(**LL_std).add(step_bins(4*keV, 60*keV, n=4, p1=1, p2=15, dp=15)))
self.append(step_data(l3, "STEP_time_res_bkgnd", "LOWLATENCY", 1, "varLL", 1).d(**LL_std).add(step_bins(4*keV, 60*keV, n=4, p1=0, p2=0)))
self.append(step_multi(l3, "STEP_multi", "LOWLATENCY", 60, "var", 60).d(**LL_std).add(ebins(1, list(range(2,17)), raw=True)))
class AUX_STEP(science_data):
def __init__(self, l3):
self.init()
AUX_std = {"force": "AUXDEFS"}
self.append(step_data(l3, "STEP_time_res", "AUX_STABLE", 1, "log").d(**AUX_std).add(step_bins(4*keV, 80*keV, n=1, p1=1, p2=15, dp=15)))
self.append(step_data(l3, "STEP_time_res_bkgnd", "AUX_STABLE", 1, "log").d(**AUX_std).add(step_bins(4*keV, 80*keV, n=1, p1=0, p2=0)))
self.append(step_data(l3, "STEP_basic", "AUX_STABLE", 10, "var", 10).d(**AUX_std).add(step_bins(4*keV, 80*keV, n=32, p1=1, p2=15, dp=15, cu_gap=True)))
self.append(step_data(l3, "STEP_basic_bkgnd", "AUX_STABLE", 10, "var", 10).d(**AUX_std).add(step_bins(4*keV, 80*keV, n=32, p1=0, p2=0, cu_gap=True)))
class B1_STEP(science_data):
def __init__(self, l3):
self.init()
B1 = {"force": "B1DEFS"}
self.append(step_data(l3, "STEP_basic", "NOM_BURST_1", 1, "var", 1).d(**B1).add(step_bins(4*keV, 80*keV, n=16, p1=0, p2=15, cu_gap=True)))
self.append(step_data(l3, "STEP_eres", "NOM_BURST_1", 1, "var", 1).d(**B1).add(step_bins(4*keV, 80*keV, n=48, p1=1, p2=15, dp=15, cu_gap=True)))
class NOM_STEP(science_data):
def __init__(self, l3):
self.init()
CLOSE = {"env": ("CLOSE"), "force": "NOMDEFS"}
FAR = {"exclude": ("CLOSE"), "force": "NOMDEFS"}
# Close
self.append(step_data(l3, "STEP_basic", "NOM_STABLE", 10, "var", 10).d(**CLOSE).add(step_bins(4*keV, 80*keV, n=8, p1=0, p2=15, dp=1, cu_gap=True)))
self.append(step_data(l3, "STEP_tres_rows", "NOM_STABLE", 1, "var", 1).d(**CLOSE).add(step_bins(4*keV, 60*keV, n=4, p1=1, p2=15, dp=5)))
self.append(step_data(l3, "STEP_tres_cols", "NOM_STABLE", 1, "var", 1).d(**CLOSE).add(step_cols(4*keV, 60*keV, n=4, p1=1, p2=5, dp=1, l=3)))
self.append(step_data(l3, "STEP_tres_bkgnd", "NOM_STABLE", 1, "var", 1).d(**CLOSE).add(step_bins(4*keV, 60*keV, n=4, p1=0, p2=0)))
self.append(step_data(l3, "STEP_eres", "NOM_STABLE", 10, "var", 10).d(**CLOSE).add(step_bins(4*keV, 80*keV, n=48, p1=1, p2=15, dp=15, cu_gap=True)))
self.append(step_multi(l3, "STEP_multi", "NOM_STABLE", 5, "var", 5).d(**CLOSE).add(ebins(1, list(range(2,17)), raw=True)))
# Far (same products at different cadences)
self.append(step_data(l3, "STEP_basic", "NOM_STABLE", 60, "var", 60).d(**FAR).add(step_bins(4*keV, 80*keV, n=8, p1=0, p2=15, cu_gap=True)))
self.append(step_data(l3, "STEP_tres_rows", "NOM_STABLE", 5, "var", 5).d(**FAR).add(step_bins(4*keV, 60*keV, n=4, p1=1, p2=15, dp=5)))
self.append(step_data(l3, "STEP_tres_cols", "NOM_STABLE", 5, "var", 5).d(**FAR).add(step_cols(4*keV, 60*keV, n=4, p1=1, p2=5, dp=1, l=3)))
self.append(step_data(l3, "STEP_tres_bkgnd", "NOM_STABLE", 5, "var", 5).d(**FAR).add(step_bins(4*keV, 60*keV, n=4, p1=0, p2=0)))
self.append(step_data(l3, "STEP_eres", "NOM_STABLE", 60, "var", 60).d(**FAR).add(step_bins(4*keV, 80*keV, n=48, p1=1, p2=15, dp=15, cu_gap=True)))
self.append(step_multi(l3, "STEP_multi", "NOM_STABLE", 60, "var", 60).d(**FAR).add(ebins(1, list(range(2,17)), raw=True)))
# collect everything
@ -226,6 +262,26 @@ class science(science_data):
self.step_l3config = step_l3config
self.init()
self.extend(LL_STEP(self.step_l3config))
self.extend(AUX_STEP(self.step_l3config))
self.extend(B1_STEP(self.step_l3config))
self.extend(NOM_STEP(self.step_l3config))
def get_pixels(self, unit=None, env=(), tag=None, all=False):
"return dictionary of {section: [(e0,e1),(e1,e2), ..], ..} for a unit/env/tag"
r = {}
for sd in self:
r.update({k:[(y1,y2-1) for y1,y2 in v] for k,v in sd.get_pixels(unit, env, tag, all).items()})
return r
def step_l3mem():
import numpy as np
import os
npyfile = 'fs_calib.npy'
l3mem = os.path.dirname(__file__) + '/' + npyfile
d = np.load(l3mem, mmap_mode='r')
return d
def main(argv):
from ..solo_data import main

View file

@ -54,11 +54,12 @@ class step_ppss(ppss_table):
ix1_thr = [62]*32
ix2_thr = [62]*32
ix_conf_incr = 30
def pretty(self, **kwargs):
return ppss_table.pretty(self, step=True)
def __init__(self, dps=None, small=False, large=True, dps_us=100000, clear_us=800000, ix1_thr=[62]*32, ix2_thr=[62]*32, close=False, model=None, **kwargs):
def __init__(self, dps=None, small=True, large=True, dps_us=100000, clear_us=800000, ix1_thr=[62]*32, ix2_thr=[62]*32, close=False, model=None, **kwargs):
self.ix1_thr = ix1_thr
self.ix2_thr = ix2_thr
ppss_table.__init__(self)
@ -78,7 +79,7 @@ class step_ppss(ppss_table):
else:
self += ppss_item(2000, modulus_always, msg0(ix1enable=1, ix2enable=1, ev_enable=1, l3_enable=1, pha_enable=1, hist_base='T'), START_DATA=True)
self += ppss_item(1950, modulus_always, ix_reset(reset=0, gap=0), IX_ARESET=True, IX="ARESET")
self += ppss_item(1950, modulus_always, ix_reset(reset=0, gap=0), IX_ARESET=True)
if not self.model or self.model.lower() != "seu_scan":
self += ppss_item(99, ppss_modulus(60,0), opheater(dcmax=self.OH_DC, setpoint=self.OH_SETPOINT), search=True, OPHEATER=True)
else:
@ -98,8 +99,8 @@ class step_ppss(ppss_table):
def do_hk(self):
# Counter readout
self += ppss_item( 420, ppss_modulus(self.HK_cadence, 0), read_counters(tag=self.TAG_HK, a=0x30, n=16, wsize=2), search=True, HK=True, HKC=0x30)
self += ppss_item( 445, ppss_modulus(self.HK_cadence, 0), read_counters(tag=self.TAG_HK, a=0x00, n=16, wsize=2), search=True, HK=True, HKC=0x00)
self += ppss_item( 420, ppss_modulus(self.HK_cadence, 0), read_counters(tag=self.TAG_HK, a=0x30, n=16, wsize=2), search=True, HK=True)
self += ppss_item( 445, ppss_modulus(self.HK_cadence, 0), read_counters(tag=self.TAG_HK, a=0x00, n=16, wsize=2), search=True, HK=True)
self += ppss_item( 470, ppss_modulus(self.ICU_cadence, 0), read_counters(tag=0x25, a=0x30, n=16, wsize=2), search=True, ICU=0x25)
self += ppss_item( 505, ppss_modulus(self.ICU_cadence, 0), read_counters(tag=0x26, a=0x00, n=16, wsize=2), search=True, ICU=0x26)
@ -120,8 +121,8 @@ class step_ppss(ppss_table):
self += ppss_item( 610, ppss_modulus(self.HK_cadence, 0), read_counters(tag=self.TAG_HK, n=128, step_l1=True, clear=True, wsize=2), HK=True, search=True, STEP_L1CNTR=True)
# IDe-Fx HK, registers and tempererature readout
self += ppss_item( 4, ppss_modulus(self.ICU_cadence, 16), ix_get_hk(tag=0x2F), ICU=0x2F, search=True, IX="HKICU")
self += ppss_item( 4, ppss_modulus(self.HK_cadence, 20), ix_get_hk(tag=self.TAG_HK), search=True, HK=True, IX="HK")
self += ppss_item( 4, ppss_modulus(self.ICU_cadence, 16), ix_get_hk(tag=0x2F), ICU=0x2F, search=True)
self += ppss_item( 4, ppss_modulus(self.HK_cadence, 20), ix_get_hk(tag=self.TAG_HK), search=True, HK=True)
# increment the index registers for table and EEPROM dribble
self += ppss_item( 4, ppss_modulus(self.DRIBBLE_cadence, 129), set_index_reg(misc_page_incr=256), search=True, EEPROM_INCR=True)
@ -164,13 +165,13 @@ class step_ppss(ppss_table):
pix = pixels(what)
"one pulse per channel per PHA readout"
for c,p in enumerate(pix):
self += ppss_item(us, ppss_modulus(cadence, c), ix_test_reg(1<<p), search=True, IFTP=p, IX="ARMTEST")
self += ppss_item(us, ppss_modulus(cadence, c), ix_test_reg(1<<p), search=True, IFTP=p)
thirty_seconds=ppss_modulus(cadence,0,30)
for ms in range(n):
self += ppss_item(5000+1000*ms, thirty_seconds, step_pulser(pulse_length,0,sel=0), IFTP="ix1")
self += ppss_item(5500+1000*ms, thirty_seconds, step_pulser(pulse_length,0,sel=1), IFTP="ix2")
def do_ix_config(self, small=False, large=True, ix1_thr=None, ix2_thr=None, ix1_test=0, ix2_test=0, **kwargs):
def do_ix_config(self, small=True, large=True, ix1_thr=None, ix2_thr=None, ix1_test=0, ix2_test=0, **kwargs):
if not ix1_thr:
ix1_thr = self.ix1_thr
@ -182,49 +183,30 @@ class step_ppss(ppss_table):
if not ix2_thr:
ix2_thr = [63] * 32
ix1_thr_small = [i if p in ix.SMALL_PIXELS else 63 for i, p in zip(ix1_thr, range(32))]
ix2_thr_small = [i if p in ix.SMALL_PIXELS else 63 for i, p in zip(ix2_thr, range(32))]
ix1_thr_large = [i if p in ix.LARGE_PIXELS else 63 for i, p in zip(ix1_thr, range(32))]
ix2_thr_large = [i if p in ix.LARGE_PIXELS else 63 for i, p in zip(ix2_thr, range(32))]
if not large:
ix1_thr = [i if p in ix.SMALL_PIXELS else 63 for i, p in zip(ix1_thr,range(32))]
ix2_thr = [i if p in ix.SMALL_PIXELS else 63 for i, p in zip(ix2_thr,range(32))]
elif not small:
ix1_thr = [i if p in ix.LARGE_PIXELS else 63 for i, p in zip(ix1_thr,range(32))]
ix2_thr = [i if p in ix.LARGE_PIXELS else 63 for i, p in zip(ix2_thr,range(32))]
ix_config_time = 1420
# ix_conf_modulus = ppss_modulus(600, 21) # maybe use this for flight
ix_conf_modulus = modulus_always
incr = self.ix_conf_incr
self += ppss_item(ix_config_time, ix_conf_modulus, ix_rsm(2, ix=3), IX_RSM=True, IX="RSM")
self += ppss_item(ix_config_time + 5, ix_conf_modulus, ix_selfilter(2, ix=3), IX_SELFILTER=True, IX="SELFILER")
self += ppss_item(ix_config_time + 10, ix_conf_modulus, ix_test_reg(ix1_test, ix=1), IX_TESTREG0=True, IX="TESTREG0")
self += ppss_item(ix_config_time + 20, ix_conf_modulus, ix_test_reg(ix2_test, ix=2), IX_TESTREG1=True, IX="TESTREG1")
self += ppss_item(ix_config_time + 30, ix_conf_modulus, ix_i0(2, ix=3), IX_I0=True, IX="I0")
self += ppss_item(ix_config_time + 35, ix_conf_modulus, ix_icomp(0, ix=3), IX_ICOMP=True, IX="ICOMP")
thrs_us0 = ix_config_time + 40
thrs_us1 = thrs_us0 + 40
if not large:
ix1_thr = ix1_thr_small
ix2_thr = ix2_thr_small
elif not small or isinstance(small, tuple):
ix1_thr = ix1_thr_large
ix2_thr = ix2_thr_large
self += ppss_items(thrs_us0, ix_conf_modulus, ix_thresholds(ix1_thr, ix=1), IX_THR0=True, IX="THR0")
self += ppss_items(thrs_us1, ix_conf_modulus, ix_thresholds(ix2_thr, ix=2), IX_THR1=True, IX="THR1")
if large and isinstance(small, tuple):
small_cadence = ppss_modulus(*small)
else:
small_cadence = modulus_never
self += ppss_items(thrs_us0+80, small_cadence, ix_thresholds(ix1_thr_small, ix=1), IX_THR0S=True, IX="THR0S")
self += ppss_items(thrs_us1+80, small_cadence, ix_thresholds(ix2_thr_small, ix=2), IX_THR1S=True, IX="THR1S")
self += ppss_item(ix_config_time, ix_conf_modulus, ix_rsm(2, ix=3), IX_RSM=True)
self += ppss_item(ix_config_time + incr, ix_conf_modulus, ix_selfilter(2, ix=3), IX_SELFILTER=True)
self += ppss_item(ix_config_time + 2*incr, ix_conf_modulus, ix_test_reg(ix1_test, ix=1), IX_TESTREG0=True)
self += ppss_item(ix_config_time + 3*incr, ix_conf_modulus, ix_test_reg(ix2_test, ix=2), IX_TESTREG1=True)
self += ppss_item(ix_config_time + 4*incr, ix_conf_modulus, ix_i0(2, ix=3), IX_I0=True)
self += ppss_item(ix_config_time + 5*incr, ix_conf_modulus, ix_icomp(0, ix=3), IX_ICOMP=True)
thrs_us0 = ix_config_time + 6 * incr
self += ppss_items(thrs_us0, ix_conf_modulus, ix_thresholds(ix1_thr, ix=1),incr=incr, IX_THR0=True)
thrs_us1 = thrs_us0 + 2 * incr + 2 * incr
self += ppss_items(thrs_us1, ix_conf_modulus, ix_thresholds(ix2_thr, ix=2),incr=incr, IX_THR1=True)
def interleaved_small(self, msg, cadence=None, phase=None, **aa):
if not cadence:
mod = modulus_never
else:
if phase is None:
phase = cadence//2
mod = ppss_modulus(cadence, phase, **aa)
pp = self.find_flags("IX_THR0S")+self.find_flags("IX_THR1S")
for p in pp:
ppss_item(p.us, mod, p.msg, index=p.index, flags=p.flags)(msg)
def do_step_config(self, small=False, large=True, acq_time=1, **kwargs):
def do_step_config(self, small=True, large=True, acq_time=1, **kwargs):
conf_us = 1400
step_conf_modulus = modulus_always
if not large:
@ -285,7 +267,7 @@ class step_ppss(ppss_table):
if pulser:
self.do_testpulser(what=pulser)
if self.dps:
if small and not large:
if small==True and large==False:
modes ={"*": (("large", None), ("small", True), )}
else:
modes ={"*": (("large", True), ("small", None), )}

View file

@ -1,4 +1,4 @@
#!/usr/bin/ipython3 --profile=solopath
#!/usr/bin/ipython3 -i
import sys, os