Сводка · Управление · Обновления · Удалённая консоль · Профили · Неизвестные · Сеансы
[
{
"session_id": "mb-d91eb760f4725bda",
"request_id": "scan-f4725bdad91eb760",
"base": "1c8a54",
"slave_id": 111,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "medium",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"identity": {},
"attempts": [
{
"test_id": "device-identification-basic",
"function": 43,
"mei_type": 14,
"error": "scan_standard_identification_unavailable"
},
{
"test_id": "report-server-id",
"function": 17,
"error": "scan_standard_identification_unavailable"
}
]
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-f4725bdad91eb760",
"session_id": "mb-d91eb760f4725bda",
"action": "accepted",
"tm": "2026-10-12T08:30:48.821190Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "1c8a54"
}
},
{
"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": {
"schema": "misx5.device_discovery.v1",
"controller_id": "1c8a54",
"request_id": "scan-f4725bdad91eb760",
"session_id": "mb-d91eb760f4725bda",
"action": "test_result",
"event": "test_result",
"results": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2,
"success": true,
"byte_count": 4,
"raw_hex": "00e801c2",
"registers": [
232,
450
]
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1,
"success": true,
"byte_count": 2,
"raw_hex": "0000",
"registers": [
0
]
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8,
"success": true,
"byte_count": 1,
"raw_hex": "ff",
"bits": [
true,
true,
true,
true,
true,
true,
true,
true
]
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1,
"success": true,
"byte_count": 2,
"raw_hex": "0000",
"registers": [
0
]
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8,
"success": true,
"byte_count": 16,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20,
"success": true,
"byte_count": 40,
"raw_hex": "00000000000000000000000000000000000000000000000000000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
}
],
"tm": "1791793849"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "1c8a54",
"request_id": "scan-f4725bdad91eb760",
"session_id": "mb-d91eb760f4725bda",
"action": "step_complete",
"event": "step_complete",
"tm": "1791793849"
}
}
],
"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": "1791793848",
"updated_at": "1791793849"
},
{
"session_id": "mb-9d05096e2056fc53",
"request_id": "scan-2056fc539d05096e",
"base": "1c8a54",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"identity": {},
"attempts": [
{
"test_id": "device-identification-basic",
"function": 43,
"mei_type": 14,
"error": "scan_standard_identification_unavailable"
},
{
"test_id": "report-server-id",
"function": 17,
"error": "scan_standard_identification_unavailable"
}
]
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-2056fc539d05096e",
"session_id": "mb-9d05096e2056fc53",
"action": "accepted",
"tm": "2026-10-12T08:30:25.435820Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "1c8a54"
}
},
{
"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": {
"schema": "misx5.device_discovery.v1",
"controller_id": "1c8a54",
"request_id": "scan-2056fc539d05096e",
"session_id": "mb-9d05096e2056fc53",
"action": "test_result",
"event": "test_result",
"results": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2,
"success": false,
"exception_code": 1
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1,
"success": true,
"byte_count": 2,
"raw_hex": "000b",
"registers": [
11
]
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8,
"success": true,
"byte_count": 1,
"raw_hex": "00",
"bits": [
false,
false,
false,
false,
false,
false,
false,
false
]
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1,
"success": true,
"byte_count": 2,
"raw_hex": "00c8",
"registers": [
200
]
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8,
"success": true,
"byte_count": 16,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20,
"success": false,
"exception_code": 1
}
],
"tm": "1791793826"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "1c8a54",
"request_id": "scan-2056fc539d05096e",
"session_id": "mb-9d05096e2056fc53",
"action": "step_complete",
"event": "step_complete",
"tm": "1791793826"
}
}
],
"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": "1791793825",
"updated_at": "1791793826"
},
{
"session_id": "mb-480f98775a431289",
"request_id": "scan-5a431289480f9877",
"base": "cf0a2c",
"slave_id": 1,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "medium",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"identity": {},
"attempts": [
{
"test_id": "device-identification-basic",
"function": 43,
"mei_type": 14,
"error": "scan_standard_identification_unavailable"
},
{
"test_id": "report-server-id",
"function": 17,
"error": "scan_standard_identification_unavailable"
}
]
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-5a431289480f9877",
"session_id": "mb-480f98775a431289",
"action": "accepted",
"tm": "2026-10-08T10:39:45.793494Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "cf0a2c"
}
},
{
"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": {
"schema": "misx5.device_discovery.v1",
"controller_id": "cf0a2c",
"request_id": "scan-5a431289480f9877",
"session_id": "mb-480f98775a431289",
"action": "test_result",
"event": "test_result",
"results": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2,
"success": true,
"byte_count": 4,
"raw_hex": "00e4017c",
"registers": [
228,
380
]
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1,
"success": true,
"byte_count": 2,
"raw_hex": "0000",
"registers": [
0
]
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8,
"success": true,
"byte_count": 1,
"raw_hex": "ff",
"bits": [
true,
true,
true,
true,
true,
true,
true,
true
]
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1,
"success": true,
"byte_count": 2,
"raw_hex": "0000",
"registers": [
0
]
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8,
"success": true,
"byte_count": 16,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20,
"success": true,
"byte_count": 40,
"raw_hex": "00000000000000000000000000000000000000000000000000000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
}
],
"tm": "1791455985"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "cf0a2c",
"request_id": "scan-5a431289480f9877",
"session_id": "mb-480f98775a431289",
"action": "step_complete",
"event": "step_complete",
"tm": "1791455985"
}
}
],
"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": "1791455985",
"updated_at": "1791455985"
},
{
"session_id": "mb-f9ebdacc7dddfb17",
"request_id": "scan-7dddfb17f9ebdacc",
"base": "cf0968",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "946684939",
"updated_at": "2026-10-06T10:57:54.285785Z"
},
{
"session_id": "mb-4f1c53d53fcb305c",
"request_id": "scan-3fcb305c4f1c53d5",
"base": "426db4",
"slave_id": 12,
"state": "failed",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-3fcb305c4f1c53d5",
"session_id": "mb-4f1c53d53fcb305c",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1790686323"
},
"created_at": "1790686318",
"updated_at": "1790686323"
},
{
"session_id": "mb-11ed523bd8a0936a",
"request_id": "scan-d8a0936a11ed523b",
"base": "426db4",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"identity": {},
"attempts": [
{
"test_id": "device-identification-basic",
"function": 43,
"mei_type": 14,
"error": "scan_standard_identification_unavailable"
},
{
"test_id": "report-server-id",
"function": 17,
"error": "scan_standard_identification_unavailable"
}
]
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-d8a0936a11ed523b",
"session_id": "mb-11ed523bd8a0936a",
"action": "accepted",
"tm": "2026-09-02T11:13:13.567682Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-d8a0936a11ed523b",
"session_id": "mb-11ed523bd8a0936a",
"action": "test_result",
"event": "test_result",
"results": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2,
"success": false,
"exception_code": 1
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1,
"success": true,
"byte_count": 2,
"raw_hex": "000b",
"registers": [
11
]
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8,
"success": true,
"byte_count": 1,
"raw_hex": "3f",
"bits": [
true,
true,
true,
true,
true,
true,
false,
false
]
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1,
"success": true,
"byte_count": 2,
"raw_hex": "00c8",
"registers": [
200
]
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8,
"success": true,
"byte_count": 16,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20,
"success": false,
"exception_code": 1
}
],
"tm": "1788347595"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-d8a0936a11ed523b",
"session_id": "mb-11ed523bd8a0936a",
"action": "step_complete",
"event": "step_complete",
"tm": "1788347595"
}
}
],
"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": "1788347593",
"updated_at": "1788347596"
},
{
"session_id": "mb-f74a4b8cbbb8564f",
"request_id": "scan-bbb8564ff74a4b8c",
"base": "426db4",
"slave_id": 2,
"state": "failed",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-bbb8564ff74a4b8c",
"session_id": "mb-f74a4b8cbbb8564f",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1788347593"
},
"created_at": "1788347577",
"updated_at": "1788347593"
},
{
"session_id": "mb-b23994bf0576d3ad",
"request_id": "scan-0576d3adb23994bf",
"base": "426db4",
"slave_id": 12,
"state": "finished",
"reads_used": 14,
"steps_used": 2,
"result": {
"outcome": "unknown",
"reason": "ни один профиль не совместим с ответами",
"confidence": "none",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"identity": {},
"attempts": [
{
"test_id": "device-identification-basic",
"function": 43,
"mei_type": 14,
"error": "scan_standard_identification_unavailable"
},
{
"test_id": "report-server-id",
"function": 17,
"error": "scan_standard_identification_unavailable"
}
]
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-0576d3adb23994bf",
"session_id": "mb-b23994bf0576d3ad",
"action": "accepted",
"tm": "2026-09-02T11:12:21.054518Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-0576d3adb23994bf",
"session_id": "mb-b23994bf0576d3ad",
"action": "test_result",
"event": "test_result",
"results": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2,
"success": false,
"exception_code": 1
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1,
"success": false,
"error": "timeout"
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8,
"success": false,
"error": "timeout"
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1,
"success": false,
"error": "timeout"
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8,
"success": false,
"error": "timeout"
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20,
"success": false,
"error": "timeout"
}
],
"tm": "1788347547"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-0576d3adb23994bf",
"session_id": "mb-b23994bf0576d3ad",
"action": "step_complete",
"event": "step_complete",
"tm": "1788347547"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "explore-holding-0",
"function": 3,
"address": 0,
"quantity": 4
},
{
"test_id": "explore-input-0",
"function": 4,
"address": 0,
"quantity": 4
},
{
"test_id": "explore-holding-10",
"function": 3,
"address": 10,
"quantity": 2
},
{
"test_id": "explore-input-10",
"function": 4,
"address": 10,
"quantity": 2
},
{
"test_id": "explore-holding-100",
"function": 3,
"address": 100,
"quantity": 2
},
{
"test_id": "explore-input-100",
"function": 4,
"address": 100,
"quantity": 2
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-0576d3adb23994bf",
"session_id": "mb-b23994bf0576d3ad",
"action": "test_result",
"event": "test_result",
"results": [
{
"test_id": "explore-holding-0",
"function": 3,
"address": 0,
"quantity": 4,
"success": false,
"error": "timeout"
},
{
"test_id": "explore-input-0",
"function": 4,
"address": 0,
"quantity": 4,
"success": false,
"error": "timeout"
},
{
"test_id": "explore-holding-10",
"function": 3,
"address": 10,
"quantity": 2,
"success": false,
"error": "timeout"
},
{
"test_id": "explore-input-10",
"function": 4,
"address": 10,
"quantity": 2,
"success": false,
"error": "timeout"
},
{
"test_id": "explore-holding-100",
"function": 3,
"address": 100,
"quantity": 2,
"success": false,
"error": "timeout"
},
{
"test_id": "explore-input-100",
"function": 4,
"address": 100,
"quantity": 2,
"success": false,
"error": "timeout"
}
],
"tm": "1788347556"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-0576d3adb23994bf",
"session_id": "mb-b23994bf0576d3ad",
"action": "step_complete",
"event": "step_complete",
"tm": "1788347556"
}
}
],
"unknown_group": {
"signature": "26a8825a10ecbc309ff572ade3cc033cbc5178129a160239adfc3ccd7f049783",
"sample_count": 1
},
"draft_profile": {
"profile_id": "draft-26a8825a10ec",
"version": "0.1.0",
"confidence": "medium",
"description": {
"name": "Неизвестное Modbus-устройство",
"signature": "26a8825a10ecbc309ff572ade3cc033cbc5178129a160239adfc3ccd7f049783"
},
"line_parameters": {
"baudrate": 9600,
"data_bits": 8,
"parity": "none",
"stop_bits": 1
},
"sensor_templates": [],
"polling_intervals": {
"default_seconds": 60
},
"recognition": {
"identity": {},
"fingerprints": [
{
"test": {
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
"expect": {
"test_id": "temperature-humidity-int16-div10",
"exception_code": 1
}
}
]
},
"observation_policy": "Признаки содержат только форму ответа; сырые значения сохранены отдельно и требуют проверки.",
"generated": true,
"review_required": true
}
},
"created_at": "1788347539",
"updated_at": "1788347577"
},
{
"session_id": "mb-ee41a40b31c2b3c0",
"request_id": "scan-31c2b3c0ee41a40b",
"base": "426db4",
"slave_id": 11,
"state": "finished",
"reads_used": 14,
"steps_used": 2,
"result": {
"outcome": "unknown",
"reason": "ни один профиль не совместим с ответами",
"confidence": "none",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"identity": {},
"attempts": [
{
"test_id": "device-identification-basic",
"function": 43,
"mei_type": 14,
"error": "scan_standard_identification_unavailable"
},
{
"test_id": "report-server-id",
"function": 17,
"error": "scan_standard_identification_unavailable"
}
]
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-31c2b3c0ee41a40b",
"session_id": "mb-ee41a40b31c2b3c0",
"action": "accepted",
"tm": "2026-09-02T11:12:05.411426Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-31c2b3c0ee41a40b",
"session_id": "mb-ee41a40b31c2b3c0",
"action": "test_result",
"event": "test_result",
"results": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2,
"success": false,
"exception_code": 1
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1,
"success": false,
"error": "timeout"
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8,
"success": false,
"error": "timeout"
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1,
"success": false,
"error": "timeout"
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8,
"success": false,
"error": "timeout"
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20,
"success": false,
"error": "timeout"
}
],
"tm": "1788347531"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-31c2b3c0ee41a40b",
"session_id": "mb-ee41a40b31c2b3c0",
"action": "step_complete",
"event": "step_complete",
"tm": "1788347531"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "explore-holding-0",
"function": 3,
"address": 0,
"quantity": 4
},
{
"test_id": "explore-input-0",
"function": 4,
"address": 0,
"quantity": 4
},
{
"test_id": "explore-holding-10",
"function": 3,
"address": 10,
"quantity": 2
},
{
"test_id": "explore-input-10",
"function": 4,
"address": 10,
"quantity": 2
},
{
"test_id": "explore-holding-100",
"function": 3,
"address": 100,
"quantity": 2
},
{
"test_id": "explore-input-100",
"function": 4,
"address": 100,
"quantity": 2
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-31c2b3c0ee41a40b",
"session_id": "mb-ee41a40b31c2b3c0",
"action": "test_result",
"event": "test_result",
"results": [
{
"test_id": "explore-holding-0",
"function": 3,
"address": 0,
"quantity": 4,
"success": false,
"exception_code": 2
},
{
"test_id": "explore-input-0",
"function": 4,
"address": 0,
"quantity": 4,
"success": false,
"error": "timeout"
},
{
"test_id": "explore-holding-10",
"function": 3,
"address": 10,
"quantity": 2,
"success": false,
"error": "timeout"
},
{
"test_id": "explore-input-10",
"function": 4,
"address": 10,
"quantity": 2,
"success": false,
"error": "timeout"
},
{
"test_id": "explore-holding-100",
"function": 3,
"address": 100,
"quantity": 2,
"success": false,
"error": "timeout"
},
{
"test_id": "explore-input-100",
"function": 4,
"address": 100,
"quantity": 2,
"success": false,
"error": "timeout"
}
],
"tm": "1788347539"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-31c2b3c0ee41a40b",
"session_id": "mb-ee41a40b31c2b3c0",
"action": "step_complete",
"event": "step_complete",
"tm": "1788347539"
}
}
],
"unknown_group": {
"signature": "ccf6ef46470ecf5fdcc01aabe06053a8a7bea242ac0414dd9a82d9f55784d867",
"sample_count": 1
},
"draft_profile": {
"profile_id": "draft-ccf6ef46470e",
"version": "0.1.0",
"confidence": "medium",
"description": {
"name": "Неизвестное Modbus-устройство",
"signature": "ccf6ef46470ecf5fdcc01aabe06053a8a7bea242ac0414dd9a82d9f55784d867"
},
"line_parameters": {
"baudrate": 9600,
"data_bits": 8,
"parity": "none",
"stop_bits": 1
},
"sensor_templates": [],
"polling_intervals": {
"default_seconds": 60
},
"recognition": {
"identity": {},
"fingerprints": [
{
"test": {
"test_id": "explore-holding-0",
"function": 3,
"address": 0,
"quantity": 4
},
"expect": {
"test_id": "explore-holding-0",
"exception_code": 2
}
},
{
"test": {
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
"expect": {
"test_id": "temperature-humidity-int16-div10",
"exception_code": 1
}
}
]
},
"observation_policy": "Признаки содержат только форму ответа; сырые значения сохранены отдельно и требуют проверки.",
"generated": true,
"review_required": true
}
},
"created_at": "1788347495",
"updated_at": "1788347539"
},
{
"session_id": "mb-7885fea120a6b612",
"request_id": "scan-20a6b6127885fea1",
"base": "426db4",
"slave_id": 2,
"state": "timed_out",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-20a6b6127885fea1",
"session_id": "mb-7885fea120a6b612",
"action": "timeout",
"event": "timeout",
"code": "local_timeout",
"tm": "1788347495"
},
"created_at": "1788347446",
"updated_at": "1788347495"
},
{
"session_id": "mb-920c10e91fd7ad75",
"request_id": "scan-1fd7ad75920c10e9",
"base": "426db4",
"slave_id": 12,
"state": "failed",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-1fd7ad75920c10e9",
"session_id": "mb-920c10e91fd7ad75",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1788346123"
},
"created_at": "1788346095",
"updated_at": "1788346123"
},
{
"session_id": "mb-b580f147ed4a1830",
"request_id": "scan-ed4a1830b580f147",
"base": "426db4",
"slave_id": 11,
"state": "finished",
"reads_used": 8,
"steps_used": 1,
"result": {
"outcome": "known",
"reason": "выполнены все условия единственного профиля",
"confidence": "high",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"identity": {},
"attempts": [
{
"test_id": "device-identification-basic",
"function": 43,
"mei_type": 14,
"error": "scan_standard_identification_unavailable"
},
{
"test_id": "report-server-id",
"function": 17,
"error": "scan_standard_identification_unavailable"
}
]
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-ed4a1830b580f147",
"session_id": "mb-b580f147ed4a1830",
"action": "accepted",
"tm": "2026-09-02T10:48:11.625996Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-ed4a1830b580f147",
"session_id": "mb-b580f147ed4a1830",
"action": "test_result",
"event": "test_result",
"results": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2,
"success": false,
"exception_code": 1
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1,
"success": true,
"byte_count": 2,
"raw_hex": "000b",
"registers": [
11
]
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8,
"success": true,
"byte_count": 1,
"raw_hex": "3f",
"bits": [
true,
true,
true,
true,
true,
true,
false,
false
]
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1,
"success": true,
"byte_count": 2,
"raw_hex": "00c8",
"registers": [
200
]
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8,
"success": true,
"byte_count": 16,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20,
"success": false,
"exception_code": 1
}
],
"tm": "1788346095"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-ed4a1830b580f147",
"session_id": "mb-b580f147ed4a1830",
"action": "step_complete",
"event": "step_complete",
"tm": "1788346095"
}
}
],
"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": "1788346090",
"updated_at": "1788346095"
},
{
"session_id": "mb-9f493a410b2f6ebf",
"request_id": "scan-0b2f6ebf9f493a41",
"base": "426db4",
"slave_id": 2,
"state": "failed",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "426db4",
"request_id": "scan-0b2f6ebf9f493a41",
"session_id": "mb-9f493a410b2f6ebf",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1788346090"
},
"created_at": "1788346073",
"updated_at": "1788346090"
},
{
"session_id": "mb-cfb872e38de54af5",
"request_id": "scan-8de54af5cfb872e3",
"base": "88a4d4",
"slave_id": 1,
"state": "failed",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "88a4d4",
"request_id": "scan-8de54af5cfb872e3",
"session_id": "mb-cfb872e38de54af5",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1788342280"
},
"created_at": "1788342262",
"updated_at": "1788342280"
},
{
"session_id": "mb-749e8fc8a29323a2",
"request_id": "scan-a29323a2749e8fc8",
"base": "88a4d4",
"slave_id": 1,
"state": "finished",
"reads_used": 14,
"steps_used": 2,
"result": {
"outcome": "unknown",
"reason": "ни один профиль не совместим с ответами",
"confidence": "none",
"execution_trace": [
{
"kind": "initial_probe",
"payload": {
"identity": {},
"attempts": [
{
"test_id": "device-identification-basic",
"function": 43,
"mei_type": 14,
"error": "scan_standard_identification_unavailable"
},
{
"test_id": "report-server-id",
"function": 17,
"error": "scan_standard_identification_unavailable"
}
]
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-a29323a2749e8fc8",
"session_id": "mb-749e8fc8a29323a2",
"action": "accepted",
"tm": "2026-09-02T09:43:31.552589Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "88a4d4"
}
},
{
"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": {
"schema": "misx5.device_discovery.v1",
"controller_id": "88a4d4",
"request_id": "scan-a29323a2749e8fc8",
"session_id": "mb-749e8fc8a29323a2",
"action": "test_result",
"event": "test_result",
"results": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2,
"success": false,
"error": "timeout"
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1,
"success": false,
"exception_code": 2
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8,
"success": false,
"error": "timeout"
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1,
"success": false,
"exception_code": 2
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8,
"success": false,
"exception_code": 3
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20,
"success": false,
"exception_code": 2
}
],
"tm": "1788342217"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "88a4d4",
"request_id": "scan-a29323a2749e8fc8",
"session_id": "mb-749e8fc8a29323a2",
"action": "step_complete",
"event": "step_complete",
"tm": "1788342217"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "explore-holding-0",
"function": 3,
"address": 0,
"quantity": 4
},
{
"test_id": "explore-input-0",
"function": 4,
"address": 0,
"quantity": 4
},
{
"test_id": "explore-holding-10",
"function": 3,
"address": 10,
"quantity": 2
},
{
"test_id": "explore-input-10",
"function": 4,
"address": 10,
"quantity": 2
},
{
"test_id": "explore-holding-100",
"function": 3,
"address": 100,
"quantity": 2
},
{
"test_id": "explore-input-100",
"function": 4,
"address": 100,
"quantity": 2
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "88a4d4",
"request_id": "scan-a29323a2749e8fc8",
"session_id": "mb-749e8fc8a29323a2",
"action": "test_result",
"event": "test_result",
"results": [
{
"test_id": "explore-holding-0",
"function": 3,
"address": 0,
"quantity": 4,
"success": false,
"exception_code": 2
},
{
"test_id": "explore-input-0",
"function": 4,
"address": 0,
"quantity": 4,
"success": false,
"error": "timeout"
},
{
"test_id": "explore-holding-10",
"function": 3,
"address": 10,
"quantity": 2,
"success": false,
"error": "timeout"
},
{
"test_id": "explore-input-10",
"function": 4,
"address": 10,
"quantity": 2,
"success": false,
"error": "timeout"
},
{
"test_id": "explore-holding-100",
"function": 3,
"address": 100,
"quantity": 2,
"success": false,
"error": "timeout"
},
{
"test_id": "explore-input-100",
"function": 4,
"address": 100,
"quantity": 2,
"success": false,
"error": "timeout"
}
],
"tm": "1788342225"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "88a4d4",
"request_id": "scan-a29323a2749e8fc8",
"session_id": "mb-749e8fc8a29323a2",
"action": "step_complete",
"event": "step_complete",
"tm": "1788342225"
}
}
],
"unknown_group": {
"signature": "55046357897827b9b45d51631712d51eec4a9fc9a978a44ee07eecb17248428a",
"sample_count": 1
},
"draft_profile": {
"profile_id": "draft-550463578978",
"version": "0.1.0",
"confidence": "medium",
"description": {
"name": "Неизвестное Modbus-устройство",
"signature": "55046357897827b9b45d51631712d51eec4a9fc9a978a44ee07eecb17248428a"
},
"line_parameters": {
"baudrate": 9600,
"data_bits": 8,
"parity": "none",
"stop_bits": 1
},
"sensor_templates": [],
"polling_intervals": {
"default_seconds": 60
},
"recognition": {
"identity": {},
"fingerprints": [
{
"test": {
"test_id": "explore-holding-0",
"function": 3,
"address": 0,
"quantity": 4
},
"expect": {
"test_id": "explore-holding-0",
"exception_code": 2
}
},
{
"test": {
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
"expect": {
"test_id": "waveshare-device-address",
"exception_code": 2
}
},
{
"test": {
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
"expect": {
"test_id": "waveshare-firmware-version",
"exception_code": 2
}
},
{
"test": {
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
"expect": {
"test_id": "waveshare-output-modes",
"exception_code": 3
}
},
{
"test": {
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
},
"expect": {
"test_id": "wirenboard-model",
"exception_code": 2
}
}
]
},
"observation_policy": "Признаки содержат только форму ответа; сырые значения сохранены отдельно и требуют проверки.",
"generated": true,
"review_required": true
}
},
"created_at": "1788342211",
"updated_at": "1788342225"
},
{
"session_id": "mb-d85457066b69de34",
"request_id": "scan-6b69de34d8545706",
"base": "88a4d4",
"slave_id": 1,
"state": "failed",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "88a4d4",
"request_id": "scan-6b69de34d8545706",
"session_id": "mb-d85457066b69de34",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1788342088"
},
"created_at": "1788342055",
"updated_at": "1788342088"
},
{
"session_id": "mb-7fc13e1fb50fdb9f",
"request_id": "scan-b50fdb9f7fc13e1f",
"base": "88a4d4",
"slave_id": 1,
"state": "failed",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "88a4d4",
"request_id": "scan-b50fdb9f7fc13e1f",
"session_id": "mb-7fc13e1fb50fdb9f",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1788341728"
},
"created_at": "1788341703",
"updated_at": "1788341728"
},
{
"session_id": "mb-bbc2b37938b9e703",
"request_id": "scan-38b9e703bbc2b379",
"base": "88a4d4",
"slave_id": 1,
"state": "failed",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "88a4d4",
"request_id": "scan-38b9e703bbc2b379",
"session_id": "mb-bbc2b37938b9e703",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1788341487"
},
"created_at": "1788341458",
"updated_at": "1788341487"
},
{
"session_id": "mb-c1e9345985eae3b5",
"request_id": "scan-85eae3b5c1e93459",
"base": "88a4d4",
"slave_id": 1,
"state": "timed_out",
"reads_used": 14,
"steps_used": 2,
"result": {
"reason": "service_timeout"
},
"created_at": "1788341271",
"updated_at": "2026-09-02T09:28:42.509077Z"
},
{
"session_id": "mb-81bd424b631698ff",
"request_id": "scan-631698ff81bd424b",
"base": "88a4d4",
"slave_id": 1,
"state": "failed",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "88a4d4",
"request_id": "scan-631698ff81bd424b",
"session_id": "mb-81bd424b631698ff",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1788341135"
},
"created_at": "1788341120",
"updated_at": "1788341135"
},
{
"session_id": "mb-b34e48ba186fd6e6",
"request_id": "scan-186fd6e6b34e48ba",
"base": "88a4d4",
"slave_id": 1,
"state": "failed",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "88a4d4",
"request_id": "scan-186fd6e6b34e48ba",
"session_id": "mb-b34e48ba186fd6e6",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1788340848"
},
"created_at": "1788340834",
"updated_at": "1788340848"
},
{
"session_id": "mb-a8b534568b09eabc",
"request_id": "scan-8b09eabca8b53456",
"base": "88a4d4",
"slave_id": 1,
"state": "failed",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "88a4d4",
"request_id": "scan-8b09eabca8b53456",
"session_id": "mb-a8b534568b09eabc",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1788340692"
},
"created_at": "1788340672",
"updated_at": "1788340692"
},
{
"session_id": "mb-b5dafa3ce1390a5e",
"request_id": "scan-e1390a5eb5dafa3c",
"base": "88a4d4",
"slave_id": 1,
"state": "failed",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "88a4d4",
"request_id": "scan-e1390a5eb5dafa3c",
"session_id": "mb-b5dafa3ce1390a5e",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1788340595"
},
"created_at": "1788340581",
"updated_at": "1788340595"
},
{
"session_id": "mb-0eb272311af48ca8",
"request_id": "scan-1af48ca80eb27231",
"base": "88a4d4",
"slave_id": 1,
"state": "failed",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "88a4d4",
"request_id": "scan-1af48ca80eb27231",
"session_id": "mb-0eb272311af48ca8",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1788340462"
},
"created_at": "1788340444",
"updated_at": "1788340462"
},
{
"session_id": "mb-47cccd1ba239b67e",
"request_id": "scan-a239b67e47cccd1b",
"base": "88a4d4",
"slave_id": 1,
"state": "failed",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "88a4d4",
"request_id": "scan-a239b67e47cccd1b",
"session_id": "mb-47cccd1ba239b67e",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1788340369"
},
"created_at": "1788340355",
"updated_at": "1788340369"
},
{
"session_id": "mb-ae861468ea85574a",
"request_id": "scan-ea85574aae861468",
"base": "88a4d4",
"slave_id": 1,
"state": "failed",
"reads_used": 14,
"steps_used": 2,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "88a4d4",
"request_id": "scan-ea85574aae861468",
"session_id": "mb-ae861468ea85574a",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1788340326"
},
"created_at": "1788340301",
"updated_at": "1788340326"
},
{
"session_id": "mb-2ec8f4fe03be8c1c",
"request_id": "scan-03be8c1c2ec8f4fe",
"base": "426db4",
"slave_id": 118,
"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-03be8c1c2ec8f4fe",
"session_id": "mb-2ec8f4fe03be8c1c",
"action": "accepted",
"tm": "2026-08-25T11:42:27.272258Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-03be8c1c2ec8f4fe",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "00740321",
"registers": [
116,
801
],
"success": true,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"exception_code": 2,
"function": 3,
"quantity": 1,
"success": false,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"exception_code": 2,
"function": 2,
"quantity": 8,
"success": false,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"exception_code": 2,
"function": 3,
"quantity": 1,
"success": false,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"exception_code": 2,
"function": 3,
"quantity": 8,
"success": false,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"byte_count": 40,
"function": 4,
"quantity": 20,
"raw_hex": "00570042004d00530076003200000000000000000000000000000000000000000000000000000000",
"registers": [
87,
66,
77,
83,
118,
50,
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-2ec8f4fe03be8c1c",
"tm": "1787658147"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-03be8c1c2ec8f4fe",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-2ec8f4fe03be8c1c",
"tm": "1787658147"
}
}
],
"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": "1787658142",
"updated_at": "1787658147"
},
{
"session_id": "mb-989bcf1ac06bfc42",
"request_id": "scan-c06bfc42989bcf1a",
"base": "426db4",
"slave_id": 117,
"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-c06bfc42989bcf1a",
"session_id": "mb-989bcf1ac06bfc42",
"action": "accepted",
"tm": "2026-08-25T11:42:21.611747Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-c06bfc42989bcf1a",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "ff5102ca",
"registers": [
65361,
714
],
"success": true,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"exception_code": 2,
"function": 3,
"quantity": 1,
"success": false,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"exception_code": 2,
"function": 2,
"quantity": 8,
"success": false,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"exception_code": 2,
"function": 3,
"quantity": 1,
"success": false,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"exception_code": 2,
"function": 3,
"quantity": 8,
"success": false,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"byte_count": 40,
"function": 4,
"quantity": 20,
"raw_hex": "00570042004d00530076003200000000000000000000000000000000000000000000000000000000",
"registers": [
87,
66,
77,
83,
118,
50,
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-989bcf1ac06bfc42",
"tm": "1787658141"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-c06bfc42989bcf1a",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-989bcf1ac06bfc42",
"tm": "1787658141"
}
}
],
"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": "1787658135",
"updated_at": "1787658142"
},
{
"session_id": "mb-9c2b8fe6101a4b90",
"request_id": "scan-101a4b909c2b8fe6",
"base": "426db4",
"slave_id": 116,
"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-101a4b909c2b8fe6",
"session_id": "mb-9c2b8fe6101a4b90",
"action": "accepted",
"tm": "2026-08-25T11:42:15.271888Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-101a4b909c2b8fe6",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "00260375",
"registers": [
38,
885
],
"success": true,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"exception_code": 2,
"function": 3,
"quantity": 1,
"success": false,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"exception_code": 2,
"function": 2,
"quantity": 8,
"success": false,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"exception_code": 2,
"function": 3,
"quantity": 1,
"success": false,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"exception_code": 2,
"function": 3,
"quantity": 8,
"success": false,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"byte_count": 40,
"function": 4,
"quantity": 20,
"raw_hex": "00570042004d00530076003200000000000000000000000000000000000000000000000000000000",
"registers": [
87,
66,
77,
83,
118,
50,
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-9c2b8fe6101a4b90",
"tm": "1787658134"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-101a4b909c2b8fe6",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-9c2b8fe6101a4b90",
"tm": "1787658134"
}
}
],
"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": "1787658129",
"updated_at": "1787658135"
},
{
"session_id": "mb-3e4c9f63e08b15e7",
"request_id": "scan-e08b15e73e4c9f63",
"base": "426db4",
"slave_id": 115,
"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-e08b15e73e4c9f63",
"session_id": "mb-3e4c9f63e08b15e7",
"action": "accepted",
"tm": "2026-08-25T11:42:08.848899Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-e08b15e73e4c9f63",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "ff4d024e",
"registers": [
65357,
590
],
"success": true,
"test_id": "temperature-humidity-int16-div10"
},
{
"address": 16384,
"exception_code": 2,
"function": 3,
"quantity": 1,
"success": false,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"exception_code": 2,
"function": 2,
"quantity": 8,
"success": false,
"test_id": "waveshare-di-8"
},
{
"address": 32768,
"exception_code": 2,
"function": 3,
"quantity": 1,
"success": false,
"test_id": "waveshare-firmware-version"
},
{
"address": 4096,
"exception_code": 2,
"function": 3,
"quantity": 8,
"success": false,
"test_id": "waveshare-output-modes"
},
{
"address": 200,
"byte_count": 40,
"function": 4,
"quantity": 20,
"raw_hex": "00570042004d00530076003200000000000000000000000000000000000000000000000000000000",
"registers": [
87,
66,
77,
83,
118,
50,
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-3e4c9f63e08b15e7",
"tm": "1787658128"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-e08b15e73e4c9f63",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-3e4c9f63e08b15e7",
"tm": "1787658128"
}
}
],
"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": "1787658123",
"updated_at": "1787658129"
},
{
"session_id": "mb-a01576f0cbfad4d3",
"request_id": "scan-cbfad4d3a01576f0",
"base": "426db4",
"slave_id": 114,
"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-cbfad4d3a01576f0",
"session_id": "mb-a01576f0cbfad4d3",
"action": "accepted",
"tm": "2026-08-25T11:42:05.480975Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-cbfad4d3a01576f0",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "00af0240",
"registers": [
175,
576
],
"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-a01576f0cbfad4d3",
"tm": "1787658122"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-cbfad4d3a01576f0",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-a01576f0cbfad4d3",
"tm": "1787658122"
}
}
],
"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": "1787658119",
"updated_at": "1787658123"
},
{
"session_id": "mb-d23d6434a58467b7",
"request_id": "scan-a58467b7d23d6434",
"base": "426db4",
"slave_id": 113,
"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-a58467b7d23d6434",
"session_id": "mb-d23d6434a58467b7",
"action": "accepted",
"tm": "2026-08-25T11:42:02.030630Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-a58467b7d23d6434",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "00140319",
"registers": [
20,
793
],
"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-d23d6434a58467b7",
"tm": "1787658118"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-a58467b7d23d6434",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-d23d6434a58467b7",
"tm": "1787658118"
}
}
],
"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": "1787658116",
"updated_at": "1787658119"
},
{
"session_id": "mb-c38c37c8f903a317",
"request_id": "scan-f903a317c38c37c8",
"base": "426db4",
"slave_id": 111,
"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-f903a317c38c37c8",
"session_id": "mb-c38c37c8f903a317",
"action": "accepted",
"tm": "2026-08-25T11:41:59.603563Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-f903a317c38c37c8",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "fffc03b0",
"registers": [
65532,
944
],
"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-c38c37c8f903a317",
"tm": "1787658115"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-f903a317c38c37c8",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-c38c37c8f903a317",
"tm": "1787658115"
}
}
],
"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": "1787658113",
"updated_at": "1787658116"
},
{
"session_id": "mb-ab683c0df4799994",
"request_id": "scan-f4799994ab683c0d",
"base": "426db4",
"slave_id": 110,
"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-f4799994ab683c0d",
"session_id": "mb-ab683c0df4799994",
"action": "accepted",
"tm": "2026-08-25T11:41:57.172805Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-f4799994ab683c0d",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "ff4f0337",
"registers": [
65359,
823
],
"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-ab683c0df4799994",
"tm": "1787658112"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-f4799994ab683c0d",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-ab683c0df4799994",
"tm": "1787658112"
}
}
],
"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": "1787658111",
"updated_at": "1787658113"
},
{
"session_id": "mb-2d8998cdc8014a21",
"request_id": "scan-c8014a212d8998cd",
"base": "426db4",
"slave_id": 109,
"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-c8014a212d8998cd",
"session_id": "mb-2d8998cdc8014a21",
"action": "accepted",
"tm": "2026-08-25T11:41:53.782002Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-c8014a212d8998cd",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "ff430356",
"registers": [
65347,
854
],
"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-2d8998cdc8014a21",
"tm": "1787658110"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-c8014a212d8998cd",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-2d8998cdc8014a21",
"tm": "1787658110"
}
}
],
"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": "1787658108",
"updated_at": "1787658111"
},
{
"session_id": "mb-e4b1c4b66ce4bf7c",
"request_id": "scan-6ce4bf7ce4b1c4b6",
"base": "426db4",
"slave_id": 108,
"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-6ce4bf7ce4b1c4b6",
"session_id": "mb-e4b1c4b66ce4bf7c",
"action": "accepted",
"tm": "2026-08-25T11:41:50.416256Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-6ce4bf7ce4b1c4b6",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "000302fa",
"registers": [
3,
762
],
"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-e4b1c4b66ce4bf7c",
"tm": "1787658106"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-6ce4bf7ce4b1c4b6",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-e4b1c4b66ce4bf7c",
"tm": "1787658107"
}
}
],
"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": "1787658104",
"updated_at": "1787658108"
},
{
"session_id": "mb-721a1b79dca4f073",
"request_id": "scan-dca4f073721a1b79",
"base": "426db4",
"slave_id": 107,
"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-dca4f073721a1b79",
"session_id": "mb-721a1b79dca4f073",
"action": "accepted",
"tm": "2026-08-25T11:41:47.972680Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-dca4f073721a1b79",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "009e0367",
"registers": [
158,
871
],
"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-721a1b79dca4f073",
"tm": "1787658103"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-dca4f073721a1b79",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-721a1b79dca4f073",
"tm": "1787658103"
}
}
],
"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": "1787658102",
"updated_at": "1787658104"
},
{
"session_id": "mb-420674e7aefd88a3",
"request_id": "scan-aefd88a3420674e7",
"base": "426db4",
"slave_id": 106,
"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-aefd88a3420674e7",
"session_id": "mb-420674e7aefd88a3",
"action": "accepted",
"tm": "2026-08-25T11:41:45.622011Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-aefd88a3420674e7",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "00110395",
"registers": [
17,
917
],
"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-420674e7aefd88a3",
"tm": "1787658101"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-aefd88a3420674e7",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-420674e7aefd88a3",
"tm": "1787658101"
}
}
],
"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": "1787658099",
"updated_at": "1787658102"
},
{
"session_id": "mb-138b15fd03c523ec",
"request_id": "scan-03c523ec138b15fd",
"base": "426db4",
"slave_id": 105,
"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-03c523ec138b15fd",
"session_id": "mb-138b15fd03c523ec",
"action": "accepted",
"tm": "2026-08-25T11:41:43.333549Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-03c523ec138b15fd",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "ff5b03cb",
"registers": [
65371,
971
],
"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-138b15fd03c523ec",
"tm": "1787658099"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-03c523ec138b15fd",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-138b15fd03c523ec",
"tm": "1787658099"
}
}
],
"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": "1787658098",
"updated_at": "1787658099"
},
{
"session_id": "mb-ee32a8b0a5d24929",
"request_id": "scan-a5d24929ee32a8b0",
"base": "426db4",
"slave_id": 35,
"state": "finished",
"reads_used": 14,
"steps_used": 2,
"result": {
"outcome": "unknown",
"reason": "ни один профиль не совместим с ответами",
"confidence": "none",
"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-a5d24929ee32a8b0",
"session_id": "mb-ee32a8b0a5d24929",
"action": "accepted",
"tm": "2026-08-25T11:41:32.518862Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-a5d24929ee32a8b0",
"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": "0023",
"registers": [
35
],
"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-ee32a8b0a5d24929",
"tm": "1787658090"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-a5d24929ee32a8b0",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-ee32a8b0a5d24929",
"tm": "1787658090"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "explore-holding-0",
"function": 3,
"address": 0,
"quantity": 4
},
{
"test_id": "explore-input-0",
"function": 4,
"address": 0,
"quantity": 4
},
{
"test_id": "explore-holding-10",
"function": 3,
"address": 10,
"quantity": 2
},
{
"test_id": "explore-input-10",
"function": 4,
"address": 10,
"quantity": 2
},
{
"test_id": "explore-holding-100",
"function": 3,
"address": 100,
"quantity": 2
},
{
"test_id": "explore-input-100",
"function": 4,
"address": 100,
"quantity": 2
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "426db4",
"event": "test_result",
"request_id": "scan-a5d24929ee32a8b0",
"results": [
{
"address": 0,
"exception_code": 2,
"function": 3,
"quantity": 4,
"success": false,
"test_id": "explore-holding-0"
},
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 4,
"success": false,
"test_id": "explore-input-0"
},
{
"address": 10,
"exception_code": 2,
"function": 3,
"quantity": 2,
"success": false,
"test_id": "explore-holding-10"
},
{
"address": 10,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "explore-input-10"
},
{
"address": 100,
"exception_code": 2,
"function": 3,
"quantity": 2,
"success": false,
"test_id": "explore-holding-100"
},
{
"address": 100,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "explore-input-100"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-ee32a8b0a5d24929",
"tm": "1787658097"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-a5d24929ee32a8b0",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-ee32a8b0a5d24929",
"tm": "1787658097"
}
}
],
"unknown_group": {
"signature": "679470731cd110dbf7df00ceaf738a1035fecc396283b1d5574b91d16a13c636",
"sample_count": 3
},
"draft_profile": {
"profile_id": "draft-679470731cd1",
"version": "0.1.0",
"confidence": "medium",
"description": {
"name": "Неизвестное Modbus-устройство",
"signature": "679470731cd110dbf7df00ceaf738a1035fecc396283b1d5574b91d16a13c636"
},
"line_parameters": {
"baudrate": 9600,
"data_bits": 8,
"parity": "none",
"stop_bits": 1
},
"sensor_templates": [],
"polling_intervals": {
"default_seconds": 60
},
"recognition": {
"identity": {},
"fingerprints": [
{
"test": {
"test_id": "explore-holding-0",
"function": 3,
"address": 0,
"quantity": 4
},
"expect": {
"test_id": "explore-holding-0",
"exception_code": 2
}
},
{
"test": {
"test_id": "explore-holding-10",
"function": 3,
"address": 10,
"quantity": 2
},
"expect": {
"test_id": "explore-holding-10",
"exception_code": 2
}
},
{
"test": {
"test_id": "explore-holding-100",
"function": 3,
"address": 100,
"quantity": 2
},
"expect": {
"test_id": "explore-holding-100",
"exception_code": 2
}
},
{
"test": {
"test_id": "explore-input-0",
"function": 4,
"address": 0,
"quantity": 4
},
"expect": {
"test_id": "explore-input-0",
"exception_code": 1
}
},
{
"test": {
"test_id": "explore-input-10",
"function": 4,
"address": 10,
"quantity": 2
},
"expect": {
"test_id": "explore-input-10",
"exception_code": 1
}
},
{
"test": {
"test_id": "explore-input-100",
"function": 4,
"address": 100,
"quantity": 2
},
"expect": {
"test_id": "explore-input-100",
"exception_code": 1
}
},
{
"test": {
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
"expect": {
"test_id": "temperature-humidity-int16-div10",
"exception_code": 1
}
},
{
"test": {
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
"expect": {
"test_id": "waveshare-device-address",
"byte_count": 2
}
},
{
"test": {
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
"expect": {
"test_id": "waveshare-di-8",
"byte_count": 1
}
},
{
"test": {
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
"expect": {
"test_id": "waveshare-firmware-version",
"byte_count": 2
}
},
{
"test": {
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
"expect": {
"test_id": "waveshare-output-modes",
"byte_count": 16
}
},
{
"test": {
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
},
"expect": {
"test_id": "wirenboard-model",
"exception_code": 1
}
}
]
},
"observation_policy": "Признаки содержат только форму ответа; сырые значения сохранены отдельно и требуют проверки.",
"generated": true,
"review_required": true
}
},
"created_at": "1787658086",
"updated_at": "1787658098"
},
{
"session_id": "mb-7abdcc860d6b3f04",
"request_id": "scan-0d6b3f047abdcc86",
"base": "426db4",
"slave_id": 12,
"state": "finished",
"reads_used": 14,
"steps_used": 2,
"result": {
"outcome": "unknown",
"reason": "ни один профиль не совместим с ответами",
"confidence": "none",
"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-0d6b3f047abdcc86",
"session_id": "mb-7abdcc860d6b3f04",
"action": "accepted",
"tm": "2026-08-25T11:41:21.671764Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-0d6b3f047abdcc86",
"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": "000c",
"registers": [
12
],
"success": true,
"test_id": "waveshare-device-address"
},
{
"address": 0,
"bits": [
1,
1,
0,
0,
0,
0,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "03",
"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-7abdcc860d6b3f04",
"tm": "1787658079"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-0d6b3f047abdcc86",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-7abdcc860d6b3f04",
"tm": "1787658079"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "explore-holding-0",
"function": 3,
"address": 0,
"quantity": 4
},
{
"test_id": "explore-input-0",
"function": 4,
"address": 0,
"quantity": 4
},
{
"test_id": "explore-holding-10",
"function": 3,
"address": 10,
"quantity": 2
},
{
"test_id": "explore-input-10",
"function": 4,
"address": 10,
"quantity": 2
},
{
"test_id": "explore-holding-100",
"function": 3,
"address": 100,
"quantity": 2
},
{
"test_id": "explore-input-100",
"function": 4,
"address": 100,
"quantity": 2
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "426db4",
"event": "test_result",
"request_id": "scan-0d6b3f047abdcc86",
"results": [
{
"address": 0,
"exception_code": 2,
"function": 3,
"quantity": 4,
"success": false,
"test_id": "explore-holding-0"
},
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 4,
"success": false,
"test_id": "explore-input-0"
},
{
"address": 10,
"exception_code": 2,
"function": 3,
"quantity": 2,
"success": false,
"test_id": "explore-holding-10"
},
{
"address": 10,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "explore-input-10"
},
{
"address": 100,
"exception_code": 2,
"function": 3,
"quantity": 2,
"success": false,
"test_id": "explore-holding-100"
},
{
"address": 100,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "explore-input-100"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-7abdcc860d6b3f04",
"tm": "1787658086"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-0d6b3f047abdcc86",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-7abdcc860d6b3f04",
"tm": "1787658086"
}
}
],
"unknown_group": {
"signature": "679470731cd110dbf7df00ceaf738a1035fecc396283b1d5574b91d16a13c636",
"sample_count": 2
},
"draft_profile": {
"profile_id": "draft-679470731cd1",
"version": "0.1.0",
"confidence": "medium",
"description": {
"name": "Неизвестное Modbus-устройство",
"signature": "679470731cd110dbf7df00ceaf738a1035fecc396283b1d5574b91d16a13c636"
},
"line_parameters": {
"baudrate": 9600,
"data_bits": 8,
"parity": "none",
"stop_bits": 1
},
"sensor_templates": [],
"polling_intervals": {
"default_seconds": 60
},
"recognition": {
"identity": {},
"fingerprints": [
{
"test": {
"test_id": "explore-holding-0",
"function": 3,
"address": 0,
"quantity": 4
},
"expect": {
"test_id": "explore-holding-0",
"exception_code": 2
}
},
{
"test": {
"test_id": "explore-holding-10",
"function": 3,
"address": 10,
"quantity": 2
},
"expect": {
"test_id": "explore-holding-10",
"exception_code": 2
}
},
{
"test": {
"test_id": "explore-holding-100",
"function": 3,
"address": 100,
"quantity": 2
},
"expect": {
"test_id": "explore-holding-100",
"exception_code": 2
}
},
{
"test": {
"test_id": "explore-input-0",
"function": 4,
"address": 0,
"quantity": 4
},
"expect": {
"test_id": "explore-input-0",
"exception_code": 1
}
},
{
"test": {
"test_id": "explore-input-10",
"function": 4,
"address": 10,
"quantity": 2
},
"expect": {
"test_id": "explore-input-10",
"exception_code": 1
}
},
{
"test": {
"test_id": "explore-input-100",
"function": 4,
"address": 100,
"quantity": 2
},
"expect": {
"test_id": "explore-input-100",
"exception_code": 1
}
},
{
"test": {
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
"expect": {
"test_id": "temperature-humidity-int16-div10",
"exception_code": 1
}
},
{
"test": {
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
"expect": {
"test_id": "waveshare-device-address",
"byte_count": 2
}
},
{
"test": {
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
"expect": {
"test_id": "waveshare-di-8",
"byte_count": 1
}
},
{
"test": {
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
"expect": {
"test_id": "waveshare-firmware-version",
"byte_count": 2
}
},
{
"test": {
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
"expect": {
"test_id": "waveshare-output-modes",
"byte_count": 16
}
},
{
"test": {
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
},
"expect": {
"test_id": "wirenboard-model",
"exception_code": 1
}
}
]
},
"observation_policy": "Признаки содержат только форму ответа; сырые значения сохранены отдельно и требуют проверки.",
"generated": true,
"review_required": true
}
},
"created_at": "1787658075",
"updated_at": "1787658086"
},
{
"session_id": "mb-5851a6eb54c22f0a",
"request_id": "scan-54c22f0a5851a6eb",
"base": "426db4",
"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-54c22f0a5851a6eb",
"session_id": "mb-5851a6eb54c22f0a",
"action": "accepted",
"tm": "2026-08-25T11:41:17.385662Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-54c22f0a5851a6eb",
"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,
0,
1,
1,
0,
0
],
"byte_count": 1,
"function": 2,
"quantity": 8,
"raw_hex": "37",
"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-5851a6eb54c22f0a",
"tm": "1787658074"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-54c22f0a5851a6eb",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-5851a6eb54c22f0a",
"tm": "1787658074"
}
}
],
"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": "1787658072",
"updated_at": "1787658075"
},
{
"session_id": "mb-492f4c08edebb9fc",
"request_id": "scan-edebb9fc492f4c08",
"base": "426db4",
"slave_id": 2,
"state": "finished",
"reads_used": 14,
"steps_used": 2,
"result": {
"outcome": "unknown",
"reason": "ни один профиль не совместим с ответами",
"confidence": "none",
"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-edebb9fc492f4c08",
"session_id": "mb-492f4c08edebb9fc",
"action": "accepted",
"tm": "2026-08-25T11:41:06.891351Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "426db4"
}
},
{
"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": "426db4",
"event": "test_result",
"request_id": "scan-edebb9fc492f4c08",
"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": "0002",
"registers": [
2
],
"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-492f4c08edebb9fc",
"tm": "1787658065"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-edebb9fc492f4c08",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-492f4c08edebb9fc",
"tm": "1787658065"
}
},
{
"kind": "command",
"action": "test",
"commands": [
{
"test_id": "explore-holding-0",
"function": 3,
"address": 0,
"quantity": 4
},
{
"test_id": "explore-input-0",
"function": 4,
"address": 0,
"quantity": 4
},
{
"test_id": "explore-holding-10",
"function": 3,
"address": 10,
"quantity": 2
},
{
"test_id": "explore-input-10",
"function": 4,
"address": 10,
"quantity": 2
},
{
"test_id": "explore-holding-100",
"function": 3,
"address": 100,
"quantity": 2
},
{
"test_id": "explore-input-100",
"function": 4,
"address": 100,
"quantity": 2
}
]
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "426db4",
"event": "test_result",
"request_id": "scan-edebb9fc492f4c08",
"results": [
{
"address": 0,
"exception_code": 2,
"function": 3,
"quantity": 4,
"success": false,
"test_id": "explore-holding-0"
},
{
"address": 0,
"exception_code": 1,
"function": 4,
"quantity": 4,
"success": false,
"test_id": "explore-input-0"
},
{
"address": 10,
"exception_code": 2,
"function": 3,
"quantity": 2,
"success": false,
"test_id": "explore-holding-10"
},
{
"address": 10,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "explore-input-10"
},
{
"address": 100,
"exception_code": 2,
"function": 3,
"quantity": 2,
"success": false,
"test_id": "explore-holding-100"
},
{
"address": 100,
"exception_code": 1,
"function": 4,
"quantity": 2,
"success": false,
"test_id": "explore-input-100"
}
],
"schema": "misx5.device_discovery.v1",
"session_id": "mb-492f4c08edebb9fc",
"tm": "1787658071"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "426db4",
"event": "step_complete",
"request_id": "scan-edebb9fc492f4c08",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-492f4c08edebb9fc",
"tm": "1787658071"
}
}
],
"unknown_group": {
"signature": "679470731cd110dbf7df00ceaf738a1035fecc396283b1d5574b91d16a13c636",
"sample_count": 1
},
"draft_profile": {
"profile_id": "draft-679470731cd1",
"version": "0.1.0",
"confidence": "medium",
"description": {
"name": "Неизвестное Modbus-устройство",
"signature": "679470731cd110dbf7df00ceaf738a1035fecc396283b1d5574b91d16a13c636"
},
"line_parameters": {
"baudrate": 9600,
"data_bits": 8,
"parity": "none",
"stop_bits": 1
},
"sensor_templates": [],
"polling_intervals": {
"default_seconds": 60
},
"recognition": {
"identity": {},
"fingerprints": [
{
"test": {
"test_id": "explore-holding-0",
"function": 3,
"address": 0,
"quantity": 4
},
"expect": {
"test_id": "explore-holding-0",
"exception_code": 2
}
},
{
"test": {
"test_id": "explore-holding-10",
"function": 3,
"address": 10,
"quantity": 2
},
"expect": {
"test_id": "explore-holding-10",
"exception_code": 2
}
},
{
"test": {
"test_id": "explore-holding-100",
"function": 3,
"address": 100,
"quantity": 2
},
"expect": {
"test_id": "explore-holding-100",
"exception_code": 2
}
},
{
"test": {
"test_id": "explore-input-0",
"function": 4,
"address": 0,
"quantity": 4
},
"expect": {
"test_id": "explore-input-0",
"exception_code": 1
}
},
{
"test": {
"test_id": "explore-input-10",
"function": 4,
"address": 10,
"quantity": 2
},
"expect": {
"test_id": "explore-input-10",
"exception_code": 1
}
},
{
"test": {
"test_id": "explore-input-100",
"function": 4,
"address": 100,
"quantity": 2
},
"expect": {
"test_id": "explore-input-100",
"exception_code": 1
}
},
{
"test": {
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2
},
"expect": {
"test_id": "temperature-humidity-int16-div10",
"exception_code": 1
}
},
{
"test": {
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1
},
"expect": {
"test_id": "waveshare-device-address",
"byte_count": 2
}
},
{
"test": {
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8
},
"expect": {
"test_id": "waveshare-di-8",
"byte_count": 1
}
},
{
"test": {
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1
},
"expect": {
"test_id": "waveshare-firmware-version",
"byte_count": 2
}
},
{
"test": {
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8
},
"expect": {
"test_id": "waveshare-output-modes",
"byte_count": 16
}
},
{
"test": {
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20
},
"expect": {
"test_id": "wirenboard-model",
"exception_code": 1
}
}
]
},
"observation_policy": "Признаки содержат только форму ответа; сырые значения сохранены отдельно и требуют проверки.",
"generated": true,
"review_required": true
}
},
"created_at": "1787658061",
"updated_at": "1787658072"
},
{
"session_id": "mb-356004459e9aa51a",
"request_id": "scan-9e9aa51a35600445",
"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-9e9aa51a35600445",
"session_id": "mb-356004459e9aa51a",
"action": "accepted",
"tm": "2026-08-24T08:24:06.672930Z",
"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-9e9aa51a35600445",
"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-356004459e9aa51a",
"tm": "1787559848"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-9e9aa51a35600445",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-356004459e9aa51a",
"tm": "1787559848"
}
}
],
"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": "1787559846",
"updated_at": "1787559848"
},
{
"session_id": "mb-26d7103e1ca42929",
"request_id": "scan-1ca4292926d7103e",
"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-1ca4292926d7103e",
"session_id": "mb-26d7103e1ca42929",
"action": "accepted",
"tm": "2026-08-24T08:00:32.835304Z",
"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-1ca4292926d7103e",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-26d7103e1ca42929",
"tm": "1787558434"
}
},
{
"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-1ca4292926d7103e",
"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-26d7103e1ca42929",
"tm": "1787558437"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-1ca4292926d7103e",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-26d7103e1ca42929",
"tm": "1787558437"
}
}
],
"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": "1787558431",
"updated_at": "1787558445"
},
{
"session_id": "mb-15f7d838ebee2b0f",
"request_id": "scan-ebee2b0f15f7d838",
"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-ebee2b0f15f7d838",
"session_id": "mb-15f7d838ebee2b0f",
"action": "accepted",
"tm": "2026-08-24T07:51:21.764102Z",
"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-ebee2b0f15f7d838",
"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-15f7d838ebee2b0f",
"tm": "1787557883"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-ebee2b0f15f7d838",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-15f7d838ebee2b0f",
"tm": "1787557883"
}
}
],
"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": "1787557880",
"updated_at": "1787557883"
},
{
"session_id": "mb-49951ba1ead33a95",
"request_id": "scan-ead33a9549951ba1",
"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-ead33a9549951ba1",
"session_id": "mb-49951ba1ead33a95",
"action": "accepted",
"tm": "2026-08-22T19:10:26.364352Z",
"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-ead33a9549951ba1",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "0100022c",
"registers": [
256,
556
],
"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-49951ba1ead33a95",
"tm": "1787426968"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-ead33a9549951ba1",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-49951ba1ead33a95",
"tm": "1787426968"
}
}
],
"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": "1787426963",
"updated_at": "1787426969"
},
{
"session_id": "mb-e62a2295c596e7a0",
"request_id": "scan-c596e7a0e62a2295",
"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-c596e7a0e62a2295",
"session_id": "mb-e62a2295c596e7a0",
"action": "accepted",
"tm": "2026-08-22T19:10:16.305983Z",
"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-c596e7a0e62a2295",
"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-e62a2295c596e7a0",
"tm": "1787426955"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-c596e7a0e62a2295",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-e62a2295c596e7a0",
"tm": "1787426955"
}
}
],
"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": "1787426952",
"updated_at": "1787426963"
},
{
"session_id": "mb-d3f15ba811b68cf8",
"request_id": "scan-11b68cf8d3f15ba8",
"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-11b68cf8d3f15ba8",
"session_id": "mb-d3f15ba811b68cf8",
"action": "accepted",
"tm": "2026-08-22T18:34:50.901923Z",
"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-11b68cf8d3f15ba8",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "01030229",
"registers": [
259,
553
],
"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-d3f15ba811b68cf8",
"tm": "1787424831"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-11b68cf8d3f15ba8",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-d3f15ba811b68cf8",
"tm": "1787424831"
}
}
],
"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": "1787424825",
"updated_at": "1787424832"
},
{
"session_id": "mb-53b118a48427a81e",
"request_id": "scan-8427a81e53b118a4",
"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-8427a81e53b118a4",
"session_id": "mb-53b118a48427a81e",
"action": "accepted",
"tm": "2026-08-22T18:34:46.771122Z",
"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-8427a81e53b118a4",
"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-53b118a48427a81e",
"tm": "1787424824"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-8427a81e53b118a4",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-53b118a48427a81e",
"tm": "1787424824"
}
}
],
"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": "1787424821",
"updated_at": "1787424825"
},
{
"session_id": "mb-5b86788f6148763f",
"request_id": "scan-6148763f5b86788f",
"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-6148763f5b86788f",
"session_id": "mb-5b86788f6148763f",
"action": "accepted",
"tm": "2026-08-22T18:32:51.283330Z",
"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-6148763f5b86788f",
"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-5b86788f6148763f",
"tm": "1787424709"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-6148763f5b86788f",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-5b86788f6148763f",
"tm": "1787424709"
}
}
],
"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": "1787424706",
"updated_at": "1787424709"
},
{
"session_id": "mb-f1643ca5c1177ec6",
"request_id": "scan-c1177ec6f1643ca5",
"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-c1177ec6f1643ca5",
"session_id": "mb-f1643ca5c1177ec6",
"action": "accepted",
"tm": "2026-08-22T17:23:18.412212Z",
"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-c1177ec6f1643ca5",
"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-f1643ca5c1177ec6",
"tm": "1787419400"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-c1177ec6f1643ca5",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-f1643ca5c1177ec6",
"tm": "1787419400"
}
}
],
"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": "1787419397",
"updated_at": "1787419408"
},
{
"session_id": "mb-a4554c7df0e3a8e0",
"request_id": "scan-f0e3a8e0a4554c7d",
"base": "26b714",
"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-f0e3a8e0a4554c7d",
"session_id": "mb-a4554c7df0e3a8e0",
"action": "accepted",
"tm": "2026-08-22T08:45:13.719436Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "26b714"
}
},
{
"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": "26b714",
"event": "test_result",
"request_id": "scan-f0e3a8e0a4554c7d",
"results": [
{
"address": 0,
"byte_count": 4,
"function": 4,
"quantity": 2,
"raw_hex": "01020200",
"registers": [
258,
512
],
"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-a4554c7df0e3a8e0",
"tm": "1787389453"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "26b714",
"event": "step_complete",
"request_id": "scan-f0e3a8e0a4554c7d",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-a4554c7df0e3a8e0",
"tm": "1787389453"
}
}
],
"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": "1787389447",
"updated_at": "1787389453"
},
{
"session_id": "mb-d42d727f018b5466",
"request_id": "scan-018b5466d42d727f",
"base": "26b714",
"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-018b5466d42d727f",
"session_id": "mb-d42d727f018b5466",
"action": "accepted",
"tm": "2026-08-22T08:45:04.461840Z",
"emitter": "mqtt-modbus-detect",
"event": "accepted",
"controller_id": "26b714"
}
},
{
"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": "26b714",
"event": "test_result",
"request_id": "scan-018b5466d42d727f",
"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-d42d727f018b5466",
"tm": "1787389441"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "26b714",
"event": "step_complete",
"request_id": "scan-018b5466d42d727f",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-d42d727f018b5466",
"tm": "1787389441"
}
}
],
"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": "1787389415",
"updated_at": "1787389447"
},
{
"session_id": "mb-7b0eb2a64b2ae4a4",
"request_id": "scan-4b2ae4a47b0eb2a6",
"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": {
"identity": {},
"attempts": [
{
"test_id": "device-identification-basic",
"function": 43,
"mei_type": 14,
"error": "scan_standard_identification_unavailable"
},
{
"test_id": "report-server-id",
"function": 17,
"error": "scan_standard_identification_unavailable"
}
]
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-4b2ae4a47b0eb2a6",
"session_id": "mb-7b0eb2a64b2ae4a4",
"action": "accepted",
"tm": "2026-08-22T06:26:25.370783Z",
"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": {
"schema": "misx5.device_discovery.v1",
"controller_id": "1a2270",
"request_id": "scan-4b2ae4a47b0eb2a6",
"session_id": "mb-7b0eb2a64b2ae4a4",
"action": "test_result",
"event": "test_result",
"results": [
{
"test_id": "temperature-humidity-int16-div10",
"function": 4,
"address": 0,
"quantity": 2,
"success": false,
"exception_code": 1
},
{
"test_id": "waveshare-device-address",
"function": 3,
"address": 16384,
"quantity": 1,
"success": true,
"byte_count": 2,
"raw_hex": "000b",
"registers": [
11
]
},
{
"test_id": "waveshare-di-8",
"function": 2,
"address": 0,
"quantity": 8,
"success": true,
"byte_count": 1,
"raw_hex": "01",
"bits": [
true,
false,
false,
false,
false,
false,
false,
false
]
},
{
"test_id": "waveshare-firmware-version",
"function": 3,
"address": 32768,
"quantity": 1,
"success": true,
"byte_count": 2,
"raw_hex": "00c8",
"registers": [
200
]
},
{
"test_id": "waveshare-output-modes",
"function": 3,
"address": 4096,
"quantity": 8,
"success": true,
"byte_count": 16,
"raw_hex": "00000000000000000000000000000000",
"registers": [
0,
0,
0,
0,
0,
0,
0,
0
]
},
{
"test_id": "wirenboard-model",
"function": 4,
"address": 200,
"quantity": 20,
"success": false,
"exception_code": 1
}
],
"tm": "1787381133"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "1a2270",
"request_id": "scan-4b2ae4a47b0eb2a6",
"session_id": "mb-7b0eb2a64b2ae4a4",
"action": "step_complete",
"event": "step_complete",
"tm": "1787381133"
}
}
],
"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": "1787381118",
"updated_at": "1787381151"
},
{
"session_id": "mb-716b6d1436456ffa",
"request_id": "scan-36456ffa716b6d14",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "1a2270",
"request_id": "scan-36456ffa716b6d14",
"session_id": "mb-716b6d1436456ffa",
"action": "timeout",
"event": "timeout",
"code": "local_timeout",
"tm": "1787380824"
},
"created_at": "1787380777",
"updated_at": "1787380824"
},
{
"session_id": "mb-fb44ebb98a54ebad",
"request_id": "scan-8a54ebadfb44ebb9",
"base": "1a2270",
"slave_id": 11,
"state": "failed",
"reads_used": 8,
"steps_used": 1,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "1a2270",
"request_id": "scan-8a54ebadfb44ebb9",
"session_id": "mb-fb44ebb98a54ebad",
"action": "error",
"event": "error",
"code": "profile_payload_too_large",
"tm": "1787380438"
},
"created_at": "1787380400",
"updated_at": "1787380438"
},
{
"session_id": "mb-169f3f363290c2a5",
"request_id": "scan-3290c2a5169f3f36",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"schema": "misx5.device_discovery.v1",
"controller_id": "1a2270",
"request_id": "scan-3290c2a5169f3f36",
"session_id": "mb-169f3f363290c2a5",
"action": "timeout",
"event": "timeout",
"code": "local_timeout",
"tm": "1787380076"
},
"created_at": "1787380030",
"updated_at": "1787380076"
},
{
"session_id": "mb-661f10f3f8b1c747",
"request_id": "scan-f8b1c747661f10f3",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1787379771",
"updated_at": "2026-08-22T06:04:46.286962Z"
},
{
"session_id": "mb-553d4c1996962e3a",
"request_id": "scan-96962e3a553d4c19",
"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": {
"identity": {},
"attempts": [
{
"test_id": "device-identification-basic",
"function": 43,
"mei_type": 14,
"error": "scan_standard_identification_unavailable"
},
{
"test_id": "report-server-id",
"function": 17,
"error": "scan_standard_identification_unavailable"
}
]
}
},
{
"kind": "accepted",
"payload": {
"schema": "misx5.device_discovery.v1",
"request_id": "scan-96962e3a553d4c19",
"session_id": "mb-553d4c1996962e3a",
"action": "accepted",
"tm": "2026-08-22T05:53:49.089799Z",
"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-96962e3a553d4c19",
"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-553d4c1996962e3a",
"tm": "1787379177"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"schema": "misx5.device_discovery.v1",
"controller_id": "1a2270",
"request_id": "scan-96962e3a553d4c19",
"session_id": "mb-553d4c1996962e3a",
"action": "step_complete",
"event": "step_complete",
"tm": "1787379177"
}
}
],
"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": "1787379161",
"updated_at": "1787379177"
},
{
"session_id": "mb-5973af922ac0c73a",
"request_id": "scan-2ac0c73a5973af92",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1787377455",
"updated_at": "2026-08-22T05:26:02.947662Z"
},
{
"session_id": "mb-3a16bebf95753c9c",
"request_id": "scan-95753c9c3a16bebf",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1787375145",
"updated_at": "2026-08-22T04:49:48.701604Z"
},
{
"session_id": "mb-a8844923ddcac484",
"request_id": "scan-ddcac484a8844923",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1787374780",
"updated_at": "2026-08-22T04:43:43.432601Z"
},
{
"session_id": "mb-638cdfeff7da76c9",
"request_id": "scan-f7da76c9638cdfef",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"action": "timeout",
"code": "local_timeout",
"controller_id": "1a2270",
"event": "timeout",
"request_id": "scan-f7da76c9638cdfef",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-638cdfeff7da76c9",
"tm": "1787371004"
},
"created_at": "1787370887",
"updated_at": "1787371004"
},
{
"session_id": "mb-20e011ca8458e68c",
"request_id": "scan-8458e68c20e011ca",
"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-8458e68c20e011ca",
"session_id": "mb-20e011ca8458e68c",
"action": "accepted",
"tm": "2026-08-22T03:10:34.485293Z",
"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-8458e68c20e011ca",
"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-20e011ca8458e68c",
"tm": "1787369373"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-8458e68c20e011ca",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-20e011ca8458e68c",
"tm": "1787369373"
}
}
],
"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": "1787369366",
"updated_at": "1787369373"
},
{
"session_id": "mb-3f53459830b3beb1",
"request_id": "scan-30b3beb13f534598",
"base": "1a2270",
"slave_id": 20,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1787345061",
"updated_at": "2026-08-21T20:45:07.191964Z"
},
{
"session_id": "mb-f66c6188ef5daa9b",
"request_id": "scan-ef5daa9bf66c6188",
"base": "1a2270",
"slave_id": 20,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1787344892",
"updated_at": "2026-08-21T20:42:15.730066Z"
},
{
"session_id": "mb-e2211a76c4fa9d8a",
"request_id": "scan-c4fa9d8ae2211a76",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"action": "timeout",
"code": "local_timeout",
"controller_id": "1a2270",
"event": "timeout",
"request_id": "scan-c4fa9d8ae2211a76",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-e2211a76c4fa9d8a",
"tm": "1787344892"
},
"created_at": "1787344576",
"updated_at": "1787344892"
},
{
"session_id": "mb-36b69bb939a6f982",
"request_id": "scan-39a6f98236b69bb9",
"base": "1a2270",
"slave_id": 20,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"reason": "service_timeout"
},
"created_at": "1787344576",
"updated_at": "2026-08-21T20:37:40.199721Z"
},
{
"session_id": "mb-db94a0673918b12e",
"request_id": "scan-3918b12edb94a067",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 8,
"steps_used": 1,
"result": {
"action": "timeout",
"code": "local_timeout",
"controller_id": "1a2270",
"event": "timeout",
"request_id": "scan-3918b12edb94a067",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-db94a0673918b12e",
"tm": "1787344576"
},
"created_at": "1787344528",
"updated_at": "1787344576"
},
{
"session_id": "mb-616ddf9cfb246bc6",
"request_id": "scan-fb246bc6616ddf9c",
"base": "1a2270",
"slave_id": 11,
"state": "timed_out",
"reads_used": 2,
"steps_used": 0,
"result": {
"reason": "service_timeout"
},
"created_at": "1787344230",
"updated_at": "2026-08-21T20:32:20.488907Z"
},
{
"session_id": "mb-0b25ca38e8aa173e",
"request_id": "scan-e8aa173e0b25ca38",
"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-e8aa173e0b25ca38",
"session_id": "mb-0b25ca38e8aa173e",
"action": "accepted",
"tm": "2026-08-16T20:04:37.423619Z",
"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-e8aa173e0b25ca38",
"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-0b25ca38e8aa173e",
"tm": "1786921478"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-e8aa173e0b25ca38",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-0b25ca38e8aa173e",
"tm": "1786921478"
}
},
{
"kind": "response",
"event": "test_result",
"payload": {
"action": "test_result",
"controller_id": "1a2270",
"event": "test_result",
"request_id": "scan-e8aa173e0b25ca38",
"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-0b25ca38e8aa173e",
"tm": "1786921487"
}
},
{
"kind": "response",
"event": "step_complete",
"payload": {
"action": "step_complete",
"controller_id": "1a2270",
"event": "step_complete",
"request_id": "scan-e8aa173e0b25ca38",
"schema": "misx5.device_discovery.v1",
"session_id": "mb-0b25ca38e8aa173e",
"tm": "1786921487"
}
}
],
"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": "1786921448",
"updated_at": "1786921496"
},
{
"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"
}
]