No description
Find a file
Sergey Vlasov 680cc1fab4
Fix firmware size check with avr-libc 1:2.0.0+Atmel3.6.2-1.1 (Debian bullseye) (#12951)
Debian bullseye (testing at the moment, but seems close to release) has
avr-libc 1:2.0.0+Atmel3.6.2-1.1 with some changes taken from the
Atmel-distributed toolchain.  In particular, the <avr/io.h> header for
ATmega32A (avr/iom32a.h) now defines the FLASHEND constant as `0x7FFFU`,
and that `U` suffix breaks the firmware size check code, because the
shell arithmetic expansion that is used to calculate `MAX_SIZE` does not
support those C-specific suffixes.

As a workaround, add `-D__ASSEMBLER__` to the C preprocessor invocation
that is used to expand those macros; in this case avr/iom32a.h defines
`FLASHEND` without the `U` suffix, and everything works as it did before
with older avr-libc versions.

The exact same code is present in two places; they are both changed,
even though the code in `tmk_core/avr.mk` is actually never used for
ATmega32A (and the header for ATmega32U4 does not add that `U` suffix to
`FLASHEND` for some reason).
2021-06-06 22:42:08 -07:00
.github 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
.vscode
api_data
bin 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
data 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
docs Merge remote-tracking branch 'origin/master' into develop 2021-06-05 18:37:16 +00:00
drivers Tidy up spi_master includes (#13053) 2021-06-03 16:26:41 +10:00
keyboards [Keymap] RGB Matrix working for Sofle RGB (#12861) 2021-06-06 22:30:48 -07:00
layouts [Keymap] Update bcat's split_3x6_3 for Crkbd legacy removal (#13097) 2021-06-03 11:39:48 -07:00
lib Merge remote-tracking branch 'origin/master' into develop 2021-06-03 15:53:38 +00:00
nix [nix] Use niv and poetry2nix to more easily manage dependencies (#11181) 2021-04-03 08:05:46 -07:00
platforms/chibios 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
quantum Add weak refs on reading rows/cols. (#13062) 2021-06-01 15:10:39 +10:00
tests
tmk_core Fix firmware size check with avr-libc 1:2.0.0+Atmel3.6.2-1.1 (Debian bullseye) (#12951) 2021-06-06 22:42:08 -07:00
users Update noroadsleft userspace and keymaps (2021-06-02) (#13086) 2021-06-02 23:06:30 -07:00
util 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
.clang-format fix indent size 2019-06-11 01:51:40 -07:00
.editorconfig
.gitattributes [nix] Use niv and poetry2nix to more easily manage dependencies (#11181) 2021-04-03 08:05:46 -07:00
.gitignore 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
.gitmodules
.travis.yml
book.json
bootloader.mk 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
build_full_test.mk
build_json.mk 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
build_keyboard.mk 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
build_layout.mk
build_test.mk
CODE_OF_CONDUCT.md
common.mk 2020 November 28 Breaking Changes Update (#11053) 2020-11-28 12:02:18 -08:00
common_features.mk 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
disable_features.mk
Dockerfile
Doxyfile
doxygen-todo
LICENSE
license_GPLv2.md
license_GPLv3.md
license_Modified_BSD.md Clarify the quantum license (#1042) 2017-03-28 15:20:36 -07:00
Makefile 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
message.mk 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
nose2.cfg Setup a python test framework 2019-09-07 07:58:41 -07:00
readme.md
requirements-dev.txt 2021 May 29 Breaking Changes Update (#13034) 2021-05-29 14:38:50 -07:00
requirements.txt Add support for tab completion (#12411) 2021-04-14 19:00:22 -07:00
secrets.tar.enc
setup.cfg
shell.nix [nix] Use niv and poetry2nix to more easily manage dependencies (#11181) 2021-04-03 08:05:46 -07:00
show_options.mk
testlist.mk
Vagrantfile

Quantum Mechanical Keyboard Firmware

Current Version Build Status Discord Docs Status GitHub contributors GitHub forks

This is a keyboard firmware based on the tmk_keyboard firmware with some useful features for Atmel AVR and ARM controllers, and more specifically, the OLKB product line, the ErgoDox EZ keyboard, and the Clueboard product line.

Documentation

The docs are powered by Docsify and hosted on GitHub. They are also viewable offline; see Previewing the Documentation for more details.

You can request changes by making a fork and opening a pull request, or by clicking the "Edit this page" link at the bottom of any page.

Supported Keyboards

The project also includes community support for lots of other keyboards.

Maintainers

QMK is developed and maintained by Jack Humbert of OLKB with contributions from the community, and of course, Hasu. The OLKB product firmwares are maintained by Jack Humbert, the Ergodox EZ by ZSA Technology Labs, the Clueboard by Zach White, and the Atreus by Phil Hagelberg.

Official Website

qmk.fm is the official website of QMK, where you can find links to this page, the documentation, and the keyboards supported by QMK.