{ "_comment": "Standard.json — generic Modbus TCP server for the integration suite. Loaded by `pymodbus.simulator`. See ../README.md for the launch command. Holding registers 0..31 are seeded with their address as value (HR[5]=5) for easy mental-map diagnostics. HR[100] auto-increments via pymodbus's built-in `increment` action so subscribe-and-receive integration tests have a register that ticks without a write. HR[200..209] is a scratch range left at 0 for write-roundtrip tests. Coils 0..31 alternate on/off (even=on); coils 100..109 scratch.", "server_list": { "srv": { "comm": "tcp", "host": "0.0.0.0", "port": 5020, "framer": "socket", "device_id": 1 } }, "device_list": { "dev": { "setup": { "co size": 1024, "di size": 1024, "hr size": 1024, "ir size": 1024, "shared blocks": false, "type exception": false, "defaults": { "value": {"bits": 0, "uint16": 0, "uint32": 0, "float32": 0.0, "string": " "}, "action": {"bits": null, "uint16": null, "uint32": null, "float32": null, "string": null} } }, "invalid": [], "write": [ [0, 1023] ], "bits": [ {"addr": 0, "value": 1}, {"addr": 1, "value": 0}, {"addr": 2, "value": 1}, {"addr": 3, "value": 0}, {"addr": 4, "value": 1}, {"addr": 5, "value": 0}, {"addr": 6, "value": 1}, {"addr": 7, "value": 0}, {"addr": 8, "value": 1}, {"addr": 9, "value": 0}, {"addr": 10, "value": 1}, {"addr": 11, "value": 0}, {"addr": 12, "value": 1}, {"addr": 13, "value": 0}, {"addr": 14, "value": 1}, {"addr": 15, "value": 0}, {"addr": 16, "value": 1}, {"addr": 17, "value": 0}, {"addr": 18, "value": 1}, {"addr": 19, "value": 0}, {"addr": 20, "value": 1}, {"addr": 21, "value": 0}, {"addr": 22, "value": 1}, {"addr": 23, "value": 0}, {"addr": 24, "value": 1}, {"addr": 25, "value": 0}, {"addr": 26, "value": 1}, {"addr": 27, "value": 0}, {"addr": 28, "value": 1}, {"addr": 29, "value": 0}, {"addr": 30, "value": 1}, {"addr": 31, "value": 0} ], "uint16": [ {"addr": 0, "value": 0}, {"addr": 1, "value": 1}, {"addr": 2, "value": 2}, {"addr": 3, "value": 3}, {"addr": 4, "value": 4}, {"addr": 5, "value": 5}, {"addr": 6, "value": 6}, {"addr": 7, "value": 7}, {"addr": 8, "value": 8}, {"addr": 9, "value": 9}, {"addr": 10, "value": 10}, {"addr": 11, "value": 11}, {"addr": 12, "value": 12}, {"addr": 13, "value": 13}, {"addr": 14, "value": 14}, {"addr": 15, "value": 15}, {"addr": 16, "value": 16}, {"addr": 17, "value": 17}, {"addr": 18, "value": 18}, {"addr": 19, "value": 19}, {"addr": 20, "value": 20}, {"addr": 21, "value": 21}, {"addr": 22, "value": 22}, {"addr": 23, "value": 23}, {"addr": 24, "value": 24}, {"addr": 25, "value": 25}, {"addr": 26, "value": 26}, {"addr": 27, "value": 27}, {"addr": 28, "value": 28}, {"addr": 29, "value": 29}, {"addr": 30, "value": 30}, {"addr": 31, "value": 31}, {"addr": 100, "value": 0, "action": "increment", "parameters": {"minval": 0, "maxval": 65535}} ], "uint32": [], "float32": [], "string": [], "repeat": [] } } }