Skip to main content
Topic: Toy not available after reboot on RPi (Read 9484 times) previous topic - next topic

Toy not available after reboot on RPi

For some reason my USB IR Toy doesn't come up after rebooting my Rasbarry Pi. Where /dev/ttyACM0 is nicely created when performing a fresh RPi start-up (i.e. disconnection and reconnecting the power), this isn't the case when telling the RPi to reboot. Instead, dmesg is giving me a series of usb 1-1.2: device descriptor read/64, error -32 errors:

Code: [Select]
OpenELEC:~ # dmesg 
...
[  13.043818] usb 1-1.2: device descriptor read/64, error -32
[  13.090780] systemd-udevd[196]: starting version 214
[  13.227193] usb 1-1.2: new full-speed USB device number 5 using dwc_otg
[  13.403376] Console: switching to colour dummy device 80x30
[  15.137466] pcm512x 1-004c: Failed to reset device: -5
[  15.150748] pcm512x: probe of 1-004c failed with error -5
[  15.215250] bcm2708-i2s bcm2708-i2s.0: Failed to create debugfs directory
[  16.937918] smsc95xx 1-1.1:1.0 eth0: hardware isn't capable of remote wakeup
[  16.939565] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[  18.353850] usb 1-1.2: device descriptor read/64, error -32
[  18.490409] input: lircd as /devices/virtual/input/input0
[  18.573904] smsc95xx 1-1.1:1.0 eth0: link up, 100Mbps, full-duplex, lpa 0x45E1
[  18.609968] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[  23.537379] usb 1-1.2: device descriptor read/64, error -32
[  23.720572] usb 1-1.2: new full-speed USB device number 6 using dwc_otg
[  29.130120] usb 1-1.2: device not accepting address 6, error -32
[  29.210534] usb 1-1.2: new full-speed USB device number 7 using dwc_otg
[  34.617042] usb 1-1.2: device not accepting address 7, error -32
[  34.617331] hub 1-1:1.0: unable to enumerate USB device on port 2
[  34.697232] usb 1-1.3: new full-speed USB device number 8 using dwc_otg
[  34.809228] usb 1-1.3: New USB device found, idVendor=2548, idProduct=1002
[  34.809281] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  34.809300] usb 1-1.3: Product: USB-CEC Adapter
[  34.809315] usb 1-1.3: Manufacturer: Pulse-Eight
[  34.809331] usb 1-1.3: SerialNumber: v2 r8
[  34.867145] input: Pulse-Eight USB-CEC Adapter as /devices/platform/bcm2708_usb/usb1/1-1/1-1.3/1-1.3:1.2/0003:2548:1002.0001/input/input2
[  34.875723] hid-generic 0003:2548:1002.0001: input,hidraw0: USB HID v1.10 Mouse [Pulse-Eight USB-CEC Adapter] on usb-bcm2708_usb-1.3/input2
[  35.124791] cdc_acm 1-1.3:1.0: ttyACM0: USB ACM device
[  35.141874] usbcore: registered new interface driver cdc_acm
[  35.141918] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters

I had to make a drastic snip in the dmesg log because the forum deemed it "too spamy".

The device will properly show up again when unplugging and reconnecting the Toy in this state.

I'm running firmware v22 on the USB IR Toy.

What can be the cause of the problem and how can I fix it?

Update 1: Even a fresh start-up of the RPi will not always properly initialize the Toy, resulting in the same problems as above.
Update 2: Forget the previous update. The Toy appeared to be completely dead, not functioning on any system any longer. It required me flashing the firmware again to get it up and running again. :-S

Re: Toy not available after reboot on RPi

Reply #1
I'm still stuck on this one. It makes using the Toy completely unreliable. Does anyone have an idea?

Re: Toy not available after reboot on RPi

Reply #2
I was experiencing the same problem as you.
I'm having good results by using firmware v23 for the IRToy and prefixing /boot/cmdline.txt with dwc_otg.speed=1
Note that it slows down USB2 speeds and ethernet connectivity but that is not a problem with my setup. See http://direct.raspberrypi.org/forums/vi ... 28&t=77195 for more information.

Re: Toy not available after reboot on RPi

Reply #3
Thank you for your suggestion. I'd like to avoid firmware v23 because it has other issues again and going back to USB 1.1 is not something I prefer.

Your suggestion reminded me of the recently introduced FIQ_FSM USB driver. Since there where quite some issues with that one at first I tried disabling it with "dwc_otg.fiq_fsm_enable=0" but it made no difference.

I set out to try just "dwc_otg.speed=1" but that one fails with a different USB error code.

After searching some more, trying "usbcore.old_scheme_first=Y" or "usbcore.use_both_schemes=Y" is suggested as well but this made no difference either.

The same issue was present with the Arduino Nano, which turned out the be a hardware issue. Maybe this is really the case for the Toy as well?

In the mean time I will try firmware v23 anyway and see what happens.

Re: Toy not available after reboot on RPi

