Why do some Android devices (Samsung) show battery charge in steps of 10% whereas others (HTC) show more accurate percentage? Why is it that Samsung devices (and perhaps others) show the battery charge remaining in multiples of 10% whereas other devices are able to show a more accurate percentage like 96% etc?

Is this a limitation of the hardware or software and can this behaviour be changed to show an accurate (non-multiple of 10) display of the battery remaining?
I don't believe this is a hardware limitation, but just the way the phone's manufacturer chose to implement the battery reporting code.  My Droid 2 also only showed by 10% increments.  However, on my current setup I'm using the Circle Battery Widget available on the Market and it displays the percentage in 1% increments.