9.7 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	QMK Breaking Change - 2020 Nov 28 Changelog
Four times a year QMK runs a process for merging Breaking Changes. A Breaking Change is any change which modifies how QMK behaves in a way that is incompatible or potentially dangerous. We limit these changes to 4 times per year so that users can have confidence that updating their QMK tree will not break their keymaps.
Changes Requiring User Action
Relocated Keyboards
Reduce Helix keyboard build variation (#8669)
The build commands for the Helix keyboard are:
make <helix_build_name>:<keymap_name>
For <helix_build_name>, specify the one in the rightmost column of the table below, such as helix, helix/pico.
| before Oct 17 2019 | Oct 17 2019 | Mar 10 2020 | Nov 28 2020 | 
|---|---|---|---|
| helix/rev1 | helix/rev1 | helix/rev1 | helix/rev1 | 
| helix/pico | helix/pico | helix/pico | helix/pico | 
| helix/pico/back | helix/pico/back | helix/pico/back | |
| helix/pico/under | helix/pico/under | helix/pico/under | |
| helix/pico/sc | -- | ||
| helix/pico/sc/back | helix/pico/sc | ||
| helix/pico/sc/under | -- | ||
| helix/rev2 (=helix) | helix/rev2 (=helix) | helix/rev2 (=helix) | -- | 
| helix/rev2/back | helix/rev2/back | -- | |
| helix/rev2/back/oled | helix/rev2/back/oled | ( --> helix/rev2/back) | |
| helix/rev2/oled | helix/rev2/oled | helix/rev2 (=helix) | |
| helix/rev2/oled/back | helix/rev2/oled/back | helix/rev2/back | |
| helix/rev2/oled/under | helix/rev2/oled/under | helix/rev2/under | |
| helix/rev2/sc | -- | ||
| helix/rev2/sc/back | -- | ||
| helix/rev2/sc/oled | -- | ||
| helix/rev2/sc/oledback | helix/rev2/sc | ||
| helix/rev2/sc/oledunder | -- | ||
| helix/rev2/sc/under | -- | ||
| helix/rev2/under | helix/rev2/under | -- | |
| helix/rev2/under/oled | helix/rev2/under/oled | ( --> helix/rev2/under) | 
Update the Speedo firmware for v3.0 (#10657)
The Speedo keyboard has moved to cozykeys/speedo/v2 as the designer prepares to release the Speedo v3.0.
| Previous Name | New Name | 
|---|---|
| speedo | cozykeys/speedo/v2 | 
| -- | cozykeys/speedo/v3 new | 
Maartenwut/Maarten name change to evyd13/Evy (#10274)
Maartenwut has rebranded as @evyd13, and all released Maartenwut boards have moved.
| Previous Name | New Name | 
|---|---|
| maartenwut/atom47/rev2 | evyd13/atom47/rev2 | 
| maartenwut/atom47/rev3 | evyd13/atom47/rev3 | 
| maartenwut/eon40 | evyd13/eon40 | 
| maartenwut/eon65 | evyd13/eon65 | 
| maartenwut/eon75 | evyd13/eon75 | 
| maartenwut/eon87 | evyd13/eon87 | 
| maartenwut/eon95 | evyd13/eon95 | 
| maartenwut/gh80_1800 | evyd13/gh80_1800 | 
| maartenwut/gh80_3700 | evyd13/gh80_3700 | 
| maartenwut/minitomic | evyd13/minitomic | 
| maartenwut/mx5160 | evyd13/mx5160 | 
| maartenwut/nt660 | evyd13/nt660 | 
| maartenwut/omrontkl | evyd13/omrontkl | 
| maartenwut/plain60 | evyd13/plain60 | 
| maartenwut/pockettype | evyd13/pockettype | 
| maartenwut/quackfire | evyd13/quackfire | 
| maartenwut/solheim68 | evyd13/solheim68 | 
| maartenwut/ta65 | evyd13/ta65 | 
| maartenwut/wasdat | evyd13/wasdat | 
| maartenwut/wasdat_code | evyd13/wasdat_code | 
| maartenwut/wonderland | evyd13/wonderland | 
Xelus Valor and Dawn60 Refactors (#10512, #10584)
The Valor and Dawn60 keyboards by Xelus22 both now require their revisions to be specified when compiling.
| Previous Name | New Name | 
|---|---|
| xelus/dawn60 | xelus/dawn60/rev1 | 
| xelus/valor | xelus/valor/rev1 | 
Updated Keyboard Codebases
AEboards EXT65 Refactor (#10820)
The EXT65 codebase has been reworked so keymaps can be used with either revision.
Core Changes
Fixes
- Reconnect the USB if users wake up a computer from the keyboard to restore the USB state (#10088)
 - Fix cursor position bug in oled_write_raw functions (#10800)
 
Additions and Enhancements
- Allow MATRIX_ROWS to be greater than 32 (#10183)
 - Add support for soft serial to ATmega32U2 (#10204)
 - Allow direct control of MIDI velocity value (#9940)
 - Joystick 16-bit support (#10439)
 - Allow encoder resolutions to be set per encoder (#10259)
 - Share button state from mousekey to pointing_device (#10179)
 - Add advanced/efficient RGB Matrix Indicators (#8564)
 - OLED display update interval support (#10388)
 - Per-Key Retro Tapping (#10622)
 - Allow backlight duty cycle limit (#10260)
 - Add step sequencer feature (#9703)
 - Added 
add_oneshot_mods&del_oneshot_mods(#10549) - Add AT90USB support for serial.c (#10706)
 - Auto shift: support repeats and early registration (#9826)
 
Clean-ups and Optimizations
- Haptic and solenoid cleanup (#9700)
 - XD75 cleanup (#10524)
 - Minor change to behavior allowing display updates to continue between task ticks (#10750)
 - Change some GPIO manipulations in matrix.c to be atomic (#10491)
 - combine repeated lines of code for ATmega32U2, ATmega16U2, ATmega328 and ATmega328P (#10837)
 - Remove references to HD44780 (#10735)
 
QMK Infrastructure and Internals
- Add ability to build a subset of all keyboards based on platform. (#10420)
 - Initialise EEPROM drivers at startup, instead of upon first execution (#10438)
 - Make bootloader_jump weak for ChibiOS (#10417)
 - Support for STM32 GPIOF,G,H,I,J,K (#10206)
 - Add milc as a dependency and remove the installed milc (#10563)
 - ChibiOS upgrade: early init conversions (#10214)
 - ChibiOS upgrade: configuration file migrator (#9952)
 - Add definition based on currently-selected serial driver. (#10716)
 - Allow for modification of output RGB values when using rgblight/rgb_matrix. (#10638)
 - Allow keyboards/keymaps to execute code at each main loop iteration (#10530)
 - qmk cformat (#10767)
 - Add a Make variable to easily enable DEBUG_MATRIX_SCAN_RATE on the command line (#10824)
 - update Chibios OS USB for the OTG driver (#8893)
 - Fixup version.h writing when using 
SKIP_VERSION=yes(#10972, #10974) - Rename ledmatrix.h to match .c file (#7949)
 - Split RGB_MATRIX_ENABLE into _ENABLE and _DRIVER (#10231)
 - Split LED_MATRIX_ENABLE into _ENABLE and _DRIVER (#10840)