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
Jesse Vincent 637943c924
shellcheck should only be run in the Kaleidoscope repo
6 years ago
examples/HostPowerManagement Updated to use the new plugin APIs 7 years ago
src Drop the V1 plugin API compatibility code 6 years ago
.gitignore Initial import 7 years ago
.travis.yml shellcheck should only be run in the Kaleidoscope repo 6 years ago
COPYING Initial import 7 years ago
Makefile Initial import 7 years ago
README.md Updated to use the new plugin APIs 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. Additionally, this plugin provides optional support for the keyboard to wake the host up from suspend.

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>

KALEIDOSCOPE_INIT_PLUGINS(HostPowerManagement);

void setup () {
  Kaleidoscope.setup ();

  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.

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 is empty.

Further reading

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