{ "name": "Elite", "version": "0.1", "match_rule": { "local_name_pattern": "Elite.*", "major_product_number": 0, "minor_product_number": 1, "major_version_number": 0, "minor_version_number": 1 }, "constant": { "REC_CHANNEL_COUNT": 16, "STI_CHANNEL_COUNT": 15, "ADC_SAMPLE_RATE_LIST": [ 15, 25, 40, 50, 100, 250, 500, 1000, 2500, 4000, 5000 ], "STI_FREQ_LIST": [ 15, 25, 40, 50, 100, 250, 500, 1000, 2500, 4000, 5000 ] }, "parameters": { "MODE": { "description": "working mode", "value": [ "Recording Mode", "Stimulation Mode", "Artifact Mode" ] }, "CHANNEL": { "description": "record channels", "record_meta": true, "domain": { "set": [ "REC_CHANNEL_COUNT" ] } }, "SAMPLE_RATE": { "alias": "ADC_RATE", "description": "sampling rate", "record_meta": true, "domain": [ "len(ADC_SAMPLE_RATE_LIST)" ], "value": "ADC_SAMPLE_RATE_LIST[VALUE]" }, "AMP_GAIN": { "description": "", "record_meta": true, "value": [ 400, 1000, 2000 ] }, "LOW_FREQ_BAND": { "description": "", "record_meta": true, "domain": [ 7 ] }, "STI_MODE": { "description": "stimulation mode", "value": [ "Positive Pulse", "Negative Pulse", "Pos to Neg Pulse", "Neg to Pos Pulse", "Arbitrary Waveform" ] }, "STI_VOLT": { "description": "stimulation voltage", "domain": [ 32 ], "value": "2 + 3 * VALUE / 31" }, "STI_FREQ": { "description": "stimulation frequency", "domain": [ "len(STI_FREQ_LIST)" ], "value": "STI_FREQ_LIST[VALUE]" }, "STI_PMOS": { "description": "stimulation PMOS channel", "initial": 0, "domain": [ "STI_CHANNEL_COUNT" ], "guard": "STI_PMOS != STI_NMOS" }, "STI_NMOS": { "description": "stimulation NMOS channel", "initial": "STI_CHANNEL_COUNT - 1", "domain": [ "STI_CHANNEL_COUNT" ], "guard": "STI_PMOS != STI_NMOS" }, "CHOPPER": { "description": "", "domain": "bool" }, "FAST_SETTLE": { "description": "", "domain": "bool" } }, "instruction": { "start": [ { "expression": "MODE", "when": { "0": "start_recording", "1": "start_stimulation", "2": "start_artifact" } }, "VIS_STI" ], "start_recording": [ { "expression": "len(CHANNEL) > 0", "raise": "no recording channel" }, "data_format", "_notify(True)", "start_recording0", "_sync(True)" ], "start_artifact": [ { "expression": "len(CHANNEL) > 0", "raise": "no recording channel" }, "data_format", "_notify(True)", "start_artifact0", "_sync(True)" ], "data_format": [ "_data_format('TDC4VAF2')" ], "start_recording0": { "type": "RIS", "foreach-parameter": { "parameter": "CHANNEL", "variable": [ "a", "b", "c", "d" ] }, "data": [ "3b110#recording header;2bSAMPLE_RATE;1ba?;1bb?;1bc?;1bd?", "4bSAMPLE_RATE;1ba?;1bb?;1bc?;1bd?", "4bSTI_FREQ;1bCHOPPER;1bFAST_SETTLE;2b0", "4b