Rose debug info
---------------

Управление питанием USB на OrangePi

При использовании апельсинки в качестве роутера с модемом Huawei, модем периодически зависал, причем не помогала даже перезагрузка апельсины. Проблему решало только физическое передергивание питания модема, что не всегда возможно ввиду отсутствия кого-либо в месте установки этого устройства. Я хотел уже городить какие-то костыли на реле и прочее, но наткнулся на эту тему.

В общем апельсина умеет выключать и включать питание на otg разъеме. Нужно только его включить и воткнуть свисток через переходник типа этого

Запускаем armbian-config, там проходим в Sytem — Dtc
Видим редактор, там находим usb@1c19000, редактируем

status = "okay";

Находим usb0-vbus и редактируем

gpio = <0x00 0x02 0x00>;

Сохраняем, закрываем и компилируем.
Ребутимся.
При включение активируем управление otg

/usr/bin/echo "354" | /usr/bin/tee /sys/class/gpio/export
/usr/bin/echo "out" | /usr/bin/tee /sys/class/gpio/gpio354/direction

Чтобы включить питание usb

/usr/bin/echo "1" | /usr/bin/tee /sys/class/gpio/gpio354/value

Чтобы выключить питание usb

/usr/bin/echo "0" | /usr/bin/tee /sys/class/gpio/gpio354/value

Теперь можно написать небольшой скрипт, который при отсутствии интернета отключит питание на usb и через несколько секунд включит обратно...

Поделиться
Отправить
Запинить
2023   3g   4g   huawei   modem   orangepi