Forum: USB Connectivity Issues
- Hits: 2014
In our testing we have not seen widespread USB connectivity issues (but that does not mean there is not a problem -we have just not been able to reproduce it reliably). One of the primary differences that I have observed is the USB connections. On our test robots, we made sure we properly secured and strain relieved all of the USB cables and we also secured the phones and electronic modules. We suspect that some of the connectivity issues (when not attributed to faulty/defective hardware) are caused by loose/vibrating cables. In particular the cable that is shipped with the Power MOdule (the one that connects the Android phone's Micro USB port to the Power Module's mini USB port) in our testing seemed to cause problems occasionally, particularly with the early production/prototype cables that were provided to us by Modern Robotics.
dmssargent's suggestion to try new USB cables and adapters is not a bad idea if there budget for additional cables. However, before you replace the cables, I would first make sure the modules are properly mounted to the robot (you don't want them vibrating or moving). I would also make sure the phone is secure and does not vibrate/move too much and I would make sure the cable connections are secure. We often zip tie them so they will not shake loose during a match.
I suspect that in some cases, the connector cable between the phone and the power module might shake loose which can cause comm errors. In our demo and tests, we do not usually use this connector cable that came with the power module. We often use a Monoprice USB Micro OTG adapter (like the kind used for the driver station and game pads) and a Monoprice Mini USB (gold tipped with ferrite chokes) cable. You can use electrical tape to securely fasten the adatper to the USB cable, then strain relieve both ends of the cable so the connection will not come loose during a match.
Unfortunately, the micro USB port on the phone isn't as secure a connector as the RJ-45 style connectors of the LEGO NXT, but it is the type of connector that we have to work with (by law, smartphones in the European Union and other countries are required to have this type of connector to reduce the amount of electronic waste produced annually).
Here is a link to the Monoprice cables we typically use for our test and demo robots:
Monoprice micro USB OTG adapter:
Here's the monoprice mini usb cable we used to connect the phone to the OTG adapter (and then to the power module):
We also use the mini usb cable listed above (in different lengths) to connect the USB modules (servo, DC motor, legacy, and core device interface module) to the Power Module.
If you do encounter issues, please try and note the date and time and capture the robot controller's log file so we can take a look and see if there is any information revealed. we have sample log files from the NH demo issue (where the team's robot was experiencing mysterious disconnects until we replaced the cables and secured them). We can compare your log files to the ones we captured and see if there are similar patterns in the file.
Hope this info helps.