{
    "ModuleConfig": {
        "ModuleMeta": {
            "displayName": "MVHV-4",
            "eventHeaderFilter": "XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX",
            "typeId": 25,
            "typeName": "mvhv-4",
            "variables": [
            ],
            "vendorName": "mesytec",
            "vmeAddress": 0
        },
        "baseAddress": 0,
        "enabled": true,
        "id": "{0f7983d9-645d-4935-9bd2-4a83f9778e4b}",
        "initScripts": [
            {
                "enabled": true,
                "id": "{8ba7d14f-a7d3-4f29-90fe-e77b53847f6a}",
                "name": "Module Init",
                "properties": {
                    "icon": ":/vme_script.png"
                },
                "variable_table": {
                    "name": "",
                    "variables": {
                    }
                },
                "vme_script": "# Parameters for MVHV-4\n\n0x0052 0                # ramp_speed, 0==5V/s, 1==25V/s, 2=100V/s, 3=500V/s\n\n# polarity\n0x001c 1                # polarity0, 0==negative, 1==positive\n0x001e 1                # polarity1, 0==negative, 1==positive\n0x0020 1                # polarity2, 0==negative, 1==positive\n0x0022 1                # polarity3, 0==negative, 1==positive\n\n# standard precision voltage setting\n0x0000 0                # set_voltage0, range 0..8000 == 0..800V\n0x0002 0                # set_voltage1, range 0..8000 == 0..800V\n0x0004 0                # set_voltage2, range 0..8000 == 0..800V\n0x0006 0                # set_voltage3, range 0..8000 == 0..800V\n\n# current limit (set to 0 to disable auto shutdown)\n0x0010 1000             # set_current_limit0, range 0..20000 == 0..20000nA (0..20µA)\n0x0012 1000             # set_current_limit1, range 0..20000 == 0..20000nA (0..20µA)\n0x0014 1000             # set_current_limit2, range 0..20000 == 0..20000nA (0..20µA)\n0x0016 1000             # set_current_limit3, range 0..20000 == 0..20000nA (0..20µA)\n\n\n# high precision voltage setting\n#0x004a 0               # set_voltage_prec0, 0..64000 == 0..800V, 1 unit == 12.5mV\n#0x004c 0               # set_voltage_prec1, 0..64000 == 0..800V, 1 unit == 12.5mV\n#0x004e 0               # set_voltage_prec2, 0..64000 == 0..800V, 1 unit == 12.5mV\n#0x0050 0               # set_voltage_prec3, 0..64000 == 0..800V, 1 unit == 12.5mV"
            }
        ],
        "name": "mvhv-4",
        "type": "mvhv-4",
        "variable_table": {
            "name": "",
            "variables": {
            }
        },
        "vmeReadout": {
            "enabled": true,
            "id": "{366fb03c-8498-4ac0-97d9-e6ccbfb318d6}",
            "name": "Module Readout",
            "properties": {
                "icon": ":/vme_script.png"
            },
            "variable_table": {
                "name": "",
                "variables": {
                }
            },
            "vme_script": "# Readout of MVHV-4 voltages and currents.\n# Intended to be used in a 'periodic' VME readout event.\n\n# Voltage readout\nread a32 d16 0x0000\nread a32 d16 0x0002\nread a32 d16 0x0004\nread a32 d16 0x0006\n\n# Current readout, positive currents\nread a32 d16 0x0024\nread a32 d16 0x0026\nread a32 d16 0x0028\nread a32 d16 0x002a\n\n# Current readout, signed currents\nread a32 d16 0x0034\nread a32 d16 0x0036\nread a32 d16 0x0038\nread a32 d16 0x003a"
        },
        "vmeReset": {
            "enabled": true,
            "id": "{0fe54148-f2d6-419d-9ad9-8b6ecfd0b47d}",
            "name": "Module Reset",
            "properties": {
                "icon": ":/vme_script.png"
            },
            "variable_table": {
                "name": "",
                "variables": {
                }
            },
            "vme_script": "print \"Hardware ID:\"\nread a32 d16 0x0108\n\nprint \"Hardware Rev:\"\nread a32 d16 0x0054\n\nprint \"CPLD Firmware:\"\nread a32 d16 0x0058\n\nprint \"CPU Firmware:\"\nread a32 d16 0x0056\n"
        }
    }
}
