Skip to content

Instantly share code, notes, and snippets.

View itspngu's full-sized avatar
🐧
please merge my PR >:(

Thorben Brandt itspngu

🐧
please merge my PR >:(
View GitHub Profile

Keybase proof

I hereby claim:

  • I am itspngu on github.
  • I am pngu (https://keybase.io/pngu) on keybase.
  • I have a public key whose fingerprint is 9F0C 4BE0 C1EB 1DC1 7FD6 D100 86DA D9B2 B3C2 C6DF

To claim this, I am signing this object:

Installing an up-to-date AVR cross compilation toolchain for QMK on Ubuntu 20.04+

Unfortunately Ubuntu packages a fairly old (5.3.0) version of gcc-avr at the time of writing. Versions of gcc-avr from 8.3.0 onwards will produce significantly smaller binaries. The steps of building and installing a cutting-edge AVR toolchain on Ubuntu (tested on 20.04/WSL2 and 20.10/Baremetal) are outlined below.

Most of the procedure is loosely based on this manpage.

Prequisites

It's a good idea to run all of this from a folder dedicated to it.

@itspngu
itspngu / keymap.c
Last active January 21, 2023 21:38
keymap.c file for DZ60 PCB / Including code to facilitate sending nonstandard keys such as those used in some European languages from ANSI boards using "Alt Codes" which would usually be entered through the numpad.
#include "dz60.h"
#define MODS_SHIFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
enum custom_keycodes {
KX_UMLAUT_A = SAFE_RANGE,
KX_UMLAUT_O,
KX_UMLAUT_U,
KX_UMLAUT_S,