I measured the current (DC jack powered) my BBB (rev C, kernel v3.16.3) draws at idle: ~200mA. Then I issued a poweroff (or shutdown now) command, and after the system had halted I measured current draw at ~240mA. This is a bare BBB with nothing attached (besides the serial debug cable). This isn’t what I expected to happen.
Holding the power button for 8 seconds does power off the BBB (<1mA). However, I find the method of “hold for >=8 seconds, but not >=8.5 seconds or else it power cycles” to be kind of user-unfriendly. Is there a way to programmatically put the BBB into the same state as holding the power button for 8 seconds?
I’ve done a bit of searching and it looks like there were problems (from earlier in the year) with the PMIC/RTC and bringing the board down to a low-power state from software alone. I just wanted to ask if those problems had been resolved.
I tried doing a echo mem > /sys/power/state which returned Invalid argument. Note that I’d like to try both methods: software command the BBB to power down as if the power button had been held for 8 seconds, as well as a memory-saving/restoring state.
I can confirm that power consumption increases after ‘shutdown -h’ command completes on the rev C. I’m attaching plots showing idle current consumption at idle, but I don’t have plots for consumption after power off. Our work around was to cut power using our voltage regulator circuit. This worked well for us because our system already had a separate microcontroller.
Thanks Shawn. I only used a simple multimeter to measure current. It’d be nice to have the equipment to make nice plots like the ones you made. However I think in my case that much detail wasn’t necessary to draw a conclusion that current consumption increases after poweroff had completed. I think I remember reading someone saying that when being halted the CPU goes into a while(1) loop or something - which may explain why the current goes up, but I’m not sure.
Using “freeze” was the only power state that did anything, but it unfortunately didn’t lower the draw any.
I have considered adding a microcontroller to the design to cut power to the overall system. However, it seems like that complication could be avoided with some software work. I’d much rather let the professionals work on the software than try it myself since I have much less experience with this sort of thing.
If there is no current solution, it would at least be nice to get an estimated timeframe for when, if ever, it may be looked into. So I don’t go designing a microcontroller, etc into my design only to have the software fixed afterwords and my efforts be rendered unnecessary before I even get it finished :).
Anyway, thanks for your input Shawn. Always good to know I’m not the only one experiencing a problem. Glad you got it figured out for your project!