Firmware for the Keyboardio Model 01 and other keyboards with AVR or ARM MCUs.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
Gergely Nagy 810a69cf33
Rename the library to HostPowerManagement
7 years ago
examples/HostPowerManagement Rename the library to HostPowerManagement 7 years ago
src Rename the library to HostPowerManagement 7 years ago
.gitignore Initial import 7 years ago
.travis.yml Initial import 7 years ago
COPYING Initial import 7 years ago
Makefile Initial import 7 years ago
README.md Rename the library to HostPowerManagement 7 years ago
library.properties Rename the library to HostPowerManagement 7 years ago

README.md

Kaleidoscope-HostPowerManagement

status Build Status

Support performing custom actions whenever the host suspends, resumes, or is sleeping. By default, the LEDs will be turned off on suspend, and the previous LED mode restored on resume.

Using the plugin

To use the plugin, one needs to include the header, and activate it. No further configuration is necessary, unless one wants to perform custom actions.

#include <Kaleidoscope.h>
#include <Kaleidoscope-HostPowerManagement.h>

void setup () {
  Kaleidoscope.setup ();

  Kaleidoscope.use(&HostPowerManagement);
  HostPowerManagement.enableWakeup();
}

Plugin methods

The plugin provides the HostPowerManagement object, which has the following methods:

.enableWakeup()

Enables host wakeup support. When enabled, pressing any key on the keyboard will wake the host up.

Once enabled, it cannot be disabled again.

.toggleLEDs(event)

Turns LEDs off on suspend, restores the previous LED mode on resume. This is called by hostPowerManagementEventHandler() by default.

Overrideable methods

hostPowerManagementEventHandler(event)

The hostPowerManagementEventHandler method is the brain of the plugin: this function tells it what action to perform in response to the various events.

Currently supported events are: kaleidoscope::HostPowerManagement::Suspend is fired once when the host suspends; kaleidoscope::HostPowerManagement::Sleep is fired every cycle while the host is suspended; kaleidoscope::HostPowerManagement::Resume is fired once when the host wakes up.

The default implementation calls HostPowerManagement.toggleLEDs. When overriding the function, the default is lost.

Dependencies

Further reading

Starting from the example is the recommended way of getting started with the plugin.