How can I build an (automatic) Mindstorms charging-station? I'm thinking about buying LEGO Mindstorms and start programming robots. I'm a software engineer and LEGO fan since I was a child so this sounds like the perfect combination of my dearest hobbies.

But some questions come into my mind that I simply can't find out on the LEGO website:


Is is possible to programmatically check the battery charge status?
How is the NXT 2.0 block, where the power for all those motors and sensors come from, charged
Is there a possibility to build some kind of charging station where my robot can drive in to get recharged?


The point of this is, I would love to have a robot that's driving around doing stuff, and when the batteries are almost empty (let's say &lt;&nbsp;10%). it would drive to the recharging station on its own&nbsp;— and when it's full again (>&nbsp;95%), get out of the station again and continue doing other stuff.
As a software engineer, you would probably be more at home in NXC, a C-like language compatible with the standard firmware. You can then use BatteryLevel().

If you want to use the standard programming environment, use this custom block.