The Nokia N900 is a annoying beast when charging. Coupled by the physically weak and electrically weak Micro USB port, this has been difficult to charge.

The main reason why there are so many problems with N900 charging is that it's trying to be very considerate. Drawing 1 ampere on USB is a big no-no, this is way out of spec. However how would the N900 know what it was plugged into? You plug it into a wall versus a PC. If it drew 1A from a PC that could only support the specced 500mA because it thought was a wall charger, it could potentially fry something. Hence it goes through a complicated set of rules to detect what you hooked it up to.

Here's my take on how this works. There are three charging systems:

  • proper wallcharger (D+/D- shorted - "dumb" charger),
  • host charge (USB of a PC or other host, needs to negotiate max current draw),
  • a "dump" charger (slow charge) (wall charger or host charge without D+/D- shorted or even connected).
  • The "dump" charger should not be used as it will not charge the phone. At 100 milliamp max, it tends to not even use that high to stay below the threshold, and background power use will consume most of that 100mA of current.

    Charging Algoritm

  • If n900 is booted (battery has charge and phone is on)
  • If battery is flat or n900 is off / not booted
  • Note: if the charger is crappy or usb does not have a clean connection, it will never charge. And the phone needs to be "on" to negotiate non-wallchargers.

  • If battery has some charge and someone tries to turn on
  • Notice the battery can never be charged if you don't have a good wall charger or weak USB.