Bekijk de volledige versie : iPod autonomous charging

17-06-2005, 02:51
Charge your iPod while it plays!

The WL-500g Deluxe has two USB2.0 ports. You can use them to connect a printer, webcam, external hard disk or memory stick.

Or an iPod with Dock Connector.

In my case, I want to charge my iPod via the USB cable & dock while it's connected to my amplifier so it can play tunes while charging.

The problem with that plan is that when you plug it in, the ehci-hcd kernel module claims the iPod as its own and puts it in "Do not disconnect" mode, instead of leaving the ability to play songs via the user interface in place.

So I needed a way to wrestle back control from the kernel back to the iPod itself. Unloading the ehci-hcd module had the desired effect, except that then the iPod also stopped charging. Not acceptable.

From previous experience I knew that, in order to have an iPod connected that's both charging and capable of playing, I'd have to eject it, whereupon it would reboot into player mode and not be accessible as disk anymore.

There wasn't an obvious way to do this with tools included in either the standard firmware or Oleg's much-improved version ( I picked up a copy of eject-2.0.13 for Linux, which has a precompiled mipsel binary available from the Debian GNU/Linux distribution. Unfortunately they use glibc instead of uClibc so that didn't work.

Cross-compiling the source worked, after ripping out I18N and the requirement for /etc/fstab and /etc/mtab existing (prefer /proc/mounts over the latter). The result is rather small and attached.

Using facilities for flashfs in Oleg's firmware you can put this binary in /usr/local/sbin/ and have it executed via /usr/local/sbin/post-boot to unmount the iPod after a powercycle. The syntax for when you use the right-most connector when viewed from the back is:

$ eject /dev/scsi/host0/bus0/target0/lun0/discReplace host0 by host1 for a disk device on the other connector.

Perhaps the "Eject" button in the web interface could be modified to execute something similar, but I haven't managed to completely compile the firmware yet.

Perhaps superfluously, this isn't about playing mp3s through e.g. madplay and USB speakers connected to the WL-500g.

Hope this proves useful to somebody.

04-12-2005, 16:56
Hi there
Incidentally, I was just looking around for a binary that would let me do this. I am getting an ipod nano for christmas and will want to use the radio transmitter to transmit to my stereo whilst the ipod is charging. Furthermore, I do not want to leave a computer on all the time, just for the sake of an ipod.
This looks really handy, I obviously havent tested it yet but I will get back on this one. If it works well, I will include a how-to for other users on my website www.sprayfly.com/wiki

Thanks for sharing your knowledge- very generous

01-08-2006, 19:17
Has anyone else got this to work?