qmk_firmware

QMK firmware for my keyboards (Corne, Sweep Ferris) and trackball (Ploopy Adept)
Log | Files | Refs | Submodules | LICENSE

keymap.c (742B)


      1 #include QMK_KEYBOARD_H
      2 #include "hardware_id.h"
      3 #include <stdio.h>
      4 enum custom_keycodes {
      5     DUMP_ID = SAFE_RANGE,
      6 };
      7 
      8 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
      9     LAYOUT_ortho_1x1(DUMP_ID)
     10 };
     11 
     12 bool process_record_user(uint16_t keycode, keyrecord_t *record) {
     13     switch (keycode) {
     14         case DUMP_ID:
     15             if (record->event.pressed) {
     16                 hardware_id_t id = get_hardware_id();
     17                 char buffer[100];
     18                 sprintf(buffer, "ID:%lu:%lu:%lu:%lu\n", id.data[0], id.data[1], id.data[2], id.data[3]);
     19 #ifdef CONSOLE_ENABLE
     20                     uprintf("%s", buffer);
     21 #else
     22                     send_string(buffer);
     23 #endif
     24             }
     25             break;
     26     }
     27     return false;
     28 };