Автор Гілка: Після перезапуску ДБЖ система його більше не бачить  (Прочитано 6211 раз)

Відсутній Ratatoskr

  • Новачок
  • *
  • дописів: 1
  • Карма: +0/-0
Дано:

1) Материнка: Asus PRIME B365M-A;
2) ДБЖ: Powercom IMD-2000AP, під'єднаний по USB;
3) ОС: Debian 10, ядро v5.10.127-2~bpo10+1 (2022-07-28);
4) NUT v2.7.4.

maxretry = 3

[pcmups]
driver = usbhid-ups
pollonly
pollfreq = 5
port = auto

default.battery.charge.low = 70
default.ups.timer.shutdown = 60
default.ups.timer.start = 120
offdelay = 60
ondelay = 120

ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="0d9f", ATTR{idProduct}=="0004", MODE="0770", GROUP="nut"
$ upsc pcmups@localhost

Init SSL without certificate database
battery.charge: 87
battery.charge.low: 70
battery.charge.warning: 30
battery.date: 2010/12/20
battery.runtime: 688
battery.type: PbAc
device.mfr: POWERCOM Co.,LTD
device.model: HID UPS Battery
device.serial: 004-0D9F-000
device.type: ups
driver.flag.pollonly: enabled
driver.name: usbhid-ups
driver.parameter.offdelay: 60
driver.parameter.ondelay: 120
driver.parameter.pollfreq: 5
driver.parameter.pollinterval: 2
driver.parameter.port: auto
driver.parameter.synchronous: no
driver.version: 2.7.4
driver.version.data: PowerCOM HID 0.5
driver.version.internal: 0.41
input.frequency: 50.0
input.voltage: 238.0
input.voltage.nominal: 220
output.frequency: 50.0
output.voltage: 206.0
output.voltage.nominal: 220
ups.beeper.status: enabled
ups.date: 2010/12/20
ups.delay.shutdown: 60
ups.delay.start: 120
ups.load: 3
ups.mfr: POWERCOM Co.,LTD
ups.model: HID UPS Battery
ups.productid: 0004
ups.serial: 004-0D9F-000
ups.status: OL CHRG TRIM
ups.test.result: Done and passed
ups.timer.shutdown: 60
ups.timer.start: 120
ups.vendorid: 0d9f

Все працює як треба, але виявилась така проблема:

після перезапуску UPS, драйвер usbhid-ups більше його не бачить. Допомагає тільки ручне відключеня USB-кабеля UPS на ≥10 хв. і перезапуск всіх юнітів підсистеми NUT. Після цього все працює відмінно. Усе працює і після перезапусків ОС, але варто повністю вимкнути і потім ввімкнути саме UPS - одразу виходить так:

$ sudo dmesg | grep "usb 1-11"
[ 2.845349] usb 1-11: new low-speed USB device number 7 using xhci_hcd
[ 3.002225] usb 1-11: New USB device found, idVendor=0d9f, idProduct=0004, bcdDevice= 0.01
[ 3.004903] usb 1-11: New USB device strings: Mfr=3, Product=1, SerialNumber=2
[ 3.007611] usb 1-11: Product: HID UPS Battery
[ 3.010249] usb 1-11: Manufacturer: POWERCOM Co.,LTD
[ 3.012874] usb 1-11: SerialNumber: 004-0D9F-000
[ 11.318662] usb 1-11: usbfs: USBDEVFS_CONTROL failed cmd usbhid-ups rqt 128 rq 6 len 255 ret -71
[ 11.319107] usb 1-11: usbfs: USBDEVFS_CONTROL failed cmd usbhid-ups rqt 128 rq 6 len 255 ret -71
[ 11.319555] usb 1-11: usbfs: USBDEVFS_CONTROL failed cmd usbhid-ups rqt 128 rq 6 len 255 ret -71
[ 11.320172] usb 1-11: usbfs: USBDEVFS_CONTROL failed cmd usbhid-ups rqt 129 rq 6 len 9 ret -71
[ 11.320664] usb 1-11: usbfs: USBDEVFS_CONTROL failed cmd usbhid-ups rqt 129 rq 6 len 966 ret -71
[ 17.934109] usb 1-11: usbfs: USBDEVFS_CONTROL failed cmd usbhid-ups rqt 128 rq 6 len 255 ret -71
[ 17.934653] usb 1-11: usbfs: USBDEVFS_CONTROL failed cmd usbhid-ups rqt 128 rq 6 len 255 ret -71
[ 17.935149] usb 1-11: usbfs: USBDEVFS_CONTROL failed cmd usbhid-ups rqt 128 rq 6 len 255 ret -71
[ 17.935761] usb 1-11: usbfs: USBDEVFS_CONTROL failed cmd usbhid-ups rqt 129 rq 6 len 9 ret -71
[ 17.936270] usb 1-11: usbfs: USBDEVFS_CONTROL failed cmd usbhid-ups rqt 129 rq 6 len 966 ret -71
або взагалі так:
[ 2.781606] usb 1-11: new low-speed USB device number 7 using xhci_hcd
[ 2.913721] usb 1-11: device descriptor read/64, error -71
[ 3.149725] usb 1-11: device descriptor read/64, error -71
[ 3.385606] usb 1-11: new low-speed USB device number 8 using xhci_hcd
[ 3.517724] usb 1-11: device descriptor read/64, error -71
[ 3.753730] usb 1-11: device descriptor read/64, error -71
[ 4.273606] usb 1-11: new low-speed USB device number 9 using xhci_hcd
[ 4.295426] usb 1-11: device descriptor read/all, error 0
[ 4.425606] usb 1-11: new low-speed USB device number 10 using xhci_hcd
[ 4.447431] usb 1-11: device descriptor read/all, error 0

