• Status Closed
  • Percent Complete
  • Task Type Patches
  • Category Battery/Charging
  • Assigned To No-one
  • Operating System iPod Nano
  • Severity Low
  • Priority Very Low
  • Reported Version
  • Due in Version Undecided
  • Due Date Undecided
  • Votes 2
  • Private
Attached to Project: Rockbox
Opened by eatnumber1 - 2007-03-23
Last edited by torne - 2010-02-10

FS#6891 - iPod Nano Charger Support

I implemented the code so that the ipod nano can support usb chargers… Patch attached

Closed by  torne
2010-02-10 13:41
Reason for closing:  Fixed
Additional comments about closing:   Warning: Undefined array key "typography" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 371 Warning: Undefined array key "camelcase" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 407

This has been fixed in r24581 - the correct GPIOs were already checked but CONFIG_CHARGING had not been enabled.

Um, looks like you got the wrong GPIO bit (I tried that one first too). See 6940.

The gpio bit that person used was GPIOL 10. That bit does not change when you plug in the usb wall charger on my ipod. 8 is definatley the one that changes

That’s weird. When I go to the debug ports screen, the only activity I see is on GPIO L, and it goes from 0xE8 to 0xF8 when I plug in the wall USB charger when the backlight is on, and from 0×68 to 0×78 when the backlight is off. That means the mask for that bit is 0×10, with 1 being plugged in and 0 is not plugged in. What does your ipod do?

With your patch, does a little plug logo show up in the upper-left corner of rockbox-default when you plug it in? Can you make the backlight turn on and stay on by setting Power(while charging) to on and plugging in the ipod?

Sorry, that should be “Backlight (while plugged in)” not Power(while charging)

I’m not sure how to set the power while charging setting, but I cannot charge the ipod if it is off. Also, the plug does show up. Lastly, the reason for the difference in gpio bits is I use a legacy firewire charger to charge my nano. You probably use the usb. If so, I will make a patch with both.

That makes more sense then. I thought by “usb chargers” you meant the +5V that comes from a USB port, which is what my patch addresses. It makes sense that there would be a different status bit for the +12V firewire charge. If I add it to my patch (FS6940), will you test it for me?


when i press that link for the patch, i saw some kind of code. i know you implemented the code, but how to i transfer this to my ipod nano to receive the charger support?

You have to set up a build environment that will let you compile Rockbox, which is a fairly complicated procedure. See for details. If you haven’t compiled a program in Linux before, you might have a tough time figuring out how to do it.

Hi I found that your logic didn’t work with my Nano (build r14596)

This logic does work for both 12V and 5V charging though.

  return ((GPIOL_INPUT_VAL & 0x10) | (GPIOL_INPUT_VAL &0x08))?false:true; /*5v and 12V pins */

You may want to update your patch.

Here is a completely untested patch implementing your changes.

That patch was backwards… nevertheless, the code changes there work for me.

Here’s a correct one.


Available keyboard shortcuts


Task Details

Task Editing