We have made our own hardware based on the mangoh design and have been experiencing some problems with the USB hub stopping working after some time. After quite a lot of testing we have identified that it only happens when the USB hub is left lonely without any slave devices connected. We have therefore, in order to investigate if it were a problem with our hardware or something also present on the mangoh boards, removed the CP2130 USB->SPI adapter (U1006) from the mangoh board and then tried attaching and detaching (actually keeping it connected but cutting power to the peripheral) a camera from usb numerous times in a row while monitoring the output of “lsusb –t”. After a number of on/off cycles of the peripheral the USB hub is removed from the lsusb –t output.
Our question is therefore:
• Have anyone else seen this issue and what have you done to overcome it?
• Are there any way to reset the USB hub and reenumerate it when it goes into this state of not connected (we have the possibility to move the reset signal from reset_out from the SOM to a gpio and thereby control it by software).
• Any other idea of what we can do? USB is rather critical for our product and we do not have time for a hardware spin to attach a dummy device to the USB hub. Currently the I2C bus of the SOM isn’t connected to the USB hub in our hardware, but we can do so in a last resort (even though it will need manual hardware modifications of all devices shipped before a hardware spin).