LINUX.ORG.RU
Форум — Admin  

Есть ли возможность отключить питание на USB?

 , ,


3

3

Добрый день, есть устройство (Атол) - pos терминал, на борту ubuntu 16.04. Есть сканер ШК - Haneywell 1250g. Суть проблемы: сканер при выключении, включении системы не включается сам, если его передернуть из USB то все хорошо.

Каждый раз, при включении, передергивать его - не хорошо, хочеться автоматизировать сей процесс..

Причем в системе он не определяется (пока не передернешь его). Есть ли возможность отключить питание на USB порты?

Ответ на: комментарий от Aceler

Видел это, ошибка при выполнении команды:

echo suspend > /sys/bus/usb/devices/usb1/power/level
bash: echo: ошибка записи: Недопустимый аргумент

vsafonin ★
() автор топика
Ответ на: комментарий от vsafonin

Значит, хаб не поддерживает управление питанием. Что вряд ли, скорее всего ты дёргаешь не то устройство.

Aceler ★★★★★
()
Ответ на: комментарий от Aceler

Что то я не понимаю..

lsusb -t
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
        |__ Port 4: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 12M
        |__ Port 4: Dev 4, If 1, Class=Human Interface Device, Driver=usbhid, 12M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M

хочу отключить bus 1,

пытался к второй шине подключить..тот же результат..

lspci | grep USB
00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 05)
00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 05)

где глянуть поддерживает ли hub управление питанием? хотя точно поддерживает, это ноутбук..через laptop-mode-tools USB то отключаются...

vsafonin ★
() автор топика

Есть ли возможность отключить питание на USB порты?

Питание нет. Сам долго думал что такое возможно, оказался не прав. Подобная тема уже была здесь.

anc ★★★★★
()
Ответ на: комментарий от greenman

Купить

https://www.yepkit.com/products/ykush — €29.94

Либо колхозить

https://befinitiv.wordpress.com/2014/02/02/hacking-per-port-power-switching-t...

(советую посмотреть и комментарии к статье)

greenman ★★★★★
()
Последнее исправление: greenman (всего исправлений: 1)

Отключай питание на шине PCI-E на которой висит этот USB. Только убедись, что шина не нулевая.

soomrack ★★★★★
()
Ответ на: комментарий от greenman

https://superuser.com/questions/366282/how-do-i-disconnect-the-power-from-a-u...

The advice found in some places about echoing on and suspend to /sys/bus/usb/devices/usb?/power/level does not really remove power from the USB host port, it merely requests the device to go into suspend mode, and vice-versa.

https://stackoverflow.com/questions/4702216/controlling-a-usb-power-supply-on...

https://unix.stackexchange.com/questions/165447/turning-off-power-to-usb-port...

for newer kernels «suspend» does not work anymore:

echo "0" > "/sys/bus/usb/devices/usbX/power/autosuspend_delay_ms"
echo "auto" > "/sys/bus/usb/devices/usbX/power/control"
But it doesn't literally cut the power, it signals the device to poweroff, it's up to the device to implement power management and do the rigth thing.

greenman ★★★★★
()
Последнее исправление: greenman (всего исправлений: 3)
Ответ на: комментарий от soomrack
echo 1 > /sys/bus/pci/devices/0000\:00\:1d.0/remove 

устройства отключаются, но питание не убирается до конца... в итоге сканер не реагирует..

Похоже задача не решаемая..Только доп оборудование докупать..либо эти сканеры обратно поставщику куда нить засунуть вернуть

vsafonin ★
() автор топика
Ответ на: комментарий от greenman

Тот же результат...вчера пытался еще..питание с USB не уходит.. Причем сейчас тестировал на своем ноуте, у меня устройство нормально при включении/выключении питания включается...видимо это какой то прикол pos терминала Атол.. Похоже проще купить hub с кнопкой питания...пользователя обучить ее нажимать..

vsafonin ★
() автор топика
Ответ на: комментарий от vsafonin

echo 1 > /sys/bus/pci/devices/0000\:00\:1d.0/remove

Я же сказал, не нулевая шина! Ты ее по факту не отрубаешь, хоть и думаешь, что отключил.

soomrack ★★★★★
()

man hub-ctrl
Все эти suspend-ы через devfs нифига нормально не работают.
Но и hub-ctrl тебе поможет только в том случае, если в железке присутствуют свичи для включения/отключения питания.
С рутовым хабом hub-ctrl, кстати, тоже работает.

anonymous
()
Ответ на: комментарий от soomrack

Возможно туплю, но:

ls /sys/bus/pci/devices/
0000:00:00.0/ 0000:00:1b.0/ 0000:00:1c.5/ 0000:00:1f.3/ 0000:07:00.0/
0000:00:02.0/ 0000:00:1c.0/ 0000:00:1d.0/ 0000:03:00.0/ 
0000:00:16.0/ 0000:00:1c.1/ 0000:00:1f.0/ 0000:06:00.0/ 
0000:00:1a.0/ 0000:00:1c.4/ 0000:00:1f.2/ 0000:06:00.1/

vsafonin ★
() автор топика
Ответ на: комментарий от vsafonin

0000:00:* — это нулевая шина, оборудование на ней отключить не получится.

Поэтому ищи USB на других шинах, если нет — втыкай допплату.

PS: я при пробросе в виртуалки с этим много возился.

soomrack ★★★★★
()
Ответ на: комментарий от Vlad-76

Программно. Но! Практически отключить питание на USB, например на материнках gigabyte точно, невозможно. 5 вольт там подаются с дежурки блока питания. Модем у меня дергается шиной data. К сожалению не все устройства реагируют на пропадание напряжение на линиях данных.

SergeySVold ★★★★★
()
Вы не можете добавлять комментарии в эту тему: топик перемещен в архив.