USB problems all over the board.

110 views
Skip to first unread message

lennart rolland

unread,
May 1, 2015, 2:41:34 PM5/1/15
to ioio-...@googlegroups.com
Hi!

I just got my IOIO OTG (geeetech) and I was really psyked to get started with this.

Unfortunately I am having some issues that I was hoping someone more experience could shed some light on. What I did first:
  1. Ensured USB mode switch is set to A for automatic (I first rubbed the switch back and forth to ensure clean connectors and the made sure it was all the way in the A direction)
  2. Download and install 50-ioio.rules udev rules (I am on Ubuntu 14.04 x64).
  3. Rebooted to make sure udev rules were in effect.
  4. Type this command in a terminal to have real-time information about when the IOIO device exists (updated every 100 ms): watch -n.1 ls -halt /dev/IOIO*
  5. Connect the IOIO-OTG to an USB port on the laptop

What happens is the device shows up almost immediately. Good!

Next I try to use ioiodude

  1. Download and unzip latest (v1.02) ioiodude from here https://github.com/ytai/ioio/raw/master/release/apps/IOIODude-0102.zip
  2. Open new terminal and go to ioiodude directory
  3. Run command: ./ioiodude --port=/dev/IOIO0 versions

At this point I was expecting to see something like this:

IOIO Application detected.

Hardware version: SPRK0020
Bootloader version: IOIO0400
Application version: IOIO0330

But instead it just hangs indefinitely and nothing is output.

I let it wait for 10 minutes just to be sure. Nothing. I verify that the /dev/IOIO0 softlink is still present and the /dev/ttyACM0 device is also still present.

So next thing to try was bootloader mode. I did the following:

  1. Disconnect USB cable and verify that the /dev/IOIO0 and /dev/ttyACM0 disappear
  2. Put a jump wire from boot to gnd
  3. Re-connect USB cable and verify that the green led is on and /dev/IOIO0 and /dev/ttyACM0 are still missing
  4. Remove jump wire from boot to gnd
  5. Verify that green led blinks a few times (5?) then goes off.

Now in the documentation it states that the device should enumerate. It does but only for fractions of a second before disappearing again for many seconds and then flickering like this continuously (watch -n.1 made it possible to catch a glimpse of this).

It was suggested in docs that if USB was flaky this could be due to bad timing and it would be possible to recalibrate the oscillator, so I tried that:

  1. Disconnect USB cable and verify that the /dev/IOIO0 and /dev/ttyACM0 disappear
  2. Put a jump wire from boot to gnd
  3. Put a jump wire from pin1 to gnd
  4. Re-connect USB cable and verify that the green led is on and /dev/IOIO0 and /dev/ttyACM0 are still missing
  5. Remove jump wire from boot to gnd
  6. I tried both leaving the pin1 to gnd and removing it at this point. It did not matter which way I tried.

What happens now deviates somewhat from docs. Docs claim calibration would be indicated by a really quick blinking of the led, but the led is of for a few sec then it blinks the normal few (5?) times and then goes off again. After this it behaves just like the boot-loader mode described above with the flickering devices.

I decided to try with the app instead and installed the latest IOIOManager.apk on my fully charged HTC One M7 running Lollipop something (Android 5). I use this device for regular android development so all dev stuff was enabled already.

After selecting a file in the programmer it shows "Waiting for IOIO connection..." in yellow and does not allow me to continue.

I have repeated this with minute variations for a long time now. I have tried 6 (!!) USB cables, the shortest of which is 8 cm. I have tried all 7 USB ports on my main laptop (Lenovo W700) and all 3 on my secondary laptop (Clevo top spec). Reboots were made and hair was pulled out. So what is the first thing I should do next when troubleshooting this?

Thanks!


Ytai Ben-Tsvi

unread,
May 2, 2015, 3:29:39 AM5/2/15
to ioio-...@googlegroups.com

