Изложу еще раз проблему.
вводные: Wiren Board 6.8.1 (s/n A76QND3Y), release wb-2207 (as stable)
далее тезисами:
- сегодня в очередной раз началась чертовщина с утра пораньше у заказчика - включался свет/ менялся режим я дома/меня нет дома, краны закрылись и т.д. Логи (ведутся в иридиуме, а также в WB) показали что аномалия началась в 21-09-2022 09:42:39.535
1-09-2022 09:42:41.469 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR1 >>>>>> long press - press (1) <<<<<<
21-09-2022 09:42:41.457 [wb-rules] ERROR: control wb-gpio/EXT5_R3A4 SetValue() error: This control is not writable
21-09-2022 09:42:41.446 [wb-rules] INFO: [rule info] impuls_switch.js : switchRelay wb-gpio/EXT5_R3A4
21-09-2022 09:42:41.441 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN4 >>>>>> long press - press (1) <<<<<<
21-09-2022 09:42:41.432 [wb-rules] ERROR: failed to SetValue for unexisting control A71-MDM3/Channel: 50
21-09-2022 09:42:41.410 [wb-rules] ERROR: control A71-MDM3/K3 SetValue() error: This control is not writable
21-09-2022 09:42:41.408 [wb-rules] ERROR: control A71-MDM3/K1 SetValue() error: This control is not writable
21-09-2022 09:42:41.386 [wb-rules] INFO: [rule info] impuls_switch.js : S4_longPress
21-09-2022 09:42:41.376 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR10 >>>>>> long press - press (1) <<<<<<
21-09-2022 09:42:41.373 [wb-rules] INFO: [rule info] impuls_switch.js : S22_longPress
21-09-2022 09:42:41.364 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN6 >>>>>> long press - press (1) <<<<<<
21-09-2022 09:42:41.345 [wb-rules] ERROR: control A71-MDM3/K3 SetValue() error: This control is not writable
21-09-2022 09:42:41.321 [wb-rules] ERROR: control A71-MDM3/K2 SetValue() error: This control is not writable
21-09-2022 09:42:41.306 [wb-rules] INFO: [rule info] impuls_switch.js : S8_longPress
21-09-2022 09:42:41.294 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN5 >>>>>> long press - press (1) <<<<<<
21-09-2022 09:42:41.276 [wb-rules] ERROR: control A21-MR6C3/K2 SetValue() error: This control is not writable
21-09-2022 09:42:41.270 [wb-rules] ERROR: control wb-gpio/EXT5_R3A4 SetValue() error: This control is not writable
21-09-2022 09:42:41.253 [wb-rules] ERROR: control A21-MR6C3/K1 SetValue() error: This control is not writable
21-09-2022 09:42:41.242 [wb-rules] INFO: [rule info] impuls_switch.js : S5_longPress
21-09-2022 09:42:41.215 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN3 >>>>>> long press - press (1) <<<<<<
21-09-2022 09:42:41.209 [wb-rules] ERROR: control A71-MDM3/K3 SetValue() error: This control is not writable
21-09-2022 09:42:41.202 [wb-rules] ERROR: control A71-MDM3/K2 SetValue() error: This control is not writable
21-09-2022 09:42:41.193 [wb-rules] INFO: [rule info] impuls_switch.js : S3_longPress
21-09-2022 09:42:41.170 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN1 >>>>>> long press - press (1) <<<<<<
21-09-2022 09:42:41.141 [wb-rules] ERROR: trying to stop unknown timer: 250
21-09-2022 09:42:41.133 [wb-rules] INFO: [rule info] impuls_switch.js : S1_longPress
21-09-2022 09:42:41.114 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR13 >>>>>> long press - press (1) <<<<<<
21-09-2022 09:42:41.078 [wb-rules] ERROR: control A71-MDM3/K2 SetValue() error: This control is not writable
21-09-2022 09:42:41.056 [wb-rules] ERROR: control A71-MDM3/K3 SetValue() error: This control is not writable
21-09-2022 09:42:41.046 [wb-rules] INFO: [rule info] impuls_switch.js : S7_1_longPress
21-09-2022 09:42:41.037 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR12 >>>>>> long press - press (1) <<<<<<
21-09-2022 09:42:40.993 [wb-rules] INFO: [rule info] impuls_switch.js : S22_longPress
21-09-2022 09:42:40.984 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR11 >>>>>> long press - press (1) <<<<<<
21-09-2022 09:42:40.934 [wb-rules] INFO: [rule info] impuls_switch.js : S22_longPress
21-09-2022 09:42:40.839 [wb-mqtt-serial] WARNING: [modbus] failed to read 16 coil(s) @ 5116 of device modbus:25: Serial protocol error: server device is busy
21-09-2022 09:42:40.810 [wb-mqtt-serial] WARNING: [modbus] failed to read 16 coil(s) @ 5100 of device modbus:25: Serial protocol error: server device is busy
21-09-2022 09:42:40.737 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR6 >>>>>> long press - press (1) <<<<<<
21-09-2022 09:42:40.730 [wb-rules] ERROR: control wb-gpio/EXT5_R3A5 SetValue() error: This control is not writable
21-09-2022 09:42:40.724 [wb-rules] ERROR: control A21-MR6C3/K5 SetValue() error: This control is not writable
21-09-2022 09:42:40.717 [wb-rules] ERROR: control A21-MR6C3/K4 SetValue() error: This control is not writable
21-09-2022 09:42:40.711 [wb-rules] ERROR: control A21-MR6C3/K3 SetValue() error: This control is not writable
21-09-2022 09:42:40.690 [wb-rules] INFO: [rule info] impuls_switch.js : S17_longPress
21-09-2022 09:42:40.683 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR4 >>>>>> long press - press (1) <<<<<<
21-09-2022 09:42:40.566 [wb-rules] INFO: [rule info] impuls_switch.js : loop
21-09-2022 09:42:40.550 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR2 >>>>>> long press - press (1) <<<<<<
21-09-2022 09:42:40.544 [wb-rules] INFO: [rule info] impuls_switch.js : loop
21-09-2022 09:42:40.302 [wb-rules] ERROR: trying to stop unknown timer: 310
21-09-2022 09:42:40.254 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN13 newValue = true
21-09-2022 09:42:40.238 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN12 newValue = true
21-09-2022 09:42:40.217 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN11 newValue = true
21-09-2022 09:42:40.203 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN10 newValue = true
21-09-2022 09:42:40.192 [wb-mqtt-serial] WARNING: [modbus] failed to read 16 coil(s) @ 5116 of device modbus:25: Serial protocol error: server device is busy
21-09-2022 09:42:40.187 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN9 newValue = true
21-09-2022 09:42:40.174 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN8 newValue = true
21-09-2022 09:42:40.164 [wb-mqtt-serial] WARNING: [modbus] failed to read 16 coil(s) @ 5100 of device modbus:25: Serial protocol error: server device is busy
21-09-2022 09:42:40.157 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN7 newValue = true
21-09-2022 09:42:40.149 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN2 newValue = true
21-09-2022 09:42:40.140 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR9 newValue = true
21-09-2022 09:42:40.127 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR8 newValue = true
21-09-2022 09:42:40.117 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR7 newValue = true
21-09-2022 09:42:40.107 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR5 newValue = true
21-09-2022 09:42:40.094 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR3 newValue = true
21-09-2022 09:42:40.083 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR1 newValue = true
21-09-2022 09:42:40.238 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN12 newValue = true
21-09-2022 09:42:40.217 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN11 newValue = true
21-09-2022 09:42:40.203 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN10 newValue = true
21-09-2022 09:42:40.192 [wb-mqtt-serial] WARNING: [modbus] failed to read 16 coil(s) @ 5116 of device modbus:25: Serial protocol error: server device is busy
21-09-2022 09:42:40.187 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN9 newValue = true
21-09-2022 09:42:40.174 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN8 newValue = true
21-09-2022 09:42:40.164 [wb-mqtt-serial] WARNING: [modbus] failed to read 16 coil(s) @ 5100 of device modbus:25: Serial protocol error: server device is busy
21-09-2022 09:42:40.157 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN7 newValue = true
21-09-2022 09:42:40.149 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN2 newValue = true
21-09-2022 09:42:40.140 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR9 newValue = true
21-09-2022 09:42:40.127 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR8 newValue = true
21-09-2022 09:42:40.117 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR7 newValue = true
21-09-2022 09:42:40.107 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR5 newValue = true
21-09-2022 09:42:40.094 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR3 newValue = true
21-09-2022 09:42:40.083 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR1 newValue = true
21-09-2022 09:42:40.078 [wb-rules] ERROR: control wb-gpio/EXT6_ON4 SetValue() error: This control is not writable
21-09-2022 09:42:40.072 [wb-rules] ERROR: control wb-gpio/EXT6_ON2 SetValue() error: This control is not writable
21-09-2022 09:42:40.066 [wb-rules] ERROR: control wb-gpio/EXT6_ON1 SetValue() error: This control is not writable
21-09-2022 09:42:40.054 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN4 newValue = true
21-09-2022 09:42:40.046 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR10 newValue = true
21-09-2022 09:42:40.032 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN6 newValue = true
21-09-2022 09:42:40.021 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN5 newValue = true
21-09-2022 09:42:39.991 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN3 newValue = true
21-09-2022 09:42:39.986 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT3_IN1 newValue = true
21-09-2022 09:42:39.943 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR13 newValue = true
21-09-2022 09:42:39.932 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR12 newValue = true
21-09-2022 09:42:39.925 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR11 newValue = true
21-09-2022 09:42:39.571 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR6 newValue = true
21-09-2022 09:42:39.555 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR4 newValue = true
21-09-2022 09:42:39.535 [wb-rules] INFO: [rule info] impuls_switch.js: on_button_press_wb-gpio_EXT1_DR2 newValue = true
21-09-2022 09:42:39.522 [wb-mqtt-serial] WARNING: [modbus] failed to read 16 coil(s) @ 5116 of device modbus:25: Serial protocol error: server device is busy
21-09-2022 09:42:39.497 [wb-mqtt-serial] WARNING: [modbus] failed to read 16 coil(s) @ 5100 of device modbus:25: Serial protocol error: server device is busy
21-09-2022 09:42:38.977 [zigbee2mqtt] e[32mZigbee2MQTT:info e[39m 2022-09-21 04:42:38: MQTT publish: topic 'zigbee2mqtt/0x04cf8cdf3c8b5021', payload '{"device_temperature":55,"energy":15.64,"linkquality":57,"power":795.5,"state":"ON"}'
21-09-2022 09:42:38.866 [wb-mqtt-serial] WARNING: [modbus] failed to read 16 coil(s) @ 5116 of device modbus:25: Serial protocol error: server device is busy
21-09-2022 09:42:38.840 [wb-mqtt-serial] WARNING: [modbus] failed to read 16 coil(s) @ 5100 of device modbus:25: Serial protocol error: server device is busy
21-09-2022 09:42:38.268 [zigbee2mqtt] e[32mZigbee2MQTT:info e[39m 2022-09-21 04:42:38: MQTT publish: topic 'zigbee2mqtt/0x04cf8cdf3c8b5021', payload '{"device_temperature":55,"energy":15.64,"linkquality":57,"power":795.5,"state":"ON"}'
структура системы такая что DI от выключателей заведены на WD14 и HWD16, соответственно если возникает какая-то проблема с боковыми модулями/контроллером поведение системы становится непредсказуемым.
Из лога видно что в 21-09-2022 09:42:39.535 одномоментно все входные DI модулелй WD14 и HVD16 выставились в true (сужу по сообщениям из скрипта который следит за коротким, двойным, долгим нажатием).
- После посмотрел состояние входов:
root@wirenboard-A76QND3Y:~# cat /sys/kernel/debug/gpio
gpiochip0: GPIOs 0-31, parent: platform/209c000.gpio, 209c000.gpio:
gpio-10 ( |mod2_sda_pullup ) in lo ACTIVE LOW
gpio-11 ( |onewire_w2 ) out hi
gpio-13 ( |pu ) out lo
gpio-22 ( |rts ) out lo
gpio-23 ( |sysfs ) out lo
gpio-26 ( |rts ) out lo
gpio-27 ( |wb-mqtt-gpio ) out hi
gpio-30 ( |scl ) out hi
gpio-31 ( |sda ) in hi
gpiochip1: GPIOs 32-63, parent: platform/20a0000.gpio, 20a0000.gpio:
gpio-48 ( |i2c_rtc ) out hi
gpio-49 ( |i2c_rtc ) out hi
gpio-51 ( |watchdog ) out hi
gpiochip2: GPIOs 64-95, parent: platform/20a4000.gpio, 20a4000.gpio:
gpio-66 ( |rts ) out lo
gpio-67 ( |i2c_eeprom1 ) out hi
gpio-68 ( |wb-mqtt-gpio ) in hi ACTIVE LOW
gpio-70 ( |i2c_eeprom2 ) out hi
gpio-71 ( |i2c_eeprom2 ) out hi
gpio-72 ( |wb-mqtt-gpio ) in hi
gpio-73 ( |wb-mqtt-gpio ) out hi
gpio-74 ( |regulators:regulator) out hi
gpio-76 ( |i2c_eeprom1 ) out hi
gpio-77 ( |wb-mqtt-gpio ) in hi ACTIVE LOW
gpio-78 ( |wb-mqtt-gpio ) in hi ACTIVE LOW
gpio-79 ( |wb-mqtt-gpio ) out hi
gpio-80 ( |wb-mqtt-gpio ) out hi
gpio-81 ( |wb-mqtt-gpio ) out hi
gpio-82 ( |wb-mqtt-gpio ) out hi
gpio-91 ( |wb-mqtt-gpio ) in hi ACTIVE LOW
gpio-92 ( |wb-mqtt-gpio ) in hi ACTIVE LOW
gpiochip3: GPIOs 96-127, parent: platform/20a8000.gpio, 20a8000.gpio:
gpio-107 ( |regulators:regulator) out hi
gpio-108 ( |spi2 CS0 ) out hi ACTIVE LOW
gpio-112 ( |w1_reg_pu_dummy ) out lo
gpio-116 ( |sysfs ) out hi
gpio-119 ( |sysfs ) out hi
gpiochip4: GPIOs 128-159, parent: platform/20ac000.gpio, 20ac000.gpio:
gpio-128 ( |sysfs ) out hi
gpio-129 ( |phy-reset ) out hi
gpio-130 ( |sysfs ) out hi
gpiochip8: GPIOs 184-191, parent: i2c/1-0024, mcp23008, can sleep:
gpio-184 (EXT4_R3A1 |wb-mqtt-gpio ) out lo
gpio-185 (EXT4_R3A2 |wb-mqtt-gpio ) out lo
gpio-186 (EXT4_R3A3 |wb-mqtt-gpio ) out lo
gpio-187 (EXT4_R3A4 |wb-mqtt-gpio ) out lo
gpio-188 (EXT4_R3A5 |wb-mqtt-gpio ) out lo
gpio-189 (EXT4_R3A6 |wb-mqtt-gpio ) out lo
gpio-190 (EXT4_R3A7 |wb-mqtt-gpio ) out hi
gpio-191 (EXT4_R3A8 |wb-mqtt-gpio ) out lo
gpiochip9: GPIOs 192-199, parent: i2c/1-0020, mcp23008, can sleep:
gpio-192 (EXT5_R3A1 |wb-mqtt-gpio ) out lo
gpio-193 (EXT5_R3A2 |wb-mqtt-gpio ) out hi
gpio-194 (EXT5_R3A3 |wb-mqtt-gpio ) out hi
gpio-195 (EXT5_R3A4 |wb-mqtt-gpio ) out lo
gpio-196 (EXT5_R3A5 |wb-mqtt-gpio ) out lo
gpio-197 (EXT5_R3A6 |wb-mqtt-gpio ) out lo
gpio-198 (EXT5_R3A7 |wb-mqtt-gpio ) out lo
gpio-199 (EXT5_R3A8 |wb-mqtt-gpio ) out hi
gpiochip10: GPIOs 200-207, parent: i2c/1-0021, mcp23008, can sleep:
gpio-200 (EXT6_DIR1 |wb-mqtt-gpio ) out lo
gpio-201 (EXT6_ON1 |wb-mqtt-gpio ) out lo
gpio-202 (EXT6_DIR2 |wb-mqtt-gpio ) out lo
gpio-203 (EXT6_ON2 |wb-mqtt-gpio ) out lo
gpio-204 (EXT6_DIR3 |wb-mqtt-gpio ) out lo
gpio-205 (EXT6_ON3 |wb-mqtt-gpio ) out lo
gpio-206 (EXT6_DIR4 |wb-mqtt-gpio ) out hi
gpio-207 (EXT6_ON4 |wb-mqtt-gpio ) out lo
gpiochip5: GPIOs 256-271, parent: i2c/1-0027, mcp23017, can sleep:
gpio-256 (EXT1_DR1 |wb-mqtt-gpio ) in lo IRQ
gpio-257 (EXT1_DR2 |wb-mqtt-gpio ) in lo IRQ
gpio-258 (EXT1_DR3 |wb-mqtt-gpio ) in lo IRQ
gpio-259 (EXT1_DR4 |wb-mqtt-gpio ) in lo IRQ
gpio-260 (EXT1_DR5 |wb-mqtt-gpio ) in lo IRQ
gpio-261 (EXT1_DR6 |wb-mqtt-gpio ) in lo IRQ
gpio-262 (EXT1_DR7 |wb-mqtt-gpio ) in lo IRQ
gpio-263 (EXT1_DR8 |wb-mqtt-gpio ) in lo IRQ
gpio-264 (EXT1_DR9 |wb-mqtt-gpio ) in lo IRQ
gpio-265 (EXT1_DR10 |wb-mqtt-gpio ) in lo IRQ
gpio-266 (EXT1_DR11 |wb-mqtt-gpio ) in lo IRQ
gpio-267 (EXT1_DR12 |wb-mqtt-gpio ) in lo IRQ
gpio-268 (EXT1_DR13 |wb-mqtt-gpio ) in lo IRQ
gpio-269 (EXT1_DR14 |wb-mqtt-gpio ) in lo IRQ
gpiochip6: GPIOs 296-311, parent: i2c/1-0026, mcp23017, can sleep:
gpio-296 (EXT2_DR1 |wb-mqtt-gpio ) in lo IRQ
gpio-297 (EXT2_DR2 |wb-mqtt-gpio ) in lo IRQ
gpio-298 (EXT2_DR3 |wb-mqtt-gpio ) in lo IRQ
gpio-299 (EXT2_DR4 |wb-mqtt-gpio ) in lo IRQ
gpio-300 (EXT2_DR5 |wb-mqtt-gpio ) in lo IRQ
gpio-301 (EXT2_DR6 |wb-mqtt-gpio ) in lo IRQ
gpio-302 (EXT2_DR7 |wb-mqtt-gpio ) in lo IRQ
gpio-303 (EXT2_DR8 |wb-mqtt-gpio ) in lo IRQ
gpio-304 (EXT2_DR9 |wb-mqtt-gpio ) in lo IRQ
gpio-305 (EXT2_DR10 |wb-mqtt-gpio ) in lo IRQ
gpio-306 (EXT2_DR11 |wb-mqtt-gpio ) in lo IRQ
gpio-307 (EXT2_DR12 |wb-mqtt-gpio ) in lo IRQ
gpio-308 (EXT2_DR13 |wb-mqtt-gpio ) in lo IRQ
gpio-309 (EXT2_DR14 |wb-mqtt-gpio ) in lo IRQ
gpiochip7: GPIOs 336-351, parent: i2c/1-0025, mcp23017, can sleep:
gpio-336 (EXT3_IN1 |wb-mqtt-gpio ) in lo IRQ
gpio-337 (EXT3_IN2 |wb-mqtt-gpio ) in lo IRQ
gpio-338 (EXT3_IN3 |wb-mqtt-gpio ) in lo IRQ
gpio-339 (EXT3_IN4 |wb-mqtt-gpio ) in lo IRQ
gpio-340 (EXT3_IN5 |wb-mqtt-gpio ) in lo IRQ
gpio-341 (EXT3_IN6 |wb-mqtt-gpio ) in lo IRQ
gpio-342 (EXT3_IN7 |wb-mqtt-gpio ) in lo IRQ
gpio-343 (EXT3_IN8 |wb-mqtt-gpio ) in lo IRQ
gpio-344 (EXT3_IN9 |wb-mqtt-gpio ) in lo IRQ
gpio-345 (EXT3_IN10 |wb-mqtt-gpio ) in lo IRQ
gpio-346 (EXT3_IN11 |wb-mqtt-gpio ) in lo IRQ
gpio-347 (EXT3_IN12 |wb-mqtt-gpio ) in lo IRQ
gpio-348 (EXT3_IN13 |wb-mqtt-gpio ) in lo IRQ
gpio-349 (EXT3_IN14 |wb-mqtt-gpio ) in lo IRQ
gpio-350 (EXT3_IN15 |wb-mqtt-gpio ) in lo IRQ
gpio-351 (EXT3_IN16 |wb-mqtt-gpio ) in lo IRQ
меня интересовал gpio-351 (EXT3_IN16 |wb-mqtt-gpio ) in lo IRQ, на него заведен сигнал с переключателя ручной/автомат управления кранами (к сожалению не через MWAC, а через R10A4 управляю). Как видим состояние дискрета в false, для меня означает что состояние “авто”, блокировка ручная снята и я могу через автоматику подать питание на краны через скрипты.
В веб интерфейсе также EXT3_IN16 = false
- пробую переключить, для этого есть скрипт
var timerPowerValve = null;
defineRule("powervalve", {
whenChanged: "Virtual/PowerValve",
then: function (newValue, devName, cellName) {
log.info("powervalve.js / powervalve = " + newValue + " wb-gpio/EXT3_IN16 = " + dev["wb-gpio/EXT3_IN16"] );
if (dev["wb-gpio/EXT3_IN16"] != true) {
log.info("powervalve.js / powervalve = " + newValue);
dev["wb-gpio"]["EXT6_ON1"] = newValue;
dev["wb-gpio"]["EXT6_ON2"] = newValue;
//dev["wb-gpio"]["EXT6_ON3"] = newValue;
dev["wb-gpio"]["EXT6_ON4"] = newValue;
if (timerPowerValve){
clearTimeout(timerPowerValve);
timerPowerValve = null;
}
timerPowerValve = setTimeout(function () {
dev["Virtual"]["PowerValve"] = false;
}, 120000)
}
те виртуальный переключатель если переключить и снята блокировка, то подается/сниматеся питание. Когда ввел вывод состояния в лог очень удивился:
2022-09-21 12:29:55powervalve.js / powervalve = true wb-gpio/EXT3_IN16 = true
-
если посмотреть историю то значения также застыли в true
-
Перезагружаюсь. См. после перезагрузки состояние
root@wirenboard-A76QND3Y:~# cat /sys/kernel/debug/gpio
gpiochip0: GPIOs 0-31, parent: platform/209c000.gpio, 209c000.gpio:
gpio-10 ( |mod2_sda_pullup ) in lo ACTIVE LOW
gpio-11 ( |onewire_w2 ) out hi
gpio-13 ( |pu ) out lo
gpio-22 ( |rts ) out lo
gpio-23 ( |sysfs ) out lo
gpio-26 ( |rts ) out lo
gpio-27 ( |wb-mqtt-gpio ) out hi
gpio-30 ( |scl ) out hi
gpio-31 ( |sda ) in hi
gpiochip1: GPIOs 32-63, parent: platform/20a0000.gpio, 20a0000.gpio:
gpio-48 ( |i2c_rtc ) out hi
gpio-49 ( |i2c_rtc ) out hi
gpio-51 ( |watchdog ) out lo
gpiochip2: GPIOs 64-95, parent: platform/20a4000.gpio, 20a4000.gpio:
gpio-66 ( |rts ) out lo
gpio-67 ( |i2c_eeprom1 ) out hi
gpio-68 ( |wb-mqtt-gpio ) in hi ACTIVE LOW
gpio-70 ( |i2c_eeprom2 ) out hi
gpio-71 ( |i2c_eeprom2 ) out hi
gpio-72 ( |wb-mqtt-gpio ) in hi
gpio-73 ( |wb-mqtt-gpio ) out hi
gpio-74 ( |regulators:regulator) out hi
gpio-76 ( |i2c_eeprom1 ) out hi
gpio-77 ( |wb-mqtt-gpio ) in hi ACTIVE LOW
gpio-78 ( |wb-mqtt-gpio ) in hi ACTIVE LOW
gpio-79 ( |wb-mqtt-gpio ) out hi
gpio-80 ( |wb-mqtt-gpio ) out hi
gpio-81 ( |wb-mqtt-gpio ) out hi
gpio-82 ( |wb-mqtt-gpio ) out hi
gpio-91 ( |wb-mqtt-gpio ) in hi ACTIVE LOW
gpio-92 ( |wb-mqtt-gpio ) in hi ACTIVE LOW
gpiochip3: GPIOs 96-127, parent: platform/20a8000.gpio, 20a8000.gpio:
gpio-107 ( |regulators:regulator) out hi
gpio-108 ( |spi2 CS0 ) out hi ACTIVE LOW
gpio-112 ( |w1_reg_pu_dummy ) out lo
gpio-116 ( |sysfs ) out hi
gpio-119 ( |sysfs ) out hi
gpiochip4: GPIOs 128-159, parent: platform/20ac000.gpio, 20ac000.gpio:
gpio-128 ( |sysfs ) out hi
gpio-129 ( |phy-reset ) out hi
gpio-130 ( |sysfs ) out hi
gpiochip8: GPIOs 184-191, parent: i2c/1-0024, mcp23008, can sleep:
gpio-184 (EXT4_R3A1 |wb-mqtt-gpio ) out lo
gpio-185 (EXT4_R3A2 |wb-mqtt-gpio ) out lo
gpio-186 (EXT4_R3A3 |wb-mqtt-gpio ) out lo
gpio-187 (EXT4_R3A4 |wb-mqtt-gpio ) out lo
gpio-188 (EXT4_R3A5 |wb-mqtt-gpio ) out lo
gpio-189 (EXT4_R3A6 |wb-mqtt-gpio ) out lo
gpio-190 (EXT4_R3A7 |wb-mqtt-gpio ) out hi
gpio-191 (EXT4_R3A8 |wb-mqtt-gpio ) out lo
gpiochip9: GPIOs 192-199, parent: i2c/1-0020, mcp23008, can sleep:
gpio-192 (EXT5_R3A1 |wb-mqtt-gpio ) out lo
gpio-193 (EXT5_R3A2 |wb-mqtt-gpio ) out hi
gpio-194 (EXT5_R3A3 |wb-mqtt-gpio ) out hi
gpio-195 (EXT5_R3A4 |wb-mqtt-gpio ) out lo
gpio-196 (EXT5_R3A5 |wb-mqtt-gpio ) out lo
gpio-197 (EXT5_R3A6 |wb-mqtt-gpio ) out lo
gpio-198 (EXT5_R3A7 |wb-mqtt-gpio ) out lo
gpio-199 (EXT5_R3A8 |wb-mqtt-gpio ) out hi
gpiochip10: GPIOs 200-207, parent: i2c/1-0021, mcp23008, can sleep:
gpio-200 (EXT6_DIR1 |wb-mqtt-gpio ) out lo
gpio-201 (EXT6_ON1 |wb-mqtt-gpio ) out lo
gpio-202 (EXT6_DIR2 |wb-mqtt-gpio ) out lo
gpio-203 (EXT6_ON2 |wb-mqtt-gpio ) out lo
gpio-204 (EXT6_DIR3 |wb-mqtt-gpio ) out hi
gpio-205 (EXT6_ON3 |wb-mqtt-gpio ) out hi
gpio-206 (EXT6_DIR4 |wb-mqtt-gpio ) out hi
gpio-207 (EXT6_ON4 |wb-mqtt-gpio ) out lo
gpiochip5: GPIOs 256-271, parent: i2c/1-0027, mcp23017, can sleep:
gpio-256 (EXT1_DR1 |wb-mqtt-gpio ) in lo IRQ
gpio-257 (EXT1_DR2 |wb-mqtt-gpio ) in lo IRQ
gpio-258 (EXT1_DR3 |wb-mqtt-gpio ) in lo IRQ
gpio-259 (EXT1_DR4 |wb-mqtt-gpio ) in lo IRQ
gpio-260 (EXT1_DR5 |wb-mqtt-gpio ) in lo IRQ
gpio-261 (EXT1_DR6 |wb-mqtt-gpio ) in lo IRQ
gpio-262 (EXT1_DR7 |wb-mqtt-gpio ) in lo IRQ
gpio-263 (EXT1_DR8 |wb-mqtt-gpio ) in lo IRQ
gpio-264 (EXT1_DR9 |wb-mqtt-gpio ) in lo IRQ
gpio-265 (EXT1_DR10 |wb-mqtt-gpio ) in lo IRQ
gpio-266 (EXT1_DR11 |wb-mqtt-gpio ) in lo IRQ
gpio-267 (EXT1_DR12 |wb-mqtt-gpio ) in lo IRQ
gpio-268 (EXT1_DR13 |wb-mqtt-gpio ) in lo IRQ
gpio-269 (EXT1_DR14 |wb-mqtt-gpio ) in lo IRQ
gpiochip6: GPIOs 296-311, parent: i2c/1-0026, mcp23017, can sleep:
gpio-296 (EXT2_DR1 |wb-mqtt-gpio ) in lo IRQ
gpio-297 (EXT2_DR2 |wb-mqtt-gpio ) in lo IRQ
gpio-298 (EXT2_DR3 |wb-mqtt-gpio ) in lo IRQ
gpio-299 (EXT2_DR4 |wb-mqtt-gpio ) in lo IRQ
gpio-300 (EXT2_DR5 |wb-mqtt-gpio ) in lo IRQ
gpio-301 (EXT2_DR6 |wb-mqtt-gpio ) in lo IRQ
gpio-302 (EXT2_DR7 |wb-mqtt-gpio ) in lo IRQ
gpio-303 (EXT2_DR8 |wb-mqtt-gpio ) in lo IRQ
gpio-304 (EXT2_DR9 |wb-mqtt-gpio ) in lo IRQ
gpio-305 (EXT2_DR10 |wb-mqtt-gpio ) in lo IRQ
gpio-306 (EXT2_DR11 |wb-mqtt-gpio ) in lo IRQ
gpio-307 (EXT2_DR12 |wb-mqtt-gpio ) in lo IRQ
gpio-308 (EXT2_DR13 |wb-mqtt-gpio ) in lo IRQ
gpio-309 (EXT2_DR14 |wb-mqtt-gpio ) in lo IRQ
gpiochip7: GPIOs 336-351, parent: i2c/1-0025, mcp23017, can sleep:
gpio-336 (EXT3_IN1 |wb-mqtt-gpio ) in lo IRQ
gpio-337 (EXT3_IN2 |wb-mqtt-gpio ) in lo IRQ
gpio-338 (EXT3_IN3 |wb-mqtt-gpio ) in lo IRQ
gpio-339 (EXT3_IN4 |wb-mqtt-gpio ) in lo IRQ
gpio-340 (EXT3_IN5 |wb-mqtt-gpio ) in lo IRQ
gpio-341 (EXT3_IN6 |wb-mqtt-gpio ) in lo IRQ
gpio-342 (EXT3_IN7 |wb-mqtt-gpio ) in lo IRQ
gpio-343 (EXT3_IN8 |wb-mqtt-gpio ) in lo IRQ
gpio-344 (EXT3_IN9 |wb-mqtt-gpio ) in lo IRQ
gpio-345 (EXT3_IN10 |wb-mqtt-gpio ) in lo IRQ
gpio-346 (EXT3_IN11 |wb-mqtt-gpio ) in lo IRQ
gpio-347 (EXT3_IN12 |wb-mqtt-gpio ) in lo IRQ
gpio-348 (EXT3_IN13 |wb-mqtt-gpio ) in lo IRQ
gpio-349 (EXT3_IN14 |wb-mqtt-gpio ) in lo IRQ
gpio-350 (EXT3_IN15 |wb-mqtt-gpio ) in lo IRQ
gpio-351 (EXT3_IN16 |wb-mqtt-gpio ) in lo IRQ
обращаю внимание на EXT6 - посмотрите до (false) и после (true), также сообщаю что до перезагрузки в WUI данные контролы были false.
Так откуда берутся значения после старта?
Что приводит к одномоментной установыки hi на дискретах?
Жду рекомендаций