LPC should not report 0% battery before having "learned" the battery capacity
Currently, the LPC will report 0% battery long before they are actually empty. This means that desktop environments or upower will power down the system shortly before and as a result the system will never switch off because it really was out of battery and thus the LPC is unable to learn the actual battery capacity. This means that users who do not have automatic shutdown on critical battery levels temporarily disabled will not be able to utilize the actual capacity of their battery. This means that there are reports that the Reform with A311D would last less than 3 hours even though it can last 5.5 hours with fresh cells, full display brightness, wifi connected and casual coding, web browsing and email.
I think the user should not have to temporarily disable the automatic shutdown feature of their desktop environment temporarily so that the system switches off because the batteries were really empty at least once. The conservative defaults of the LPC were maybe chosen because at that time, there were no protected battery boards, and the 2000mAh eremit cells were not the default yet.
Maybe the LPC firmware could be changed to either:
- keep track whether the system already powered off because of missing battery charge at least once (i don't know if it keeps track of that already) and if not, do not report charging levels below 10% to the OS, preventing it from doing a soft-shutdown or
- change some default value in the LPC (probably the default battery capacity?) and make it large enough such that even with the most capable cell, the LPC would think it went down to 0% before the cells were actually empty at which point it will learn their actual capacity