iot-lab / iot-lab-yocto

IoT-LAB Yocto repository
13 stars 12 forks source link

recipes-support: add recipe for Yepkit USB power control devices #25

Closed aabadie closed 5 years ago

aabadie commented 5 years ago

Since controlling by software the USB ports of the RPI3 is not very reliable, I started to evaluate solutions based on external hardware.

Yepkit provides boards to do this very easily with open-source software.

schrein commented 5 years ago

So hub-ctrl is not enough ?

Le 22 oct. 2018 à 17:39, Alexandre Abadie notifications@github.com a écrit :

Since controlling by software the USB ports of the RPI3 is not very reliable, I started to evaluate solutions based on external hardware.

Yepkit https://www.yepkit.com/home provides boards to do this very easily with open-source software.

You can view, comment on, or merge this pull request online at:

https://github.com/iot-lab/iot-lab-yocto/pull/25 https://github.com/iot-lab/iot-lab-yocto/pull/25 Commit Summary

recipes-support: add ykush USB power control tool meta-iotlab/images: add ykush to gateway image File Changes

M meta-iotlab/recipes-core/images/iotlab-image-gateway-rpi3.bb https://github.com/iot-lab/iot-lab-yocto/pull/25/files#diff-0 (1) A meta-iotlab/recipes-support/ykush/ykush/fix_makefile.patch https://github.com/iot-lab/iot-lab-yocto/pull/25/files#diff-1 (25) A meta-iotlab/recipes-support/ykush/ykush_git.bb https://github.com/iot-lab/iot-lab-yocto/pull/25/files#diff-2 (20) Patch Links:

https://github.com/iot-lab/iot-lab-yocto/pull/25.patch https://github.com/iot-lab/iot-lab-yocto/pull/25.patch https://github.com/iot-lab/iot-lab-yocto/pull/25.diff https://github.com/iot-lab/iot-lab-yocto/pull/25.diff — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/iot-lab/iot-lab-yocto/pull/25, or mute the thread https://github.com/notifications/unsubscribe-auth/AAg9kWdxyyq9KLZ9XIfAliy0BSA1Xyo4ks5unebDgaJpZM4XznY1.

aabadie commented 5 years ago

So hub-ctrl is not enough ?

It works in most of the cases but the USB controller of the RPI3 has stability issues and it's not possible to control it reliably using hub-strl or uhubctl. From time to time it fails, it looks like a driver or kernel issue. The consequence of the controller failure is that one needs to reboot the PI and this is not an option on gateways. I want the USB port to be stoppable/startable at any time with 0% errors.

The external hardware solution gives good results for the moment and provides the possibility to control multiple usb devices independently. See https://github.com/iot-lab/iot-lab-gateway/pull/80 where it's already fully integrated in the gateway code.