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.

87 lines
2.5 KiB

  1. xd75 keyboard firmware
  2. ======================
  3. The XD75Re is a 15x5 full-grid ortholinear keyboard manufactured by XIUDI. This port of the QMK firmware is my first shot at using QMK, so if you see any features done wrong (or just plain missing), feel free to fix them and put in a pull request!
  4. ## Quantum MK Firmware
  5. For more info on this firmware (and how to make it your own), head over to [qmk.fm](http://qmk.fm).
  6. ## Building
  7. Download or clone the whole firmware and navigate to the
  8. keyboards/xd75 folder. Once your dev env is setup, you'll be able to
  9. type `make` to generate your .hex - you can then use the Teensy Loader
  10. to install the resulting .hex file, or have the `make` process install
  11. it using DFU.
  12. ### Default
  13. To build with the default keymap, simply run `make xd75:default` from the root directory (i.e. two levels above this file), and to install via DFU, `make xd75:default:dfu`, also from the root directory.
  14. Note that DFU is likely to require root permissions, so installing the
  15. firmware likely requires a command line like:
  16. ```
  17. $ sudo make xd75:default:dfu
  18. ```
  19. ### LED control
  20. There are 3 individual LEDs that can be turned on and off, plus the keycap LEDs (which are all wired into the same pin). The functions are named according to how they're labeled on the PCB.
  21. TODO: it would be nice to have PWM support on these LEDs for fade-in/fade-out effects.
  22. ```c
  23. capslock_led_on();
  24. gp100_led_on();
  25. gp103_led_on();
  26. keycaps_led_on();
  27. // led_set_user example - you could also turn these on/off in response
  28. // to events in process_record_user or matrix_scan_user
  29. void led_set_user(uint8_t usb_led) {
  30. if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
  31. capslock_led_on();
  32. } else {
  33. capslock_led_off();
  34. }
  35. if (some_custom_state) {
  36. gp100_led_on();
  37. }
  38. else {
  39. gp100_led_off();
  40. }
  41. }
  42. ```
  43. For the curious:
  44. ```
  45. CAPSLOCK_LED B2
  46. GP103_LED F4
  47. KEYCAPS_LED F5
  48. GP100_LED F7
  49. ```
  50. ### Other Keymaps
  51. The "default" keymap included is basically the OLKB Atomic keymap with
  52. a few buttons added for RGB underglow control. This should be usable
  53. as a starting point, but most people will be best served creating
  54. their own keymap and flashing it - more info on creating your own
  55. keymap is available in [the official QMK
  56. documentation](https://docs.qmk.fm).
  57. Keymaps follow the format **__\<name\>.c__** and are stored in
  58. subdirectories under `keyboards/xd75/keymaps`
  59. To build the firmware binary hex file for a specific keymap, and
  60. install it, using DFU, just do `make` with a keymap like this:
  61. ```
  62. $ make xd75:[default|<name>]
  63. ```