{ "$schema": "https://raw.githubusercontent.com/nobrega8/mbmap-library/main/schema/mbmap-2.schema.json", "mbmap": 2, "vendor": "Advantech", "model": "ADAM-4080", "models": ["ADAM-4080"], "vendor_website": "advantech.com", "description": "2-channel counter/frequency input + 2 DO module. Counter values as u32 at FC03 addr 0-3. Counter/frequency mode selectable per addr 200. DO and counter control via FC01 coils.", "revision": 2, "source": "Omni Console device library (OmniCoreST), modbus-library/advantech-adam-4080-counter.toml; Source: advantech-adam-4000-modbus.pdf (Appendix G, Module 16). Not verified against the manufacturer's documentation", "notes": [ "Advantech ADAM-4080.", "Converted automatically from the Omni Console device library (OmniCoreST).", "Not verified against the manufacturer's documentation.", "Corrections are welcome (CONTRIBUTING.md). Change x_status once this table has been checked against the manual.", "| Advantech ADAM-4080 — 2-Channel Counter/Frequency Module", "|", "| Source: advantech-adam-4000-modbus.pdf (Appendix G, Module 16)", "| - 2-channel counter/frequency input + 2 digital outputs.", "| - Modbus RTU, FC01 for coil control; FC03 for counter values and configuration.", "| - FC01 00017 (coil addr 16): DO0 / Counter0 Alarm Status (R/W).", "| - FC01 00018 (coil addr 17): DO1 / Counter1 Alarm Status (R/W).", "| - FC01 00033 (coil addr 32): Counter0 Start/Stop (R/W, 1=start, 0=stop).", "| - FC01 00034 (coil addr 33): Counter0 Clear (W, 1=clear).", "| - FC01 00035 (coil addr 34): Counter0 Overflow (R).", "| - FC01 00037 (coil addr 36): Counter1 Start/Stop (R/W).", "| - FC01 00038 (coil addr 37): Counter1 Clear (W).", "| - FC01 00039 (coil addr 38): Counter1 Overflow (R).", "| - FC03 40001-40002 (addr 0-1): Counter 0 Value (u32, 2 registers)." ], "byte_order": "big", "word_order": "big", "address_base": 0, "x_status": "unofficial", "x_origin": "omniconsole", "registers": [ {"name": "Counter 0 value", "area": "holding", "address": 0, "type": "uint32", "access": "R"}, {"name": "Counter 1 value", "area": "holding", "address": 2, "type": "uint32", "access": "R"}, {"name": "Counter mode", "area": "holding", "address": 200, "type": "uint16", "access": "R"}, {"name": "Signal input mode", "area": "holding", "address": 201, "type": "uint16", "access": "R"}, {"name": "Gate mode", "area": "holding", "address": 202, "type": "uint16", "access": "R"}, {"name": "Gate time", "area": "holding", "address": 203, "type": "uint16", "access": "R"}, {"name": "Counter 0 alarm output enable", "area": "holding", "address": 204, "type": "uint16", "access": "R"}, {"name": "Counter 1 alarm output enable", "area": "holding", "address": 205, "type": "uint16", "access": "R"}, {"name": "Module name 1", "area": "holding", "address": 210, "type": "uint16", "access": "R"}, {"name": "Firmware version 1", "area": "holding", "address": 212, "type": "uint16", "access": "R"} ] }