Reply #4
[quote author="Zillode"]I'm having good results by using firmware v23 for the IRToy and prefixing /boot/cmdline.txt with dwc_otg.speed=1[/quote]
Unfortunately this is not the case for me. Updating to firmware v23 and setting the cmdline.txt option gives me the following after a reboot:
Code: [Select]
[   17.870048] usb 1-1.2: device descriptor read/64, error -110
[  18.002262] bcm2708_rng_init=d8a34000
[  19.165919] lirc_dev: IR Remote Control driver registered, major 248
[  19.290937] lirc_rpi: module is from the staging directory, the quality is unknown, you have been warned.
[  20.230145] lirc_rpi: auto-detected active high receiver on GPIO pin 18
[  20.231539] lirc_rpi lirc_rpi.0: lirc_dev: driver lirc_rpi registered at minor = 0
[  20.231594] lirc_rpi: driver registered!
[  27.267947] systemd-udevd[197]: starting version 214
[  28.584821] Console: switching to colour dummy device 80x30
[  33.053391] usb 1-1.2: device descriptor read/64, error -110
[  33.240054] usb 1-1.2: new full-speed USB device number 5 using dwc_otg
[  33.948096] bcm2708-i2s bcm2708-i2s.0: Failed to create debugfs directory
[  34.093299] pcm512x 1-004c: Failed to reset device: -5
[  34.094211] pcm512x: probe of 1-004c failed with error -5
[  39.946847] smsc95xx 1-1.1:1.0 eth0: hardware isn't capable of remote wakeup
[  39.949244] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[  41.457850] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[  41.473470] smsc95xx 1-1.1:1.0 eth0: link up, 100Mbps, full-duplex, lpa 0x45E1
[  43.543507] input: lircd as /devices/virtual/input/input0
[  48.330090] usb 1-1.2: device descriptor read/64, error -110
[  63.513491] usb 1-1.2: device descriptor read/64, error -110
[  63.697334] usb 1-1.2: new full-speed USB device number 6 using dwc_otg
[  74.103269] usb 1-1.2: device not accepting address 6, error -110
[  74.183492] usb 1-1.2: new full-speed USB device number 7 using dwc_otg
[  84.589797] usb 1-1.2: device not accepting address 7, error -110
[  84.590149] hub 1-1:1.0: unable to enumerate USB device on port 2

Just updating the firmware, not setting the option, gives me the same errors as in my initial post.

Re: Toy not available after reboot on RPi

Reply #5
Do you have an externally powered hub you can try hooking it to? A quick search indicates it is likely a power supply problem.

Re: Toy not available after reboot on RPi

Reply #6
[quote author="AndThen"]Do you have an externally powered hub you can try hooking it to? A quick search indicates it is likely a power supply problem.[/quote]
Unfortunately I don't have a hub, no.
I found those mentions as well, but I don't believe that can be the cause with only the Toy as the only USB device connected and a 2A power supply for the RPi. It would be a bit strange that a power supply issue would only appear on reboot and not on a complete start-up.
Is the Toy using so much power anyway?

Re: Toy not available after reboot on RPi

Reply #7
I don't know the actual current draw, but it asks for 450ma. I think that particular issue/case requires the PI to be powered via USB, with the PI drawing around 400ma there are brownout issues if a USB device pulls over ~300-400ma there is a Poly fuse that starts to trip in that (700-800ma) range.

Your issue is maybe/probably the suspend/sleep issue. Try doing the software based reset.. viewtopic.php?f=29&t=6480#p58648

 

Re: Toy not available after reboot on RPi

Reply #8
Thanks for the suggestion AndThen. I didn't get round to it to try it sooner, but the reset command is not usable.
When the Toy is in the "error state", there's no entry for it in lsusb, nor is it listed in /dev/bus/usb/001/.

I'll see if I can get my hand on a powered USB hub, just to test if it's a power issue to begin with.

Re: Toy not available after reboot on RPi

Reply #9
I managed to borrow a powered USB hub. Unfortunately the same issues can be observed as without a hub: Toy working fine on a clean startup, USB errors after a reboot. At least we ruled out power issues, but it still leaves me with an unreliable setup...

Re: Toy not available after reboot on RPi

Reply #10
Don't know what the difference is but I had no problems repeatedly rebooting my RPi and having the ir toy work again without a replug. I tried this many times and it just worked without fail. I am just using the official firmware V22 though I have later versions.  So, what is the difference here I wonder.

Re: Toy not available after reboot on RPi

Reply #11
I can confirm this bug for a "normal" computer with an ASRock B85M Pro4 board. Operating system is Linux, OpenELEC 4.0.7.

Everything is fine for the first boot after a power cycle of the Infrared Toy. When the computer is rebooted or shut down and then restarted, Infrared Toy is not even enumerated anymore. lsusb doesn't show the device. Unplugging and replugging brings it back to life. The computer lets power on for USB ports during power off periods. (No, I don't intend to reconfigure that in BIOS, I need it.) Behaviour is the same for USB2 and USB3 ports.


Firmware version is V2.2 (in the meantime flashed several times).

Re: Toy not available after reboot on RPi

Reply #12
[quote author="Simpkins"]Don't know what the difference is but I had no problems repeatedly rebooting my RPi and having the ir toy work again without a replug. I tried this many times and it just worked without fail. I am just using the official firmware V22 though I have later versions.  So, what is the difference here I wonder.[/quote]
That's two OpenElec distro's failing now. What RPi distro are you on?