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 };