You seem to be doing everything right. Are the two machines running a different OS, just in case there's something word going on with that particular one?
Otherwise, I suggest you contact the seller. The main manufacturers have some process in place that ensures a certain level of manufacturing quality and every single unit being thoroughly tested before shipping. In your case it is hard to tell whether you have a defective board or there is another sort of systematic problem.

--
You received this message because you are subscribed to the Google Groups "ioio-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ioio-users+...@googlegroups.com.
To post to this group, send email to ioio-...@googlegroups.com.
Visit this group at http://groups.google.com/group/ioio-users.
For more options, visit https://groups.google.com/d/optout.

lennart rolland

unread,
May 8, 2015, 5:39:20 AM5/8/15
to ioio-...@googlegroups.com
Thanks for the reply, and thanks for affirming that I was doing the right thing™.

I am running both from ubuntu 14.04 x64. I don't have access to other O/S right now, and this is the O/S I was planning to use the device from. I will contact seller in any case.

lennart rolland

unread,
Jul 8, 2015, 11:27:15 PM7/8/15
to ioio-...@googlegroups.com
OK, so I ended up returning the device to supplier (dx.com) And since the RMA proces was extremely lengthy I decided to buy two new devices in the mean time. They arrived yesterday. This time I bought devices with bluetooth dongle included. They still look exactly the same (white PCB with IOIO otg branding).

This time I did not solder on the pin headers on one board to make sure it was 100% vanilla before testing. This did not matter.

So on the last board the ioiodude command did not work at all, however on these two devices it works (shows version numbers) for applications mode but NOT for bootloader mode. When I enable bootloader mode the device starts acting up during enumeration (device shows up in /dev once every 10 times  I run ls /dev/IOIO*), and ioiodude hangs indefinitely when trying to list versions. This time I have also tried it on a third laptop (Lenovo T61) to no avail. Also clearing the usb timing did not help (work at all)? There is mention in documentation about a quick flashing yellow light when synchronizing but my board seems only to have a green power led and a red stat led. Also the documentation is really fragmented between v1 and otg models. Before using ioiodude i did the whole ioiomanager app thing first before finally reading in the fine print that it would only work for v1 devices. Could this be the reason why my devices are bricked?

I am at loss here. The thought of having to go through dx.com RMA process again sends chills down my spine but I guess I have no choice.

Ytai Ben-Tsvi

unread,
Jul 8, 2015, 11:34:57 PM7/8/15
to ioio-...@googlegroups.com

Why did you repeat the same mistake of buying from untrusted manufacturers? Get one from Seeed for about the same price and have peace of mind.
These low quality manufacturers are nothing but bad reputation... They didn't even get the LED colors right.

lennart rolland

unread,
Jul 8, 2015, 11:39:01 PM7/8/15
to ioio-...@googlegroups.com

I was not aware there were such a thing as untrusted manufacturers. That was a big tip. Thanks!

You received this message because you are subscribed to a topic in the Google Groups "ioio-users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/ioio-users/u4LPOxBvVuo/unsubscribe.
To unsubscribe from this group and all its topics, send an email to ioio-users+...@googlegroups.com.

Ytai Ben-Tsvi

unread,
Jul 8, 2015, 11:43:10 PM7/8/15
to ioio-...@googlegroups.com

There are two manufacturers I can vouch for (meaning that I reviewed their manufacturing practices and standards and made sure they have a good test setup that's applied on every unit before shipping). These are SparkFun and SeeedStudio. Both have world wide shipping as well as local resellers in many places. They're also the only ones courteous enough to pay royalties.

Ytai Ben-Tsvi

unread,
Jul 8, 2015, 11:45:07 PM7/8/15
to ioio-...@googlegroups.com

Also, both have excellent customer support that won't let you down.

lennart rolland

unread,
Jul 28, 2015, 3:37:38 PM7/28/15
to ioio-users, yta...@gmail.com
I finally got my Seeed Studios OTG and it works great from the get-go. Now begins the hard part... making the robot. Thanks! 
Reply all
Reply to author
Forward
0 new messages