Сводка · Управление · Профили · Неизвестные · Сеансы
[
{
"session_id": "mb-26c2b3037f9a593f",
"request_id": "scan-7f9a593f26c2b303",
"base": "41af8c",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "scan_standard_identification_unavailable",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "scan_standard_identification_unavailable",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-7f9a593f26c2b303",
"session_id": "mb-26c2b3037f9a593f",
"action": "accepted",
"tm": "2026-08-13T08:29:55.309215Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "41af8c"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "41af8c",
"event": "test_result",
"request_id": "scan-7f9a593f26c2b303",
"results": [
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "000b",
"registers": [
11
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
1,
1,
1,
1,
1,
1,
1
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "ff",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "00c8",
"registers": [
200
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 1,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-26c2b3037f9a593f",
"tm": "1786609791"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "41af8c",
"event": "step_complete",
"request_id": "scan-7f9a593f26c2b303",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-26c2b3037f9a593f",
"tm": "1786609791"
}
}
],
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"description": {
"manufacturer": "Waveshare",
"model": "Modbus RTU IO 8CH",
"documentation_url": "https://www.waveshare.com/wiki/Modbus_RTU_IO_8CH",
"device_type": "industrial_isolated_io",
"inputs": 8,
"outputs": 8
},
"line_parameters": {
"mode": "rtu"
},
"sensor_templates": [
{
"id": "di1",
"name": "DI1",
"mode": "read",
"function": 2,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "di2",
"name": "DI2",
"mode": "read",
"function": 2,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "di3",
"name": "DI3",
"mode": "read",
"function": 2,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "di4",
"name": "DI4",
"mode": "read",
"function": 2,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "di5",
"name": "DI5",
"mode": "read",
"function": 2,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "di6",
"name": "DI6",
"mode": "read",
"function": 2,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "di7",
"name": "DI7",
"mode": "read",
"function": 2,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "di8",
"name": "DI8",
"mode": "read",
"function": 2,
"address": 7,
"quantity": 1,
"map": "direct"
},
{
"id": "do1_state",
"name": "DO1",
"mode": "read",
"function": 1,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "do2_state",
"name": "DO2",
"mode": "read",
"function": 1,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "do3_state",
"name": "DO3",
"mode": "read",
"function": 1,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "do4_state",
"name": "DO4",
"mode": "read",
"function": 1,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "do5_state",
"name": "DO5",
"mode": "read",
"function": 1,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "do6_state",
"name": "DO6",
"mode": "read",
"function": 1,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "do7_state",
"name": "DO7",
"mode": "read",
"function": 1,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "do8_state",
"name": "DO8",
"mode": "read",
"function": 1,
"address": 7,
"quantity": 1,
"map": "direct"
}
],
"polling_intervals": {
"default_seconds": 5
}
}
},
"created_at": "1786609787",
"updated_at": "1786609791"
},
{
"session_id": "mb-b946a117f46d8ce3",
"request_id": "scan-f46d8ce3b946a117",
"base": "41af8c",
"slave_id": 1,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "medium",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "scan_standard_identification_unavailable",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "scan_standard_identification_unavailable",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-f46d8ce3b946a117",
"session_id": "mb-b946a117f46d8ce3",
"action": "accepted",
"tm": "2026-08-13T08:29:52.954681Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "41af8c"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "41af8c",
"event": "test_result",
"request_id": "scan-f46d8ce3b946a117",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "00e70185",
"registers": [
231,
389
],
"success": true,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "0000",
"registers": [
0
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
1,
1,
1,
1,
1,
1,
1
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "ff",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "0000",
"registers": [
0
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"byte_count": 40,
"function": 4,
"quantity": 20,
"raw_hex": "00000000000000000000000000000000000000000000000000000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-b946a117f46d8ce3",
"tm": "1786609787"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "41af8c",
"event": "step_complete",
"request_id": "scan-f46d8ce3b946a117",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-b946a117f46d8ce3",
"tm": "1786609787"
}
}
],
"profile_id": "temperature_humidity_int16_div10",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "temperature_humidity_int16_div10",
"profile_version": "1.0.0",
"description": {
"device_type": "temperature_humidity_sensor",
"compatible_with": "SHT20",
"identification_status": "requires_device_identification",
"note": "Без подтверждённого FC 0x2B/0x0E или FC 0x11 это совместимый преобразователь, а не подтверждённая модель SHT20."
},
"line_parameters": {
"mode": "rtu",
"baudrate": 9600,
"parity": "N",
"timeout_ms": 200
},
"sensor_templates": [
{
"id": "temperature_c",
"name": "Температура",
"mode": "read",
"function": 4,
"address": 0,
"quantity": 1,
"value_type": "int16",
"divisor": 10,
"unit": "°C"
},
{
"id": "humidity_percent",
"name": "Влажность",
"mode": "read",
"function": 4,
"address": 1,
"quantity": 1,
"value_type": "int16",
"divisor": 10,
"unit": "%"
}
],
"polling_intervals": {
"default_seconds": 10
}
}
},
"created_at": "1786609785",
"updated_at": "1786609787"
},
{
"session_id": "mb-e27d0064cd126be1",
"request_id": "scan-cd126be1e27d0064",
"base": "1a2270",
"slave_id": 20,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "medium",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "scan_standard_identification_unavailable",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "scan_standard_identification_unavailable",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-cd126be1e27d0064",
"session_id": "mb-e27d0064cd126be1",
"action": "accepted",
"tm": "2026-08-12T10:11:44.653245Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "1a2270"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "1a2270",
"event": "test_result",
"request_id": "scan-cd126be1e27d0064",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "011f024b",
"registers": [
287,
587
],
"success": true,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"exception_code": 3,
"function": 3,
"quantity": 1,
"success": false,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"exception_code": 3,
"function": 2,
"quantity": 8,
"success": false,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"exception_code": 3,
"function": 3,
"quantity": 1,
"success": false,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"exception_code": 3,
"function": 3,
"quantity": 8,
"success": false,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 3,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-e27d0064cd126be1",
"tm": "1786529493"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-cd126be1e27d0064",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-e27d0064cd126be1",
"tm": "1786529493"
}
}
],
"profile_id": "temperature_humidity_int16_div10",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "temperature_humidity_int16_div10",
"profile_version": "1.0.0",
"description": {
"device_type": "temperature_humidity_sensor",
"compatible_with": "SHT20",
"identification_status": "requires_device_identification",
"note": "Без подтверждённого FC 0x2B/0x0E или FC 0x11 это совместимый преобразователь, а не подтверждённая модель SHT20."
},
"line_parameters": {
"mode": "rtu",
"baudrate": 9600,
"parity": "N",
"timeout_ms": 200
},
"sensor_templates": [
{
"id": "temperature_c",
"name": "Температура",
"mode": "read",
"function": 4,
"address": 0,
"quantity": 1,
"value_type": "int16",
"divisor": 10,
"unit": "°C"
},
{
"id": "humidity_percent",
"name": "Влажность",
"mode": "read",
"function": 4,
"address": 1,
"quantity": 1,
"value_type": "int16",
"divisor": 10,
"unit": "%"
}
],
"polling_intervals": {
"default_seconds": 10
}
}
},
"created_at": "1786529487",
"updated_at": "1786529495"
},
{
"session_id": "mb-e227ea7737ea6963",
"request_id": "scan-37ea6963e227ea77",
"base": "1a2270",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "scan_standard_identification_unavailable",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "scan_standard_identification_unavailable",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-37ea6963e227ea77",
"session_id": "mb-e227ea7737ea6963",
"action": "accepted",
"tm": "2026-08-12T10:11:40.292397Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "1a2270"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "1a2270",
"event": "test_result",
"request_id": "scan-37ea6963e227ea77",
"results": [
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "000b",
"registers": [
11
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
0,
0,
0,
0,
0,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "01",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "00c8",
"registers": [
200
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 1,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-e227ea7737ea6963",
"tm": "1786529486"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-37ea6963e227ea77",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-e227ea7737ea6963",
"tm": "1786529486"
}
}
],
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"description": {
"manufacturer": "Waveshare",
"model": "Modbus RTU IO 8CH",
"documentation_url": "https://www.waveshare.com/wiki/Modbus_RTU_IO_8CH",
"device_type": "industrial_isolated_io",
"inputs": 8,
"outputs": 8
},
"line_parameters": {
"mode": "rtu"
},
"sensor_templates": [
{
"id": "di1",
"name": "DI1",
"mode": "read",
"function": 2,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "di2",
"name": "DI2",
"mode": "read",
"function": 2,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "di3",
"name": "DI3",
"mode": "read",
"function": 2,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "di4",
"name": "DI4",
"mode": "read",
"function": 2,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "di5",
"name": "DI5",
"mode": "read",
"function": 2,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "di6",
"name": "DI6",
"mode": "read",
"function": 2,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "di7",
"name": "DI7",
"mode": "read",
"function": 2,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "di8",
"name": "DI8",
"mode": "read",
"function": 2,
"address": 7,
"quantity": 1,
"map": "direct"
},
{
"id": "do1_state",
"name": "DO1",
"mode": "read",
"function": 1,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "do2_state",
"name": "DO2",
"mode": "read",
"function": 1,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "do3_state",
"name": "DO3",
"mode": "read",
"function": 1,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "do4_state",
"name": "DO4",
"mode": "read",
"function": 1,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "do5_state",
"name": "DO5",
"mode": "read",
"function": 1,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "do6_state",
"name": "DO6",
"mode": "read",
"function": 1,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "do7_state",
"name": "DO7",
"mode": "read",
"function": 1,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "do8_state",
"name": "DO8",
"mode": "read",
"function": 1,
"address": 7,
"quantity": 1,
"map": "direct"
}
],
"polling_intervals": {
"default_seconds": 5
}
}
},
"created_at": "1786529474",
"updated_at": "1786529487"
},
{
"session_id": "mb-1d7921474b01a3a7",
"request_id": "scan-4b01a3a71d792147",
"base": "41af8c",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "scan_standard_identification_unavailable",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "scan_standard_identification_unavailable",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-4b01a3a71d792147",
"session_id": "mb-1d7921474b01a3a7",
"action": "accepted",
"tm": "2026-08-12T08:26:57.266571Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "41af8c"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "41af8c",
"event": "test_result",
"request_id": "scan-4b01a3a71d792147",
"results": [
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "000b",
"registers": [
11
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
0,
0,
0,
1,
1,
1,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "38",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "00c8",
"registers": [
200
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 1,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-1d7921474b01a3a7",
"tm": "1786523216"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "41af8c",
"event": "step_complete",
"request_id": "scan-4b01a3a71d792147",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-1d7921474b01a3a7",
"tm": "1786523216"
}
}
],
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"description": {
"manufacturer": "Waveshare",
"model": "Modbus RTU IO 8CH",
"documentation_url": "https://www.waveshare.com/wiki/Modbus_RTU_IO_8CH",
"device_type": "industrial_isolated_io",
"inputs": 8,
"outputs": 8
},
"line_parameters": {
"mode": "rtu"
},
"sensor_templates": [
{
"id": "di1",
"name": "DI1",
"mode": "read",
"function": 2,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "di2",
"name": "DI2",
"mode": "read",
"function": 2,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "di3",
"name": "DI3",
"mode": "read",
"function": 2,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "di4",
"name": "DI4",
"mode": "read",
"function": 2,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "di5",
"name": "DI5",
"mode": "read",
"function": 2,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "di6",
"name": "DI6",
"mode": "read",
"function": 2,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "di7",
"name": "DI7",
"mode": "read",
"function": 2,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "di8",
"name": "DI8",
"mode": "read",
"function": 2,
"address": 7,
"quantity": 1,
"map": "direct"
},
{
"id": "do1_state",
"name": "DO1",
"mode": "read",
"function": 1,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "do2_state",
"name": "DO2",
"mode": "read",
"function": 1,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "do3_state",
"name": "DO3",
"mode": "read",
"function": 1,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "do4_state",
"name": "DO4",
"mode": "read",
"function": 1,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "do5_state",
"name": "DO5",
"mode": "read",
"function": 1,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "do6_state",
"name": "DO6",
"mode": "read",
"function": 1,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "do7_state",
"name": "DO7",
"mode": "read",
"function": 1,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "do8_state",
"name": "DO8",
"mode": "read",
"function": 1,
"address": 7,
"quantity": 1,
"map": "direct"
}
],
"polling_intervals": {
"default_seconds": 5
}
}
},
"created_at": "1786523189",
"updated_at": "1786523230"
},
{
"session_id": "mb-4bc58176d61ceb5e",
"request_id": "scan-d61ceb5e4bc58176",
"base": "41af8c",
"slave_id": 1,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "medium",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "scan_standard_identification_unavailable",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "scan_standard_identification_unavailable",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-d61ceb5e4bc58176",
"session_id": "mb-4bc58176d61ceb5e",
"action": "accepted",
"tm": "2026-08-12T08:26:03.600575Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "41af8c"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "41af8c",
"event": "test_result",
"request_id": "scan-d61ceb5e4bc58176",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "00f001b0",
"registers": [
240,
432
],
"success": true,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "0000",
"registers": [
0
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
1,
1,
1,
1,
1,
1,
1
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "ff",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "0000",
"registers": [
0
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"byte_count": 40,
"function": 4,
"quantity": 20,
"raw_hex": "00000000000000000000000000000000000000000000000000000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-4bc58176d61ceb5e",
"tm": "1786523159"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "41af8c",
"event": "step_complete",
"request_id": "scan-d61ceb5e4bc58176",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-4bc58176d61ceb5e",
"tm": "1786523159"
}
}
],
"profile_id": "temperature_humidity_int16_div10",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "temperature_humidity_int16_div10",
"profile_version": "1.0.0",
"description": {
"device_type": "temperature_humidity_sensor",
"compatible_with": "SHT20",
"identification_status": "requires_device_identification",
"note": "Без подтверждённого FC 0x2B/0x0E или FC 0x11 это совместимый преобразователь, а не подтверждённая модель SHT20."
},
"line_parameters": {
"mode": "rtu",
"baudrate": 9600,
"parity": "N",
"timeout_ms": 200
},
"sensor_templates": [
{
"id": "temperature_c",
"name": "Температура",
"mode": "read",
"function": 4,
"address": 0,
"quantity": 1,
"value_type": "int16",
"divisor": 10,
"unit": "°C"
},
{
"id": "humidity_percent",
"name": "Влажность",
"mode": "read",
"function": 4,
"address": 1,
"quantity": 1,
"value_type": "int16",
"divisor": 10,
"unit": "%"
}
],
"polling_intervals": {
"default_seconds": 10
}
}
},
"created_at": "1786523130",
"updated_at": "1786523189"
},
{
"session_id": "mb-8250eee306161dd6",
"request_id": "scan-06161dd68250eee3",
"base": "41af8c",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-06161dd68250eee3",
"session_id": "mb-8250eee306161dd6",
"action": "accepted",
"tm": "2026-08-12T07:35:03.710515Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "41af8c"
}
},
{
"kind": "command",
"action": "start",
"commands": [
{
"test_id": "device-identification-basic",
"function": 43,
"mei_type": 14,
"read_device_id_code": 1
},
{
"test_id": "report-server-id",
"function": 17
}
]
},
{
"kind": "response",
"event": "probe",
"payload": {
"action": "probe",
"attempts": [
{
"function": 43,
"mei_type": 14,
"success": false,
"test_id": "device-identification-basic"
},
{
"function": 17,
"success": false,
"test_id": "report-server-id"
}
],
"controller_id": "41af8c",
"event": "probe",
"identity": {
"device_identification": {
"conformity_level": 0,
"more_follows": false,
"next_object_id": 0,
"objects": [],
"read_device_id_code": 0,
"supported": false
},
"error": "exception_1",
"server_id": {
"supported": false
}
},
"request_id": "scan-06161dd68250eee3",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-8250eee306161dd6",
"tm": "1786520102"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "41af8c",
"event": "test_result",
"request_id": "scan-06161dd68250eee3",
"results": [
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "000b",
"registers": [
11
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
0,
0,
0,
0,
0,
0,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "00",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "00c8",
"registers": [
200
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 1,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-8250eee306161dd6",
"tm": "1786520132"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "41af8c",
"event": "step_complete",
"request_id": "scan-06161dd68250eee3",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-8250eee306161dd6",
"tm": "1786520132"
}
}
],
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"description": {
"manufacturer": "Waveshare",
"model": "Modbus RTU IO 8CH",
"documentation_url": "https://www.waveshare.com/wiki/Modbus_RTU_IO_8CH",
"device_type": "industrial_isolated_io",
"inputs": 8,
"outputs": 8
},
"line_parameters": {
"mode": "rtu"
},
"sensor_templates": [
{
"id": "di1",
"name": "DI1",
"mode": "read",
"function": 2,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "di2",
"name": "DI2",
"mode": "read",
"function": 2,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "di3",
"name": "DI3",
"mode": "read",
"function": 2,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "di4",
"name": "DI4",
"mode": "read",
"function": 2,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "di5",
"name": "DI5",
"mode": "read",
"function": 2,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "di6",
"name": "DI6",
"mode": "read",
"function": 2,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "di7",
"name": "DI7",
"mode": "read",
"function": 2,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "di8",
"name": "DI8",
"mode": "read",
"function": 2,
"address": 7,
"quantity": 1,
"map": "direct"
},
{
"id": "do1_state",
"name": "DO1",
"mode": "read",
"function": 1,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "do2_state",
"name": "DO2",
"mode": "read",
"function": 1,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "do3_state",
"name": "DO3",
"mode": "read",
"function": 1,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "do4_state",
"name": "DO4",
"mode": "read",
"function": 1,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "do5_state",
"name": "DO5",
"mode": "read",
"function": 1,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "do6_state",
"name": "DO6",
"mode": "read",
"function": 1,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "do7_state",
"name": "DO7",
"mode": "read",
"function": 1,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "do8_state",
"name": "DO8",
"mode": "read",
"function": 1,
"address": 7,
"quantity": 1,
"map": "direct"
}
],
"polling_intervals": {
"default_seconds": 5
}
}
},
"created_at": "1786520069",
"updated_at": "1786520132"
},
{
"session_id": "mb-2bbdf8cb7e58119b",
"request_id": "scan-7e58119b2bbdf8cb",
"base": "1a2270",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "scan_standard_identification_unavailable",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "scan_standard_identification_unavailable",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-7e58119b2bbdf8cb",
"session_id": "mb-2bbdf8cb7e58119b",
"action": "accepted",
"tm": "2026-08-10T21:24:10.032704Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "1a2270"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "1a2270",
"event": "test_result",
"request_id": "scan-7e58119b2bbdf8cb",
"results": [
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "000b",
"registers": [
11
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
0,
0,
0,
0,
0,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "01",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "00c8",
"registers": [
200
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 1,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-2bbdf8cb7e58119b",
"tm": "1786397036"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-7e58119b2bbdf8cb",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-2bbdf8cb7e58119b",
"tm": "1786397036"
}
}
],
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"description": {
"manufacturer": "Waveshare",
"model": "Modbus RTU IO 8CH",
"documentation_url": "https://www.waveshare.com/wiki/Modbus_RTU_IO_8CH",
"device_type": "industrial_isolated_io",
"inputs": 8,
"outputs": 8
},
"line_parameters": {
"mode": "rtu"
},
"sensor_templates": [
{
"id": "di1",
"name": "DI1",
"mode": "read",
"function": 2,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "di2",
"name": "DI2",
"mode": "read",
"function": 2,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "di3",
"name": "DI3",
"mode": "read",
"function": 2,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "di4",
"name": "DI4",
"mode": "read",
"function": 2,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "di5",
"name": "DI5",
"mode": "read",
"function": 2,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "di6",
"name": "DI6",
"mode": "read",
"function": 2,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "di7",
"name": "DI7",
"mode": "read",
"function": 2,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "di8",
"name": "DI8",
"mode": "read",
"function": 2,
"address": 7,
"quantity": 1,
"map": "direct"
},
{
"id": "do1_state",
"name": "DO1",
"mode": "read",
"function": 1,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "do2_state",
"name": "DO2",
"mode": "read",
"function": 1,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "do3_state",
"name": "DO3",
"mode": "read",
"function": 1,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "do4_state",
"name": "DO4",
"mode": "read",
"function": 1,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "do5_state",
"name": "DO5",
"mode": "read",
"function": 1,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "do6_state",
"name": "DO6",
"mode": "read",
"function": 1,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "do7_state",
"name": "DO7",
"mode": "read",
"function": 1,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "do8_state",
"name": "DO8",
"mode": "read",
"function": 1,
"address": 7,
"quantity": 1,
"map": "direct"
}
],
"polling_intervals": {
"default_seconds": 5
}
}
},
"created_at": "1786397007",
"updated_at": "1786397043"
},
{
"session_id": "mb-47bb76a29982c8d3",
"request_id": "scan-9982c8d347bb76a2",
"base": "1a2270",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "scan_standard_identification_unavailable",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "scan_standard_identification_unavailable",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-9982c8d347bb76a2",
"session_id": "mb-47bb76a29982c8d3",
"action": "accepted",
"tm": "2026-08-10T21:21:45.394444Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "1a2270"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "1a2270",
"event": "test_result",
"request_id": "scan-9982c8d347bb76a2",
"results": [
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "000b",
"registers": [
11
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
0,
0,
0,
0,
0,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "01",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "00c8",
"registers": [
200
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 1,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-47bb76a29982c8d3",
"tm": "1786396892"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-9982c8d347bb76a2",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-47bb76a29982c8d3",
"tm": "1786396892"
}
}
],
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"description": {
"manufacturer": "Waveshare",
"model": "Modbus RTU IO 8CH",
"documentation_url": "https://www.waveshare.com/wiki/Modbus_RTU_IO_8CH",
"device_type": "industrial_isolated_io",
"inputs": 8,
"outputs": 8
},
"line_parameters": {
"mode": "rtu"
},
"sensor_templates": [
{
"id": "di1",
"name": "DI1",
"mode": "read",
"function": 2,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "di2",
"name": "DI2",
"mode": "read",
"function": 2,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "di3",
"name": "DI3",
"mode": "read",
"function": 2,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "di4",
"name": "DI4",
"mode": "read",
"function": 2,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "di5",
"name": "DI5",
"mode": "read",
"function": 2,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "di6",
"name": "DI6",
"mode": "read",
"function": 2,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "di7",
"name": "DI7",
"mode": "read",
"function": 2,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "di8",
"name": "DI8",
"mode": "read",
"function": 2,
"address": 7,
"quantity": 1,
"map": "direct"
},
{
"id": "do1_state",
"name": "DO1",
"mode": "read",
"function": 1,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "do2_state",
"name": "DO2",
"mode": "read",
"function": 1,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "do3_state",
"name": "DO3",
"mode": "read",
"function": 1,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "do4_state",
"name": "DO4",
"mode": "read",
"function": 1,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "do5_state",
"name": "DO5",
"mode": "read",
"function": 1,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "do6_state",
"name": "DO6",
"mode": "read",
"function": 1,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "do7_state",
"name": "DO7",
"mode": "read",
"function": 1,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "do8_state",
"name": "DO8",
"mode": "read",
"function": 1,
"address": 7,
"quantity": 1,
"map": "direct"
}
],
"polling_intervals": {
"default_seconds": 5
}
}
},
"created_at": "1786396882",
"updated_at": "1786396915"
},
{
"session_id": "mb-5e30f524da7bc714",
"request_id": "scan-da7bc7145e30f524",
"base": "1a2270",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "scan_standard_identification_unavailable",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "scan_standard_identification_unavailable",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-da7bc7145e30f524",
"session_id": "mb-5e30f524da7bc714",
"action": "accepted",
"tm": "2026-08-10T21:16:27.101375Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "1a2270"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "1a2270",
"event": "test_result",
"request_id": "scan-da7bc7145e30f524",
"results": [
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "000b",
"registers": [
11
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
0,
0,
0,
0,
0,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "01",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "00c8",
"registers": [
200
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 1,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-5e30f524da7bc714",
"tm": "1786396574"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-da7bc7145e30f524",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-5e30f524da7bc714",
"tm": "1786396574"
}
}
],
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"description": {
"manufacturer": "Waveshare",
"model": "Modbus RTU IO 8CH",
"documentation_url": "https://www.waveshare.com/wiki/Modbus_RTU_IO_8CH",
"device_type": "industrial_isolated_io",
"inputs": 8,
"outputs": 8
},
"line_parameters": {
"mode": "rtu"
},
"sensor_templates": [
{
"id": "di1",
"name": "DI1",
"mode": "read",
"function": 2,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "di2",
"name": "DI2",
"mode": "read",
"function": 2,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "di3",
"name": "DI3",
"mode": "read",
"function": 2,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "di4",
"name": "DI4",
"mode": "read",
"function": 2,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "di5",
"name": "DI5",
"mode": "read",
"function": 2,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "di6",
"name": "DI6",
"mode": "read",
"function": 2,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "di7",
"name": "DI7",
"mode": "read",
"function": 2,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "di8",
"name": "DI8",
"mode": "read",
"function": 2,
"address": 7,
"quantity": 1,
"map": "direct"
},
{
"id": "do1_state",
"name": "DO1",
"mode": "read",
"function": 1,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "do2_state",
"name": "DO2",
"mode": "read",
"function": 1,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "do3_state",
"name": "DO3",
"mode": "read",
"function": 1,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "do4_state",
"name": "DO4",
"mode": "read",
"function": 1,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "do5_state",
"name": "DO5",
"mode": "read",
"function": 1,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "do6_state",
"name": "DO6",
"mode": "read",
"function": 1,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "do7_state",
"name": "DO7",
"mode": "read",
"function": 1,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "do8_state",
"name": "DO8",
"mode": "read",
"function": 1,
"address": 7,
"quantity": 1,
"map": "direct"
}
],
"polling_intervals": {
"default_seconds": 5
}
}
},
"created_at": "1786396570",
"updated_at": "1786396575"
},
{
"session_id": "mb-fa6d6b96bdf4d7bb",
"request_id": "scan-bdf4d7bbfa6d6b96",
"base": "1a2270",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "scan_standard_identification_unavailable",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "scan_standard_identification_unavailable",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-bdf4d7bbfa6d6b96",
"session_id": "mb-fa6d6b96bdf4d7bb",
"action": "accepted",
"tm": "2026-08-10T21:07:48.598038Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "1a2270"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "1a2270",
"event": "test_result",
"request_id": "scan-bdf4d7bbfa6d6b96",
"results": [
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "000b",
"registers": [
11
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
0,
0,
0,
0,
0,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "01",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "00c8",
"registers": [
200
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 1,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-fa6d6b96bdf4d7bb",
"tm": "1786396055"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-bdf4d7bbfa6d6b96",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-fa6d6b96bdf4d7bb",
"tm": "1786396055"
}
}
],
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"description": {
"manufacturer": "Waveshare",
"model": "Modbus RTU IO 8CH",
"documentation_url": "https://www.waveshare.com/wiki/Modbus_RTU_IO_8CH",
"device_type": "industrial_isolated_io",
"inputs": 8,
"outputs": 8
},
"line_parameters": {
"mode": "rtu"
},
"sensor_templates": [
{
"id": "di1",
"name": "DI1",
"mode": "read",
"function": 2,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "di2",
"name": "DI2",
"mode": "read",
"function": 2,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "di3",
"name": "DI3",
"mode": "read",
"function": 2,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "di4",
"name": "DI4",
"mode": "read",
"function": 2,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "di5",
"name": "DI5",
"mode": "read",
"function": 2,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "di6",
"name": "DI6",
"mode": "read",
"function": 2,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "di7",
"name": "DI7",
"mode": "read",
"function": 2,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "di8",
"name": "DI8",
"mode": "read",
"function": 2,
"address": 7,
"quantity": 1,
"map": "direct"
},
{
"id": "do1_state",
"name": "DO1",
"mode": "read",
"function": 1,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "do2_state",
"name": "DO2",
"mode": "read",
"function": 1,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "do3_state",
"name": "DO3",
"mode": "read",
"function": 1,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "do4_state",
"name": "DO4",
"mode": "read",
"function": 1,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "do5_state",
"name": "DO5",
"mode": "read",
"function": 1,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "do6_state",
"name": "DO6",
"mode": "read",
"function": 1,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "do7_state",
"name": "DO7",
"mode": "read",
"function": 1,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "do8_state",
"name": "DO8",
"mode": "read",
"function": 1,
"address": 7,
"quantity": 1,
"map": "direct"
}
],
"polling_intervals": {
"default_seconds": 5
}
}
},
"created_at": "1786396045",
"updated_at": "1786396080"
},
{
"session_id": "mb-39c2c0ec4ac5efa3",
"request_id": "scan-4ac5efa339c2c0ec",
"base": "1a2270",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "scan_standard_identification_unavailable",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "scan_standard_identification_unavailable",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-4ac5efa339c2c0ec",
"session_id": "mb-39c2c0ec4ac5efa3",
"action": "accepted",
"tm": "2026-08-10T20:56:50.723844Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "1a2270"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "1a2270",
"event": "test_result",
"request_id": "scan-4ac5efa339c2c0ec",
"results": [
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "000b",
"registers": [
11
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
0,
0,
0,
0,
0,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "01",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "00c8",
"registers": [
200
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 1,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-39c2c0ec4ac5efa3",
"tm": "1786395398"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-4ac5efa339c2c0ec",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-39c2c0ec4ac5efa3",
"tm": "1786395398"
}
}
],
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"description": {
"manufacturer": "Waveshare",
"model": "Modbus RTU IO 8CH",
"documentation_url": "https://www.waveshare.com/wiki/Modbus_RTU_IO_8CH",
"device_type": "industrial_isolated_io",
"inputs": 8,
"outputs": 8
},
"line_parameters": {
"mode": "rtu"
},
"sensor_templates": [
{
"id": "di1",
"name": "DI1",
"mode": "read",
"function": 2,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "di2",
"name": "DI2",
"mode": "read",
"function": 2,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "di3",
"name": "DI3",
"mode": "read",
"function": 2,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "di4",
"name": "DI4",
"mode": "read",
"function": 2,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "di5",
"name": "DI5",
"mode": "read",
"function": 2,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "di6",
"name": "DI6",
"mode": "read",
"function": 2,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "di7",
"name": "DI7",
"mode": "read",
"function": 2,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "di8",
"name": "DI8",
"mode": "read",
"function": 2,
"address": 7,
"quantity": 1,
"map": "direct"
},
{
"id": "do1_state",
"name": "DO1",
"mode": "read",
"function": 1,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "do2_state",
"name": "DO2",
"mode": "read",
"function": 1,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "do3_state",
"name": "DO3",
"mode": "read",
"function": 1,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "do4_state",
"name": "DO4",
"mode": "read",
"function": 1,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "do5_state",
"name": "DO5",
"mode": "read",
"function": 1,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "do6_state",
"name": "DO6",
"mode": "read",
"function": 1,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "do7_state",
"name": "DO7",
"mode": "read",
"function": 1,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "do8_state",
"name": "DO8",
"mode": "read",
"function": 1,
"address": 7,
"quantity": 1,
"map": "direct"
}
],
"polling_intervals": {
"default_seconds": 5
}
}
},
"created_at": "1786395374",
"updated_at": "1786395402"
},
{
"session_id": "mb-6f1b3100929153f4",
"request_id": "scan-929153f46f1b3100",
"base": "1a2270",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-929153f46f1b3100",
"session_id": "mb-6f1b3100929153f4",
"action": "accepted",
"tm": "2026-08-10T20:44:11.476582Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "1a2270"
}
},
{
"kind": "command",
"action": "start",
"commands": [
{
"test_id": "device-identification-basic",
"function": 43,
"mei_type": 14,
"read_device_id_code": 1
},
{
"test_id": "report-server-id",
"function": 17
}
]
},
{
"kind": "response",
"event": "probe",
"payload": {
"action": "probe",
"attempts": [
{
"function": 43,
"mei_type": 14,
"success": false,
"test_id": "device-identification-basic"
},
{
"function": 17,
"success": false,
"test_id": "report-server-id"
}
],
"controller_id": "1a2270",
"event": "probe",
"identity": {
"device_identification": {
"conformity_level": 0,
"more_follows": false,
"next_object_id": 0,
"objects": [],
"read_device_id_code": 0,
"supported": false
},
"error": "exception_1",
"server_id": {
"supported": false
}
},
"request_id": "scan-929153f46f1b3100",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-6f1b3100929153f4",
"tm": "1786394638"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "1a2270",
"event": "test_result",
"request_id": "scan-929153f46f1b3100",
"results": [
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "000b",
"registers": [
11
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
0,
0,
0,
0,
0,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "01",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "00c8",
"registers": [
200
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 1,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-6f1b3100929153f4",
"tm": "1786394644"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-929153f46f1b3100",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-6f1b3100929153f4",
"tm": "1786394644"
}
}
],
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"description": {
"manufacturer": "Waveshare",
"model": "Modbus RTU IO 8CH",
"documentation_url": "https://www.waveshare.com/wiki/Modbus_RTU_IO_8CH",
"device_type": "industrial_isolated_io",
"inputs": 8,
"outputs": 8
},
"line_parameters": {
"mode": "rtu"
},
"sensor_templates": [
{
"id": "di1",
"name": "DI1",
"mode": "read",
"function": 2,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "di2",
"name": "DI2",
"mode": "read",
"function": 2,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "di3",
"name": "DI3",
"mode": "read",
"function": 2,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "di4",
"name": "DI4",
"mode": "read",
"function": 2,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "di5",
"name": "DI5",
"mode": "read",
"function": 2,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "di6",
"name": "DI6",
"mode": "read",
"function": 2,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "di7",
"name": "DI7",
"mode": "read",
"function": 2,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "di8",
"name": "DI8",
"mode": "read",
"function": 2,
"address": 7,
"quantity": 1,
"map": "direct"
},
{
"id": "do1_state",
"name": "DO1",
"mode": "read",
"function": 1,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "do2_state",
"name": "DO2",
"mode": "read",
"function": 1,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "do3_state",
"name": "DO3",
"mode": "read",
"function": 1,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "do4_state",
"name": "DO4",
"mode": "read",
"function": 1,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "do5_state",
"name": "DO5",
"mode": "read",
"function": 1,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "do6_state",
"name": "DO6",
"mode": "read",
"function": 1,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "do7_state",
"name": "DO7",
"mode": "read",
"function": 1,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "do8_state",
"name": "DO8",
"mode": "read",
"function": 1,
"address": 7,
"quantity": 1,
"map": "direct"
}
],
"polling_intervals": {
"default_seconds": 5
}
}
},
"created_at": "1786394614",
"updated_at": "1786394671"
},
{
"session_id": "mb-ef97d235f40f07d4",
"request_id": "scan-f40f07d4ef97d235",
"base": "1a2270",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "manual_web_start",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "manual_web_start",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-f40f07d4ef97d235",
"session_id": "mb-ef97d235f40f07d4",
"action": "accepted",
"tm": "2026-08-10T20:36:12.148135Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "1a2270"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "1a2270",
"event": "test_result",
"request_id": "scan-f40f07d4ef97d235",
"results": [
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "000b",
"registers": [
11
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
0,
0,
0,
0,
0,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "01",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "00c8",
"registers": [
200
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 1,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-ef97d235f40f07d4",
"tm": "1786394159"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-f40f07d4ef97d235",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-ef97d235f40f07d4",
"tm": "1786394159"
}
}
],
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"description": {
"manufacturer": "Waveshare",
"model": "Modbus RTU IO 8CH",
"documentation_url": "https://www.waveshare.com/wiki/Modbus_RTU_IO_8CH",
"device_type": "industrial_isolated_io",
"inputs": 8,
"outputs": 8
},
"line_parameters": {
"mode": "rtu"
},
"sensor_templates": [
{
"id": "di1",
"name": "DI1",
"mode": "read",
"function": 2,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "di2",
"name": "DI2",
"mode": "read",
"function": 2,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "di3",
"name": "DI3",
"mode": "read",
"function": 2,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "di4",
"name": "DI4",
"mode": "read",
"function": 2,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "di5",
"name": "DI5",
"mode": "read",
"function": 2,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "di6",
"name": "DI6",
"mode": "read",
"function": 2,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "di7",
"name": "DI7",
"mode": "read",
"function": 2,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "di8",
"name": "DI8",
"mode": "read",
"function": 2,
"address": 7,
"quantity": 1,
"map": "direct"
},
{
"id": "do1_state",
"name": "DO1",
"mode": "read",
"function": 1,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "do2_state",
"name": "DO2",
"mode": "read",
"function": 1,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "do3_state",
"name": "DO3",
"mode": "read",
"function": 1,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "do4_state",
"name": "DO4",
"mode": "read",
"function": 1,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "do5_state",
"name": "DO5",
"mode": "read",
"function": 1,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "do6_state",
"name": "DO6",
"mode": "read",
"function": 1,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "do7_state",
"name": "DO7",
"mode": "read",
"function": 1,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "do8_state",
"name": "DO8",
"mode": "read",
"function": 1,
"address": 7,
"quantity": 1,
"map": "direct"
}
],
"polling_intervals": {
"default_seconds": 5
}
}
},
"created_at": "1786394128",
"updated_at": "1786394166"
},
{
"session_id": "mb-0780c032e2427cbe",
"request_id": "scan-e2427cbe0780c032",
"base": "1a2270",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "manual_web_start",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "manual_web_start",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-e2427cbe0780c032",
"session_id": "mb-0780c032e2427cbe",
"action": "accepted",
"tm": "2026-08-10T20:29:03.123623Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "1a2270"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "1a2270",
"event": "test_result",
"request_id": "scan-e2427cbe0780c032",
"results": [
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "000b",
"registers": [
11
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
0,
0,
0,
0,
0,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "01",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "00c8",
"registers": [
200
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 1,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-0780c032e2427cbe",
"tm": "1786393730"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-e2427cbe0780c032",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-0780c032e2427cbe",
"tm": "1786393730"
}
}
],
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"description": {
"manufacturer": "Waveshare",
"model": "Modbus RTU IO 8CH",
"documentation_url": "https://www.waveshare.com/wiki/Modbus_RTU_IO_8CH",
"device_type": "industrial_isolated_io",
"inputs": 8,
"outputs": 8
},
"line_parameters": {
"mode": "rtu"
},
"sensor_templates": [
{
"id": "di1",
"name": "DI1",
"mode": "read",
"function": 2,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "di2",
"name": "DI2",
"mode": "read",
"function": 2,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "di3",
"name": "DI3",
"mode": "read",
"function": 2,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "di4",
"name": "DI4",
"mode": "read",
"function": 2,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "di5",
"name": "DI5",
"mode": "read",
"function": 2,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "di6",
"name": "DI6",
"mode": "read",
"function": 2,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "di7",
"name": "DI7",
"mode": "read",
"function": 2,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "di8",
"name": "DI8",
"mode": "read",
"function": 2,
"address": 7,
"quantity": 1,
"map": "direct"
},
{
"id": "do1_state",
"name": "DO1",
"mode": "read",
"function": 1,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "do2_state",
"name": "DO2",
"mode": "read",
"function": 1,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "do3_state",
"name": "DO3",
"mode": "read",
"function": 1,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "do4_state",
"name": "DO4",
"mode": "read",
"function": 1,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "do5_state",
"name": "DO5",
"mode": "read",
"function": 1,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "do6_state",
"name": "DO6",
"mode": "read",
"function": 1,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "do7_state",
"name": "DO7",
"mode": "read",
"function": 1,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "do8_state",
"name": "DO8",
"mode": "read",
"function": 1,
"address": 7,
"quantity": 1,
"map": "direct"
}
],
"polling_intervals": {
"default_seconds": 5
}
}
},
"created_at": "1786393712",
"updated_at": "1786393731"
},
{
"session_id": "mb-9603aca7a01d1792",
"request_id": "scan-a01d17929603aca7",
"base": "1a2270",
"slave_id": 11,
"state": "failed",
"reads_used": 8,
"steps_used": 1,
"result": {
"action": "error",
"code": "cancelled",
"controller_id": "1a2270",
"event": "error",
"request_id": "scan-a01d17929603aca7",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-9603aca7a01d1792",
"tm": "1786393649"
},
"created_at": "1786393627",
"updated_at": "1786393649"
},
{
"session_id": "mb-f0b887e0528e2311",
"request_id": "scan-528e2311f0b887e0",
"base": "1a2270",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1786393504",
"updated_at": "1786393508"
},
{
"session_id": "mb-36aef6338210c841",
"request_id": "scan-8210c84136aef633",
"base": "1a2270",
"slave_id": 11,
"state": "failed",
"reads_used": 8,
"steps_used": 1,
"result": {
"action": "error",
"code": "cancelled",
"controller_id": "1a2270",
"event": "error",
"request_id": "scan-8210c84136aef633",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-36aef6338210c841",
"tm": "1786393402"
},
"created_at": "1786393377",
"updated_at": "1786393402"
},
{
"session_id": "mb-2596a74baa83ac57",
"request_id": "scan-aa83ac572596a74b",
"base": "1a2270",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1786393072",
"updated_at": "1786393075"
},
{
"session_id": "mb-790f1058c683f435",
"request_id": "scan-c683f435790f1058",
"base": "1a2270",
"slave_id": 11,
"state": "failed",
"reads_used": 8,
"steps_used": 1,
"result": {
"action": "error",
"code": "cancelled",
"controller_id": "1a2270",
"event": "error",
"request_id": "scan-c683f435790f1058",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-790f1058c683f435",
"tm": "1786392861"
},
"created_at": "1786392843",
"updated_at": "1786392861"
},
{
"session_id": "mb-4ba44ec45c93bb86",
"request_id": "scan-5c93bb864ba44ec4",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1786392242",
"updated_at": "2026-08-10T20:05:02.565801Z"
},
{
"session_id": "mb-fd69d2a474952d19",
"request_id": "scan-74952d19fd69d2a4",
"base": "1a2270",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "manual_web_start",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "manual_web_start",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-74952d19fd69d2a4",
"session_id": "mb-fd69d2a474952d19",
"action": "accepted",
"tm": "2026-08-10T20:03:27.874052Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "1a2270"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "1a2270",
"event": "test_result",
"request_id": "scan-74952d19fd69d2a4",
"results": [
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "000b",
"registers": [
11
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
0,
0,
0,
0,
0,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "01",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "00c8",
"registers": [
200
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 1,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-fd69d2a474952d19",
"tm": "1786392194"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-74952d19fd69d2a4",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-fd69d2a474952d19",
"tm": "1786392194"
}
}
],
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"description": {
"manufacturer": "Waveshare",
"model": "Modbus RTU IO 8CH",
"documentation_url": "https://www.waveshare.com/wiki/Modbus_RTU_IO_8CH",
"device_type": "industrial_isolated_io",
"inputs": 8,
"outputs": 8
},
"line_parameters": {
"mode": "rtu"
},
"sensor_templates": [
{
"id": "di1",
"name": "DI1",
"mode": "read",
"function": 2,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "di2",
"name": "DI2",
"mode": "read",
"function": 2,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "di3",
"name": "DI3",
"mode": "read",
"function": 2,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "di4",
"name": "DI4",
"mode": "read",
"function": 2,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "di5",
"name": "DI5",
"mode": "read",
"function": 2,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "di6",
"name": "DI6",
"mode": "read",
"function": 2,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "di7",
"name": "DI7",
"mode": "read",
"function": 2,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "di8",
"name": "DI8",
"mode": "read",
"function": 2,
"address": 7,
"quantity": 1,
"map": "direct"
},
{
"id": "do1_state",
"name": "DO1",
"mode": "read",
"function": 1,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "do2_state",
"name": "DO2",
"mode": "read",
"function": 1,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "do3_state",
"name": "DO3",
"mode": "read",
"function": 1,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "do4_state",
"name": "DO4",
"mode": "read",
"function": 1,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "do5_state",
"name": "DO5",
"mode": "read",
"function": 1,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "do6_state",
"name": "DO6",
"mode": "read",
"function": 1,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "do7_state",
"name": "DO7",
"mode": "read",
"function": 1,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "do8_state",
"name": "DO8",
"mode": "read",
"function": 1,
"address": 7,
"quantity": 1,
"map": "direct"
}
],
"polling_intervals": {
"default_seconds": 5
}
}
},
"created_at": "1786392175",
"updated_at": "1786392197"
},
{
"session_id": "mb-756f0aa1b54f318c",
"request_id": "scan-b54f318c756f0aa1",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1786391984",
"updated_at": "2026-08-10T20:00:44.195128Z"
},
{
"session_id": "mb-f7849c4d5b349956",
"request_id": "scan-5b349956f7849c4d",
"base": "1a2270",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "device_identification=exception_1;server_id=exception_1",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "device_identification=exception_1;server_id=exception_1",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-5b349956f7849c4d",
"session_id": "mb-f7849c4d5b349956",
"action": "accepted",
"tm": "2026-08-10T19:08:23.611078Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "1a2270"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "1a2270",
"event": "test_result",
"request_id": "scan-5b349956f7849c4d",
"results": [
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "000b",
"registers": [
11
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
0,
0,
0,
0,
0,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "01",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "00c8",
"registers": [
200
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 1,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-f7849c4d5b349956",
"tm": "1786388890"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-5b349956f7849c4d",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-f7849c4d5b349956",
"tm": "1786388890"
}
}
],
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"description": {
"manufacturer": "Waveshare",
"model": "Modbus RTU IO 8CH",
"documentation_url": "https://www.waveshare.com/wiki/Modbus_RTU_IO_8CH",
"device_type": "industrial_isolated_io",
"inputs": 8,
"outputs": 8
},
"line_parameters": {
"mode": "rtu"
},
"sensor_templates": [
{
"id": "di1",
"name": "DI1",
"mode": "read",
"function": 2,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "di2",
"name": "DI2",
"mode": "read",
"function": 2,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "di3",
"name": "DI3",
"mode": "read",
"function": 2,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "di4",
"name": "DI4",
"mode": "read",
"function": 2,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "di5",
"name": "DI5",
"mode": "read",
"function": 2,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "di6",
"name": "DI6",
"mode": "read",
"function": 2,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "di7",
"name": "DI7",
"mode": "read",
"function": 2,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "di8",
"name": "DI8",
"mode": "read",
"function": 2,
"address": 7,
"quantity": 1,
"map": "direct"
},
{
"id": "do1_state",
"name": "DO1",
"mode": "read",
"function": 1,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "do2_state",
"name": "DO2",
"mode": "read",
"function": 1,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "do3_state",
"name": "DO3",
"mode": "read",
"function": 1,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "do4_state",
"name": "DO4",
"mode": "read",
"function": 1,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "do5_state",
"name": "DO5",
"mode": "read",
"function": 1,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "do6_state",
"name": "DO6",
"mode": "read",
"function": 1,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "do7_state",
"name": "DO7",
"mode": "read",
"function": 1,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "do8_state",
"name": "DO8",
"mode": "read",
"function": 1,
"address": 7,
"quantity": 1,
"map": "direct"
}
],
"polling_intervals": {
"default_seconds": 5
}
}
},
"created_at": "1786388879",
"updated_at": "1786388891"
},
{
"session_id": "mb-eeeff89b1a3bba62",
"request_id": "scan-1a3bba62eeeff89b",
"base": "1a2270",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"attempts": [
{
"error": "device_identification=exception_1;server_id=exception_1",
"function": 43,
"mei_type": 14,
"test_id": "device-identification-basic"
},
{
"error": "device_identification=exception_1;server_id=exception_1",
"function": 17,
"test_id": "report-server-id"
}
],
"identity": {}
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-1a3bba62eeeff89b",
"session_id": "mb-eeeff89b1a3bba62",
"action": "accepted",
"tm": "2026-08-10T18:50:19.423975Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "1a2270"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "1a2270",
"event": "test_result",
"request_id": "scan-1a3bba62eeeff89b",
"results": [
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "000b",
"registers": [
11
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
0,
0,
0,
0,
0,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "01",
"success": true,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"byte_count": 2,
"function": 3,
"quantity": 1,
"raw_hex": "00c8",
"registers": [
200
],
"success": true,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"byte_count": 16,
"function": 3,
"quantity": 8,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
],
"success": true,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"exception_code": 1,
"function": 4,
"quantity": 20,
"success": false,
"test_id": "wirenboard-model"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-eeeff89b1a3bba62",
"tm": "1786387806"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-1a3bba62eeeff89b",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-eeeff89b1a3bba62",
"tm": "1786387806"
}
}
],
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"proposed_config": {
"profile_id": "waveshare_modbus_rtu_io_8ch",
"profile_version": "1.0.0",
"description": {
"manufacturer": "Waveshare",
"model": "Modbus RTU IO 8CH",
"documentation_url": "https://www.waveshare.com/wiki/Modbus_RTU_IO_8CH",
"device_type": "industrial_isolated_io",
"inputs": 8,
"outputs": 8
},
"line_parameters": {
"mode": "rtu"
},
"sensor_templates": [
{
"id": "di1",
"name": "DI1",
"mode": "read",
"function": 2,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "di2",
"name": "DI2",
"mode": "read",
"function": 2,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "di3",
"name": "DI3",
"mode": "read",
"function": 2,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "di4",
"name": "DI4",
"mode": "read",
"function": 2,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "di5",
"name": "DI5",
"mode": "read",
"function": 2,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "di6",
"name": "DI6",
"mode": "read",
"function": 2,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "di7",
"name": "DI7",
"mode": "read",
"function": 2,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "di8",
"name": "DI8",
"mode": "read",
"function": 2,
"address": 7,
"quantity": 1,
"map": "direct"
},
{
"id": "do1_state",
"name": "DO1",
"mode": "read",
"function": 1,
"address": 0,
"quantity": 1,
"map": "direct"
},
{
"id": "do2_state",
"name": "DO2",
"mode": "read",
"function": 1,
"address": 1,
"quantity": 1,
"map": "direct"
},
{
"id": "do3_state",
"name": "DO3",
"mode": "read",
"function": 1,
"address": 2,
"quantity": 1,
"map": "direct"
},
{
"id": "do4_state",
"name": "DO4",
"mode": "read",
"function": 1,
"address": 3,
"quantity": 1,
"map": "direct"
},
{
"id": "do5_state",
"name": "DO5",
"mode": "read",
"function": 1,
"address": 4,
"quantity": 1,
"map": "direct"
},
{
"id": "do6_state",
"name": "DO6",
"mode": "read",
"function": 1,
"address": 5,
"quantity": 1,
"map": "direct"
},
{
"id": "do7_state",
"name": "DO7",
"mode": "read",
"function": 1,
"address": 6,
"quantity": 1,
"map": "direct"
},
{
"id": "do8_state",
"name": "DO8",
"mode": "read",
"function": 1,
"address": 7,
"quantity": 1,
"map": "direct"
}
],
"polling_intervals": {
"default_seconds": 5
}
}
},
"created_at": "1786387785",
"updated_at": "1786387810"
},
{
"session_id": "mb-99b37028313c5ccc",
"request_id": "scan-313c5ccc99b37028",
"base": "1a2270",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1786387756",
"updated_at": "1786387785"
},
{
"session_id": "mb-b2a09bf9de9163d0",
"request_id": "scan-de9163d0b2a09bf9",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1786387581",
"updated_at": "2026-08-10T18:47:09.360881Z"
},
{
"session_id": "mb-1628d11f3f2bf032",
"request_id": "scan-3f2bf0321628d11f",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1786387544",
"updated_at": "2026-08-10T18:46:46.995929Z"
},
{
"session_id": "mb-cc69a8359c3ae061",
"request_id": "scan-9c3ae061cc69a835",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1786387435",
"updated_at": "2026-08-10T18:44:21.715759Z"
},
{
"session_id": "mb-0594b5ae542df939",
"request_id": "scan-542df9390594b5ae",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1786387188",
"updated_at": "2026-08-10T18:40:40.077111Z"
},
{
"session_id": "mb-83b0ba73343bae9f",
"request_id": "scan-343bae9f83b0ba73",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1786386814",
"updated_at": "2026-08-10T18:34:09.704057Z"
}
]