As mentioned in my previous eMail, I'd love to include a more consumer-friendly charging.
A lot of new users are confused that the unit doesn't switch off when being charged, I even had one guy who sent it back for RMA (without asking if that's normal)...
Therefore, I'd love to improe that.
Basically, we can't switch off the unit while it's charging, but we could make a similar behaviour.
The ideal behaviour would be the following:
In case the unit is switched off and connected to AC: Start booting but don't boot into the full OS but show a screen that the unit is charging (along with percentage, approx. time left, etc.) Power LED should be switched off. Flick the switch to continue booting.
In case the unit is switched on, connected to AC and user shuts down: It should log out, display the charging screen and behave the same as above.
In case the unit is switched on, connected to AC and user reboots: It should reboot without showing the charging screen.
To accomplish that, the following needs to be checked:
* Can we find out if the unit has been powered on by the power switch OR by connecting the AC?
* How do we know if the user reboots or shuts down? I think reboot and shutdown trigger different runlevels, right?
* Someone needs to code the program that displays the battery level and charging info :)
* Where do we put the program into the boot process? Is it possible to interrupt the bootprocess and continue it later? If not, I think it should be possible to load it instead of XFCE4 or MiniMenu. That could be included in the X-Startup-Script. That's probably the best area to include it, as this script starts BEFORE a GUI is run and as soon as you quit the GUI, it continues, so both the startup and reboot / shutdown could be triggered here. And if the user flips the power switch, the program would just have to set the normal GUI to load and quit to continue booting.
What do you think?
I would take care of the implementation of that small charging program into the script and make sure shutdown, reboot and starting the normal GUI would work, but I'd need someone to code that GUI and help me how to find out how the unit has been booted up.
Also, how do you find out the runlevel you're in? :)