Out of the box ANAVI Macro Pad 8 comes with the popular open source Quantum Mechanical Keyboard (QMK) firmware. In a previous tutorial we covered it in more details and we had a look at the existing keymaps.
Recently, we added a brand new keymap for ANAVI Macro Pad 8 for Git users. Git is a free and open source distributed version control system started by the famous Linus Torvalds, the creator of Linux kernel. Nowadays, there are many offerings of Git repositories as a service by GitHub, GitLab, Bitbucket, etc.
The Git keymap for ANAVI Macro Pad 8 contains the following shortcuts for Git. On the first row from left to right:
On the second row from left to right:
From technical point of view for developers this Git keymap demonstrates a couple of interesting features of QMK firmware:
In order to send commands like
git log by pressing a single key, the Git keymap follows the QMK guidelines for custom keycodes.This keymap uses
enum to define data type in the C programming language for all new custom keycodes. After that through function
process_record_user and using
SEND_STRING the text is send if a specific key on the macro pad is pressed. Details are available at QMK documentation and as an example directly in GitHub.
SEND_STRING in the Git keymap increases the total firmware size. This is dangerous because Microchip ATmega32U4, the microcontroller on ANAVI Macro Pad 8, may not have enough free space for it. If the firmware exceeds the size limit any attempts to flash it will fail with a similar error message:
The firmware is too large! 28866/28672 (194 bytes over)
If you run in such a use case, the easiest way to reduce the size of QMK firmware in a keymap for ANAVI Macro Pad 8 is to cut some of the default RGB lighting animations and effects. For example, as in the Git keymap, you can create
config.h file in the keymap directory that overwrites the main
config.h with a reduced number of supported RGB lighting animations and effects:
#pragma once #undef RGBLIGHT_ANIMATIONS #define RGBLIGHT_EFFECT_BREATHING #define RGBLIGHT_EFFECT_CHRISTMAS #define RGBLIGHT_EFFECT_RAINBOW_MOOD #define RGBLIGHT_EFFECT_SNAKE
We have already covered in details how to install QMK firmware and how to flash a keymap from the command line in a previous update and in the user’s manual. Here is it in a nutshell for the Git keymap. Connect ANAVI Macro Pad 8 to a computer with USB to microUSB cable follow the steps below:
qmk compile -kb anavi/macropad8 -km git
qmk flash -kb anavi/macropad8 -km git
Detecting USB port, reset your controller now.....
avrdude done. Thank you.
Thank you again for using ANAVI Macro Pad 8! Stay tuned for more tutorials!
A non-click, ultra-low activation force mechanical keyboard switch, for enthusiasts, by enthusiasts.
Make your lights open source and connect your LED strip to the WiFi network with ANAVI Light Controller!
An ESP8266-powered, open source, Wi-Fi dev board to control two 5 V or two 12 V LED strips