Power consumption #45

tmk opened this Issue Jul 8, 2013 · 5 comments


None yet

2 participants

tmk commented Jul 8, 2013

tmk firmware for gh60 consumes 25.8mA while stock Poker only 5.6mA!
Better power saving sterategy is needed.

  1. Power Management and Sleep Modes from datasheet:
  2. Sleep mode power down using watchdog interrupt(interval: 15ms, 60ms,...)
  3. Power reduction register configuration

And sleep breathing LED is greedy like 17-30mA :( Of course this does not comply with USB spec... This feature should be disable by default and fun purpose only.


I've noticed that my board becomes unresponsive for a second or so every so often when I'm using it with my low-voltage Thinkpad (X200s) on battery power; could it be related to this? No issues when on AC power or on any other laptops I've tried. I feel like it must be something specific to this firmware because my ErgoDox (using Blazak's firmware) doesn't exhibit this problem. I'm using the "atreus" build in my fork, if it's relevant: https://github.com/technomancy/tmk_keyboard/tree/atreus/keyboard/atreus

Any suggestions for things to try would be appreciated.

tmk commented Feb 27, 2014

Hmm, it seems like your keyboard sleeps in suspend mode to save power in low battery.
My suggestions:

  1. Try to stop power down of common/suspend.c(build with NO_SUSPEND_POWER_DOWN)
  2. See difference in low-battery between build with LUFA and PJRC stack
  3. Look into how ErgoDox implements suspend mode and port it to tmk

Thanks. I actually played around with commenting out some of the features in the Makefile (BOOTMAGIC etc) and that seems to have helped. I got rid of a bunch of them; I'll see if I can narrow down which one specifically is responsible.


I may have spoken too soon; while I was able to get rid of the cutting out after disabling some features, I played with it a bit more to try to figure out which ones in particular were causing trouble, and now I can't get it back to the fully-working state even with all of them disabled again. So it might have been a fluke. I'll take a look at some of your suggestions; thanks.


Looks like NO_SUSPEND_POWER_DOWN did the trick; thanks!

@tmk tmk closed this Jan 19, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment