diff options
author | Joel Challis <git@zvecr.com> | 2022-04-18 11:51:40 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-04-18 20:51:40 +1000 |
commit | b8245a550752ed3826902f63a75203c67282ace7 (patch) | |
tree | 967e46a6a071dffb14f3fe44a11771ad64cc5ba0 /keyboards | |
parent | 7aa9a353ac6e2ee095ad8c6695f62f0bafe7b6f3 (diff) |
Expose API for hardware unique ID (#16869)
Diffstat (limited to 'keyboards')
-rw-r--r-- | keyboards/handwired/onekey/keymaps/hardware_id/keymap.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/keyboards/handwired/onekey/keymaps/hardware_id/keymap.c b/keyboards/handwired/onekey/keymaps/hardware_id/keymap.c new file mode 100644 index 0000000000..bcec8b3ca1 --- /dev/null +++ b/keyboards/handwired/onekey/keymaps/hardware_id/keymap.c @@ -0,0 +1,28 @@ +#include QMK_KEYBOARD_H +#include "hardware_id.h" +#include <stdio.h> +enum custom_keycodes { + DUMP_ID = SAFE_RANGE, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + LAYOUT_ortho_1x1(DUMP_ID) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case DUMP_ID: + if (record->event.pressed) { + hardware_id_t id = get_hardware_id(); + char buffer[100]; + sprintf(buffer, "ID:%lu:%lu:%lu:%lu\n", id.data[0], id.data[1], id.data[2], id.data[3]); +#ifdef CONSOLE_ENABLE + printf(buffer); +#else + send_string(buffer); +#endif + } + break; + } + return false; +}; |