Порт і кабель змінював, стару схему ініціалізації (options usbcore use_both_schemes=y) та Legacy USB Support у UEFI вмикав - усе те саме. Скинути або вимкнути-ввімкнути порт програмно не вийде, бо відповідні файли пристрою у /sys/bus/usb/drivers/usb/ просто відсутні. Хіба що весь usb-хаб перезапустити, але тоді це торкнеться і інших портів з пристроями аж на 10 хв. - не варіант.

Вже втомився шукати вирішення проблеми, читати матеріали і тестувати, тому звертаюсь до форумів.

Дякую за увагу.


UPDATE-1: Тиша... Невже ніхто не мав справ з Powercom'ами? Щось не віриться.

UPDATE-2: Проблема почала з'являтись і після перезавантаження ОС, але у випадковому порядку. Ні - це точно не кабель, бо вже спробував новий із феритовими кільцями на кінцях - усе те саме. Поки що підпер дрючком: сценарій з usbreset + usb_modeswitch + програмне вмикання-вимикання головного usb-хабу. На перший погляд - працює. Подивлюсь що буде далі.

UPDATE-3: Стало набагато краще, але протягом тижня все ж таки трапилась пара випадків де дрючок не витримав та луснув. Ну що ж, залишилося спробувати зовнішній usb-хаб. Так от: помилок немає зовсім - і це дивно; кабель той же; напруга на всіх портах відрізняється макс. на 0.1 В, а так всюди ≥ 5.1 В; невже потужності не вистачало? Знову таки на перший погляд стало краще і все працює. Треба знову спостерігати...
[    2.013352] usb 1-1.2: new low-speed USB device number 4 using xhci_hcd
[    2.142817] usb 1-1.2: New USB device found, idVendor=0d9f, idProduct=0004, bcdDevice= 0.01
[    2.145403] usb 1-1.2: New USB device strings: Mfr=3, Product=1, SerialNumber=2
[    2.147968] usb 1-1.2: Product: HID UPS Battery
[    2.150570] usb 1-1.2: Manufacturer: POWERCOM Co.,LTD
[    2.153144] usb 1-1.2: SerialNumber: 004-0D9F-000
[    6.559697] usb 1-1.2: USB disconnect, device number 4
[    9.597360] usb 1-1.2: new low-speed USB device number 8 using xhci_hcd
[    9.730224] usb 1-1.2: New USB device found, idVendor=0d9f, idProduct=0004, bcdDevice= 0.01
[    9.736286] usb 1-1.2: New USB device strings: Mfr=3, Product=1, SerialNumber=2
[    9.737257] usb 1-1.2: Product: HID UPS Battery
[    9.738203] usb 1-1.2: Manufacturer: POWERCOM Co.,LTD
[    9.739165] usb 1-1.2: SerialNumber: 004-0D9F-000

« Змінено: 2022-11-18 12:27:45 від Ratatoskr »