после добавления всего парка устройств в вебморде появился wbio-ao-10v-8, но не реагирует на изменение значений
@Bringer скажите пожалуйста, есть ли сроки выпуска исправления?
Прошу прощения за долгий ответ.
Я так понимаю, что по сути после обновления ничего не изменилось.
А версия прошивки теперь актуальная отображается в интерфейсе?
Пока нет, во вторник ещё уточню информацию.
Сейчас пока соберём стенд для воспроизведения вашей ситуации.
да, ничего не поменялось
скажите пожалуйста есть ли понимание?
Баг с модулем WBIO-AO-10V-8 планируем починить через 1,5 недели.
С модулем WBIO-DO-R1G-16 не удалось воспроизвести.
Уточните, пожалуйста, с WBIO-DO-R1G-16 проблема возникает даже в том случае, когда он один подключен, без WBIO-AO-10V-8?
да
Проблему WBIO-AO-10V-8 починили в testing добавили, также аналогичную проблему WBIO-DO-R1G-16 тоже должны были решить. Можете на testing перейти проверить?
Err:6 http://deb.wirenboard.com/wb8/bullseye testing/main arm64 wb-release-info all 1.0-testing~wb8+bullseye~20240809112937
404 Not Found [IP: 188.114.97.1 80]
Fetched 3181 kB in 1s (2138 kB/s)
E: Failed to fetch http://deb.wirenboard.com/wb8/bullseye/pool/main/w/wb-release-info/wb-release-info_1.0-testing~wb8%2Bbullseye~20240809112937_all.deb 404 Not Found [IP: 188.114.97.1 80]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
обновился… WBIO-DO-R1G-16 заработал нормально, больше не отваливается, а вот WBIO-AO-10V-8 по прежнему не работает
upd все так же не работает
Прошу прощения, попытались воспроизвести, возникли сложности, будем продолжать исправлять.
добрый день, есть ли ориентировочные сроки?
Обновите пакеты, перезапустите контроллер и пришлите пожалуйста диагностический архив.
Пробую воспроизвести.
Использую WB8.4, релиз 2404 stable.
Подключил модуль WBIO-AO-10V-8 первым, сконфигурировал его.
Ожидаю: появления в интерфейсе соответствующих контролов.
Регулирую, ожидаю изменения напряжения на выходах.
Напряжение не меняется. Так, смотрю глубже.
Проверяю, в /var/lib/wb-mqtt-dac/conf.d/system.conf с виду все верно.
Смотрю:
ls /sys/bus/iio/devices/iio\:device*
'/sys/bus/iio/devices/iio:device0':
in_temp5_BOARD_label in_voltage0_IN_label in_voltage10_ADC5_label in_voltage11_ADC6_label in_voltage1_3V3_label in_voltage2_5V_label in_voltage3_VBUS_CONSOLE_label in_voltage4_VBUS_NETWORK_label in_voltage6_ADC1_label in_voltage7_ADC2_label in_voltage8_ADC3_label in_voltage9_ADC4_label name subsystem
in_temp5_BOARD_raw in_voltage0_IN_raw in_voltage10_ADC5_raw in_voltage11_ADC6_raw in_voltage1_3V3_raw in_voltage2_5V_raw in_voltage3_VBUS_CONSOLE_raw in_voltage4_VBUS_NETWORK_raw in_voltage6_ADC1_raw in_voltage7_ADC2_raw in_voltage8_ADC3_raw in_voltage9_ADC4_raw of_node uevent
in_temp5_BOARD_scale in_voltage0_IN_scale in_voltage10_ADC5_scale in_voltage11_ADC6_scale in_voltage1_3V3_scale in_voltage2_5V_scale in_voltage3_VBUS_CONSOLE_scale in_voltage4_VBUS_NETWORK_scale in_voltage6_ADC1_scale in_voltage7_ADC2_scale in_voltage8_ADC3_scale in_voltage9_ADC4_scale power waiting_for_supplier
'/sys/bus/iio/devices/iio:device1':
in_voltage0_raw in_voltage0_scale name of_node power subsystem uevent waiting_for_supplier
'/sys/bus/iio/devices/iio:device10':
in_current1_raw in_current1_scale in_current2_raw in_current2_scale in_temp_offset in_temp_raw in_temp_scale in_voltage0_raw in_voltage0_scale in_voltage1_raw in_voltage1_scale of_node power subsystem uevent waiting_for_supplier
'/sys/bus/iio/devices/iio:device11':
name out_voltage0_raw out_voltage1_raw out_voltage2_raw out_voltage3_raw out_voltage4_raw out_voltage5_raw out_voltage6_raw out_voltage7_raw subsystem
of_node out_voltage0_scale out_voltage1_scale out_voltage2_scale out_voltage3_scale out_voltage4_scale out_voltage5_scale out_voltage6_scale out_voltage7_scale uevent
out_voltage0_powerdown out_voltage1_powerdown out_voltage2_powerdown out_voltage3_powerdown out_voltage4_powerdown out_voltage5_powerdown out_voltage6_powerdown out_voltage7_powerdown out_voltage_powerdown_mode_available waiting_for_supplier
out_voltage0_powerdown_mode out_voltage1_powerdown_mode out_voltage2_powerdown_mode out_voltage3_powerdown_mode out_voltage4_powerdown_mode out_voltage5_powerdown_mode out_voltage6_powerdown_mode out_voltage7_powerdown_mode power
'/sys/bus/iio/devices/iio:device2':
in_voltage0_raw in_voltage0_scale name of_node power subsystem uevent waiting_for_supplier
'/sys/bus/iio/devices/iio:device3':
in_voltage0_raw in_voltage0_scale name of_node power subsystem uevent waiting_for_supplier
'/sys/bus/iio/devices/iio:device4':
in_voltage0_raw in_voltage0_scale name of_node power subsystem uevent waiting_for_supplier
'/sys/bus/iio/devices/iio:device5':
in_voltage0_raw in_voltage0_scale name of_node power subsystem uevent waiting_for_supplier
'/sys/bus/iio/devices/iio:device6':
in_voltage0_raw in_voltage0_scale name of_node power subsystem uevent waiting_for_supplier
'/sys/bus/iio/devices/iio:device7':
in_voltage0_raw in_voltage0_scale name of_node power subsystem uevent waiting_for_supplier
'/sys/bus/iio/devices/iio:device8':
in_voltage0_raw in_voltage0_scale name of_node power subsystem uevent waiting_for_supplier
'/sys/bus/iio/devices/iio:device9':
in_voltage0_raw in_voltage0_scale name of_node power subsystem uevent waiting_for_supplier
Судя по именам - искомое ‘/sys/bus/iio/devices/iio:device11’
Убеждаюсь, читаю что в них:
cat /sys/bus/iio/devices/iio\:device11/out_voltage*_raw
512
512
512
512
512
512
512
512
И попробую записать:
echo 999 > /sys/bus/iio/devices/iio\:device11/out_voltage5_raw
root@wirenboard-AYK5U4TB:~# echo 999 > /sys/bus/iio/devices/iio\:device11/out_voltage1_raw
root@wirenboard-AYK5U4TB:~# echo 999 > /sys/bus/iio/devices/iio\:device11/out_voltage2_raw
root@wirenboard-AYK5U4TB:~# echo 999 > /sys/bus/iio/devices/iio\:device11/out_voltage3_raw
root@wirenboard-AYK5U4TB:~# echo 999 > /sys/bus/iio/devices/iio\:device11/out_voltage4_raw
root@wirenboard-AYK5U4TB:~# echo 999 > /sys/bus/iio/devices/iio\:device11/out_voltage5_raw
root@wirenboard-AYK5U4TB:~# echo 999 > /sys/bus/iio/devices/iio\:device11/out_voltage6_raw
root@wirenboard-AYK5U4TB:~# echo 999 > /sys/bus/iio/devices/iio\:device11/out_voltage7_raw
root@wirenboard-AYK5U4TB:~# echo 999 > /sys/bus/iio/devices/iio\:device11/out_voltage0_raw
Отлично, напряжение появилось. Посмотрим, что и куда пишет скрипт.
Так, что странно, с наименованиями не то. Пишу в /sys/bus/iio/devices/iio:device11/out_voltage7_raw - а регулируется на 5 выходе.
Вижу что при изменении контролов скрипт пишет (пытается) в
Aug 19 14:48:54 wirenboard-AYK5U4TB wb-rules[25447]: /bin/sh: 1: cannot create /sys/bus/iio/devices/iio:device1/out_voltage3_raw: Permission denied
а значит смотрим где формируется путь.
Ну, в общем вся проблема в том что в скрипте /usr/share/wb-rules-system/rules/wb-mqtt-dac.js
в строчке
var num = path[path.length - '/of_node/name'.length - 1];
неверно вычисляется (образется) номер. То есть вместо “11” получается “1”.
Собственно достаточно заменить эту строку в скрипте двумя:
var num = path.substr("/sys/bus/iio/devices/iio:device".length, 2);
num = num.replace('/','');
И все работает.
да, действительно после обновления все заработало, спасибо
остался вопрос по WBIO-DO-R1G-16, его можно решить в рамках этой темы или создать новую?
Не совсем понятно что именно не работает так, как должно? Если вопрос не касается WBIO-AO-10V-8 то лучше в отдельной теме, конечно.
Обсуждаемый модуль, описание бага отдано разработчикам, думаю что нормальный фикс, не костыли которыми я диагностировал, будет сделан в ближайшее время, скорее всего на этой неделе.