Source code for the vckyb6 firmware
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.

118 lines
3.9 KiB

  1. # Welcome to the Mostly Harmless vckyb6
  2. ## Introduction
  3. `vckyb6` is a small macro pad that offers quick access to common keyboard
  4. shortcuts that might be useful during video conferences and meetings.
  5. ## Why?
  6. Keyboard shortcuts are good ways of quickly doing something - as compared to
  7. using the mouse to click around the screen. Most video conferencing
  8. applications have built-in keyboard shortcuts to aid activities such as
  9. mute/un-mute or toggling the video or raising the hand and so on.
  10. Most of these keyboard shortcuts, unfortunately, require the use of single or
  11. multiple keys (eg. `CTRL + D` or `CTRL + ALT + C`). These can not only be
  12. difficult to remember but also tough for children to use or use with one-hand.
  13. ## Enter: Custom Keyboards
  14. A custom programmable keyboard can send complex keystrokes or key sequences or
  15. even macros to the computer on the click of a single button. This means that
  16. one need not remember complex keyboard shortcuts and can instead just press a
  17. button to do the job.
  18. The custom keyboard can be even have multiple layers of shortcuts so that it
  19. can be used in a similar manner with multiple video conferencing tools.
  20. # Compiling and Flashing the keymap
  21. 1. Close the `qmk_firmware` repository from:
  22. <https://github.com/qmk/qmk_firmware/>
  23. You can also use this mirror on sovran.dev:
  24. <https://sovran.dev/mh/qmk_firmware>
  25. 2. Pull in the `qmk_firmware` submodules:
  26. ```
  27. cd qmk_firmware/
  28. make git-submodule
  29. ```
  30. 3. Install the `qmk` command-line interface:
  31. ```
  32. apt-get install python3 python3-pip
  33. pip3 install qmk
  34. ```
  35. 4. Setup `qmk dependencies`:
  36. ```
  37. cd qmk_firmware/
  38. qmk setup
  39. ```
  40. Running `qmk setup` should install the necessary tools required to compile
  41. and flash the keyboard firmware. On Debian, this will do the equivalent of:
  42. ```
  43. apt-get install build-essential avr-gcc arm-none-eabi-gcc avrdude dfu-util
  44. dfu-programmer
  45. ```
  46. Now you should be able to compile your firmware.
  47. 5. Clone [this repository](https://sovran.dev/mh/vckyb6) into `keyboards/mh/`:
  48. ```
  49. cd qmk_firmware/
  50. mkdir keyboards/mh/
  51. cd keyboards/mh/
  52. git clone https://sovran.dev/mh/vckyb6/
  53. ```
  54. 6. Now compile the firmware:
  55. ```
  56. make mh/vckyb6:default
  57. ```
  58. 7. Reset your keyboard and put it into programming mode and then flash the
  59. firmware:
  60. ```
  61. make mh/vckyb6:default:flash
  62. ```
  63. ## USB Messages:
  64. You should see messages similar to these when you plugin the keyboard. Run
  65. `sudo dmesg` to check:
  66. ```
  67. usb 1-3.2: new full-speed USB device number 18 using xhci_hcd
  68. usb 1-3.2: New USB device found, idVendor=beef, idProduct=0008, bcdDevice= 0.01
  69. usb 1-3.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
  70. usb 1-3.2: Product: vckb6
  71. usb 1-3.2: Manufacturer: Mostly Harmless
  72. input: Mostly Harmless vckb6 as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3.2/1-3.2:1.0/0003:BEEF:0008.0078/input/input232
  73. hid-generic 0003:BEEF:0008.0078: input,hidraw5: USB HID v1.11 Keyboard [Mostly Harmless vckb6] on usb-0000:00:14.0-3.2/input0
  74. input: Mostly Harmless vckb6 Mouse as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3.2/1-3.2:1.1/0003:BEEF:0008.0079/input/input233
  75. input: Mostly Harmless vckb6 System Control as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3.2/1-3.2:1.1/0003:BEEF:0008.0079/input/input234
  76. input: Mostly Harmless vckb6 Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3.2/1-3.2:1.1/0003:BEEF:0008.0079/input/input235
  77. input: Mostly Harmless vckb6 Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3.2/1-3.2:1.1/0003:BEEF:0008.0079/input/input236
  78. hid-generic 0003:BEEF:0008.0079: input,hidraw7: USB HID v1.11 Mouse [Mostly Harmless vckb6] on usb-0000:00:14.0-3.2/input1
  79. ```
  80. ## Credits
  81. The repository and code is inspired by
  82. <https://github.com/xkonni/qmk_xkonni_xk8/> and build upon the excellent
  83. [qmk_firmware project](https://qmk.fm).