From f9eb74ff72aecd34aa16b96ea726843f9cee593e Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Thu, 15 Sep 2022 19:25:43 -0700 Subject: [PATCH 01/51] Issue #7: migrate all fingerpunch boards over to use new feature flags framework --- bin/build-absolem.sh | 6 - bin/build-adux.sh | 7 - bin/build-barobord-default.sh | 6 - bin/build-barobord-oled.sh | 8 - bin/build-barobord-pimoroni.sh | 8 - bin/build-barobord-rgb-matrix-noenc-nooled.sh | 11 - bin/build-barobord-rgb-matrix.sh | 8 - bin/build-barobord-underglow-noenc-nooled.sh | 11 - bin/build-barobord-via.sh | 6 - bin/build-barobordhw-rgb-matrix.sh | 7 - bin/build-barobordhw-rgb.sh | 7 - bin/build-bgkeeb-default.sh | 7 - bin/build-bgkeeb.sh | 7 - bin/build-draculad.sh | 6 - bin/build-enigma36-v1.sh | 9 - bin/build-enigma36-v2.sh | 9 - bin/build-euclid36-proto.sh | 6 - bin/build-ffkb-pim-ec11.sh | 12 -- bin/build-ffkb-rgb-matrix-ec11.sh | 12 -- bin/build-ffkb-rgb-matrix-evq-ec11.sh | 12 -- bin/build-ffkb-rgblight-ec11.sh | 12 -- bin/build-ffkb-rgblight-evq-ec11.sh | 12 -- bin/build-ffkbhw.sh | 6 - bin/build-freewilly.sh | 5 - bin/build-halfdash.sh | 6 - bin/build-luakeeb.sh | 7 - bin/build-minidox.sh | 19 -- bin/build-osprette.sh | 5 - bin/build-pinkies-out.sh | 15 -- bin/build-rockon-bp.sh | 33 --- bin/build-rockon.sh | 9 - bin/build-sweeeeep.sh | 13 -- bin/fp_build.sh | 160 +++++++++++++++ bin/make-all-ffkb.sh | 33 --- bin/make-all-ffkb_byomcu.sh | 42 ---- bin/make-all-ffkb_stemcell.sh | 50 ----- keyboards/fingerpunch/arachnophobe/rules.mk | 2 +- keyboards/fingerpunch/barobord/config.h | 29 +-- keyboards/fingerpunch/barobord/ec11/config.h | 23 --- keyboards/fingerpunch/barobord/ec11/rules.mk | 28 --- keyboards/fingerpunch/barobord/evq/config.h | 25 --- keyboards/fingerpunch/barobord/evq/rules.mk | 28 --- keyboards/fingerpunch/barobord/fp_build.json | 22 ++ .../barobord/keymaps/default/keymap.c | 2 +- .../barobord/keymaps/sadekbaroudi/keymap.c | 2 +- .../fingerpunch/barobord/keymaps/via/keymap.c | 2 +- .../fingerpunch/barobord/no_features/config.h | 19 -- .../fingerpunch/barobord/no_features/rules.mk | 28 --- keyboards/fingerpunch/barobord/oled/config.h | 23 --- keyboards/fingerpunch/barobord/oled/rules.mk | 28 --- .../fingerpunch/barobord/oled_ec11/config.h | 27 --- .../fingerpunch/barobord/oled_ec11/rules.mk | 28 --- .../fingerpunch/barobord/oled_evq/config.h | 29 --- .../fingerpunch/barobord/oled_evq/rules.mk | 28 --- .../fingerpunch/barobord/pimoroni/config.h | 23 --- .../fingerpunch/barobord/pimoroni/rules.mk | 27 --- .../barobord/pimoroni_ec11/config.h | 27 --- .../barobord/pimoroni_ec11/rules.mk | 27 --- .../barobord/pimoroni_evq/config.h | 29 --- .../barobord/pimoroni_evq/rules.mk | 27 --- keyboards/fingerpunch/barobord/readme.md | 40 ++-- .../fingerpunch/barobord/rgblight/config.h | 23 --- .../fingerpunch/barobord/rgblight/rules.mk | 28 --- .../barobord/rgblight_oled_ec11/config.h | 32 --- .../barobord/rgblight_oled_ec11/rules.mk | 28 --- .../barobord/rgblight_oled_evq/config.h | 33 --- .../barobord/rgblight_oled_evq/rules.mk | 28 --- .../barobord/rgblight_pimoroni_ec11/config.h | 31 --- .../barobord/rgblight_pimoroni_ec11/rules.mk | 27 --- .../barobord/rgblight_pimoroni_evq/config.h | 33 --- .../barobord/rgblight_pimoroni_evq/rules.mk | 27 --- .../fingerpunch/barobord/rgbmatrix/config.h | 23 --- .../fingerpunch/barobord/rgbmatrix/rules.mk | 28 --- .../barobord/rgbmatrix_oled_ec11/config.h | 31 --- .../barobord/rgbmatrix_oled_ec11/rules.mk | 28 --- .../barobord/rgbmatrix_oled_evq/config.h | 33 --- .../barobord/rgbmatrix_oled_evq/rules.mk | 28 --- .../barobord/rgbmatrix_pimoroni_ec11/config.h | 31 --- .../barobord/rgbmatrix_pimoroni_ec11/rules.mk | 27 --- .../barobord/rgbmatrix_pimoroni_evq/config.h | 33 --- .../barobord/rgbmatrix_pimoroni_evq/rules.mk | 27 --- keyboards/fingerpunch/barobord/rules.mk | 18 +- .../fingerpunch/barobord_byomcu/config.h | 29 +-- .../fingerpunch/barobord_byomcu/ec11/config.h | 23 --- .../fingerpunch/barobord_byomcu/ec11/rules.mk | 28 --- .../fingerpunch/barobord_byomcu/evq/config.h | 25 --- .../fingerpunch/barobord_byomcu/evq/rules.mk | 28 --- .../fingerpunch/barobord_byomcu/fp_build.json | 22 ++ .../barobord_byomcu/keymaps/default/keymap.c | 2 +- .../keymaps/sadekbaroudi/keymap.c | 2 +- .../barobord_byomcu/no_features/config.h | 19 -- .../barobord_byomcu/no_features/rules.mk | 28 --- .../fingerpunch/barobord_byomcu/oled/config.h | 23 --- .../fingerpunch/barobord_byomcu/oled/rules.mk | 28 --- .../barobord_byomcu/oled_ec11/config.h | 27 --- .../barobord_byomcu/oled_ec11/rules.mk | 28 --- .../barobord_byomcu/oled_evq/config.h | 29 --- .../barobord_byomcu/oled_evq/rules.mk | 28 --- .../barobord_byomcu/pimoroni/config.h | 23 --- .../barobord_byomcu/pimoroni/rules.mk | 27 --- .../barobord_byomcu/pimoroni_ec11/config.h | 27 --- .../barobord_byomcu/pimoroni_ec11/rules.mk | 28 --- .../barobord_byomcu/pimoroni_evq/config.h | 29 --- .../barobord_byomcu/pimoroni_evq/rules.mk | 27 --- .../fingerpunch/barobord_byomcu/readme.md | 39 ++-- .../barobord_byomcu/rgblight/config.h | 23 --- .../barobord_byomcu/rgblight/rules.mk | 28 --- .../rgblight_oled_ec11/config.h | 32 --- .../rgblight_oled_ec11/rules.mk | 28 --- .../rgblight_oled_evq/config.h | 33 --- .../rgblight_oled_evq/rules.mk | 28 --- .../rgblight_pimoroni_ec11/config.h | 31 --- .../rgblight_pimoroni_ec11/rules.mk | 27 --- .../rgblight_pimoroni_evq/config.h | 33 --- .../rgblight_pimoroni_evq/rules.mk | 27 --- .../barobord_byomcu/rgbmatrix/config.h | 23 --- .../barobord_byomcu/rgbmatrix/rules.mk | 28 --- .../rgbmatrix_oled_ec11/config.h | 31 --- .../rgbmatrix_oled_ec11/rules.mk | 28 --- .../rgbmatrix_oled_evq/config.h | 33 --- .../rgbmatrix_oled_evq/rules.mk | 28 --- .../rgbmatrix_pimoroni_ec11/config.h | 31 --- .../rgbmatrix_pimoroni_ec11/rules.mk | 27 --- .../rgbmatrix_pimoroni_evq/config.h | 33 --- .../rgbmatrix_pimoroni_evq/rules.mk | 27 --- .../fingerpunch/barobord_byomcu/rules.mk | 21 +- keyboards/fingerpunch/bgkeeb/fp_build.json | 12 ++ keyboards/fingerpunch/bgkeeb/readme.md | 15 +- keyboards/fingerpunch/bgkeeb/rules.mk | 4 +- keyboards/fingerpunch/bigbarobord/config.h | 79 +++---- .../fingerpunch/bigbarobord/ec11/config.h | 25 --- .../fingerpunch/bigbarobord/ec11/rules.mk | 15 -- .../fingerpunch/bigbarobord/evq/config.h | 26 --- .../fingerpunch/bigbarobord/evq/rules.mk | 15 -- .../fingerpunch/bigbarobord/fp_build.json | 22 ++ .../bigbarobord/no_features/config.h | 20 -- .../bigbarobord/no_features/rules.mk | 15 -- .../fingerpunch/bigbarobord/oled/config.h | 26 --- .../fingerpunch/bigbarobord/oled/rules.mk | 15 -- .../fingerpunch/bigbarobord/pimoroni/config.h | 26 --- .../fingerpunch/bigbarobord/pimoroni/rules.mk | 14 -- keyboards/fingerpunch/bigbarobord/readme.md | 32 ++- .../fingerpunch/bigbarobord/rgblight/config.h | 23 --- .../fingerpunch/bigbarobord/rgblight/rules.mk | 15 -- .../bigbarobord/rgblight_ec11/config.h | 29 --- .../bigbarobord/rgblight_ec11/rules.mk | 15 -- .../bigbarobord/rgblight_evq/config.h | 30 --- .../bigbarobord/rgblight_evq/rules.mk | 15 -- .../bigbarobord/rgblight_oled/config.h | 30 --- .../bigbarobord/rgblight_oled/rules.mk | 15 -- .../bigbarobord/rgblight_pimoroni/config.h | 30 --- .../bigbarobord/rgblight_pimoroni/rules.mk | 14 -- .../bigbarobord/rgbmatrix/config.h | 23 --- .../bigbarobord/rgbmatrix/rules.mk | 15 -- .../bigbarobord/rgbmatrix_ec11/config.h | 29 --- .../bigbarobord/rgbmatrix_ec11/rules.mk | 15 -- .../bigbarobord/rgbmatrix_evq/config.h | 30 --- .../bigbarobord/rgbmatrix_evq/rules.mk | 15 -- .../bigbarobord/rgbmatrix_oled/config.h | 30 --- .../bigbarobord/rgbmatrix_oled/rules.mk | 15 -- .../bigbarobord/rgbmatrix_pimoroni/config.h | 30 --- .../bigbarobord/rgbmatrix_pimoroni/rules.mk | 14 -- keyboards/fingerpunch/bigbarobord/rules.mk | 19 +- keyboards/fingerpunch/euclid36/rules.mk | 2 +- keyboards/fingerpunch/ffkb/config.h | 101 ++++----- keyboards/fingerpunch/ffkb/ec11/config.h | 25 --- keyboards/fingerpunch/ffkb/ec11/rules.mk | 28 --- keyboards/fingerpunch/ffkb/ec11_evq/config.h | 30 --- keyboards/fingerpunch/ffkb/ec11_evq/rules.mk | 28 --- keyboards/fingerpunch/ffkb/evq/config.h | 26 --- keyboards/fingerpunch/ffkb/evq/rules.mk | 28 --- keyboards/fingerpunch/ffkb/fp_build.json | 27 +++ .../fingerpunch/ffkb/no_features/config.h | 20 -- .../fingerpunch/ffkb/no_features/rules.mk | 28 --- keyboards/fingerpunch/ffkb/oled/config.h | 28 --- keyboards/fingerpunch/ffkb/oled/rules.mk | 28 --- keyboards/fingerpunch/ffkb/oled_ec11/config.h | 34 --- keyboards/fingerpunch/ffkb/oled_ec11/rules.mk | 28 --- keyboards/fingerpunch/ffkb/oled_evq/config.h | 35 ---- keyboards/fingerpunch/ffkb/oled_evq/rules.mk | 28 --- keyboards/fingerpunch/ffkb/pimoroni/config.h | 28 --- keyboards/fingerpunch/ffkb/pimoroni/rules.mk | 27 --- .../fingerpunch/ffkb/pimoroni_ec11/config.h | 34 --- .../fingerpunch/ffkb/pimoroni_ec11/rules.mk | 27 --- .../fingerpunch/ffkb/pimoroni_evq/config.h | 35 ---- .../fingerpunch/ffkb/pimoroni_evq/rules.mk | 27 --- keyboards/fingerpunch/ffkb/readme.md | 49 ++--- keyboards/fingerpunch/ffkb/rgblight/config.h | 23 --- keyboards/fingerpunch/ffkb/rgblight/rules.mk | 28 --- .../fingerpunch/ffkb/rgblight_ec11/config.h | 29 --- .../fingerpunch/ffkb/rgblight_ec11/rules.mk | 28 --- .../ffkb/rgblight_ec11_evq/config.h | 34 --- .../ffkb/rgblight_ec11_evq/rules.mk | 28 --- .../fingerpunch/ffkb/rgblight_evq/config.h | 30 --- .../fingerpunch/ffkb/rgblight_evq/rules.mk | 28 --- .../fingerpunch/ffkb/rgblight_oled/config.h | 32 --- .../fingerpunch/ffkb/rgblight_oled/rules.mk | 28 --- .../ffkb/rgblight_oled_ec11/config.h | 38 ---- .../ffkb/rgblight_oled_ec11/rules.mk | 28 --- .../ffkb/rgblight_oled_evq/config.h | 39 ---- .../ffkb/rgblight_oled_evq/rules.mk | 28 --- .../ffkb/rgblight_pimoroni/config.h | 32 --- .../ffkb/rgblight_pimoroni/rules.mk | 27 --- .../ffkb/rgblight_pimoroni_ec11/config.h | 38 ---- .../ffkb/rgblight_pimoroni_ec11/rules.mk | 27 --- .../ffkb/rgblight_pimoroni_evq/config.h | 39 ---- .../ffkb/rgblight_pimoroni_evq/rules.mk | 27 --- keyboards/fingerpunch/ffkb/rgbmatrix/config.h | 23 --- keyboards/fingerpunch/ffkb/rgbmatrix/rules.mk | 28 --- .../fingerpunch/ffkb/rgbmatrix_ec11/config.h | 29 --- .../fingerpunch/ffkb/rgbmatrix_ec11/rules.mk | 28 --- .../ffkb/rgbmatrix_ec11_evq/config.h | 30 --- .../ffkb/rgbmatrix_ec11_evq/rules.mk | 28 --- .../fingerpunch/ffkb/rgbmatrix_evq/config.h | 30 --- .../fingerpunch/ffkb/rgbmatrix_evq/rules.mk | 28 --- .../fingerpunch/ffkb/rgbmatrix_oled/config.h | 32 --- .../fingerpunch/ffkb/rgbmatrix_oled/rules.mk | 28 --- .../ffkb/rgbmatrix_oled_ec11/config.h | 38 ---- .../ffkb/rgbmatrix_oled_ec11/rules.mk | 28 --- .../ffkb/rgbmatrix_oled_evq/config.h | 39 ---- .../ffkb/rgbmatrix_oled_evq/rules.mk | 28 --- .../ffkb/rgbmatrix_pimoroni/config.h | 32 --- .../ffkb/rgbmatrix_pimoroni/rules.mk | 27 --- .../ffkb/rgbmatrix_pimoroni_ec11/config.h | 38 ---- .../ffkb/rgbmatrix_pimoroni_ec11/rules.mk | 27 --- .../ffkb/rgbmatrix_pimoroni_evq/config.h | 39 ---- .../ffkb/rgbmatrix_pimoroni_evq/rules.mk | 27 --- keyboards/fingerpunch/ffkb/rules.mk | 31 ++- .../fingerpunch/ffkb_byomcu/cirque/config.h | 19 -- .../fingerpunch/ffkb_byomcu/cirque/rules.mk | 22 -- .../ffkb_byomcu/cirque_ec11/config.h | 19 -- .../ffkb_byomcu/cirque_ec11/rules.mk | 22 -- .../ffkb_byomcu/cirque_evq/config.h | 22 -- .../ffkb_byomcu/cirque_evq/rules.mk | 22 -- keyboards/fingerpunch/ffkb_byomcu/config.h | 97 ++++----- .../fingerpunch/ffkb_byomcu/ec11/config.h | 25 --- .../fingerpunch/ffkb_byomcu/ec11/rules.mk | 15 -- .../fingerpunch/ffkb_byomcu/ec11_evq/config.h | 30 --- .../fingerpunch/ffkb_byomcu/ec11_evq/rules.mk | 15 -- .../fingerpunch/ffkb_byomcu/evq/config.h | 26 --- .../fingerpunch/ffkb_byomcu/evq/rules.mk | 15 -- .../fingerpunch/ffkb_byomcu/ffkb_byomcu.c | 1 - .../fingerpunch/ffkb_byomcu/fp_build.json | 32 +++ .../ffkb_byomcu/no_features/config.h | 20 -- .../ffkb_byomcu/no_features/rules.mk | 15 -- .../fingerpunch/ffkb_byomcu/oled/config.h | 28 --- .../fingerpunch/ffkb_byomcu/oled/rules.mk | 15 -- .../ffkb_byomcu/oled_ec11/config.h | 34 --- .../ffkb_byomcu/oled_ec11/rules.mk | 15 -- .../fingerpunch/ffkb_byomcu/oled_evq/config.h | 35 ---- .../fingerpunch/ffkb_byomcu/oled_evq/rules.mk | 15 -- .../fingerpunch/ffkb_byomcu/pimoroni/config.h | 28 --- .../fingerpunch/ffkb_byomcu/pimoroni/rules.mk | 14 -- .../ffkb_byomcu/pimoroni_ec11/config.h | 34 --- .../ffkb_byomcu/pimoroni_ec11/rules.mk | 14 -- .../ffkb_byomcu/pimoroni_evq/config.h | 35 ---- .../ffkb_byomcu/pimoroni_evq/rules.mk | 14 -- keyboards/fingerpunch/ffkb_byomcu/readme.md | 48 ++--- .../fingerpunch/ffkb_byomcu/rgblight/config.h | 23 --- .../fingerpunch/ffkb_byomcu/rgblight/rules.mk | 15 -- .../ffkb_byomcu/rgblight_cirque/config.h | 23 --- .../ffkb_byomcu/rgblight_cirque/rules.mk | 22 -- .../ffkb_byomcu/rgblight_cirque_ec11/config.h | 23 --- .../ffkb_byomcu/rgblight_cirque_ec11/rules.mk | 22 -- .../ffkb_byomcu/rgblight_cirque_evq/config.h | 30 --- .../ffkb_byomcu/rgblight_cirque_evq/rules.mk | 22 -- .../ffkb_byomcu/rgblight_ec11/config.h | 29 --- .../ffkb_byomcu/rgblight_ec11/rules.mk | 15 -- .../ffkb_byomcu/rgblight_ec11_evq/config.h | 34 --- .../ffkb_byomcu/rgblight_ec11_evq/rules.mk | 15 -- .../ffkb_byomcu/rgblight_evq/config.h | 30 --- .../ffkb_byomcu/rgblight_evq/rules.mk | 15 -- .../ffkb_byomcu/rgblight_oled/config.h | 32 --- .../ffkb_byomcu/rgblight_oled/rules.mk | 15 -- .../ffkb_byomcu/rgblight_oled_ec11/config.h | 38 ---- .../ffkb_byomcu/rgblight_oled_ec11/rules.mk | 15 -- .../ffkb_byomcu/rgblight_oled_evq/config.h | 39 ---- .../ffkb_byomcu/rgblight_oled_evq/rules.mk | 15 -- .../ffkb_byomcu/rgblight_pimoroni/config.h | 32 --- .../ffkb_byomcu/rgblight_pimoroni/rules.mk | 14 -- .../rgblight_pimoroni_ec11/config.h | 38 ---- .../rgblight_pimoroni_ec11/rules.mk | 14 -- .../rgblight_pimoroni_evq/config.h | 39 ---- .../rgblight_pimoroni_evq/rules.mk | 14 -- .../ffkb_byomcu/rgbmatrix/config.h | 23 --- .../ffkb_byomcu/rgbmatrix/rules.mk | 15 -- .../ffkb_byomcu/rgbmatrix_cirque/config.h | 23 --- .../ffkb_byomcu/rgbmatrix_cirque/rules.mk | 22 -- .../rgbmatrix_cirque_ec11/config.h | 23 --- .../rgbmatrix_cirque_ec11/rules.mk | 22 -- .../ffkb_byomcu/rgbmatrix_cirque_evq/config.h | 30 --- .../ffkb_byomcu/rgbmatrix_cirque_evq/rules.mk | 22 -- .../ffkb_byomcu/rgbmatrix_ec11/config.h | 29 --- .../ffkb_byomcu/rgbmatrix_ec11/rules.mk | 15 -- .../ffkb_byomcu/rgbmatrix_ec11_evq/config.h | 30 --- .../ffkb_byomcu/rgbmatrix_ec11_evq/rules.mk | 15 -- .../ffkb_byomcu/rgbmatrix_evq/config.h | 30 --- .../ffkb_byomcu/rgbmatrix_evq/rules.mk | 15 -- .../ffkb_byomcu/rgbmatrix_oled/config.h | 32 --- .../ffkb_byomcu/rgbmatrix_oled/rules.mk | 15 -- .../ffkb_byomcu/rgbmatrix_oled_ec11/config.h | 38 ---- .../ffkb_byomcu/rgbmatrix_oled_ec11/rules.mk | 15 -- .../ffkb_byomcu/rgbmatrix_oled_evq/config.h | 39 ---- .../ffkb_byomcu/rgbmatrix_oled_evq/rules.mk | 15 -- .../ffkb_byomcu/rgbmatrix_pimoroni/config.h | 32 --- .../ffkb_byomcu/rgbmatrix_pimoroni/rules.mk | 14 -- .../rgbmatrix_pimoroni_ec11/config.h | 38 ---- .../rgbmatrix_pimoroni_ec11/rules.mk | 14 -- .../rgbmatrix_pimoroni_evq/config.h | 39 ---- .../rgbmatrix_pimoroni_evq/rules.mk | 14 -- keyboards/fingerpunch/ffkb_byomcu/rules.mk | 38 +++- keyboards/fingerpunch/luakeeb/config.h | 31 +-- keyboards/fingerpunch/luakeeb/fp_build.json | 12 ++ keyboards/fingerpunch/luakeeb/readme.md | 13 +- keyboards/fingerpunch/luakeeb/rules.mk | 4 +- keyboards/fingerpunch/pinkiesout/config.h | 29 +-- .../fingerpunch/pinkiesout/fp_build.json | 12 ++ .../pinkiesout/keymaps/sadekbaroudi/rules.mk | 1 - .../pinkiesout/no_features/config.h | 19 -- .../pinkiesout/no_features/rules.mk | 29 --- .../fingerpunch/pinkiesout/oled/config.h | 23 --- .../fingerpunch/pinkiesout/oled/rules.mk | 28 --- keyboards/fingerpunch/pinkiesout/readme.md | 22 +- .../fingerpunch/pinkiesout/rgblight/config.h | 23 --- .../fingerpunch/pinkiesout/rgblight/rules.mk | 29 --- .../pinkiesout/rgblight_oled/config.h | 28 --- .../pinkiesout/rgblight_oled/rules.mk | 28 --- .../fingerpunch/pinkiesout/rgbmatrix/config.h | 23 --- .../fingerpunch/pinkiesout/rgbmatrix/rules.mk | 29 --- .../pinkiesout/rgbmatrix_oled/config.h | 27 --- .../pinkiesout/rgbmatrix_oled/rules.mk | 28 --- keyboards/fingerpunch/pinkiesout/rules.mk | 6 +- keyboards/fingerpunch/rockon/config.h | 79 +++---- keyboards/fingerpunch/rockon/v1/fp_build.json | 12 ++ .../rockon/v1/keymaps/sadekbaroudi/rules.mk | 1 - .../rockon/v1/no_features/config.h | 19 -- .../rockon/v1/no_features/rules.mk | 29 --- keyboards/fingerpunch/rockon/v1/oled/config.h | 23 --- keyboards/fingerpunch/rockon/v1/oled/rules.mk | 28 --- keyboards/fingerpunch/rockon/v1/readme.md | 27 ++- .../fingerpunch/rockon/v1/rgblight/config.h | 23 --- .../fingerpunch/rockon/v1/rgblight/rules.mk | 29 --- .../rockon/v1/rgblight_oled/config.h | 28 --- .../rockon/v1/rgblight_oled/rules.mk | 28 --- .../fingerpunch/rockon/v1/rgbmatrix/config.h | 23 --- .../fingerpunch/rockon/v1/rgbmatrix/rules.mk | 29 --- .../rockon/v1/rgbmatrix_oled/config.h | 27 --- .../rockon/v1/rgbmatrix_oled/rules.mk | 28 --- keyboards/fingerpunch/rockon/v1/rules.mk | 6 +- .../fingerpunch/rockon/v2/cirque/config.h | 23 --- .../fingerpunch/rockon/v2/cirque/rules.mk | 22 -- .../rockon/v2/cirque_ec11/config.h | 23 --- .../rockon/v2/cirque_ec11/rules.mk | 22 -- .../rockon/v2/cirque_oled/config.h | 27 --- .../rockon/v2/cirque_oled/rules.mk | 22 -- .../rockon/v2/cirque_oled_ec11/config.h | 27 --- .../rockon/v2/cirque_oled_ec11/rules.mk | 22 -- keyboards/fingerpunch/rockon/v2/config.h | 31 +-- keyboards/fingerpunch/rockon/v2/ec11/config.h | 19 -- keyboards/fingerpunch/rockon/v2/ec11/rules.mk | 16 -- keyboards/fingerpunch/rockon/v2/fp_build.json | 27 +++ .../rockon/v2/no_features/config.h | 19 -- .../rockon/v2/no_features/rules.mk | 29 --- keyboards/fingerpunch/rockon/v2/oled/config.h | 23 --- keyboards/fingerpunch/rockon/v2/oled/rules.mk | 28 --- .../fingerpunch/rockon/v2/oled_ec11/config.h | 23 --- .../fingerpunch/rockon/v2/oled_ec11/rules.mk | 15 -- keyboards/fingerpunch/rockon/v2/readme.md | 40 ++-- .../fingerpunch/rockon/v2/rgblight/config.h | 23 --- .../fingerpunch/rockon/v2/rgblight/rules.mk | 29 --- .../rockon/v2/rgblight_cirque/config.h | 23 --- .../rockon/v2/rgblight_cirque/rules.mk | 22 -- .../rockon/v2/rgblight_cirque_ec11/config.h | 23 --- .../rockon/v2/rgblight_cirque_ec11/rules.mk | 22 -- .../rockon/v2/rgblight_ec11/config.h | 23 --- .../rockon/v2/rgblight_ec11/rules.mk | 16 -- .../rockon/v2/rgblight_oled/config.h | 28 --- .../rockon/v2/rgblight_oled/rules.mk | 28 --- .../rockon/v2/rgblight_oled_ec11/config.h | 28 --- .../rockon/v2/rgblight_oled_ec11/rules.mk | 15 -- .../fingerpunch/rockon/v2/rgbmatrix/config.h | 23 --- .../fingerpunch/rockon/v2/rgbmatrix/rules.mk | 29 --- .../rockon/v2/rgbmatrix_cirque/config.h | 23 --- .../rockon/v2/rgbmatrix_cirque/rules.mk | 22 -- .../rockon/v2/rgbmatrix_cirque_ec11/config.h | 23 --- .../rockon/v2/rgbmatrix_cirque_ec11/rules.mk | 22 -- .../rockon/v2/rgbmatrix_ec11/config.h | 23 --- .../rockon/v2/rgbmatrix_ec11/rules.mk | 16 -- .../rockon/v2/rgbmatrix_oled/config.h | 27 --- .../rockon/v2/rgbmatrix_oled/rules.mk | 28 --- .../rockon/v2/rgbmatrix_oled_ec11/config.h | 27 --- .../rockon/v2/rgbmatrix_oled_ec11/rules.mk | 15 -- keyboards/fingerpunch/rockon/v2/rules.mk | 21 +- keyboards/fingerpunch/rockon_bp/config.h | 29 +-- keyboards/fingerpunch/rockon_bp/ec11/config.h | 19 -- keyboards/fingerpunch/rockon_bp/ec11/rules.mk | 16 -- keyboards/fingerpunch/rockon_bp/fp_build.json | 27 +++ .../rockon_bp/no_features/config.h | 19 -- .../rockon_bp/no_features/rules.mk | 16 -- keyboards/fingerpunch/rockon_bp/oled/config.h | 23 --- keyboards/fingerpunch/rockon_bp/oled/rules.mk | 15 -- .../fingerpunch/rockon_bp/oled_ec11/config.h | 23 --- .../fingerpunch/rockon_bp/oled_ec11/rules.mk | 15 -- keyboards/fingerpunch/rockon_bp/readme.md | 28 +-- .../fingerpunch/rockon_bp/rgblight/config.h | 23 --- .../fingerpunch/rockon_bp/rgblight/rules.mk | 16 -- .../rockon_bp/rgblight_ec11/config.h | 23 --- .../rockon_bp/rgblight_ec11/rules.mk | 16 -- .../rockon_bp/rgblight_oled/config.h | 28 --- .../rockon_bp/rgblight_oled/rules.mk | 15 -- .../rockon_bp/rgblight_oled_ec11/config.h | 28 --- .../rockon_bp/rgblight_oled_ec11/rules.mk | 15 -- .../fingerpunch/rockon_bp/rgbmatrix/config.h | 23 --- .../fingerpunch/rockon_bp/rgbmatrix/rules.mk | 16 -- .../rockon_bp/rgbmatrix_ec11/config.h | 23 --- .../rockon_bp/rgbmatrix_ec11/rules.mk | 16 -- .../rockon_bp/rgbmatrix_oled/config.h | 27 --- .../rockon_bp/rgbmatrix_oled/rules.mk | 15 -- .../rockon_bp/rgbmatrix_oled_ec11/config.h | 27 --- .../rockon_bp/rgbmatrix_oled_ec11/rules.mk | 15 -- keyboards/fingerpunch/rockon_bp/rules.mk | 26 ++- .../stemcell_jumper_tester/rules.mk | 4 +- keyboards/fingerpunch/sweeeeep/config.h | 30 +-- keyboards/fingerpunch/sweeeeep/evq/config.h | 19 -- keyboards/fingerpunch/sweeeeep/evq/rules.mk | 7 - keyboards/fingerpunch/sweeeeep/fp_build.json | 17 ++ .../fingerpunch/sweeeeep/no_features/config.h | 19 -- .../fingerpunch/sweeeeep/no_features/rules.mk | 6 - keyboards/fingerpunch/sweeeeep/oled/config.h | 23 --- keyboards/fingerpunch/sweeeeep/oled/rules.mk | 6 - keyboards/fingerpunch/sweeeeep/readme.md | 20 +- .../fingerpunch/sweeeeep/rgblight/config.h | 23 --- .../fingerpunch/sweeeeep/rgblight/rules.mk | 6 - .../sweeeeep/rgblight_evq/config.h | 28 --- .../sweeeeep/rgblight_evq/rules.mk | 6 - .../sweeeeep/rgblight_oled/config.h | 28 --- .../sweeeeep/rgblight_oled/rules.mk | 6 - keyboards/fingerpunch/sweeeeep/rules.mk | 2 +- keyboards/fingerpunch/ximi/config.h | 194 +++++++++++------- keyboards/fingerpunch/ximi/fp_build.json | 27 +++ keyboards/fingerpunch/ximi/readme.md | 30 ++- keyboards/fingerpunch/ximi/rules.mk | 67 ++++-- 442 files changed, 1182 insertions(+), 9657 deletions(-) delete mode 100755 bin/build-absolem.sh delete mode 100755 bin/build-adux.sh delete mode 100755 bin/build-barobord-default.sh delete mode 100755 bin/build-barobord-oled.sh delete mode 100755 bin/build-barobord-pimoroni.sh delete mode 100755 bin/build-barobord-rgb-matrix-noenc-nooled.sh delete mode 100755 bin/build-barobord-rgb-matrix.sh delete mode 100755 bin/build-barobord-underglow-noenc-nooled.sh delete mode 100755 bin/build-barobord-via.sh delete mode 100755 bin/build-barobordhw-rgb-matrix.sh delete mode 100755 bin/build-barobordhw-rgb.sh delete mode 100755 bin/build-bgkeeb-default.sh delete mode 100755 bin/build-bgkeeb.sh delete mode 100755 bin/build-draculad.sh delete mode 100755 bin/build-enigma36-v1.sh delete mode 100755 bin/build-enigma36-v2.sh delete mode 100755 bin/build-euclid36-proto.sh delete mode 100755 bin/build-ffkb-pim-ec11.sh delete mode 100755 bin/build-ffkb-rgb-matrix-ec11.sh delete mode 100755 bin/build-ffkb-rgb-matrix-evq-ec11.sh delete mode 100755 bin/build-ffkb-rgblight-ec11.sh delete mode 100755 bin/build-ffkb-rgblight-evq-ec11.sh delete mode 100755 bin/build-ffkbhw.sh delete mode 100755 bin/build-freewilly.sh delete mode 100755 bin/build-halfdash.sh delete mode 100755 bin/build-luakeeb.sh delete mode 100755 bin/build-minidox.sh delete mode 100755 bin/build-osprette.sh delete mode 100755 bin/build-pinkies-out.sh delete mode 100755 bin/build-rockon-bp.sh delete mode 100755 bin/build-rockon.sh delete mode 100755 bin/build-sweeeeep.sh create mode 100755 bin/fp_build.sh delete mode 100755 bin/make-all-ffkb.sh delete mode 100755 bin/make-all-ffkb_byomcu.sh delete mode 100755 bin/make-all-ffkb_stemcell.sh delete mode 100644 keyboards/fingerpunch/barobord/ec11/config.h delete mode 100644 keyboards/fingerpunch/barobord/ec11/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/evq/config.h delete mode 100644 keyboards/fingerpunch/barobord/evq/rules.mk create mode 100644 keyboards/fingerpunch/barobord/fp_build.json delete mode 100644 keyboards/fingerpunch/barobord/no_features/config.h delete mode 100644 keyboards/fingerpunch/barobord/no_features/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/oled/config.h delete mode 100644 keyboards/fingerpunch/barobord/oled/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/barobord/oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/oled_evq/config.h delete mode 100644 keyboards/fingerpunch/barobord/oled_evq/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/pimoroni/config.h delete mode 100644 keyboards/fingerpunch/barobord/pimoroni/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/pimoroni_ec11/config.h delete mode 100644 keyboards/fingerpunch/barobord/pimoroni_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/pimoroni_evq/config.h delete mode 100644 keyboards/fingerpunch/barobord/pimoroni_evq/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/rgblight/config.h delete mode 100644 keyboards/fingerpunch/barobord/rgblight/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/rgblight_oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/barobord/rgblight_oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/rgblight_oled_evq/config.h delete mode 100644 keyboards/fingerpunch/barobord/rgblight_oled_evq/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/rgblight_pimoroni_ec11/config.h delete mode 100644 keyboards/fingerpunch/barobord/rgblight_pimoroni_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/rgblight_pimoroni_evq/config.h delete mode 100644 keyboards/fingerpunch/barobord/rgblight_pimoroni_evq/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/rgbmatrix/config.h delete mode 100644 keyboards/fingerpunch/barobord/rgbmatrix/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/rgbmatrix_oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/barobord/rgbmatrix_oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/rgbmatrix_oled_evq/config.h delete mode 100644 keyboards/fingerpunch/barobord/rgbmatrix_oled_evq/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_ec11/config.h delete mode 100644 keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_evq/config.h delete mode 100644 keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_evq/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/ec11/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/ec11/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/evq/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/evq/rules.mk create mode 100644 keyboards/fingerpunch/barobord_byomcu/fp_build.json delete mode 100644 keyboards/fingerpunch/barobord_byomcu/no_features/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/no_features/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/oled/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/oled/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/oled_evq/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/oled_evq/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/pimoroni/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/pimoroni/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/pimoroni_ec11/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/pimoroni_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/pimoroni_evq/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/pimoroni_evq/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgblight/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgblight/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgblight_oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgblight_oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgblight_oled_evq/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgblight_oled_evq/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_ec11/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_evq/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_evq/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgbmatrix/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgbmatrix/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_evq/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_evq/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_ec11/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_evq/config.h delete mode 100644 keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_evq/rules.mk create mode 100644 keyboards/fingerpunch/bgkeeb/fp_build.json delete mode 100644 keyboards/fingerpunch/bigbarobord/ec11/config.h delete mode 100644 keyboards/fingerpunch/bigbarobord/ec11/rules.mk delete mode 100644 keyboards/fingerpunch/bigbarobord/evq/config.h delete mode 100644 keyboards/fingerpunch/bigbarobord/evq/rules.mk create mode 100644 keyboards/fingerpunch/bigbarobord/fp_build.json delete mode 100644 keyboards/fingerpunch/bigbarobord/no_features/config.h delete mode 100644 keyboards/fingerpunch/bigbarobord/no_features/rules.mk delete mode 100644 keyboards/fingerpunch/bigbarobord/oled/config.h delete mode 100644 keyboards/fingerpunch/bigbarobord/oled/rules.mk delete mode 100644 keyboards/fingerpunch/bigbarobord/pimoroni/config.h delete mode 100644 keyboards/fingerpunch/bigbarobord/pimoroni/rules.mk delete mode 100644 keyboards/fingerpunch/bigbarobord/rgblight/config.h delete mode 100644 keyboards/fingerpunch/bigbarobord/rgblight/rules.mk delete mode 100644 keyboards/fingerpunch/bigbarobord/rgblight_ec11/config.h delete mode 100644 keyboards/fingerpunch/bigbarobord/rgblight_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/bigbarobord/rgblight_evq/config.h delete mode 100644 keyboards/fingerpunch/bigbarobord/rgblight_evq/rules.mk delete mode 100644 keyboards/fingerpunch/bigbarobord/rgblight_oled/config.h delete mode 100644 keyboards/fingerpunch/bigbarobord/rgblight_oled/rules.mk delete mode 100644 keyboards/fingerpunch/bigbarobord/rgblight_pimoroni/config.h delete mode 100644 keyboards/fingerpunch/bigbarobord/rgblight_pimoroni/rules.mk delete mode 100644 keyboards/fingerpunch/bigbarobord/rgbmatrix/config.h delete mode 100644 keyboards/fingerpunch/bigbarobord/rgbmatrix/rules.mk delete mode 100644 keyboards/fingerpunch/bigbarobord/rgbmatrix_ec11/config.h delete mode 100644 keyboards/fingerpunch/bigbarobord/rgbmatrix_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/bigbarobord/rgbmatrix_evq/config.h delete mode 100644 keyboards/fingerpunch/bigbarobord/rgbmatrix_evq/rules.mk delete mode 100644 keyboards/fingerpunch/bigbarobord/rgbmatrix_oled/config.h delete mode 100644 keyboards/fingerpunch/bigbarobord/rgbmatrix_oled/rules.mk delete mode 100644 keyboards/fingerpunch/bigbarobord/rgbmatrix_pimoroni/config.h delete mode 100644 keyboards/fingerpunch/bigbarobord/rgbmatrix_pimoroni/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb/ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/ec11_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb/ec11_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb/evq/rules.mk create mode 100644 keyboards/fingerpunch/ffkb/fp_build.json delete mode 100644 keyboards/fingerpunch/ffkb/no_features/config.h delete mode 100644 keyboards/fingerpunch/ffkb/no_features/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/oled/config.h delete mode 100644 keyboards/fingerpunch/ffkb/oled/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb/oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/oled_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb/oled_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/pimoroni/config.h delete mode 100644 keyboards/fingerpunch/ffkb/pimoroni/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/pimoroni_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb/pimoroni_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/pimoroni_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb/pimoroni_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgblight/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgblight/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_ec11_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_ec11_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_oled/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_oled/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_oled_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_oled_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_pimoroni/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_pimoroni/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_pimoroni_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_pimoroni_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_pimoroni_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgblight_pimoroni_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_ec11_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_ec11_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_oled/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_oled/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_oled_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_oled_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/cirque/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/cirque/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/cirque_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/cirque_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/cirque_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/cirque_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/ec11_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/ec11_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/evq/rules.mk create mode 100644 keyboards/fingerpunch/ffkb_byomcu/fp_build.json delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/no_features/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/no_features/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/oled/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/oled/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/oled_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/oled_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/pimoroni/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/pimoroni/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/pimoroni_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/pimoroni_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/pimoroni_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/pimoroni_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_oled/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_oled/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_evq/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_ec11/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_evq/config.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_evq/rules.mk create mode 100644 keyboards/fingerpunch/luakeeb/fp_build.json create mode 100644 keyboards/fingerpunch/pinkiesout/fp_build.json delete mode 100644 keyboards/fingerpunch/pinkiesout/no_features/config.h delete mode 100644 keyboards/fingerpunch/pinkiesout/no_features/rules.mk delete mode 100644 keyboards/fingerpunch/pinkiesout/oled/config.h delete mode 100644 keyboards/fingerpunch/pinkiesout/oled/rules.mk delete mode 100644 keyboards/fingerpunch/pinkiesout/rgblight/config.h delete mode 100644 keyboards/fingerpunch/pinkiesout/rgblight/rules.mk delete mode 100644 keyboards/fingerpunch/pinkiesout/rgblight_oled/config.h delete mode 100644 keyboards/fingerpunch/pinkiesout/rgblight_oled/rules.mk delete mode 100644 keyboards/fingerpunch/pinkiesout/rgbmatrix/config.h delete mode 100644 keyboards/fingerpunch/pinkiesout/rgbmatrix/rules.mk delete mode 100644 keyboards/fingerpunch/pinkiesout/rgbmatrix_oled/config.h delete mode 100644 keyboards/fingerpunch/pinkiesout/rgbmatrix_oled/rules.mk create mode 100644 keyboards/fingerpunch/rockon/v1/fp_build.json delete mode 100644 keyboards/fingerpunch/rockon/v1/no_features/config.h delete mode 100644 keyboards/fingerpunch/rockon/v1/no_features/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v1/oled/config.h delete mode 100644 keyboards/fingerpunch/rockon/v1/oled/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v1/rgblight/config.h delete mode 100644 keyboards/fingerpunch/rockon/v1/rgblight/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v1/rgblight_oled/config.h delete mode 100644 keyboards/fingerpunch/rockon/v1/rgblight_oled/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v1/rgbmatrix/config.h delete mode 100644 keyboards/fingerpunch/rockon/v1/rgbmatrix/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v1/rgbmatrix_oled/config.h delete mode 100644 keyboards/fingerpunch/rockon/v1/rgbmatrix_oled/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/cirque/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/cirque/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/cirque_ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/cirque_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/cirque_oled/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/cirque_oled/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/cirque_oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/cirque_oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/ec11/rules.mk create mode 100644 keyboards/fingerpunch/rockon/v2/fp_build.json delete mode 100644 keyboards/fingerpunch/rockon/v2/no_features/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/no_features/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/oled/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/oled/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/rgblight/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/rgblight/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/rgblight_cirque/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/rgblight_cirque/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/rgblight_cirque_ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/rgblight_cirque_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/rgblight_ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/rgblight_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/rgblight_oled/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/rgblight_oled/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/rgblight_oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/rgblight_oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/rgbmatrix/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/rgbmatrix/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque_ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/rgbmatrix_ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/rgbmatrix_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/rgbmatrix_oled/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/rgbmatrix_oled/rules.mk delete mode 100644 keyboards/fingerpunch/rockon/v2/rgbmatrix_oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon/v2/rgbmatrix_oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/rockon_bp/ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon_bp/ec11/rules.mk create mode 100644 keyboards/fingerpunch/rockon_bp/fp_build.json delete mode 100644 keyboards/fingerpunch/rockon_bp/no_features/config.h delete mode 100644 keyboards/fingerpunch/rockon_bp/no_features/rules.mk delete mode 100644 keyboards/fingerpunch/rockon_bp/oled/config.h delete mode 100644 keyboards/fingerpunch/rockon_bp/oled/rules.mk delete mode 100644 keyboards/fingerpunch/rockon_bp/oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon_bp/oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/rockon_bp/rgblight/config.h delete mode 100644 keyboards/fingerpunch/rockon_bp/rgblight/rules.mk delete mode 100644 keyboards/fingerpunch/rockon_bp/rgblight_ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon_bp/rgblight_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/rockon_bp/rgblight_oled/config.h delete mode 100644 keyboards/fingerpunch/rockon_bp/rgblight_oled/rules.mk delete mode 100644 keyboards/fingerpunch/rockon_bp/rgblight_oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon_bp/rgblight_oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/rockon_bp/rgbmatrix/config.h delete mode 100644 keyboards/fingerpunch/rockon_bp/rgbmatrix/rules.mk delete mode 100644 keyboards/fingerpunch/rockon_bp/rgbmatrix_ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon_bp/rgbmatrix_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/rockon_bp/rgbmatrix_oled/config.h delete mode 100644 keyboards/fingerpunch/rockon_bp/rgbmatrix_oled/rules.mk delete mode 100644 keyboards/fingerpunch/rockon_bp/rgbmatrix_oled_ec11/config.h delete mode 100644 keyboards/fingerpunch/rockon_bp/rgbmatrix_oled_ec11/rules.mk delete mode 100644 keyboards/fingerpunch/sweeeeep/evq/config.h delete mode 100644 keyboards/fingerpunch/sweeeeep/evq/rules.mk create mode 100644 keyboards/fingerpunch/sweeeeep/fp_build.json delete mode 100644 keyboards/fingerpunch/sweeeeep/no_features/config.h delete mode 100644 keyboards/fingerpunch/sweeeeep/no_features/rules.mk delete mode 100644 keyboards/fingerpunch/sweeeeep/oled/config.h delete mode 100644 keyboards/fingerpunch/sweeeeep/oled/rules.mk delete mode 100644 keyboards/fingerpunch/sweeeeep/rgblight/config.h delete mode 100644 keyboards/fingerpunch/sweeeeep/rgblight/rules.mk delete mode 100644 keyboards/fingerpunch/sweeeeep/rgblight_evq/config.h delete mode 100644 keyboards/fingerpunch/sweeeeep/rgblight_evq/rules.mk delete mode 100644 keyboards/fingerpunch/sweeeeep/rgblight_oled/config.h delete mode 100644 keyboards/fingerpunch/sweeeeep/rgblight_oled/rules.mk create mode 100644 keyboards/fingerpunch/ximi/fp_build.json diff --git a/bin/build-absolem.sh b/bin/build-absolem.sh deleted file mode 100755 index 57cf811aeb17..000000000000 --- a/bin/build-absolem.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -make absolem:sadekbaroudi -cp .build/absolem_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/absolem diff --git a/bin/build-adux.sh b/bin/build-adux.sh deleted file mode 100755 index 883bf8db4e0d..000000000000 --- a/bin/build-adux.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -#cp keyboards/fingerpunch/barobord/rules-oled.mk keyboards/fingerpunch/barobord/rules.mk -make a_dux:sadekbaroudi ; cp .build/a_dux_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/a_dux/ ; -#rm keyboards/fingerpunch/barobord/rules.mk diff --git a/bin/build-barobord-default.sh b/bin/build-barobord-default.sh deleted file mode 100755 index d557449d0d18..000000000000 --- a/bin/build-barobord-default.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -make fingerpunch/barobord:default -cp .build/fingerpunch_barobord_default* /mnt/g/My\ Drive/qmk-keyboards/barobord-default/ diff --git a/bin/build-barobord-oled.sh b/bin/build-barobord-oled.sh deleted file mode 100755 index ee62ce6ac5ed..000000000000 --- a/bin/build-barobord-oled.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -cp keyboards/fingerpunch/barobord/rules.mk keyboards/fingerpunch/barobord/rules.mk.bak -cp keyboards/fingerpunch/barobord/rules-oled.mk keyboards/fingerpunch/barobord/rules.mk -make fingerpunch/barobord:sadekbaroudi ; cp .build/fingerpunch_barobord_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/barobord-oled/ ; -mv keyboards/fingerpunch/barobord/rules.mk.bak keyboards/fingerpunch/barobord/rules.mk diff --git a/bin/build-barobord-pimoroni.sh b/bin/build-barobord-pimoroni.sh deleted file mode 100755 index 15eb6877ee77..000000000000 --- a/bin/build-barobord-pimoroni.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -cp keyboards/fingerpunch/barobord/rules.mk keyboards/fingerpunch/barobord/rules.mk.bak -cp keyboards/fingerpunch/barobord/rules-pimoroni.mk keyboards/fingerpunch/barobord/rules.mk -make fingerpunch/barobord:sadekbaroudi ; cp .build/fingerpunch_barobord_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/barobord-pimoroni/ ; -mv keyboards/fingerpunch/barobord/rules.mk.bak keyboards/fingerpunch/barobord/rules.mk diff --git a/bin/build-barobord-rgb-matrix-noenc-nooled.sh b/bin/build-barobord-rgb-matrix-noenc-nooled.sh deleted file mode 100755 index 0851e151f958..000000000000 --- a/bin/build-barobord-rgb-matrix-noenc-nooled.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -cp keyboards/fingerpunch/barobord/rules.mk keyboards/fingerpunch/barobord/rules.mk.bak -cp keyboards/fingerpunch/barobord/rules-rgb-matrix-noenc-nooled.mk keyboards/fingerpunch/barobord/rules.mk -cp keyboards/fingerpunch/barobord/config.h keyboards/fingerpunch/barobord/config.h.bak -cp keyboards/fingerpunch/barobord/rules-rgb-matrix-noenc-nooled.config.h keyboards/fingerpunch/barobord/config.h -make fingerpunch/barobord:sadekbaroudi ; cp .build/fingerpunch_barobord_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/barobord-rgb-matrix-noenc-nooled/ ; -mv keyboards/fingerpunch/barobord/rules.mk.bak keyboards/fingerpunch/barobord/rules.mk -mv keyboards/fingerpunch/barobord/config.h.bak keyboards/fingerpunch/barobord/config.h diff --git a/bin/build-barobord-rgb-matrix.sh b/bin/build-barobord-rgb-matrix.sh deleted file mode 100755 index 46cbf52baa4f..000000000000 --- a/bin/build-barobord-rgb-matrix.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -cp keyboards/fingerpunch/barobord/rules.mk keyboards/fingerpunch/barobord/rules.mk.bak -cp keyboards/fingerpunch/barobord/rules-rgb-matrix.mk keyboards/fingerpunch/barobord/rules.mk -make fingerpunch/barobord:sadekbaroudi ; cp .build/fingerpunch_barobord_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/barobord-rgb-matrix/ ; -mv keyboards/fingerpunch/barobord/rules.mk.bak keyboards/fingerpunch/barobord/rules.mk diff --git a/bin/build-barobord-underglow-noenc-nooled.sh b/bin/build-barobord-underglow-noenc-nooled.sh deleted file mode 100755 index e1bc316f51fe..000000000000 --- a/bin/build-barobord-underglow-noenc-nooled.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -cp keyboards/fingerpunch/barobord/rules.mk keyboards/fingerpunch/barobord/rules.mk.bak -cp keyboards/fingerpunch/barobord/rules-underglow-noenc-nooled.mk keyboards/fingerpunch/barobord/rules.mk -cp keyboards/fingerpunch/barobord/config.h keyboards/fingerpunch/barobord/config.h.bak -cp keyboards/fingerpunch/barobord/rules-underglow-noenc-nooled.config.h keyboards/fingerpunch/barobord/config.h -make fingerpunch/barobord:sadekbaroudi ; cp .build/fingerpunch_barobord_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/barobord-underglow-noenc-nooled/ ; -mv keyboards/fingerpunch/barobord/rules.mk.bak keyboards/fingerpunch/barobord/rules.mk -mv keyboards/fingerpunch/barobord/config.h.bak keyboards/fingerpunch/barobord/config.h diff --git a/bin/build-barobord-via.sh b/bin/build-barobord-via.sh deleted file mode 100755 index 56593170c5d8..000000000000 --- a/bin/build-barobord-via.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -make fingerpunch/barobord:via -cp .build/fingerpunch_barobord_via* /mnt/g/My\ Drive/qmk-keyboards/barobord-via/ diff --git a/bin/build-barobordhw-rgb-matrix.sh b/bin/build-barobordhw-rgb-matrix.sh deleted file mode 100755 index ccf1f18cde3f..000000000000 --- a/bin/build-barobordhw-rgb-matrix.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -cp keyboards/fingerpunch/handwired/barobordhw/rules-rgb-matrix.mk keyboards/fingerpunch/handwired/barobordhw/rules.mk -make fingerpunch/handwired/barobordhw:sadekbaroudi ; cp .build/fingerpunch_handwired_barobordhw_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/barobordhw-rgb-matrix/ ; -rm keyboards/fingerpunch/handwired/barobordhw/rules.mk diff --git a/bin/build-barobordhw-rgb.sh b/bin/build-barobordhw-rgb.sh deleted file mode 100755 index c5e2dbda5a73..000000000000 --- a/bin/build-barobordhw-rgb.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -cp keyboards/fingerpunch/handwired/barobordhw/rules-rgb.mk keyboards/fingerpunch/handwired/barobordhw/rules.mk -make fingerpunch/handwired/barobordhw:sadekbaroudi ; cp .build/fingerpunch_handwired_barobordhw_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/barobordhw-rgb/ ; -rm keyboards/fingerpunch/handwired/barobordhw/rules.mk diff --git a/bin/build-bgkeeb-default.sh b/bin/build-bgkeeb-default.sh deleted file mode 100755 index 2d3f9c181da8..000000000000 --- a/bin/build-bgkeeb-default.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -# NOTE: I had to set COMBO_ENABLE to no in my users/sadekbaroudi/rules.mk due to space limitations - -make fingerpunch/bgkeeb:sadekbaroudi ; cp .build/fingerpunch_bgkeeb_sadekbaroudi.hex /mnt/g/My\ Drive/qmk-keyboards/bgkeeb/ ; diff --git a/bin/build-bgkeeb.sh b/bin/build-bgkeeb.sh deleted file mode 100755 index 2d3f9c181da8..000000000000 --- a/bin/build-bgkeeb.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -# NOTE: I had to set COMBO_ENABLE to no in my users/sadekbaroudi/rules.mk due to space limitations - -make fingerpunch/bgkeeb:sadekbaroudi ; cp .build/fingerpunch_bgkeeb_sadekbaroudi.hex /mnt/g/My\ Drive/qmk-keyboards/bgkeeb/ ; diff --git a/bin/build-draculad.sh b/bin/build-draculad.sh deleted file mode 100755 index 54c7c7db2f2c..000000000000 --- a/bin/build-draculad.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -make draculad:sadekbaroudi ; -cp .build/draculad_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/draculad/ ; diff --git a/bin/build-enigma36-v1.sh b/bin/build-enigma36-v1.sh deleted file mode 100755 index c6964bfe9822..000000000000 --- a/bin/build-enigma36-v1.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -cp keyboards/fingerpunch/handwired/enigma36/config-v1.h keyboards/fingerpunch/handwired/enigma36/config.h -cp keyboards/fingerpunch/handwired/enigma36/rules-v1.mk keyboards/fingerpunch/handwired/enigma36/rules.mk -make fingerpunch/handwired/enigma36:sadekbaroudi ; cp .build/fingerpunch_handwired_enigma36_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/enigma36-v1/ ; -rm keyboards/fingerpunch/handwired/enigma36/config.h -rm keyboards/fingerpunch/handwired/enigma36/rules.mk diff --git a/bin/build-enigma36-v2.sh b/bin/build-enigma36-v2.sh deleted file mode 100755 index 65671736fc79..000000000000 --- a/bin/build-enigma36-v2.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -cp keyboards/fingerpunch/handwired/enigma36/config-v2.h keyboards/fingerpunch/handwired/enigma36/config.h -cp keyboards/fingerpunch/handwired/enigma36/rules-v2.mk keyboards/fingerpunch/handwired/enigma36/rules.mk -make fingerpunch/handwired/enigma36:sadekbaroudi ; cp .build/fingerpunch_handwired_enigma36_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/enigma36-v2/ ; -rm keyboards/fingerpunch/handwired/enigma36/config.h -rm keyboards/fingerpunch/handwired/enigma36/rules.mk diff --git a/bin/build-euclid36-proto.sh b/bin/build-euclid36-proto.sh deleted file mode 100755 index 268a76759108..000000000000 --- a/bin/build-euclid36-proto.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -make xoiviox/euclid36proto:sadekbaroudi -cp .build/xoiviox_euclid36proto_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/euclid36proto/ diff --git a/bin/build-ffkb-pim-ec11.sh b/bin/build-ffkb-pim-ec11.sh deleted file mode 100755 index 3a6fe9b051c4..000000000000 --- a/bin/build-ffkb-pim-ec11.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -cp keyboards/fingerpunch/ffkb/config.h keyboards/fingerpunch/ffkb/config.h.bak -cp keyboards/fingerpunch/ffkb/rules.mk keyboards/fingerpunch/ffkb/rules.mk.bak -cp keyboards/fingerpunch/ffkb/config-pim-ec11.h keyboards/fingerpunch/ffkb/config.h -cp keyboards/fingerpunch/ffkb/rules-pim-ec11.mk keyboards/fingerpunch/ffkb/rules.mk -make fingerpunch/ffkb:sadekbaroudi -mv keyboards/fingerpunch/ffkb/config.h.bak keyboards/fingerpunch/ffkb/config.h -mv keyboards/fingerpunch/ffkb/rules.mk.bak keyboards/fingerpunch/ffkb/rules.mk -cp .build/fingerpunch_ffkb_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/ffkb-pim-ec11/ diff --git a/bin/build-ffkb-rgb-matrix-ec11.sh b/bin/build-ffkb-rgb-matrix-ec11.sh deleted file mode 100755 index ce14243d3672..000000000000 --- a/bin/build-ffkb-rgb-matrix-ec11.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -cp keyboards/fingerpunch/ffkb/config.h keyboards/fingerpunch/ffkb/config.h.bak -cp keyboards/fingerpunch/ffkb/rules.mk keyboards/fingerpunch/ffkb/rules.mk.bak -cp keyboards/fingerpunch/ffkb/config-rgb-matrix-ec11.h keyboards/fingerpunch/ffkb/config.h -cp keyboards/fingerpunch/ffkb/rules-rgb-matrix-ec11.mk keyboards/fingerpunch/ffkb/rules.mk -make fingerpunch/ffkb:sadekbaroudi -mv keyboards/fingerpunch/ffkb/config.h.bak keyboards/fingerpunch/ffkb/config.h -mv keyboards/fingerpunch/ffkb/rules.mk.bak keyboards/fingerpunch/ffkb/rules.mk -cp .build/fingerpunch_ffkb_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/ffkb-rgb-matrix-ec11/ diff --git a/bin/build-ffkb-rgb-matrix-evq-ec11.sh b/bin/build-ffkb-rgb-matrix-evq-ec11.sh deleted file mode 100755 index bf6f61fa5206..000000000000 --- a/bin/build-ffkb-rgb-matrix-evq-ec11.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -cp keyboards/fingerpunch/ffkb/config.h keyboards/fingerpunch/ffkb/config.h.bak -cp keyboards/fingerpunch/ffkb/rules.mk keyboards/fingerpunch/ffkb/rules.mk.bak -cp keyboards/fingerpunch/ffkb/config-rgb-matrix-evq-ec11.h keyboards/fingerpunch/ffkb/config.h -cp keyboards/fingerpunch/ffkb/rules-rgb-matrix-evq-ec11.mk keyboards/fingerpunch/ffkb/rules.mk -make fingerpunch/ffkb:sadekbaroudi -mv keyboards/fingerpunch/ffkb/config.h.bak keyboards/fingerpunch/ffkb/config.h -mv keyboards/fingerpunch/ffkb/rules.mk.bak keyboards/fingerpunch/ffkb/rules.mk -cp .build/fingerpunch_ffkb_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/ffkb-rgb-matrix-evq-ec11/ diff --git a/bin/build-ffkb-rgblight-ec11.sh b/bin/build-ffkb-rgblight-ec11.sh deleted file mode 100755 index 3ea09cbe413e..000000000000 --- a/bin/build-ffkb-rgblight-ec11.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -cp keyboards/fingerpunch/ffkb/config.h keyboards/fingerpunch/ffkb/config.h.bak -cp keyboards/fingerpunch/ffkb/rules.mk keyboards/fingerpunch/ffkb/rules.mk.bak -cp keyboards/fingerpunch/ffkb/config-rgblight-ec11.h keyboards/fingerpunch/ffkb/config.h -cp keyboards/fingerpunch/ffkb/rules-rgblight-ec11.mk keyboards/fingerpunch/ffkb/rules.mk -make fingerpunch/ffkb:sadekbaroudi -mv keyboards/fingerpunch/ffkb/config.h.bak keyboards/fingerpunch/ffkb/config.h -mv keyboards/fingerpunch/ffkb/rules.mk.bak keyboards/fingerpunch/ffkb/rules.mk -cp .build/fingerpunch_ffkb_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/ffkb-rgblight-ec11/ diff --git a/bin/build-ffkb-rgblight-evq-ec11.sh b/bin/build-ffkb-rgblight-evq-ec11.sh deleted file mode 100755 index db24957f18f2..000000000000 --- a/bin/build-ffkb-rgblight-evq-ec11.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -cp keyboards/fingerpunch/ffkb/config.h keyboards/fingerpunch/ffkb/config.h.bak -cp keyboards/fingerpunch/ffkb/rules.mk keyboards/fingerpunch/ffkb/rules.mk.bak -cp keyboards/fingerpunch/ffkb/config-rgblight-evq-ec11.h keyboards/fingerpunch/ffkb/config.h -cp keyboards/fingerpunch/ffkb/rules-rgblight-evq-ec11.mk keyboards/fingerpunch/ffkb/rules.mk -make fingerpunch/ffkb:sadekbaroudi -mv keyboards/fingerpunch/ffkb/config.h.bak keyboards/fingerpunch/ffkb/config.h -mv keyboards/fingerpunch/ffkb/rules.mk.bak keyboards/fingerpunch/ffkb/rules.mk -cp .build/fingerpunch_ffkb_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/ffkb-rgblight-evq-ec11/ diff --git a/bin/build-ffkbhw.sh b/bin/build-ffkbhw.sh deleted file mode 100755 index a6af472bd36e..000000000000 --- a/bin/build-ffkbhw.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -make fingerpunch/handwired/ffkbhw:sadekbaroudi -cp .build/fingerpunch_handwired_ffkbhw_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/ffkbhw/ diff --git a/bin/build-freewilly.sh b/bin/build-freewilly.sh deleted file mode 100755 index 762a6a28d136..000000000000 --- a/bin/build-freewilly.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -make free_willy:sadekbaroudi ; cp .build/free_willy_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/free_willy/ ; diff --git a/bin/build-halfdash.sh b/bin/build-halfdash.sh deleted file mode 100755 index d1a09f1ea956..000000000000 --- a/bin/build-halfdash.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -make fingerpunch/halfdash:sadekbaroudi -cp .build/fingerpunch_halfdash_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/halfdash/ diff --git a/bin/build-luakeeb.sh b/bin/build-luakeeb.sh deleted file mode 100755 index 99604b7755ce..000000000000 --- a/bin/build-luakeeb.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -# NOTE: I had to set COMBO_ENABLE to no in my users/sadekbaroudi/rules.mk due to space limitations - -make fingerpunch/luakeeb:sadekbaroudi ; cp .build/fingerpunch_luakeeb_sadekbaroudi.hex /mnt/g/My\ Drive/qmk-keyboards/luakeeb/ ; diff --git a/bin/build-minidox.sh b/bin/build-minidox.sh deleted file mode 100755 index f4638b590ab4..000000000000 --- a/bin/build-minidox.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -#cp keyboards/xoiviox/barobord/rules-oled.mk keyboards/xoiviox/barobord/rules.mk -make minidox/rev1:sadekbaroudi ; cp .build/minidox_rev1_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/minidox/ ; -mv /mnt/g/My\ Drive/qmk-keyboards/minidox/minidox_rev1_sadekbaroudi.hex -echo "-------------------------------------------------------------------------------------------------------" -echo "-------------------------------------------------------------------------------------------------------" -echo "-------------------------------------------------------------------------------------------------------" -echo "-------------------------------------------------------------------------------------------------------" -echo "-------------------------------------------------------------------------------------------------------" -echo "look at keymap.c in the keymap directory, make the changes in rgb_base_layer_keymap, and build the slave version" -echo "-------------------------------------------------------------------------------------------------------" -echo "-------------------------------------------------------------------------------------------------------" -echo "-------------------------------------------------------------------------------------------------------" -echo "-------------------------------------------------------------------------------------------------------" -echo "-------------------------------------------------------------------------------------------------------" -#rm keyboards/xoiviox/barobord/rules.mk diff --git a/bin/build-osprette.sh b/bin/build-osprette.sh deleted file mode 100755 index 59545de1012b..000000000000 --- a/bin/build-osprette.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -make fingerpunch/osprette:sadekbaroudi ; cp .build/fingerpunch_osprette_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/osprette/ ; diff --git a/bin/build-pinkies-out.sh b/bin/build-pinkies-out.sh deleted file mode 100755 index 1e51f83758d3..000000000000 --- a/bin/build-pinkies-out.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -#make fingerpunch/pinkiesout/rgbmatrix_oled:default -#cp .build/fingerpunch_pinkiesout_rgbmatrix_oled_default* /mnt/g/My\ Drive/qmk-keyboards/pinkiesout - -#make fingerpunch/pinkiesout/rgblight_oled:sadekbaroudi -#cp .build/fingerpunch_pinkiesout_rgblight_oled_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/pinkiesout/rgblight_oled/ - -make fingerpunch/pinkiesout/rgbmatrix_oled:sadekbaroudi -cp .build/fingerpunch_pinkiesout_rgbmatrix_oled_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/pinkiesout/rgbmatrix/ - -make fingerpunch/pinkiesout/rgblight_oled:sadekbaroudi -cp .build/fingerpunch_pinkiesout_rgblight_oled_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/pinkiesout/rgblight/ diff --git a/bin/build-rockon-bp.sh b/bin/build-rockon-bp.sh deleted file mode 100755 index 41db700d96d3..000000000000 --- a/bin/build-rockon-bp.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -make fingerpunch/rockon_bp/rgbmatrix_oled:sadekbaroudi -cp .build/fingerpunch_rockon_bp_rgbmatrix_oled_sadekbaroudi.bin /mnt/g/My\ Drive/qmk-keyboards/rock-on_bp/sadekbaroudi/ - -make fingerpunch/rockon_bp/rgblight_oled:sadekbaroudi -cp .build/fingerpunch_rockon_bp_rgblight_oled_sadekbaroudi.bin /mnt/g/My\ Drive/qmk-keyboards/rock-on_bp/sadekbaroudi/ - -make fingerpunch/rockon_bp/rgbmatrix:sadekbaroudi -cp .build/fingerpunch_rockon_bp_rgbmatrix_sadekbaroudi.bin /mnt/g/My\ Drive/qmk-keyboards/rock-on_bp/sadekbaroudi/ - -make fingerpunch/rockon_bp/rgblight:sadekbaroudi -cp .build/fingerpunch_rockon_bp_rgblight_sadekbaroudi.bin /mnt/g/My\ Drive/qmk-keyboards/rock-on_bp/sadekbaroudi/ - -make fingerpunch/rockon_bp/ec11:sadekbaroudi -cp .build/fingerpunch_rockon_bp_ec11_sadekbaroudi.bin /mnt/g/My\ Drive/qmk-keyboards/rock-on_bp/sadekbaroudi/ - -make fingerpunch/rockon_bp/oled_ec11:sadekbaroudi -cp .build/fingerpunch_rockon_bp_oled_ec11_sadekbaroudi.bin /mnt/g/My\ Drive/qmk-keyboards/rock-on_bp/sadekbaroudi/ - -make fingerpunch/rockon_bp/rgblight_ec11:sadekbaroudi -cp .build/fingerpunch_rockon_bp_rgblight_ec11_sadekbaroudi.bin /mnt/g/My\ Drive/qmk-keyboards/rock-on_bp/sadekbaroudi/ - -make fingerpunch/rockon_bp/rgblight_oled_ec11:sadekbaroudi -cp .build/fingerpunch_rockon_bp_rgblight_oled_ec11_sadekbaroudi.bin /mnt/g/My\ Drive/qmk-keyboards/rock-on_bp/sadekbaroudi/ - -make fingerpunch/rockon_bp/rgbmatrix_ec11:sadekbaroudi -cp .build/fingerpunch_rockon_bp_rgbmatrix_ec11_sadekbaroudi.bin /mnt/g/My\ Drive/qmk-keyboards/rock-on_bp/sadekbaroudi/ - -make fingerpunch/rockon_bp/rgbmatrix_oled_ec11:sadekbaroudi -cp .build/fingerpunch_rockon_bp_rgbmatrix_oled_ec11_sadekbaroudi.bin /mnt/g/My\ Drive/qmk-keyboards/rock-on_bp/sadekbaroudi/ \ No newline at end of file diff --git a/bin/build-rockon.sh b/bin/build-rockon.sh deleted file mode 100755 index 64509848e955..000000000000 --- a/bin/build-rockon.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -# TODO: consolidate all the build files into one - -make fingerpunch/rockon/v1/rgbmatrix_oled:sadekbaroudi -cp .build/fingerpunch_rockon_v1_rgbmatrix_oled_sadekbaroudi.hex /mnt/g/My\ Drive/qmk-keyboards/rock-on/v1/rgbmatrix/fingerpunch_rockon_v1_rgbmatrix_oled_sadekbaroudi.hex - -make fingerpunch/rockon/v1/rgblight_oled:sadekbaroudi -cp .build/fingerpunch_rockon_v1_rgblight_oled_sadekbaroudi.hex /mnt/g/My\ Drive/qmk-keyboards/rock-on/v1/rgblight/fingerpunch_rockon_v1_rgblight_oled_sadekbaroudi.hex diff --git a/bin/build-sweeeeep.sh b/bin/build-sweeeeep.sh deleted file mode 100755 index a32786e5b210..000000000000 --- a/bin/build-sweeeeep.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash - -make fingerpunch/sweeeeep/no_features:sadekbaroudi -make fingerpunch/sweeeeep/oled:sadekbaroudi -make fingerpunch/sweeeeep/rgblight:sadekbaroudi -make fingerpunch/sweeeeep/rgblight_oled:sadekbaroudi -cp .build/fingerpunch_sweeeeep_*_sadekbaroudi*.hex /mnt/g/My\ Drive/qmk-keyboards/sweeeeep/sadekbaroudi/ - -make fingerpunch/sweeeeep/no_features:default -make fingerpunch/sweeeeep/oled:default -make fingerpunch/sweeeeep/rgblight:default -make fingerpunch/sweeeeep/rgblight_oled:default -cp .build/fingerpunch_sweeeeep_*_default*.hex /mnt/g/My\ Drive/qmk-keyboards/sweeeeep/default/ diff --git a/bin/fp_build.sh b/bin/fp_build.sh new file mode 100755 index 000000000000..ba63fdb52f46 --- /dev/null +++ b/bin/fp_build.sh @@ -0,0 +1,160 @@ +#!/bin/bash + +# error handling +if ! command -v jq &> /dev/null +then + echo "jq is a dependency, and could not be found, see https://stedolan.github.io/jq for installation details" + exit +fi + +Help() +{ + echo "Usage: $0 -k -m -c -r -h" + echo "" + echo " -k keyboard directory (optional, default is all fingerpunch keyboards)" + echo " -m keymap (optional, defaults to the 'default' keymap)" + echo " -c add CONVERT_TO parameter for a controller (eg -c stemcell)" + echo " -r (optional, run the build command(s), defaults to outputting the build string)" + echo " -h (show this dialog)" + echo "" + echo "Examples: " + echo "--------" + echo "fp_build.sh -k \"rockon/v2\" -m sadekbaroudi -r" + echo "fp_build.sh -m sadekbaroudi" + echo "fp_build.sh -k \"barobord\"" +} + +get_valid_keyboards() { + valid_keyboards="" + directories=$(find ${1}/* -maxdepth 0 -type d) + echo "${directories}" | while read line; do + if [[ -e "${line}/fp_build.json" ]]; then + echo -n "${line} " + fi + for i in {1..9} + do + if [[ -e "${line}/v${i}/fp_build.json" ]]; then + echo -n "${line}/v${i} " + fi + done + done +} + +build_keyboard() { + if [[ -z "${1}" ]]; then + echo "build_keyboard: no first argument" + fi + if [[ -z "${2}" ]]; then + echo "build_keyboard: no second argument" + fi + if [[ -z "${3}" ]]; then + echo "build_keyboard: no third argument" + fi + if [[ -z "${4}" ]]; then + echo "build_keyboard: no fourth argument" + fi + if [[ -z "${5}" ]]; then + echo "build_keyboard: no fifth argument" + fi + + build_json="${1}/fp_build.json" + keyboard_base_dir="${1}" + keyboard_name="${1#${2}/}" + + build_string="make ${keyboard_base_dir#keyboards\/}:${3}" + echo "${build_string}" + # get the total number of paramters + top_level_element_count=$(cat "${build_json}" | jq 'length') + for ((param_iter = 0 ; param_iter < top_level_element_count ; param_iter++)); do + param_type=$(cat "${build_json}" | jq -r ".[${param_iter}].type") + user_input_string=$(cat "${build_json}" | jq -r ".[${param_iter}].user_input") + if [[ "${param_type}" == "one-of" ]]; then + options_count=$(cat "${build_json}" | jq ".[${param_iter}].names | length") + user_input_string+=" (0-${options_count}): " + + echo -n "${user_input_string}" + read user_choice + while [[ $user_choice -lt 0 || $user_choice -gt $options_count ]]; do + echo "Invalid choice: ${user_choice}" + echo -n "${user_input_string}" + read user_choice + done + + # start at 1, because 0 should always be "none" + param_names_counter=1 + param_names=$(cat "${build_json}" | jq -r ".[${param_iter}].names | @sh" | tr -d \') + for param_name in $param_names; do + if [[ $param_names_counter -eq $user_choice ]]; then + build_string+=" ${param_name}=yes" + fi + ((param_names_counter+=1)) + done + elif [[ "${param_type}" == "single" ]]; then + user_input_string+=" (yes/no): " + + echo -n "${user_input_string}" + read user_choice + + while [[ $user_choice != "yes" && $user_choice != "no" ]]; do + echo "Invalid choice: ${user_choice}" + echo -n "${user_input_string}" + read user_choice + done + + param_name=$(cat "${build_json}" | jq -r ".[${param_iter}].name") + build_string+=" ${param_name}=${user_choice}" + else + echo "invalid type in json file: ${param_type}" + exit + fi + done + + if [[ -n "${5}" && "${5}" != "no" ]]; then + build_string+=" CONVERT_TO=${5}" + fi + + echo "" + echo "${build_string}" + echo "" + + if [[ "${4}" == "yes" ]]; then + echo "fp_build.sh: Running QMK Build...." + echo "" + eval "${build_string}" + fi +} + +Keyboard="" +Keymap="default" +RunBuild="no" +ConvertTo="no" +while getopts "k:m:c:rh" option; do + case $option in + k) Keyboard=${OPTARG};; + m) Keymap=${OPTARG};; + c) ConvertTo=${OPTARG};; + r) RunBuild="yes";; + h) Help + exit;; + esac +done + +#### code starts here + +# set up variables +FP_KB_DIR="keyboards/fingerpunch" +FP_KB=("${Keyboard}") +if [[ -z "${Keyboard}" ]]; then + FP_KB=$(get_valid_keyboards "${FP_KB_DIR}") +else + FP_KB=("${FP_KB_DIR}/${FP_KB}") + if [[ ! -e "${FP_KB}" ]]; then + echo "${FP_KB} is not a valid file, can't build" + exit + fi +fi; + +for filename in $FP_KB; do + echo "Running for ${filename}" + build_keyboard "${filename}" "${FP_KB_DIR}" "${Keymap}" "${RunBuild}" "${ConvertTo}" +done \ No newline at end of file diff --git a/bin/make-all-ffkb.sh b/bin/make-all-ffkb.sh deleted file mode 100755 index 7bc5eda408d6..000000000000 --- a/bin/make-all-ffkb.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash -make fingerpunch/ffkb/rgblight_evq:sadekbaroudi -make fingerpunch/ffkb/ec11:sadekbaroudi -make fingerpunch/ffkb/rgbmatrix_evq:sadekbaroudi -make fingerpunch/ffkb/pimoroni_evq:sadekbaroudi -make fingerpunch/ffkb/rgbmatrix_pimoroni_evq:sadekbaroudi -make fingerpunch/ffkb/rgbmatrix_pimoroni_ec11:sadekbaroudi -make fingerpunch/ffkb/rgbmatrix_oled:sadekbaroudi -make fingerpunch/ffkb/oled:sadekbaroudi -make fingerpunch/ffkb/rgbmatrix:sadekbaroudi -make fingerpunch/ffkb/rgbmatrix_ec11:sadekbaroudi -make fingerpunch/ffkb/rgbmatrix_oled_ec11:sadekbaroudi -make fingerpunch/ffkb/rgblight_pimoroni_evq:sadekbaroudi -make fingerpunch/ffkb/rgbmatrix_pimoroni:sadekbaroudi -make fingerpunch/ffkb/rgblight_oled_evq:sadekbaroudi -make fingerpunch/ffkb/pimoroni:sadekbaroudi -make fingerpunch/ffkb/evq:sadekbaroudi -make fingerpunch/ffkb/rgblight_ec11:sadekbaroudi -make fingerpunch/ffkb/rgblight_pimoroni_ec11:sadekbaroudi -make fingerpunch/ffkb/rgblight_oled:sadekbaroudi -make fingerpunch/ffkb/oled_ec11:sadekbaroudi -make fingerpunch/ffkb/rgbmatrix_ec11_evq:sadekbaroudi -make fingerpunch/ffkb/rgblight:sadekbaroudi -make fingerpunch/ffkb/no_features:sadekbaroudi -make fingerpunch/ffkb/pimoroni_ec11:sadekbaroudi -make fingerpunch/ffkb/rgblight_pimoroni:sadekbaroudi -make fingerpunch/ffkb/rgblight_ec11_evq:sadekbaroudi -make fingerpunch/ffkb/rgbmatrix_oled_evq:sadekbaroudi -make fingerpunch/ffkb/oled_evq:sadekbaroudi -make fingerpunch/ffkb/ec11_evq:sadekbaroudi -make fingerpunch/ffkb/rgblight_oled_ec11:sadekbaroudi - -cp fingerpunch_ffkb_*_sadekbaroudi.hex /mnt/g/My\ Drive/qmk-keyboards/ffkb/sadekbaroudi/ diff --git a/bin/make-all-ffkb_byomcu.sh b/bin/make-all-ffkb_byomcu.sh deleted file mode 100755 index c41358d99676..000000000000 --- a/bin/make-all-ffkb_byomcu.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash -make fingerpunch/ffkb_byomcu/cirque:sadekbaroudi -make fingerpunch/ffkb_byomcu/cirque_ec11:sadekbaroudi -make fingerpunch/ffkb_byomcu/cirque_evq:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgblight_cirque:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgblight_cirque_ec11:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgblight_cirque_evq:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgbmatrix_cirque:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgbmatrix_cirque_ec11:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgbmatrix_cirque_evq:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgblight_evq:sadekbaroudi -make fingerpunch/ffkb_byomcu/ec11:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgbmatrix_evq:sadekbaroudi -make fingerpunch/ffkb_byomcu/pimoroni_evq:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_evq:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_ec11:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgbmatrix_oled:sadekbaroudi -make fingerpunch/ffkb_byomcu/oled:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgbmatrix:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgbmatrix_ec11:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgbmatrix_oled_ec11:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgblight_pimoroni_evq:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgblight_oled_evq:sadekbaroudi -make fingerpunch/ffkb_byomcu/pimoroni:sadekbaroudi -make fingerpunch/ffkb_byomcu/evq:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgblight_ec11:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgblight_pimoroni_ec11:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgblight_oled:sadekbaroudi -make fingerpunch/ffkb_byomcu/oled_ec11:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgbmatrix_ec11_evq:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgblight:sadekbaroudi -make fingerpunch/ffkb_byomcu/no_features:sadekbaroudi -make fingerpunch/ffkb_byomcu/pimoroni_ec11:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgblight_pimoroni:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgblight_ec11_evq:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgbmatrix_oled_evq:sadekbaroudi -make fingerpunch/ffkb_byomcu/oled_evq:sadekbaroudi -make fingerpunch/ffkb_byomcu/ec11_evq:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgblight_oled_ec11:sadekbaroudi - -cp fingerpunch_ffkb_byomcu_*_sadekbaroudi.hex /mnt/g/My\ Drive/qmk-keyboards/ffkb_byomcu/sadekbaroudi/ diff --git a/bin/make-all-ffkb_stemcell.sh b/bin/make-all-ffkb_stemcell.sh deleted file mode 100755 index 9d304ca1e563..000000000000 --- a/bin/make-all-ffkb_stemcell.sh +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/bash - -cp keyboards/fingerpunch/ffkb_byomcu/config.h keyboards/fingerpunch/ffkb_byomcu/config.h.bak -cp keyboards/fingerpunch/ffkb_byomcu/config.stemcell.h keyboards/fingerpunch/ffkb_byomcu/config.h - -cp keyboards/fingerpunch/ffkb_byomcu/rules.mk keyboards/fingerpunch/ffkb_byomcu/rules.mk.bak -cp keyboards/fingerpunch/ffkb_byomcu/rules.stemcell.mk keyboards/fingerpunch/ffkb_byomcu/rules.mk - -mv keyboards/fingerpunch/ffkb_byomcu/halconf.stemcell.h keyboards/fingerpunch/ffkb_byomcu/halconf.h -mv keyboards/fingerpunch/ffkb_byomcu/mcuconf.stemcell.h keyboards/fingerpunch/ffkb_byomcu/mcuconf.h - -#make fingerpunch/ffkb_byomcu/rgblight_evq:sadekbaroudi -#make fingerpunch/ffkb_byomcu/ec11:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgbmatrix_evq:sadekbaroudi -#make fingerpunch/ffkb_byomcu/pimoroni_evq:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_evq:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_ec11:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgbmatrix_oled:sadekbaroudi -#make fingerpunch/ffkb_byomcu/oled:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgbmatrix:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgbmatrix_ec11:sadekbaroudi -make fingerpunch/ffkb_byomcu/rgbmatrix_oled_ec11:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgblight_pimoroni_evq:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgblight_oled_evq:sadekbaroudi -#make fingerpunch/ffkb_byomcu/pimoroni:sadekbaroudi -#make fingerpunch/ffkb_byomcu/evq:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgblight_ec11:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgblight_pimoroni_ec11:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgblight_oled:sadekbaroudi -#make fingerpunch/ffkb_byomcu/oled_ec11:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgbmatrix_ec11_evq:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgblight:sadekbaroudi -#make fingerpunch/ffkb_byomcu/no_features:sadekbaroudi -#make fingerpunch/ffkb_byomcu/pimoroni_ec11:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgblight_pimoroni:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgblight_ec11_evq:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgbmatrix_oled_evq:sadekbaroudi -#make fingerpunch/ffkb_byomcu/oled_evq:sadekbaroudi -#make fingerpunch/ffkb_byomcu/ec11_evq:sadekbaroudi -#make fingerpunch/ffkb_byomcu/rgblight_oled_ec11:sadekbaroudi - -mv keyboards/fingerpunch/ffkb_byomcu/config.h.bak keyboards/fingerpunch/ffkb_byomcu/config.h - -mv keyboards/fingerpunch/ffkb_byomcu/rules.mk.bak keyboards/fingerpunch/ffkb_byomcu/rules.mk - -mv keyboards/fingerpunch/ffkb_byomcu/halconf.h keyboards/fingerpunch/ffkb_byomcu/halconf.stemcell.h -mv keyboards/fingerpunch/ffkb_byomcu/mcuconf.h keyboards/fingerpunch/ffkb_byomcu/mcuconf.stemcell.h - -cp fingerpunch_ffkb_byomcu_*_sadekbaroudi.bin /mnt/g/My\ Drive/qmk-keyboards/ffkb_stemcell/sadekbaroudi/ diff --git a/keyboards/fingerpunch/arachnophobe/rules.mk b/keyboards/fingerpunch/arachnophobe/rules.mk index dd24a3e8d795..da7b41a4807c 100644 --- a/keyboards/fingerpunch/arachnophobe/rules.mk +++ b/keyboards/fingerpunch/arachnophobe/rules.mk @@ -26,6 +26,6 @@ BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches ENCODER_ENABLE = no -OLED_DRIVER_ENABLE = no # this can be yes or no depending on if you have an OLED +OLED_ENABLE = no # this can be yes or no depending on if you have an OLED EXTRAFLAGS += -flto # macros enable or disable MOUSEKEY_ENABLE = yes diff --git a/keyboards/fingerpunch/barobord/config.h b/keyboards/fingerpunch/barobord/config.h index 85aca77dfd9a..e8e04c033c5c 100644 --- a/keyboards/fingerpunch/barobord/config.h +++ b/keyboards/fingerpunch/barobord/config.h @@ -26,7 +26,6 @@ along with this program. If not, see . //#define DEVICE_VER 0x0001 // Now defined in the revX/config.h #define MANUFACTURER sadekbaroudi #define PRODUCT sadekbaroudi barobord -#define DESCRIPTION sadekbaroudi barobord /* key matrix size */ /* Rows are doubled up */ @@ -38,7 +37,6 @@ along with this program. If not, see . { B0, B1, B6, C6 } #define MATRIX_COL_PINS \ { F1, F4, F5, F6, F7, B3, B2, D2, D3, D5, C7 } -#define UNUSED_PINS /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 @@ -54,24 +52,15 @@ along with this program. If not, see . #define RGBLIGHT_VAL_STEP 16 #define RGBLIGHT_LIMIT_VAL 60 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ - #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD -// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -// /*== customize breathing effect ==*/ -// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -// /*==== use exp() and sin() ====*/ -// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_TWINKLE #endif #ifdef RGB_MATRIX_ENABLE diff --git a/keyboards/fingerpunch/barobord/ec11/config.h b/keyboards/fingerpunch/barobord/ec11/config.h deleted file mode 100644 index 5ece337ba1d4..000000000000 --- a/keyboards/fingerpunch/barobord/ec11/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_EC11 -#define FINGERPUNCH_EC11 -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/ec11/rules.mk b/keyboards/fingerpunch/barobord/ec11/rules.mk deleted file mode 100644 index bf59a319db9a..000000000000 --- a/keyboards/fingerpunch/barobord/ec11/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/evq/config.h b/keyboards/fingerpunch/barobord/evq/config.h deleted file mode 100644 index 41409abf1650..000000000000 --- a/keyboards/fingerpunch/barobord/evq/config.h +++ /dev/null @@ -1,25 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_EVQ -#define FINGERPUNCH_EVQ -#endif - -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/evq/rules.mk b/keyboards/fingerpunch/barobord/evq/rules.mk deleted file mode 100644 index bf59a319db9a..000000000000 --- a/keyboards/fingerpunch/barobord/evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/fp_build.json b/keyboards/fingerpunch/barobord/fp_build.json new file mode 100644 index 000000000000..07c80e3d4956 --- /dev/null +++ b/keyboards/fingerpunch/barobord/fp_build.json @@ -0,0 +1,22 @@ +[ + { + "type" : "one-of", + "names" : [ "RGBLIGHT_ENABLE", "RGB_MATRIX_ENABLE" ], + "user_input": "No RGB, RGB light, RGB matrix?" + }, + { + "type" : "single", + "name" : "OLED_ENABLE", + "user_input": "Do you have an OLED?" + }, + { + "type" : "single", + "name" : "ENCODER_ENABLE", + "user_input": "Do you have one or more rotary encoders?" + }, + { + "type" : "single", + "name" : "PIMORONI_TRACKBALL_ENABLE", + "user_input": "Do you have a pimoroni trackball?" + } +] \ No newline at end of file diff --git a/keyboards/fingerpunch/barobord/keymaps/default/keymap.c b/keyboards/fingerpunch/barobord/keymaps/default/keymap.c index 6e4c7c6e6b3c..6b0119f649e7 100644 --- a/keyboards/fingerpunch/barobord/keymaps/default/keymap.c +++ b/keyboards/fingerpunch/barobord/keymaps/default/keymap.c @@ -235,7 +235,7 @@ bool encoder_update_user(uint8_t index, bool clockwise) { } #endif -#ifdef OLED_DRIVER_ENABLE +#ifdef OLED_ENABLE oled_rotation_t oled_init_user(oled_rotation_t rotation) { diff --git a/keyboards/fingerpunch/barobord/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/barobord/keymaps/sadekbaroudi/keymap.c index 96f96985a6db..df275749088d 100644 --- a/keyboards/fingerpunch/barobord/keymaps/sadekbaroudi/keymap.c +++ b/keyboards/fingerpunch/barobord/keymaps/sadekbaroudi/keymap.c @@ -110,7 +110,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; -#ifdef OLED_DRIVER_ENABLE +#ifdef OLED_ENABLE oled_rotation_t oled_init_user(oled_rotation_t rotation) { diff --git a/keyboards/fingerpunch/barobord/keymaps/via/keymap.c b/keyboards/fingerpunch/barobord/keymaps/via/keymap.c index 2bde8ddc3ea8..b8769b55a73e 100644 --- a/keyboards/fingerpunch/barobord/keymaps/via/keymap.c +++ b/keyboards/fingerpunch/barobord/keymaps/via/keymap.c @@ -206,7 +206,7 @@ bool encoder_update_user(uint8_t index, bool clockwise) { } #endif -#ifdef OLED_DRIVER_ENABLE +#ifdef OLED_ENABLE oled_rotation_t oled_init_user(oled_rotation_t rotation) { diff --git a/keyboards/fingerpunch/barobord/no_features/config.h b/keyboards/fingerpunch/barobord/no_features/config.h deleted file mode 100644 index d4903b376d72..000000000000 --- a/keyboards/fingerpunch/barobord/no_features/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/no_features/rules.mk b/keyboards/fingerpunch/barobord/no_features/rules.mk deleted file mode 100644 index 38edc894a4cd..000000000000 --- a/keyboards/fingerpunch/barobord/no_features/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/oled/config.h b/keyboards/fingerpunch/barobord/oled/config.h deleted file mode 100644 index ad2d60bdb429..000000000000 --- a/keyboards/fingerpunch/barobord/oled/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_OLED -#define FINGERPUNCH_OLED -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/oled/rules.mk b/keyboards/fingerpunch/barobord/oled/rules.mk deleted file mode 100644 index af0bb8f88859..000000000000 --- a/keyboards/fingerpunch/barobord/oled/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/oled_ec11/config.h b/keyboards/fingerpunch/barobord/oled_ec11/config.h deleted file mode 100644 index 220ac4240ba6..000000000000 --- a/keyboards/fingerpunch/barobord/oled_ec11/config.h +++ /dev/null @@ -1,27 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_OLED -#define FINGERPUNCH_OLED -#endif - -#ifndef FINGERPUNCH_EC11 -#define FINGERPUNCH_EC11 -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/oled_ec11/rules.mk b/keyboards/fingerpunch/barobord/oled_ec11/rules.mk deleted file mode 100644 index e2d19dfcc484..000000000000 --- a/keyboards/fingerpunch/barobord/oled_ec11/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/oled_evq/config.h b/keyboards/fingerpunch/barobord/oled_evq/config.h deleted file mode 100644 index 54ed43e07490..000000000000 --- a/keyboards/fingerpunch/barobord/oled_evq/config.h +++ /dev/null @@ -1,29 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_OLED -#define FINGERPUNCH_OLED -#endif - -#ifndef FINGERPUNCH_EVQ -#define FINGERPUNCH_EVQ -#endif - -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/oled_evq/rules.mk b/keyboards/fingerpunch/barobord/oled_evq/rules.mk deleted file mode 100644 index e2d19dfcc484..000000000000 --- a/keyboards/fingerpunch/barobord/oled_evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/pimoroni/config.h b/keyboards/fingerpunch/barobord/pimoroni/config.h deleted file mode 100644 index e94ecab67de7..000000000000 --- a/keyboards/fingerpunch/barobord/pimoroni/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_PIMORONI -#define FINGERPUNCH_PIMORONI -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/pimoroni/rules.mk b/keyboards/fingerpunch/barobord/pimoroni/rules.mk deleted file mode 100644 index 9880edc91129..000000000000 --- a/keyboards/fingerpunch/barobord/pimoroni/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/pimoroni_ec11/config.h b/keyboards/fingerpunch/barobord/pimoroni_ec11/config.h deleted file mode 100644 index 3824353b1a4b..000000000000 --- a/keyboards/fingerpunch/barobord/pimoroni_ec11/config.h +++ /dev/null @@ -1,27 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_PIMORONI -#define FINGERPUNCH_PIMORONI -#endif - -#ifndef FINGERPUNCH_EC11 -#define FINGERPUNCH_EC11 -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/pimoroni_ec11/rules.mk b/keyboards/fingerpunch/barobord/pimoroni_ec11/rules.mk deleted file mode 100644 index dad28b93e51c..000000000000 --- a/keyboards/fingerpunch/barobord/pimoroni_ec11/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/pimoroni_evq/config.h b/keyboards/fingerpunch/barobord/pimoroni_evq/config.h deleted file mode 100644 index 6e1f4f287ac8..000000000000 --- a/keyboards/fingerpunch/barobord/pimoroni_evq/config.h +++ /dev/null @@ -1,29 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_PIMORONI -#define FINGERPUNCH_PIMORONI -#endif - -#ifndef FINGERPUNCH_EVQ -#define FINGERPUNCH_EVQ -#endif - -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/pimoroni_evq/rules.mk b/keyboards/fingerpunch/barobord/pimoroni_evq/rules.mk deleted file mode 100644 index dad28b93e51c..000000000000 --- a/keyboards/fingerpunch/barobord/pimoroni_evq/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/readme.md b/keyboards/fingerpunch/barobord/readme.md index a6c394076b86..529987ca6165 100644 --- a/keyboards/fingerpunch/barobord/readme.md +++ b/keyboards/fingerpunch/barobord/readme.md @@ -6,33 +6,19 @@ An ergonomic 30% keyboard Barobord supports vial! Build the via keymap as shown in the commands, and then use Vial to sideload via.json -To build the firmware for this keyboard (after setting up your build environment), select from one of the following, depending on what features you have on your board: - - make fingerpunch/barobord/ec11:via - make fingerpunch/barobord/evq:via - make fingerpunch/barobord/no-features:via - make fingerpunch/barobord/oled:via - make fingerpunch/barobord/oled-ec11:via - make fingerpunch/barobord/oled-evq:via - make fingerpunch/barobord/pimoroni:via - make fingerpunch/barobord/pimoroni-ec11:via - make fingerpunch/barobord/pimoroni-evq:via - make fingerpunch/barobord/readme.md:via - make fingerpunch/barobord/rgblight:via - make fingerpunch/barobord/rgblight-oled-ec11:via - make fingerpunch/barobord/rgblight-oled-evq:via - make fingerpunch/barobord/rgblight-pimoroni-ec11:via - make fingerpunch/barobord/rgblight-pimoroni-evq:via - make fingerpunch/barobord/rgbmatrix:via - make fingerpunch/barobord/rgbmatrix-oled-ec11:via - make fingerpunch/barobord/rgbmatrix-oled-evq:via - make fingerpunch/barobord/rgbmatrix-pimoroni-ec11:via - make fingerpunch/barobord/rgbmatrix-pimoroni-evq:via - -Example of flashing this keyboard: - - make fingerpunch/barobord/no-features:via:flash - +To build the firmware for this keyboard (after setting up your build environment): +``` + make fingerpunch/barobord:default RGBLIGHT_ENABLE=yes ENCODER_ENABLE=yes PIMORONI_TRACKBALL_ENABLE=yes +``` + +Options are: +``` + RGBLIGHT_ENABLE=yes + RGB_MATRIX_ENABLE=yes + OLED_ENABLE=yes + ENCODER_ENABLE=yes + PIMORONI_TRACKBALL_ENABLE=yes +``` Once you have completed the build, flash it onto your keyboard. At this point, make sure you have [Vial](https://get.vial.today/) installed. Use the "Sideload VIA JSON" and use the via.json found in this directory. You should be able to edit your keymap directly from your machine! diff --git a/keyboards/fingerpunch/barobord/rgblight/config.h b/keyboards/fingerpunch/barobord/rgblight/config.h deleted file mode 100644 index 2ba45850ed7f..000000000000 --- a/keyboards/fingerpunch/barobord/rgblight/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBLIGHT -#define FINGERPUNCH_RGBLIGHT -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/rgblight/rules.mk b/keyboards/fingerpunch/barobord/rgblight/rules.mk deleted file mode 100644 index 33c2c43ab133..000000000000 --- a/keyboards/fingerpunch/barobord/rgblight/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/rgblight_oled_ec11/config.h b/keyboards/fingerpunch/barobord/rgblight_oled_ec11/config.h deleted file mode 100644 index 7a486c8a724b..000000000000 --- a/keyboards/fingerpunch/barobord/rgblight_oled_ec11/config.h +++ /dev/null @@ -1,32 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBLIGHT -#define FINGERPUNCH_RGBLIGHT -#endif - -#ifndef FINGERPUNCH_OLED -#define FINGERPUNCH_OLED -#endif - -#ifndef FINGERPUNCH_EC11 -#define FINGERPUNCH_EC11 -#endif - -#pragma once -#include "config_common.h" - diff --git a/keyboards/fingerpunch/barobord/rgblight_oled_ec11/rules.mk b/keyboards/fingerpunch/barobord/rgblight_oled_ec11/rules.mk deleted file mode 100644 index f938a09a93b4..000000000000 --- a/keyboards/fingerpunch/barobord/rgblight_oled_ec11/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/rgblight_oled_evq/config.h b/keyboards/fingerpunch/barobord/rgblight_oled_evq/config.h deleted file mode 100644 index 325d5563ae42..000000000000 --- a/keyboards/fingerpunch/barobord/rgblight_oled_evq/config.h +++ /dev/null @@ -1,33 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBLIGHT -#define FINGERPUNCH_RGBLIGHT -#endif - -#ifndef FINGERPUNCH_OLED -#define FINGERPUNCH_OLED -#endif - -#ifndef FINGERPUNCH_EVQ -#define FINGERPUNCH_EVQ -#endif - -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/rgblight_oled_evq/rules.mk b/keyboards/fingerpunch/barobord/rgblight_oled_evq/rules.mk deleted file mode 100644 index f938a09a93b4..000000000000 --- a/keyboards/fingerpunch/barobord/rgblight_oled_evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/rgblight_pimoroni_ec11/config.h b/keyboards/fingerpunch/barobord/rgblight_pimoroni_ec11/config.h deleted file mode 100644 index 61c4c51fc53a..000000000000 --- a/keyboards/fingerpunch/barobord/rgblight_pimoroni_ec11/config.h +++ /dev/null @@ -1,31 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBLIGHT -#define FINGERPUNCH_RGBLIGHT -#endif - -#ifndef FINGERPUNCH_PIMORONI -#define FINGERPUNCH_PIMORONI -#endif - -#ifndef FINGERPUNCH_EC11 -#define FINGERPUNCH_EC11 -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/rgblight_pimoroni_ec11/rules.mk b/keyboards/fingerpunch/barobord/rgblight_pimoroni_ec11/rules.mk deleted file mode 100644 index 326b810dfb49..000000000000 --- a/keyboards/fingerpunch/barobord/rgblight_pimoroni_ec11/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/rgblight_pimoroni_evq/config.h b/keyboards/fingerpunch/barobord/rgblight_pimoroni_evq/config.h deleted file mode 100644 index 4237e51a0780..000000000000 --- a/keyboards/fingerpunch/barobord/rgblight_pimoroni_evq/config.h +++ /dev/null @@ -1,33 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBLIGHT -#define FINGERPUNCH_RGBLIGHT -#endif - -#ifndef FINGERPUNCH_PIMORONI -#define FINGERPUNCH_PIMORONI -#endif - -#ifndef FINGERPUNCH_EVQ -#define FINGERPUNCH_EVQ -#endif - -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/rgblight_pimoroni_evq/rules.mk b/keyboards/fingerpunch/barobord/rgblight_pimoroni_evq/rules.mk deleted file mode 100644 index 326b810dfb49..000000000000 --- a/keyboards/fingerpunch/barobord/rgblight_pimoroni_evq/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/rgbmatrix/config.h b/keyboards/fingerpunch/barobord/rgbmatrix/config.h deleted file mode 100644 index 9f98c0bffe3f..000000000000 --- a/keyboards/fingerpunch/barobord/rgbmatrix/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBMATRIX -#define FINGERPUNCH_RGBMATRIX -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/rgbmatrix/rules.mk b/keyboards/fingerpunch/barobord/rgbmatrix/rules.mk deleted file mode 100644 index 87455b3cc188..000000000000 --- a/keyboards/fingerpunch/barobord/rgbmatrix/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/rgbmatrix_oled_ec11/config.h b/keyboards/fingerpunch/barobord/rgbmatrix_oled_ec11/config.h deleted file mode 100644 index 2cdf35ce43ff..000000000000 --- a/keyboards/fingerpunch/barobord/rgbmatrix_oled_ec11/config.h +++ /dev/null @@ -1,31 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBMATRIX -#define FINGERPUNCH_RGBMATRIX -#endif - -#ifndef FINGERPUNCH_OLED -#define FINGERPUNCH_OLED -#endif - -#ifndef FINGERPUNCH_EC11 -#define FINGERPUNCH_EC11 -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/rgbmatrix_oled_ec11/rules.mk b/keyboards/fingerpunch/barobord/rgbmatrix_oled_ec11/rules.mk deleted file mode 100644 index 9ca96193a268..000000000000 --- a/keyboards/fingerpunch/barobord/rgbmatrix_oled_ec11/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/rgbmatrix_oled_evq/config.h b/keyboards/fingerpunch/barobord/rgbmatrix_oled_evq/config.h deleted file mode 100644 index 6085614871c6..000000000000 --- a/keyboards/fingerpunch/barobord/rgbmatrix_oled_evq/config.h +++ /dev/null @@ -1,33 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBMATRIX -#define FINGERPUNCH_RGBMATRIX -#endif - -#ifndef FINGERPUNCH_OLED -#define FINGERPUNCH_OLED -#endif - -#ifndef FINGERPUNCH_EVQ -#define FINGERPUNCH_EVQ -#endif - -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/rgbmatrix_oled_evq/rules.mk b/keyboards/fingerpunch/barobord/rgbmatrix_oled_evq/rules.mk deleted file mode 100644 index 9ca96193a268..000000000000 --- a/keyboards/fingerpunch/barobord/rgbmatrix_oled_evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_ec11/config.h b/keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_ec11/config.h deleted file mode 100644 index 378001aa2129..000000000000 --- a/keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_ec11/config.h +++ /dev/null @@ -1,31 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBMATRIX -#define FINGERPUNCH_RGBMATRIX -#endif - -#ifndef FINGERPUNCH_PIMORONI -#define FINGERPUNCH_PIMORONI -#endif - -#ifndef FINGERPUNCH_EC11 -#define FINGERPUNCH_EC11 -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_ec11/rules.mk b/keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_ec11/rules.mk deleted file mode 100644 index c40db7d2aab1..000000000000 --- a/keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_ec11/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_evq/config.h b/keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_evq/config.h deleted file mode 100644 index 400f626976ad..000000000000 --- a/keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_evq/config.h +++ /dev/null @@ -1,33 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBMATRIX -#define FINGERPUNCH_RGBMATRIX -#endif - -#ifndef FINGERPUNCH_PIMORONI -#define FINGERPUNCH_PIMORONI -#endif - -#ifndef FINGERPUNCH_EVQ -#define FINGERPUNCH_EVQ -#endif - -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_evq/rules.mk b/keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_evq/rules.mk deleted file mode 100644 index c40db7d2aab1..000000000000 --- a/keyboards/fingerpunch/barobord/rgbmatrix_pimoroni_evq/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord/rules.mk b/keyboards/fingerpunch/barobord/rules.mk index 982653506950..4cbeece48f11 100644 --- a/keyboards/fingerpunch/barobord/rules.mk +++ b/keyboards/fingerpunch/barobord/rules.mk @@ -23,10 +23,11 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend # if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work NKRO_ENABLE = no # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +MOUSEKEY_ENABLE = no # Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = yes +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = no RGB_MATRIX_DRIVER = WS2812 MIDI_ENABLE = no # MIDI support @@ -35,7 +36,14 @@ BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches ENCODER_ENABLE = yes -OLED_DRIVER_ENABLE = yes # this can be yes or no depending on if you have an OLED -EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed +OLED_ENABLE = yes # this can be yes or no depending on if you have an OLED +# EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed # for instance, if you build "no_features", it's very unlikely you'll need to disable macros -MOUSEKEY_ENABLE = no + +PIMORONI_TRACKBALL_ENABLE = no + +ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := pimoroni_trackball + OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE +endif \ No newline at end of file diff --git a/keyboards/fingerpunch/barobord_byomcu/config.h b/keyboards/fingerpunch/barobord_byomcu/config.h index 1c3257ee7d04..c8b72194be00 100644 --- a/keyboards/fingerpunch/barobord_byomcu/config.h +++ b/keyboards/fingerpunch/barobord_byomcu/config.h @@ -26,7 +26,6 @@ along with this program. If not, see . //#define DEVICE_VER 0x0001 // Now defined in the revX/config.h #define MANUFACTURER sadekbaroudi #define PRODUCT sadekbaroudi barobord_byomcu -#define DESCRIPTION sadekbaroudi barobord_byomcu /* key matrix size */ /* Rows are doubled up */ @@ -38,7 +37,6 @@ along with this program. If not, see . { B6, F4, B5, B4, B2 } #define MATRIX_COL_PINS \ { D2, D4, C6, D7, E6, F5, F6, F7, B1 } -#define UNUSED_PINS /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 @@ -54,24 +52,15 @@ along with this program. If not, see . #define RGBLIGHT_VAL_STEP 16 #define RGBLIGHT_LIMIT_VAL 60 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ - #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD -// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -// /*== customize breathing effect ==*/ -// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -// /*==== use exp() and sin() ====*/ -// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_TWINKLE #endif #ifdef RGB_MATRIX_ENABLE diff --git a/keyboards/fingerpunch/barobord_byomcu/ec11/config.h b/keyboards/fingerpunch/barobord_byomcu/ec11/config.h deleted file mode 100644 index 5ece337ba1d4..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/ec11/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_EC11 -#define FINGERPUNCH_EC11 -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/ec11/rules.mk b/keyboards/fingerpunch/barobord_byomcu/ec11/rules.mk deleted file mode 100644 index bf59a319db9a..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/ec11/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/evq/config.h b/keyboards/fingerpunch/barobord_byomcu/evq/config.h deleted file mode 100644 index 41409abf1650..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/evq/config.h +++ /dev/null @@ -1,25 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_EVQ -#define FINGERPUNCH_EVQ -#endif - -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/evq/rules.mk b/keyboards/fingerpunch/barobord_byomcu/evq/rules.mk deleted file mode 100644 index bf59a319db9a..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/fp_build.json b/keyboards/fingerpunch/barobord_byomcu/fp_build.json new file mode 100644 index 000000000000..07c80e3d4956 --- /dev/null +++ b/keyboards/fingerpunch/barobord_byomcu/fp_build.json @@ -0,0 +1,22 @@ +[ + { + "type" : "one-of", + "names" : [ "RGBLIGHT_ENABLE", "RGB_MATRIX_ENABLE" ], + "user_input": "No RGB, RGB light, RGB matrix?" + }, + { + "type" : "single", + "name" : "OLED_ENABLE", + "user_input": "Do you have an OLED?" + }, + { + "type" : "single", + "name" : "ENCODER_ENABLE", + "user_input": "Do you have one or more rotary encoders?" + }, + { + "type" : "single", + "name" : "PIMORONI_TRACKBALL_ENABLE", + "user_input": "Do you have a pimoroni trackball?" + } +] \ No newline at end of file diff --git a/keyboards/fingerpunch/barobord_byomcu/keymaps/default/keymap.c b/keyboards/fingerpunch/barobord_byomcu/keymaps/default/keymap.c index 6b935d6ec01c..7da4825ac381 100644 --- a/keyboards/fingerpunch/barobord_byomcu/keymaps/default/keymap.c +++ b/keyboards/fingerpunch/barobord_byomcu/keymaps/default/keymap.c @@ -235,7 +235,7 @@ bool encoder_update_user(uint8_t index, bool clockwise) { } #endif -#ifdef OLED_DRIVER_ENABLE +#ifdef OLED_ENABLE oled_rotation_t oled_init_user(oled_rotation_t rotation) { diff --git a/keyboards/fingerpunch/barobord_byomcu/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/barobord_byomcu/keymaps/sadekbaroudi/keymap.c index 96f96985a6db..df275749088d 100644 --- a/keyboards/fingerpunch/barobord_byomcu/keymaps/sadekbaroudi/keymap.c +++ b/keyboards/fingerpunch/barobord_byomcu/keymaps/sadekbaroudi/keymap.c @@ -110,7 +110,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; -#ifdef OLED_DRIVER_ENABLE +#ifdef OLED_ENABLE oled_rotation_t oled_init_user(oled_rotation_t rotation) { diff --git a/keyboards/fingerpunch/barobord_byomcu/no_features/config.h b/keyboards/fingerpunch/barobord_byomcu/no_features/config.h deleted file mode 100644 index d4903b376d72..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/no_features/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/no_features/rules.mk b/keyboards/fingerpunch/barobord_byomcu/no_features/rules.mk deleted file mode 100644 index 38edc894a4cd..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/no_features/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/oled/config.h b/keyboards/fingerpunch/barobord_byomcu/oled/config.h deleted file mode 100644 index ad2d60bdb429..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/oled/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_OLED -#define FINGERPUNCH_OLED -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/oled/rules.mk b/keyboards/fingerpunch/barobord_byomcu/oled/rules.mk deleted file mode 100644 index af0bb8f88859..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/oled/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/oled_ec11/config.h b/keyboards/fingerpunch/barobord_byomcu/oled_ec11/config.h deleted file mode 100644 index 220ac4240ba6..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/oled_ec11/config.h +++ /dev/null @@ -1,27 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_OLED -#define FINGERPUNCH_OLED -#endif - -#ifndef FINGERPUNCH_EC11 -#define FINGERPUNCH_EC11 -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/oled_ec11/rules.mk b/keyboards/fingerpunch/barobord_byomcu/oled_ec11/rules.mk deleted file mode 100644 index e2d19dfcc484..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/oled_ec11/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/oled_evq/config.h b/keyboards/fingerpunch/barobord_byomcu/oled_evq/config.h deleted file mode 100644 index 54ed43e07490..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/oled_evq/config.h +++ /dev/null @@ -1,29 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_OLED -#define FINGERPUNCH_OLED -#endif - -#ifndef FINGERPUNCH_EVQ -#define FINGERPUNCH_EVQ -#endif - -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/oled_evq/rules.mk b/keyboards/fingerpunch/barobord_byomcu/oled_evq/rules.mk deleted file mode 100644 index e2d19dfcc484..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/oled_evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/pimoroni/config.h b/keyboards/fingerpunch/barobord_byomcu/pimoroni/config.h deleted file mode 100644 index e94ecab67de7..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/pimoroni/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_PIMORONI -#define FINGERPUNCH_PIMORONI -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/pimoroni/rules.mk b/keyboards/fingerpunch/barobord_byomcu/pimoroni/rules.mk deleted file mode 100644 index 9880edc91129..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/pimoroni/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/pimoroni_ec11/config.h b/keyboards/fingerpunch/barobord_byomcu/pimoroni_ec11/config.h deleted file mode 100644 index 3824353b1a4b..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/pimoroni_ec11/config.h +++ /dev/null @@ -1,27 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_PIMORONI -#define FINGERPUNCH_PIMORONI -#endif - -#ifndef FINGERPUNCH_EC11 -#define FINGERPUNCH_EC11 -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/pimoroni_ec11/rules.mk b/keyboards/fingerpunch/barobord_byomcu/pimoroni_ec11/rules.mk deleted file mode 100644 index 97e71b6320c9..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/pimoroni_ec11/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif - diff --git a/keyboards/fingerpunch/barobord_byomcu/pimoroni_evq/config.h b/keyboards/fingerpunch/barobord_byomcu/pimoroni_evq/config.h deleted file mode 100644 index 6e1f4f287ac8..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/pimoroni_evq/config.h +++ /dev/null @@ -1,29 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_PIMORONI -#define FINGERPUNCH_PIMORONI -#endif - -#ifndef FINGERPUNCH_EVQ -#define FINGERPUNCH_EVQ -#endif - -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/pimoroni_evq/rules.mk b/keyboards/fingerpunch/barobord_byomcu/pimoroni_evq/rules.mk deleted file mode 100644 index dad28b93e51c..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/pimoroni_evq/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/readme.md b/keyboards/fingerpunch/barobord_byomcu/readme.md index b676fbf63a4b..f28a38f143d7 100644 --- a/keyboards/fingerpunch/barobord_byomcu/readme.md +++ b/keyboards/fingerpunch/barobord_byomcu/readme.md @@ -6,32 +6,19 @@ An ergonomic 30% keyboard Barobord supports vial! Build the via keymap as shown in the commands -To build the firmware for this keyboard (after setting up your build environment), select from one of the following, depending on what features you have on your board: - - make fingerpunch/barobord_byomcu/ec11:vial - make fingerpunch/barobord_byomcu/evq:vial - make fingerpunch/barobord_byomcu/no-features:vial - make fingerpunch/barobord_byomcu/oled:vial - make fingerpunch/barobord_byomcu/oled-ec11:vial - make fingerpunch/barobord_byomcu/oled-evq:vial - make fingerpunch/barobord_byomcu/pimoroni:vial - make fingerpunch/barobord_byomcu/pimoroni-ec11:vial - make fingerpunch/barobord_byomcu/pimoroni-evq:vial - make fingerpunch/barobord_byomcu/readme.md:vial - make fingerpunch/barobord_byomcu/rgblight:vial - make fingerpunch/barobord_byomcu/rgblight-oled-ec11:vial - make fingerpunch/barobord_byomcu/rgblight-oled-evq:vial - make fingerpunch/barobord_byomcu/rgblight-pimoroni-ec11:vial - make fingerpunch/barobord_byomcu/rgblight-pimoroni-evq:vial - make fingerpunch/barobord_byomcu/rgbmatrix:vial - make fingerpunch/barobord_byomcu/rgbmatrix-oled-ec11:vial - make fingerpunch/barobord_byomcu/rgbmatrix-oled-evq:vial - make fingerpunch/barobord_byomcu/rgbmatrix-pimoroni-ec11:vial - make fingerpunch/barobord_byomcu/rgbmatrix-pimoroni-evq:vial - -Example of flashing this keyboard: - - make fingerpunch/barobord_byomcu/no-features:vial:flash +To build the firmware for this keyboard (after setting up your build environment): +``` + make fingerpunch/barobord_byomcu:default RGBLIGHT_ENABLE=yes ENCODER_ENABLE=yes PIMORONI_TRACKBALL_ENABLE=yes +``` + +Options are: +``` + RGBLIGHT_ENABLE=yes + RGB_MATRIX_ENABLE=yes + OLED_ENABLE=yes + ENCODER_ENABLE=yes + PIMORONI_TRACKBALL_ENABLE=yes +``` Once you have completed the build, flash it onto your keyboard. At this point, make sure you have [Vial](https://get.vial.today/) installed. You should be able to edit your keymap directly from your machine! diff --git a/keyboards/fingerpunch/barobord_byomcu/rgblight/config.h b/keyboards/fingerpunch/barobord_byomcu/rgblight/config.h deleted file mode 100644 index 2ba45850ed7f..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgblight/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBLIGHT -#define FINGERPUNCH_RGBLIGHT -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/rgblight/rules.mk b/keyboards/fingerpunch/barobord_byomcu/rgblight/rules.mk deleted file mode 100644 index 33c2c43ab133..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgblight/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/rgblight_oled_ec11/config.h b/keyboards/fingerpunch/barobord_byomcu/rgblight_oled_ec11/config.h deleted file mode 100644 index 7a486c8a724b..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgblight_oled_ec11/config.h +++ /dev/null @@ -1,32 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBLIGHT -#define FINGERPUNCH_RGBLIGHT -#endif - -#ifndef FINGERPUNCH_OLED -#define FINGERPUNCH_OLED -#endif - -#ifndef FINGERPUNCH_EC11 -#define FINGERPUNCH_EC11 -#endif - -#pragma once -#include "config_common.h" - diff --git a/keyboards/fingerpunch/barobord_byomcu/rgblight_oled_ec11/rules.mk b/keyboards/fingerpunch/barobord_byomcu/rgblight_oled_ec11/rules.mk deleted file mode 100644 index f938a09a93b4..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgblight_oled_ec11/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/rgblight_oled_evq/config.h b/keyboards/fingerpunch/barobord_byomcu/rgblight_oled_evq/config.h deleted file mode 100644 index 325d5563ae42..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgblight_oled_evq/config.h +++ /dev/null @@ -1,33 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBLIGHT -#define FINGERPUNCH_RGBLIGHT -#endif - -#ifndef FINGERPUNCH_OLED -#define FINGERPUNCH_OLED -#endif - -#ifndef FINGERPUNCH_EVQ -#define FINGERPUNCH_EVQ -#endif - -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/rgblight_oled_evq/rules.mk b/keyboards/fingerpunch/barobord_byomcu/rgblight_oled_evq/rules.mk deleted file mode 100644 index f938a09a93b4..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgblight_oled_evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_ec11/config.h b/keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_ec11/config.h deleted file mode 100644 index 61c4c51fc53a..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_ec11/config.h +++ /dev/null @@ -1,31 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBLIGHT -#define FINGERPUNCH_RGBLIGHT -#endif - -#ifndef FINGERPUNCH_PIMORONI -#define FINGERPUNCH_PIMORONI -#endif - -#ifndef FINGERPUNCH_EC11 -#define FINGERPUNCH_EC11 -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_ec11/rules.mk b/keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_ec11/rules.mk deleted file mode 100644 index 326b810dfb49..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_ec11/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_evq/config.h b/keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_evq/config.h deleted file mode 100644 index 4237e51a0780..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_evq/config.h +++ /dev/null @@ -1,33 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBLIGHT -#define FINGERPUNCH_RGBLIGHT -#endif - -#ifndef FINGERPUNCH_PIMORONI -#define FINGERPUNCH_PIMORONI -#endif - -#ifndef FINGERPUNCH_EVQ -#define FINGERPUNCH_EVQ -#endif - -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_evq/rules.mk b/keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_evq/rules.mk deleted file mode 100644 index 326b810dfb49..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgblight_pimoroni_evq/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix/config.h b/keyboards/fingerpunch/barobord_byomcu/rgbmatrix/config.h deleted file mode 100644 index 9f98c0bffe3f..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBMATRIX -#define FINGERPUNCH_RGBMATRIX -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix/rules.mk b/keyboards/fingerpunch/barobord_byomcu/rgbmatrix/rules.mk deleted file mode 100644 index 87455b3cc188..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_ec11/config.h b/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_ec11/config.h deleted file mode 100644 index 2cdf35ce43ff..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_ec11/config.h +++ /dev/null @@ -1,31 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBMATRIX -#define FINGERPUNCH_RGBMATRIX -#endif - -#ifndef FINGERPUNCH_OLED -#define FINGERPUNCH_OLED -#endif - -#ifndef FINGERPUNCH_EC11 -#define FINGERPUNCH_EC11 -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_ec11/rules.mk b/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_ec11/rules.mk deleted file mode 100644 index 9ca96193a268..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_ec11/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_evq/config.h b/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_evq/config.h deleted file mode 100644 index 6085614871c6..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_evq/config.h +++ /dev/null @@ -1,33 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBMATRIX -#define FINGERPUNCH_RGBMATRIX -#endif - -#ifndef FINGERPUNCH_OLED -#define FINGERPUNCH_OLED -#endif - -#ifndef FINGERPUNCH_EVQ -#define FINGERPUNCH_EVQ -#endif - -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_evq/rules.mk b/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_evq/rules.mk deleted file mode 100644 index 9ca96193a268..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_oled_evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_ec11/config.h b/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_ec11/config.h deleted file mode 100644 index 378001aa2129..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_ec11/config.h +++ /dev/null @@ -1,31 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBMATRIX -#define FINGERPUNCH_RGBMATRIX -#endif - -#ifndef FINGERPUNCH_PIMORONI -#define FINGERPUNCH_PIMORONI -#endif - -#ifndef FINGERPUNCH_EC11 -#define FINGERPUNCH_EC11 -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_ec11/rules.mk b/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_ec11/rules.mk deleted file mode 100644 index c40db7d2aab1..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_ec11/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_evq/config.h b/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_evq/config.h deleted file mode 100644 index 400f626976ad..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_evq/config.h +++ /dev/null @@ -1,33 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef FINGERPUNCH_RGBMATRIX -#define FINGERPUNCH_RGBMATRIX -#endif - -#ifndef FINGERPUNCH_PIMORONI -#define FINGERPUNCH_PIMORONI -#endif - -#ifndef FINGERPUNCH_EVQ -#define FINGERPUNCH_EVQ -#endif - -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_evq/rules.mk b/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_evq/rules.mk deleted file mode 100644 index c40db7d2aab1..000000000000 --- a/keyboards/fingerpunch/barobord_byomcu/rgbmatrix_pimoroni_evq/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/barobord_byomcu/rules.mk b/keyboards/fingerpunch/barobord_byomcu/rules.mk index cf9d1fbecdc2..13cb43a5ee05 100644 --- a/keyboards/fingerpunch/barobord_byomcu/rules.mk +++ b/keyboards/fingerpunch/barobord_byomcu/rules.mk @@ -23,10 +23,11 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend # if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work NKRO_ENABLE = no # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +MOUSEKEY_ENABLE = no # Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = yes +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = no RGB_MATRIX_DRIVER = WS2812 MIDI_ENABLE = no # MIDI support @@ -34,14 +35,22 @@ UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches -ENCODER_ENABLE = yes -OLED_DRIVER_ENABLE = yes # this can be yes or no depending on if you have an OLED -EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed +ENCODER_ENABLE = no +OLED_ENABLE = no # this can be yes or no depending on if you have an OLED +# EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed # for instance, if you build "no_features", it's very unlikely you'll need to disable macros -MOUSEKEY_ENABLE = no + CASEMODES_ENABLE = yes ifeq ($(strip $(CASEMODES_ENABLE)), yes) SRC += users/sadekbaroudi/casemodes.c endif + +PIMORONI_TRACKBALL_ENABLE = no + +ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := pimoroni_trackball + OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE +endif \ No newline at end of file diff --git a/keyboards/fingerpunch/bgkeeb/fp_build.json b/keyboards/fingerpunch/bgkeeb/fp_build.json new file mode 100644 index 000000000000..86e4cf714369 --- /dev/null +++ b/keyboards/fingerpunch/bgkeeb/fp_build.json @@ -0,0 +1,12 @@ +[ + { + "type" : "single", + "name" : "RGBLIGHT_ENABLE", + "user_input": "Do you have RGB?" + }, + { + "type" : "single", + "name" : "ENCODER_ENABLE", + "user_input": "Do you have one or more rotary encoders?" + } +] \ No newline at end of file diff --git a/keyboards/fingerpunch/bgkeeb/readme.md b/keyboards/fingerpunch/bgkeeb/readme.md index 140210448133..233321d1b6ca 100644 --- a/keyboards/fingerpunch/bgkeeb/readme.md +++ b/keyboards/fingerpunch/bgkeeb/readme.md @@ -4,12 +4,15 @@ * Hardware Supported: bgkeeb PCB rev1 Pro Micro Make example for this keyboard (after setting up your build environment): - - make fingerpunch/bgkeeb:default - -Flashing example for this keyboard ([using the command line](https://docs.qmk.fm/#/newbs_flashing?id=flash-your-keyboard-from-the-command-line)): - - make fingerpunch/bgkeeb:default:flash +``` + make fingerpunch/bgkeeb:default RGBLIGHT_ENABLE=yes ENCODER_ENABLE=yes +``` + +Options are: +``` + RGBLIGHT_ENABLE=yes + ENCODER_ENABLE=yes +``` See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. diff --git a/keyboards/fingerpunch/bgkeeb/rules.mk b/keyboards/fingerpunch/bgkeeb/rules.mk index 2df50f1a1ff7..18ffd7223c33 100644 --- a/keyboards/fingerpunch/bgkeeb/rules.mk +++ b/keyboards/fingerpunch/bgkeeb/rules.mk @@ -17,9 +17,9 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend # if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work NKRO_ENABLE = no # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output -ENCODER_ENABLE = yes +ENCODER_ENABLE = no SPLIT_KEYBOARD = yes diff --git a/keyboards/fingerpunch/bigbarobord/config.h b/keyboards/fingerpunch/bigbarobord/config.h index 58532032ec86..72a176aaaa09 100644 --- a/keyboards/fingerpunch/bigbarobord/config.h +++ b/keyboards/fingerpunch/bigbarobord/config.h @@ -25,7 +25,6 @@ along with this program. If not, see . #define PRODUCT_ID 0xFFBB #define MANUFACTURER sadekbaroudi #define PRODUCT sadekbaroudi bigbarobord -#define DESCRIPTION sadekbaroudi bigbarobord /* key matrix size */ /* Rows are doubled up */ @@ -37,7 +36,6 @@ along with this program. If not, see . { B6, F4, B5, B4, B2, B3 } #define MATRIX_COL_PINS \ { D2, D4, C6, D7, E6, F5, F6, F7, B1 } -#define UNUSED_PINS /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 @@ -55,24 +53,15 @@ along with this program. If not, see . #define RGBLIGHT_VAL_STEP 16 #define RGBLIGHT_LIMIT_VAL 112 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ - #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD -// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -// /*== customize breathing effect ==*/ -// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -// /*==== use exp() and sin() ====*/ -// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_TWINKLE #endif #ifdef RGB_MATRIX_ENABLE @@ -84,39 +73,39 @@ along with this program. If not, see . #define RGB_MATRIX_FRAMEBUFFER_EFFECTS #define RGB_MATRIX_KEYREACTIVE_ENABLED #define ENABLE_RGB_MATRIX_ALPHAS_MODS - // #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN - // #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN + #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT #define ENABLE_RGB_MATRIX_BREATHING #define ENABLE_RGB_MATRIX_BAND_SAT #define ENABLE_RGB_MATRIX_BAND_VAL - // #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT - // #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL - // #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT - // #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL - // #define ENABLE_RGB_MATRIX_CYCLE_ALL + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL + #define ENABLE_RGB_MATRIX_CYCLE_ALL #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN - // #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON + #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON #define ENABLE_RGB_MATRIX_DUAL_BEACON - // #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL - // #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL - // #define ENABLE_RGB_MATRIX_RAINBOW_BEACON - // #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS - // #define ENABLE_RGB_MATRIX_RAINDROPS - // #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS - // #define ENABLE_RGB_MATRIX_DIGITAL_RAIN + #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL + #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL + #define ENABLE_RGB_MATRIX_RAINBOW_BEACON + #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS + #define ENABLE_RGB_MATRIX_RAINDROPS + #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS + #define ENABLE_RGB_MATRIX_DIGITAL_RAIN #define ENABLE_RGB_MATRIX_SOLID_REACTIVE #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS - // #define ENABLE_RGB_MATRIX_SPLASH - // #define ENABLE_RGB_MATRIX_MULTISPLASH - // #define ENABLE_RGB_MATRIX_SOLID_SPLASH - // #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS + #define ENABLE_RGB_MATRIX_SPLASH + #define ENABLE_RGB_MATRIX_MULTISPLASH + #define ENABLE_RGB_MATRIX_SOLID_SPLASH + #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH #endif #define ENCODERS_PAD_A {D1} diff --git a/keyboards/fingerpunch/bigbarobord/ec11/config.h b/keyboards/fingerpunch/bigbarobord/ec11/config.h deleted file mode 100644 index f97f7e8c5fd7..000000000000 --- a/keyboards/fingerpunch/bigbarobord/ec11/config.h +++ /dev/null @@ -1,25 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/bigbarobord/ec11/rules.mk b/keyboards/fingerpunch/bigbarobord/ec11/rules.mk deleted file mode 100644 index 51c7c8e9b70d..000000000000 --- a/keyboards/fingerpunch/bigbarobord/ec11/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/bigbarobord/evq/config.h b/keyboards/fingerpunch/bigbarobord/evq/config.h deleted file mode 100644 index d9ca5022a3e1..000000000000 --- a/keyboards/fingerpunch/bigbarobord/evq/config.h +++ /dev/null @@ -1,26 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/bigbarobord/evq/rules.mk b/keyboards/fingerpunch/bigbarobord/evq/rules.mk deleted file mode 100644 index 51c7c8e9b70d..000000000000 --- a/keyboards/fingerpunch/bigbarobord/evq/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/bigbarobord/fp_build.json b/keyboards/fingerpunch/bigbarobord/fp_build.json new file mode 100644 index 000000000000..07c80e3d4956 --- /dev/null +++ b/keyboards/fingerpunch/bigbarobord/fp_build.json @@ -0,0 +1,22 @@ +[ + { + "type" : "one-of", + "names" : [ "RGBLIGHT_ENABLE", "RGB_MATRIX_ENABLE" ], + "user_input": "No RGB, RGB light, RGB matrix?" + }, + { + "type" : "single", + "name" : "OLED_ENABLE", + "user_input": "Do you have an OLED?" + }, + { + "type" : "single", + "name" : "ENCODER_ENABLE", + "user_input": "Do you have one or more rotary encoders?" + }, + { + "type" : "single", + "name" : "PIMORONI_TRACKBALL_ENABLE", + "user_input": "Do you have a pimoroni trackball?" + } +] \ No newline at end of file diff --git a/keyboards/fingerpunch/bigbarobord/no_features/config.h b/keyboards/fingerpunch/bigbarobord/no_features/config.h deleted file mode 100644 index 2665925400d4..000000000000 --- a/keyboards/fingerpunch/bigbarobord/no_features/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once -#include "config_common.h" - diff --git a/keyboards/fingerpunch/bigbarobord/no_features/rules.mk b/keyboards/fingerpunch/bigbarobord/no_features/rules.mk deleted file mode 100644 index c6dcb2402616..000000000000 --- a/keyboards/fingerpunch/bigbarobord/no_features/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/bigbarobord/oled/config.h b/keyboards/fingerpunch/bigbarobord/oled/config.h deleted file mode 100644 index 8a31245df6dd..000000000000 --- a/keyboards/fingerpunch/bigbarobord/oled/config.h +++ /dev/null @@ -1,26 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#undef ENCODERS_PAD_A -#undef ENCODERS_PAD_B - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/bigbarobord/oled/rules.mk b/keyboards/fingerpunch/bigbarobord/oled/rules.mk deleted file mode 100644 index 0691c6f6410b..000000000000 --- a/keyboards/fingerpunch/bigbarobord/oled/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/bigbarobord/pimoroni/config.h b/keyboards/fingerpunch/bigbarobord/pimoroni/config.h deleted file mode 100644 index 6acef750e918..000000000000 --- a/keyboards/fingerpunch/bigbarobord/pimoroni/config.h +++ /dev/null @@ -1,26 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#undef ENCODERS_PAD_A -#undef ENCODERS_PAD_B - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/bigbarobord/pimoroni/rules.mk b/keyboards/fingerpunch/bigbarobord/pimoroni/rules.mk deleted file mode 100644 index fb958f89187d..000000000000 --- a/keyboards/fingerpunch/bigbarobord/pimoroni/rules.mk +++ /dev/null @@ -1,14 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/bigbarobord/readme.md b/keyboards/fingerpunch/bigbarobord/readme.md index 54b26e1f7d2d..1fcb3b952d63 100644 --- a/keyboards/fingerpunch/bigbarobord/readme.md +++ b/keyboards/fingerpunch/bigbarobord/readme.md @@ -7,25 +7,17 @@ An ergonomic 50% keyboard Big Barobord Make example for this keyboard (after setting up your build environment): - - make fingerpunch/bigbarobord/ec11:default - make fingerpunch/bigbarobord/evq:default - make fingerpunch/bigbarobord/no_features:default - make fingerpunch/bigbarobord/oled:default - make fingerpunch/bigbarobord/pimoroni:default - make fingerpunch/bigbarobord/rgblight:default - make fingerpunch/bigbarobord/rgblight_ec11:default - make fingerpunch/bigbarobord/rgblight_evq:default - make fingerpunch/bigbarobord/rgblight_oled:default - make fingerpunch/bigbarobord/rgblight_pimoroni:default - make fingerpunch/bigbarobord/rgbmatrix:default - make fingerpunch/bigbarobord/rgbmatrix_ec11:default - make fingerpunch/bigbarobord/rgbmatrix_evq:default - make fingerpunch/bigbarobord/rgbmatrix_oled:default - make fingerpunch/bigbarobord/rgbmatrix_pimoroni:default - -Example of flashing this keyboard: - - make fingerpunch/bigbarobord/rgblight_oled:default:flash +``` + make fingerpunch/bigbarobord:default RGBLIGHT_ENABLE=yes ENCODER_ENABLE=yes PIMORONI_TRACKBALL_ENABLE=yes +``` + +Options are: +``` + RGBLIGHT_ENABLE=yes + RGB_MATRIX_ENABLE=yes + OLED_ENABLE=yes + ENCODER_ENABLE=yes + PIMORONI_TRACKBALL_ENABLE=yes +``` See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/fingerpunch/bigbarobord/rgblight/config.h b/keyboards/fingerpunch/bigbarobord/rgblight/config.h deleted file mode 100644 index 64579bc0166d..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgblight/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/bigbarobord/rgblight/rules.mk b/keyboards/fingerpunch/bigbarobord/rgblight/rules.mk deleted file mode 100644 index d89358af2b07..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgblight/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/bigbarobord/rgblight_ec11/config.h b/keyboards/fingerpunch/bigbarobord/rgblight_ec11/config.h deleted file mode 100644 index 9a8db4ff0d30..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgblight_ec11/config.h +++ /dev/null @@ -1,29 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/bigbarobord/rgblight_ec11/rules.mk b/keyboards/fingerpunch/bigbarobord/rgblight_ec11/rules.mk deleted file mode 100644 index 3edb19fd0ee8..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgblight_ec11/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/bigbarobord/rgblight_evq/config.h b/keyboards/fingerpunch/bigbarobord/rgblight_evq/config.h deleted file mode 100644 index 59600236273e..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgblight_evq/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/bigbarobord/rgblight_evq/rules.mk b/keyboards/fingerpunch/bigbarobord/rgblight_evq/rules.mk deleted file mode 100644 index 3edb19fd0ee8..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgblight_evq/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/bigbarobord/rgblight_oled/config.h b/keyboards/fingerpunch/bigbarobord/rgblight_oled/config.h deleted file mode 100644 index e0b25aca4e2a..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgblight_oled/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#undef ENCODERS_PAD_A -#undef ENCODERS_PAD_B - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/bigbarobord/rgblight_oled/rules.mk b/keyboards/fingerpunch/bigbarobord/rgblight_oled/rules.mk deleted file mode 100644 index ee06510f39a6..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgblight_oled/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/bigbarobord/rgblight_pimoroni/config.h b/keyboards/fingerpunch/bigbarobord/rgblight_pimoroni/config.h deleted file mode 100644 index 77a7c9705fdb..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgblight_pimoroni/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#undef ENCODERS_PAD_A -#undef ENCODERS_PAD_B - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/bigbarobord/rgblight_pimoroni/rules.mk b/keyboards/fingerpunch/bigbarobord/rgblight_pimoroni/rules.mk deleted file mode 100644 index 66fc5b8e8e8f..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgblight_pimoroni/rules.mk +++ /dev/null @@ -1,14 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/bigbarobord/rgbmatrix/config.h b/keyboards/fingerpunch/bigbarobord/rgbmatrix/config.h deleted file mode 100644 index 7efaf36db9c0..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgbmatrix/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/bigbarobord/rgbmatrix/rules.mk b/keyboards/fingerpunch/bigbarobord/rgbmatrix/rules.mk deleted file mode 100644 index 7b9b02c58d08..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgbmatrix/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/bigbarobord/rgbmatrix_ec11/config.h b/keyboards/fingerpunch/bigbarobord/rgbmatrix_ec11/config.h deleted file mode 100644 index 4c48e40746ad..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgbmatrix_ec11/config.h +++ /dev/null @@ -1,29 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/bigbarobord/rgbmatrix_ec11/rules.mk b/keyboards/fingerpunch/bigbarobord/rgbmatrix_ec11/rules.mk deleted file mode 100644 index 862c80855ad2..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgbmatrix_ec11/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/bigbarobord/rgbmatrix_evq/config.h b/keyboards/fingerpunch/bigbarobord/rgbmatrix_evq/config.h deleted file mode 100644 index 31b81fc9d20e..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgbmatrix_evq/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/bigbarobord/rgbmatrix_evq/rules.mk b/keyboards/fingerpunch/bigbarobord/rgbmatrix_evq/rules.mk deleted file mode 100644 index 862c80855ad2..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgbmatrix_evq/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/bigbarobord/rgbmatrix_oled/config.h b/keyboards/fingerpunch/bigbarobord/rgbmatrix_oled/config.h deleted file mode 100644 index 277ab2e5a2c7..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgbmatrix_oled/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#undef ENCODERS_PAD_A -#undef ENCODERS_PAD_B - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/bigbarobord/rgbmatrix_oled/rules.mk b/keyboards/fingerpunch/bigbarobord/rgbmatrix_oled/rules.mk deleted file mode 100644 index 4a8489f025bc..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgbmatrix_oled/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/bigbarobord/rgbmatrix_pimoroni/config.h b/keyboards/fingerpunch/bigbarobord/rgbmatrix_pimoroni/config.h deleted file mode 100644 index ff48287f4c41..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgbmatrix_pimoroni/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#undef ENCODERS_PAD_A -#undef ENCODERS_PAD_B - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/bigbarobord/rgbmatrix_pimoroni/rules.mk b/keyboards/fingerpunch/bigbarobord/rgbmatrix_pimoroni/rules.mk deleted file mode 100644 index 00f3fc675cb4..000000000000 --- a/keyboards/fingerpunch/bigbarobord/rgbmatrix_pimoroni/rules.mk +++ /dev/null @@ -1,14 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/bigbarobord/rules.mk b/keyboards/fingerpunch/bigbarobord/rules.mk index dcedfd9c7768..3e9921b5e0de 100644 --- a/keyboards/fingerpunch/bigbarobord/rules.mk +++ b/keyboards/fingerpunch/bigbarobord/rules.mk @@ -25,8 +25,8 @@ NKRO_ENABLE = no # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality # Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = yes +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = no RGB_MATRIX_DRIVER = WS2812 MIDI_ENABLE = no # MIDI support @@ -34,9 +34,16 @@ UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches -ENCODER_ENABLE = yes -OLED_DRIVER_ENABLE = yes # this can be yes or no depending on if you have an OLED -EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed - # for instance, if you build "no_features", it's very unlikely you'll need to disable macros +ENCODER_ENABLE = no +OLED_ENABLE = no # this can be yes or no depending on if you have an OLED +# EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed + MOUSEKEY_ENABLE = no +PIMORONI_TRACKBALL_ENABLE = no + +ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := pimoroni_trackball + OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE +endif \ No newline at end of file diff --git a/keyboards/fingerpunch/euclid36/rules.mk b/keyboards/fingerpunch/euclid36/rules.mk index e745c6b6a561..23eed92d8b32 100644 --- a/keyboards/fingerpunch/euclid36/rules.mk +++ b/keyboards/fingerpunch/euclid36/rules.mk @@ -31,7 +31,7 @@ BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches ENCODER_ENABLE = yes -OLED_DRIVER_ENABLE = yes +OLED_ENABLE = yes THUMBSTICK_ENABLE = yes ifeq ($(strip $(THUMBSTICK_ENABLE)), yes) diff --git a/keyboards/fingerpunch/ffkb/config.h b/keyboards/fingerpunch/ffkb/config.h index 610b8339df9b..0658e4af78c6 100644 --- a/keyboards/fingerpunch/ffkb/config.h +++ b/keyboards/fingerpunch/ffkb/config.h @@ -26,7 +26,6 @@ along with this program. If not, see . //#define DEVICE_VER 0x0001 // Now defined in the revX/config.h #define MANUFACTURER sadekbaroudi #define PRODUCT sadekbaroudi ffkb -#define DESCRIPTION sadekbaroudi ffkb /* key matrix size */ /* Rows are doubled up */ @@ -35,10 +34,9 @@ along with this program. If not, see . // wiring #define MATRIX_ROW_PINS \ - { B0, B1, C6, B6 } // 8, 9, 31, 30 + { B0, B1, C6, B6 } #define MATRIX_COL_PINS \ - { F4, F6, F5, F7, F1, B3, B2, D2, D3, D5, B5, B7 } // 39, 37, 38, 36, 40, 11, 10, 20, 21, 22, 29, 12 -#define UNUSED_PINS + { F4, F6, F5, F7, F1, B3, B2, D2, D3, D5, B5, B7 } /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 @@ -56,24 +54,15 @@ along with this program. If not, see . #define RGBLIGHT_VAL_STEP 16 #define RGBLIGHT_LIMIT_VAL 112 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ - #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD -// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -// /*== customize breathing effect ==*/ -// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -// /*==== use exp() and sin() ====*/ -// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_TWINKLE #endif #ifdef RGB_MATRIX_ENABLE @@ -85,39 +74,39 @@ along with this program. If not, see . #define RGB_MATRIX_FRAMEBUFFER_EFFECTS #define RGB_MATRIX_KEYREACTIVE_ENABLED #define ENABLE_RGB_MATRIX_ALPHAS_MODS - // #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN - // #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN + #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT #define ENABLE_RGB_MATRIX_BREATHING #define ENABLE_RGB_MATRIX_BAND_SAT #define ENABLE_RGB_MATRIX_BAND_VAL - // #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT - // #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL - // #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT - // #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL - // #define ENABLE_RGB_MATRIX_CYCLE_ALL + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL + #define ENABLE_RGB_MATRIX_CYCLE_ALL #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN - // #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON + #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON #define ENABLE_RGB_MATRIX_DUAL_BEACON - // #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL - // #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL - // #define ENABLE_RGB_MATRIX_RAINBOW_BEACON - // #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS - // #define ENABLE_RGB_MATRIX_RAINDROPS - // #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS - // #define ENABLE_RGB_MATRIX_DIGITAL_RAIN + #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL + #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL + #define ENABLE_RGB_MATRIX_RAINBOW_BEACON + #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS + #define ENABLE_RGB_MATRIX_RAINDROPS + #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS + #define ENABLE_RGB_MATRIX_DIGITAL_RAIN #define ENABLE_RGB_MATRIX_SOLID_REACTIVE #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS - // #define ENABLE_RGB_MATRIX_SPLASH - // #define ENABLE_RGB_MATRIX_MULTISPLASH - // #define ENABLE_RGB_MATRIX_SOLID_SPLASH - // #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS + #define ENABLE_RGB_MATRIX_SPLASH + #define ENABLE_RGB_MATRIX_MULTISPLASH + #define ENABLE_RGB_MATRIX_SOLID_SPLASH + #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH #endif // SDA, 27, 25 @@ -127,9 +116,23 @@ along with this program. If not, see . // 28, 28, 26 #define ENCODERS_PAD_B {B4, D6, D0} +#ifdef FP_EVQ_UNDER_PALMS +#define ENCODERS_A_REVERSE +#define ENCODERS_B_REVERSE +#endif + +#ifdef FP_EC11_UNDER_PALMS +#define ENCODERS_C_REVERSE +#endif + +#if defined(OLED_ENABLE) || defined(PIMORONI_TRACKBALL_ENABLE) +#undef ENCODERS_PAD_A +#define ENCODERS_PAD_A {D7, D4} +#undef ENCODERS_PAD_B +#define ENCODERS_PAD_B {B4, D6} +#endif + #define ENCODER_RESOLUTION 2 -// Per encoder settings -//#define ENCODER_RESOLUTIONS { 2, 2 } /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ #define LOCKING_SUPPORT_ENABLE diff --git a/keyboards/fingerpunch/ffkb/ec11/config.h b/keyboards/fingerpunch/ffkb/ec11/config.h deleted file mode 100644 index f97f7e8c5fd7..000000000000 --- a/keyboards/fingerpunch/ffkb/ec11/config.h +++ /dev/null @@ -1,25 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/ec11/rules.mk b/keyboards/fingerpunch/ffkb/ec11/rules.mk deleted file mode 100644 index bf59a319db9a..000000000000 --- a/keyboards/fingerpunch/ffkb/ec11/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/ec11_evq/config.h b/keyboards/fingerpunch/ffkb/ec11_evq/config.h deleted file mode 100644 index 43a073fb6b22..000000000000 --- a/keyboards/fingerpunch/ffkb/ec11_evq/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/ec11_evq/rules.mk b/keyboards/fingerpunch/ffkb/ec11_evq/rules.mk deleted file mode 100644 index bf59a319db9a..000000000000 --- a/keyboards/fingerpunch/ffkb/ec11_evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/evq/config.h b/keyboards/fingerpunch/ffkb/evq/config.h deleted file mode 100644 index d9ca5022a3e1..000000000000 --- a/keyboards/fingerpunch/ffkb/evq/config.h +++ /dev/null @@ -1,26 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/evq/rules.mk b/keyboards/fingerpunch/ffkb/evq/rules.mk deleted file mode 100644 index bf59a319db9a..000000000000 --- a/keyboards/fingerpunch/ffkb/evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/fp_build.json b/keyboards/fingerpunch/ffkb/fp_build.json new file mode 100644 index 000000000000..38ef3f0c4240 --- /dev/null +++ b/keyboards/fingerpunch/ffkb/fp_build.json @@ -0,0 +1,27 @@ +[ + { + "type" : "one-of", + "names" : [ "RGBLIGHT_ENABLE", "RGB_MATRIX_ENABLE" ], + "user_input": "No RGB, RGB light, RGB matrix?" + }, + { + "type" : "single", + "name" : "OLED_ENABLE", + "user_input": "Do you have an OLED?" + }, + { + "type" : "single", + "name" : "FP_EC11_CENTER", + "user_input": "Do you have an EC11 in the center?" + }, + { + "type" : "one-of", + "names" : [ "FP_EC11_UNDER_PALMS", "FP_EVQ_UNDER_PALMS" ], + "user_input": "No under palm encoders, EC11, or EVQ?" + }, + { + "type" : "single", + "name" : "PIMORONI_TRACKBALL_ENABLE", + "user_input": "Do you have a pimoroni trackball?" + } +] \ No newline at end of file diff --git a/keyboards/fingerpunch/ffkb/no_features/config.h b/keyboards/fingerpunch/ffkb/no_features/config.h deleted file mode 100644 index 2665925400d4..000000000000 --- a/keyboards/fingerpunch/ffkb/no_features/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once -#include "config_common.h" - diff --git a/keyboards/fingerpunch/ffkb/no_features/rules.mk b/keyboards/fingerpunch/ffkb/no_features/rules.mk deleted file mode 100644 index 38edc894a4cd..000000000000 --- a/keyboards/fingerpunch/ffkb/no_features/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/oled/config.h b/keyboards/fingerpunch/ffkb/oled/config.h deleted file mode 100644 index 641c2863fb85..000000000000 --- a/keyboards/fingerpunch/ffkb/oled/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/oled/rules.mk b/keyboards/fingerpunch/ffkb/oled/rules.mk deleted file mode 100644 index 123064d22714..000000000000 --- a/keyboards/fingerpunch/ffkb/oled/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/oled_ec11/config.h b/keyboards/fingerpunch/ffkb/oled_ec11/config.h deleted file mode 100644 index 2abde390b6ab..000000000000 --- a/keyboards/fingerpunch/ffkb/oled_ec11/config.h +++ /dev/null @@ -1,34 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/oled_ec11/rules.mk b/keyboards/fingerpunch/ffkb/oled_ec11/rules.mk deleted file mode 100644 index f248cb208122..000000000000 --- a/keyboards/fingerpunch/ffkb/oled_ec11/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/oled_evq/config.h b/keyboards/fingerpunch/ffkb/oled_evq/config.h deleted file mode 100644 index b3e410943655..000000000000 --- a/keyboards/fingerpunch/ffkb/oled_evq/config.h +++ /dev/null @@ -1,35 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE -#define ENCODERS_B_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/oled_evq/rules.mk b/keyboards/fingerpunch/ffkb/oled_evq/rules.mk deleted file mode 100644 index f248cb208122..000000000000 --- a/keyboards/fingerpunch/ffkb/oled_evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/pimoroni/config.h b/keyboards/fingerpunch/ffkb/pimoroni/config.h deleted file mode 100644 index 87884ae93c42..000000000000 --- a/keyboards/fingerpunch/ffkb/pimoroni/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/pimoroni/rules.mk b/keyboards/fingerpunch/ffkb/pimoroni/rules.mk deleted file mode 100644 index 9880edc91129..000000000000 --- a/keyboards/fingerpunch/ffkb/pimoroni/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/pimoroni_ec11/config.h b/keyboards/fingerpunch/ffkb/pimoroni_ec11/config.h deleted file mode 100644 index 0d557cb64f83..000000000000 --- a/keyboards/fingerpunch/ffkb/pimoroni_ec11/config.h +++ /dev/null @@ -1,34 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/pimoroni_ec11/rules.mk b/keyboards/fingerpunch/ffkb/pimoroni_ec11/rules.mk deleted file mode 100644 index dad28b93e51c..000000000000 --- a/keyboards/fingerpunch/ffkb/pimoroni_ec11/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/pimoroni_evq/config.h b/keyboards/fingerpunch/ffkb/pimoroni_evq/config.h deleted file mode 100644 index bc94c964954a..000000000000 --- a/keyboards/fingerpunch/ffkb/pimoroni_evq/config.h +++ /dev/null @@ -1,35 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE -#define ENCODERS_B_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/pimoroni_evq/rules.mk b/keyboards/fingerpunch/ffkb/pimoroni_evq/rules.mk deleted file mode 100644 index dad28b93e51c..000000000000 --- a/keyboards/fingerpunch/ffkb/pimoroni_evq/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/readme.md b/keyboards/fingerpunch/ffkb/readme.md index 615000b45428..aaafb1e9d0cc 100644 --- a/keyboards/fingerpunch/ffkb/readme.md +++ b/keyboards/fingerpunch/ffkb/readme.md @@ -7,40 +7,19 @@ An ergonomic 30% keyboard Faux fox keyboard (ffkb) Make example for this keyboard (after setting up your build environment): - - make fingerpunch/ffkb/ec11:default - make fingerpunch/ffkb/ec11_evq:default - make fingerpunch/ffkb/evq:default - make fingerpunch/ffkb/no_features:default - make fingerpunch/ffkb/oled:default - make fingerpunch/ffkb/oled_ec11:default - make fingerpunch/ffkb/oled_evq:default - make fingerpunch/ffkb/pimoroni:default - make fingerpunch/ffkb/pimoroni_ec11:default - make fingerpunch/ffkb/pimoroni_evq:default - make fingerpunch/ffkb/rgblight:default - make fingerpunch/ffkb/rgblight_ec11:default - make fingerpunch/ffkb/rgblight_ec11_evq:default - make fingerpunch/ffkb/rgblight_evq:default - make fingerpunch/ffkb/rgblight_oled:default - make fingerpunch/ffkb/rgblight_oled_ec11:default - make fingerpunch/ffkb/rgblight_oled_evq:default - make fingerpunch/ffkb/rgblight_pimoroni:default - make fingerpunch/ffkb/rgblight_pimoroni_ec11:default - make fingerpunch/ffkb/rgblight_pimoroni_evq:default - make fingerpunch/ffkb/rgbmatrix:default - make fingerpunch/ffkb/rgbmatrix_ec11:default - make fingerpunch/ffkb/rgbmatrix_ec11_evq:default - make fingerpunch/ffkb/rgbmatrix_evq:default - make fingerpunch/ffkb/rgbmatrix_oled:default - make fingerpunch/ffkb/rgbmatrix_oled_ec11:default - make fingerpunch/ffkb/rgbmatrix_oled_evq:default - make fingerpunch/ffkb/rgbmatrix_pimoroni:default - make fingerpunch/ffkb/rgbmatrix_pimoroni_ec11:default - make fingerpunch/ffkb/rgbmatrix_pimoroni_evq:default - -Example of flashing this keyboard: - - make fingerpunch/ffkb/rgblight_oled_ec11:default:flash +``` + make fingerpunch/ffkb:default RGBLIGHT_ENABLE=yes FP_EC11_UNDER_PALMS=yes PIMORONI_TRACKBALL_ENABLE=yes +``` + +Options are: +``` + RGBLIGHT_ENABLE=yes + RGB_MATRIX_ENABLE=yes + OLED_ENABLE=yes + FP_EC11_CENTER=yes + FP_EC11_UNDER_PALMS=yes + FP_EVQ_UNDER_PALMS=yes + PIMORONI_TRACKBALL_ENABLE=yes +``` See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/fingerpunch/ffkb/rgblight/config.h b/keyboards/fingerpunch/ffkb/rgblight/config.h deleted file mode 100644 index 64579bc0166d..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgblight/rules.mk b/keyboards/fingerpunch/ffkb/rgblight/rules.mk deleted file mode 100644 index 33c2c43ab133..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgblight_ec11/config.h b/keyboards/fingerpunch/ffkb/rgblight_ec11/config.h deleted file mode 100644 index 9a8db4ff0d30..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_ec11/config.h +++ /dev/null @@ -1,29 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgblight_ec11/rules.mk b/keyboards/fingerpunch/ffkb/rgblight_ec11/rules.mk deleted file mode 100644 index ce562e393f31..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_ec11/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgblight_ec11_evq/config.h b/keyboards/fingerpunch/ffkb/rgblight_ec11_evq/config.h deleted file mode 100644 index b406f7b886c7..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_ec11_evq/config.h +++ /dev/null @@ -1,34 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgblight_ec11_evq/rules.mk b/keyboards/fingerpunch/ffkb/rgblight_ec11_evq/rules.mk deleted file mode 100644 index ce562e393f31..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_ec11_evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgblight_evq/config.h b/keyboards/fingerpunch/ffkb/rgblight_evq/config.h deleted file mode 100644 index 59600236273e..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_evq/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgblight_evq/rules.mk b/keyboards/fingerpunch/ffkb/rgblight_evq/rules.mk deleted file mode 100644 index ce562e393f31..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgblight_oled/config.h b/keyboards/fingerpunch/ffkb/rgblight_oled/config.h deleted file mode 100644 index 76e0fcb66d99..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_oled/config.h +++ /dev/null @@ -1,32 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgblight_oled/rules.mk b/keyboards/fingerpunch/ffkb/rgblight_oled/rules.mk deleted file mode 100644 index f04575f8a30f..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_oled/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgblight_oled_ec11/config.h b/keyboards/fingerpunch/ffkb/rgblight_oled_ec11/config.h deleted file mode 100644 index 151d3de8a3be..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_oled_ec11/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgblight_oled_ec11/rules.mk b/keyboards/fingerpunch/ffkb/rgblight_oled_ec11/rules.mk deleted file mode 100644 index 1159805b74fa..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_oled_ec11/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgblight_oled_evq/config.h b/keyboards/fingerpunch/ffkb/rgblight_oled_evq/config.h deleted file mode 100644 index 7c8fcc702d04..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_oled_evq/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgblight_oled_evq/rules.mk b/keyboards/fingerpunch/ffkb/rgblight_oled_evq/rules.mk deleted file mode 100644 index 1159805b74fa..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_oled_evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgblight_pimoroni/config.h b/keyboards/fingerpunch/ffkb/rgblight_pimoroni/config.h deleted file mode 100644 index 0f131f9e2ae6..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_pimoroni/config.h +++ /dev/null @@ -1,32 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgblight_pimoroni/rules.mk b/keyboards/fingerpunch/ffkb/rgblight_pimoroni/rules.mk deleted file mode 100644 index 1ba0ee581511..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_pimoroni/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgblight_pimoroni_ec11/config.h b/keyboards/fingerpunch/ffkb/rgblight_pimoroni_ec11/config.h deleted file mode 100644 index 4ba9e5ac22e5..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_pimoroni_ec11/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgblight_pimoroni_ec11/rules.mk b/keyboards/fingerpunch/ffkb/rgblight_pimoroni_ec11/rules.mk deleted file mode 100644 index 326b810dfb49..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_pimoroni_ec11/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgblight_pimoroni_evq/config.h b/keyboards/fingerpunch/ffkb/rgblight_pimoroni_evq/config.h deleted file mode 100644 index f90e52f04c87..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_pimoroni_evq/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgblight_pimoroni_evq/rules.mk b/keyboards/fingerpunch/ffkb/rgblight_pimoroni_evq/rules.mk deleted file mode 100644 index 326b810dfb49..000000000000 --- a/keyboards/fingerpunch/ffkb/rgblight_pimoroni_evq/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix/config.h b/keyboards/fingerpunch/ffkb/rgbmatrix/config.h deleted file mode 100644 index 7efaf36db9c0..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix/rules.mk b/keyboards/fingerpunch/ffkb/rgbmatrix/rules.mk deleted file mode 100644 index 87455b3cc188..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_ec11/config.h b/keyboards/fingerpunch/ffkb/rgbmatrix_ec11/config.h deleted file mode 100644 index 4c48e40746ad..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_ec11/config.h +++ /dev/null @@ -1,29 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_ec11/rules.mk b/keyboards/fingerpunch/ffkb/rgbmatrix_ec11/rules.mk deleted file mode 100644 index 5f4a6a0db3e9..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_ec11/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_ec11_evq/config.h b/keyboards/fingerpunch/ffkb/rgbmatrix_ec11_evq/config.h deleted file mode 100644 index 5edcf027d11b..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_ec11_evq/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_ec11_evq/rules.mk b/keyboards/fingerpunch/ffkb/rgbmatrix_ec11_evq/rules.mk deleted file mode 100644 index 5f4a6a0db3e9..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_ec11_evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_evq/config.h b/keyboards/fingerpunch/ffkb/rgbmatrix_evq/config.h deleted file mode 100644 index 31b81fc9d20e..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_evq/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_evq/rules.mk b/keyboards/fingerpunch/ffkb/rgbmatrix_evq/rules.mk deleted file mode 100644 index 5f4a6a0db3e9..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_oled/config.h b/keyboards/fingerpunch/ffkb/rgbmatrix_oled/config.h deleted file mode 100644 index 7350fcedab97..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_oled/config.h +++ /dev/null @@ -1,32 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_oled/rules.mk b/keyboards/fingerpunch/ffkb/rgbmatrix_oled/rules.mk deleted file mode 100644 index 673e966c2a19..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_oled/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_oled_ec11/config.h b/keyboards/fingerpunch/ffkb/rgbmatrix_oled_ec11/config.h deleted file mode 100644 index bf22b65bf67a..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_oled_ec11/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_oled_ec11/rules.mk b/keyboards/fingerpunch/ffkb/rgbmatrix_oled_ec11/rules.mk deleted file mode 100644 index a73c6172dd87..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_oled_ec11/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_oled_evq/config.h b/keyboards/fingerpunch/ffkb/rgbmatrix_oled_evq/config.h deleted file mode 100644 index bcc19b1b2e44..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_oled_evq/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_oled_evq/rules.mk b/keyboards/fingerpunch/ffkb/rgbmatrix_oled_evq/rules.mk deleted file mode 100644 index a73c6172dd87..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_oled_evq/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni/config.h b/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni/config.h deleted file mode 100644 index 83d45f2054e2..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni/config.h +++ /dev/null @@ -1,32 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni/rules.mk b/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni/rules.mk deleted file mode 100644 index b925b6796990..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_ec11/config.h b/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_ec11/config.h deleted file mode 100644 index f6ca8afbfdbd..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_ec11/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_ec11/rules.mk b/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_ec11/rules.mk deleted file mode 100644 index c40db7d2aab1..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_ec11/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_evq/config.h b/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_evq/config.h deleted file mode 100644 index b45e758a4fb3..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_evq/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D7, D4} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B4, D6} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_evq/rules.mk b/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_evq/rules.mk deleted file mode 100644 index c40db7d2aab1..000000000000 --- a/keyboards/fingerpunch/ffkb/rgbmatrix_pimoroni_evq/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb/rules.mk b/keyboards/fingerpunch/ffkb/rules.mk index 982653506950..a64a82193ee6 100644 --- a/keyboards/fingerpunch/ffkb/rules.mk +++ b/keyboards/fingerpunch/ffkb/rules.mk @@ -25,8 +25,8 @@ NKRO_ENABLE = no # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality # Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = yes +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = no RGB_MATRIX_DRIVER = WS2812 MIDI_ENABLE = no # MIDI support @@ -34,8 +34,31 @@ UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches -ENCODER_ENABLE = yes -OLED_DRIVER_ENABLE = yes # this can be yes or no depending on if you have an OLED +ENCODER_ENABLE = no +OLED_ENABLE = no # this can be yes or no depending on if you have an OLED EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed # for instance, if you build "no_features", it's very unlikely you'll need to disable macros MOUSEKEY_ENABLE = no + +PIMORONI_TRACKBALL_ENABLE = no + +ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := pimoroni_trackball + OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE +endif + +ifeq ($(strip $(FP_EC11_CENTER)), yes) + ENCODER_ENABLE := yes + OPT_DEFS += -DFP_EC11_CENTER +endif + +ifeq ($(strip $(FP_EC11_UNDER_PALMS)), yes) + ENCODER_ENABLE := yes + OPT_DEFS += -DFP_EC11_UNDER_PALMS +endif + +ifeq ($(strip $(FP_EVQ_UNDER_PALMS)), yes) + ENCODER_ENABLE := yes + OPT_DEFS += -DFP_EVQ_UNDER_PALMS +endif \ No newline at end of file diff --git a/keyboards/fingerpunch/ffkb_byomcu/cirque/config.h b/keyboards/fingerpunch/ffkb_byomcu/cirque/config.h deleted file mode 100644 index d4903b376d72..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/cirque/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/cirque/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/cirque/rules.mk deleted file mode 100644 index 94fdcee2771d..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/cirque/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -ENCODER_ENABLE = no -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/cirque_ec11/config.h b/keyboards/fingerpunch/ffkb_byomcu/cirque_ec11/config.h deleted file mode 100644 index d4903b376d72..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/cirque_ec11/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/cirque_ec11/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/cirque_ec11/rules.mk deleted file mode 100644 index 65a6380f8813..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/cirque_ec11/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -ENCODER_ENABLE = yes -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/cirque_evq/config.h b/keyboards/fingerpunch/ffkb_byomcu/cirque_evq/config.h deleted file mode 100644 index 968605031873..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/cirque_evq/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#define ENCODERS_A_REVERSE -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/cirque_evq/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/cirque_evq/rules.mk deleted file mode 100644 index 65a6380f8813..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/cirque_evq/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -ENCODER_ENABLE = yes -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/config.h b/keyboards/fingerpunch/ffkb_byomcu/config.h index 12ced8410775..643b4139ad1a 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/config.h +++ b/keyboards/fingerpunch/ffkb_byomcu/config.h @@ -25,7 +25,6 @@ along with this program. If not, see . #define PRODUCT_ID 0xFFBB #define MANUFACTURER sadekbaroudi #define PRODUCT sadekbaroudi ffkb_byomcu -#define DESCRIPTION sadekbaroudi ffkb_byomcu /* key matrix size */ /* Rows are doubled up */ @@ -37,7 +36,6 @@ along with this program. If not, see . { D2, F4, F5, F6, F7, B1 } #define MATRIX_COL_PINS \ { B5, B4, E6, D7, C6, D4, B2, B3 } -#define UNUSED_PINS /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 @@ -55,24 +53,15 @@ along with this program. If not, see . #define RGBLIGHT_VAL_STEP 16 #define RGBLIGHT_LIMIT_VAL 112 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ - #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD -// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -// /*== customize breathing effect ==*/ -// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -// /*==== use exp() and sin() ====*/ -// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_TWINKLE #endif #ifdef RGB_MATRIX_ENABLE @@ -84,47 +73,61 @@ along with this program. If not, see . #define RGB_MATRIX_FRAMEBUFFER_EFFECTS #define RGB_MATRIX_KEYREACTIVE_ENABLED #define ENABLE_RGB_MATRIX_ALPHAS_MODS - // #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN - // #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN + #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT #define ENABLE_RGB_MATRIX_BREATHING #define ENABLE_RGB_MATRIX_BAND_SAT #define ENABLE_RGB_MATRIX_BAND_VAL - // #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT - // #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL - // #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT - // #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL - // #define ENABLE_RGB_MATRIX_CYCLE_ALL + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL + #define ENABLE_RGB_MATRIX_CYCLE_ALL #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN - // #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON + #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON #define ENABLE_RGB_MATRIX_DUAL_BEACON - // #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL - // #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL - // #define ENABLE_RGB_MATRIX_RAINBOW_BEACON - // #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS - // #define ENABLE_RGB_MATRIX_RAINDROPS - // #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS - // #define ENABLE_RGB_MATRIX_DIGITAL_RAIN + #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL + #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL + #define ENABLE_RGB_MATRIX_RAINBOW_BEACON + #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS + #define ENABLE_RGB_MATRIX_RAINDROPS + #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS + #define ENABLE_RGB_MATRIX_DIGITAL_RAIN #define ENABLE_RGB_MATRIX_SOLID_REACTIVE #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS - // #define ENABLE_RGB_MATRIX_SPLASH - // #define ENABLE_RGB_MATRIX_MULTISPLASH - // #define ENABLE_RGB_MATRIX_SOLID_SPLASH - // #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS + #define ENABLE_RGB_MATRIX_SPLASH + #define ENABLE_RGB_MATRIX_MULTISPLASH + #define ENABLE_RGB_MATRIX_SOLID_SPLASH + #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH #endif #define ENCODERS_PAD_A {D5, B6, D1} #define ENCODERS_PAD_B {B7, F1, D0} +#ifdef FP_EVQ_UNDER_PALMS +#define ENCODERS_A_REVERSE +#define ENCODERS_B_REVERSE +#endif + +#ifdef FP_EC11_UNDER_PALMS +#define ENCODERS_C_REVERSE +#endif + +#if defined(OLED_ENABLE) || defined(PIMORONI_TRACKBALL_ENABLE) +#undef ENCODERS_PAD_A +#define ENCODERS_PAD_A {D5, B6} +#undef ENCODERS_PAD_B +#define ENCODERS_PAD_B {B7, F1} +#endif + #define ENCODER_RESOLUTION 2 -// Per encoder settings -//#define ENCODER_RESOLUTIONS { 2, 2 } /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ #define LOCKING_SUPPORT_ENABLE diff --git a/keyboards/fingerpunch/ffkb_byomcu/ec11/config.h b/keyboards/fingerpunch/ffkb_byomcu/ec11/config.h deleted file mode 100644 index f97f7e8c5fd7..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/ec11/config.h +++ /dev/null @@ -1,25 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/ec11/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/ec11/rules.mk deleted file mode 100644 index 51c7c8e9b70d..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/ec11/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/ec11_evq/config.h b/keyboards/fingerpunch/ffkb_byomcu/ec11_evq/config.h deleted file mode 100644 index 43a073fb6b22..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/ec11_evq/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/ec11_evq/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/ec11_evq/rules.mk deleted file mode 100644 index 51c7c8e9b70d..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/ec11_evq/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/evq/config.h b/keyboards/fingerpunch/ffkb_byomcu/evq/config.h deleted file mode 100644 index d9ca5022a3e1..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/evq/config.h +++ /dev/null @@ -1,26 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/evq/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/evq/rules.mk deleted file mode 100644 index 51c7c8e9b70d..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/evq/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.c b/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.c index 84a314fe5f0e..97c60a1a5985 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.c +++ b/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.c @@ -60,4 +60,3 @@ led_config_t g_led_config = { { */ #endif - diff --git a/keyboards/fingerpunch/ffkb_byomcu/fp_build.json b/keyboards/fingerpunch/ffkb_byomcu/fp_build.json new file mode 100644 index 000000000000..30332ef66400 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/fp_build.json @@ -0,0 +1,32 @@ +[ + { + "type" : "single", + "name" : "CIRQUE_ENABLE", + "user_input": "Do you have a cirque?" + }, + { + "type" : "one-of", + "names" : [ "RGBLIGHT_ENABLE", "RGB_MATRIX_ENABLE" ], + "user_input": "No RGB, RGB light, RGB matrix?" + }, + { + "type" : "single", + "name" : "OLED_ENABLE", + "user_input": "Do you have an OLED?" + }, + { + "type" : "single", + "name" : "FP_EC11_CENTER", + "user_input": "Do you have an EC11 in the center?" + }, + { + "type" : "one-of", + "names" : [ "FP_EC11_UNDER_PALMS", "FP_EVQ_UNDER_PALMS" ], + "user_input": "No under palm encoders, EC11, or EVQ?" + }, + { + "type" : "single", + "name" : "PIMORONI_TRACKBALL_ENABLE", + "user_input": "Do you have a pimoroni trackball?" + } +] \ No newline at end of file diff --git a/keyboards/fingerpunch/ffkb_byomcu/no_features/config.h b/keyboards/fingerpunch/ffkb_byomcu/no_features/config.h deleted file mode 100644 index 2665925400d4..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/no_features/config.h +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once -#include "config_common.h" - diff --git a/keyboards/fingerpunch/ffkb_byomcu/no_features/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/no_features/rules.mk deleted file mode 100644 index c6dcb2402616..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/no_features/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/oled/config.h b/keyboards/fingerpunch/ffkb_byomcu/oled/config.h deleted file mode 100644 index d9651e9ee6bb..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/oled/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/oled/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/oled/rules.mk deleted file mode 100644 index 0691c6f6410b..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/oled/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/oled_ec11/config.h b/keyboards/fingerpunch/ffkb_byomcu/oled_ec11/config.h deleted file mode 100644 index 6b700d4c170f..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/oled_ec11/config.h +++ /dev/null @@ -1,34 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/oled_ec11/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/oled_ec11/rules.mk deleted file mode 100644 index 18db16e53b67..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/oled_ec11/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/oled_evq/config.h b/keyboards/fingerpunch/ffkb_byomcu/oled_evq/config.h deleted file mode 100644 index 74a86b513757..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/oled_evq/config.h +++ /dev/null @@ -1,35 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE -#define ENCODERS_B_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/oled_evq/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/oled_evq/rules.mk deleted file mode 100644 index 18db16e53b67..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/oled_evq/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/pimoroni/config.h b/keyboards/fingerpunch/ffkb_byomcu/pimoroni/config.h deleted file mode 100644 index c186b76a54db..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/pimoroni/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/pimoroni/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/pimoroni/rules.mk deleted file mode 100644 index fb958f89187d..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/pimoroni/rules.mk +++ /dev/null @@ -1,14 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/pimoroni_ec11/config.h b/keyboards/fingerpunch/ffkb_byomcu/pimoroni_ec11/config.h deleted file mode 100644 index a0e683a1f789..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/pimoroni_ec11/config.h +++ /dev/null @@ -1,34 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/pimoroni_ec11/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/pimoroni_ec11/rules.mk deleted file mode 100644 index b170f5ce7ace..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/pimoroni_ec11/rules.mk +++ /dev/null @@ -1,14 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/pimoroni_evq/config.h b/keyboards/fingerpunch/ffkb_byomcu/pimoroni_evq/config.h deleted file mode 100644 index d11a8c578d21..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/pimoroni_evq/config.h +++ /dev/null @@ -1,35 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE -#define ENCODERS_B_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/pimoroni_evq/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/pimoroni_evq/rules.mk deleted file mode 100644 index b170f5ce7ace..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/pimoroni_evq/rules.mk +++ /dev/null @@ -1,14 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/readme.md b/keyboards/fingerpunch/ffkb_byomcu/readme.md index bdf2ad26f8c6..5111e7c21f72 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/readme.md +++ b/keyboards/fingerpunch/ffkb_byomcu/readme.md @@ -7,37 +7,23 @@ An ergonomic 30% keyboard Faux fox keyboard (ffkb) Make example for this keyboard (after setting up your build environment): - - make fingerpunch/ffkb_byomcu/ec11:default - make fingerpunch/ffkb_byomcu/ec11_evq:default - make fingerpunch/ffkb_byomcu/evq:default - make fingerpunch/ffkb_byomcu/no_features:default - make fingerpunch/ffkb_byomcu/oled:default - make fingerpunch/ffkb_byomcu/oled_ec11:default - make fingerpunch/ffkb_byomcu/oled_evq:default - make fingerpunch/ffkb_byomcu/pimoroni:default - make fingerpunch/ffkb_byomcu/pimoroni_ec11:default - make fingerpunch/ffkb_byomcu/pimoroni_evq:default - make fingerpunch/ffkb_byomcu/rgblight:default - make fingerpunch/ffkb_byomcu/rgblight_ec11:default - make fingerpunch/ffkb_byomcu/rgblight_ec11_evq:default - make fingerpunch/ffkb_byomcu/rgblight_evq:default - make fingerpunch/ffkb_byomcu/rgblight_oled:default - make fingerpunch/ffkb_byomcu/rgblight_oled_ec11:default - make fingerpunch/ffkb_byomcu/rgblight_oled_evq:default - make fingerpunch/ffkb_byomcu/rgblight_pimoroni:default - make fingerpunch/ffkb_byomcu/rgblight_pimoroni_ec11:default - make fingerpunch/ffkb_byomcu/rgblight_pimoroni_evq:default - make fingerpunch/ffkb_byomcu/rgbmatrix:default - make fingerpunch/ffkb_byomcu/rgbmatrix_ec11:default - make fingerpunch/ffkb_byomcu/rgbmatrix_ec11_evq:default - make fingerpunch/ffkb_byomcu/rgbmatrix_evq:default - make fingerpunch/ffkb_byomcu/rgbmatrix_oled:default - make fingerpunch/ffkb_byomcu/rgbmatrix_oled_ec11:default - make fingerpunch/ffkb_byomcu/rgbmatrix_oled_evq:default - make fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni:default - make fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_ec11:default - make fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_evq:default +``` + make fingerpunch/ffkb_byomcu:default RGBLIGHT_ENABLE=yes FP_EC11_UNDER_PALMS=yes CIRQUE_ENABLE=yes OLED_ENABLE=yes +``` + +Don't forget to add ```CONVERT_TO=stemcell``` if using a stemcell controller. + +Options are: +``` + CIRQUE_ENABLE=yes + RGBLIGHT_ENABLE=yes + RGB_MATRIX_ENABLE=yes + OLED_ENABLE=yes + FP_EC11_CENTER=yes + FP_EC11_UNDER_PALMS=yes + FP_EVQ_UNDER_PALMS=yes + PIMORONI_TRACKBALL_ENABLE=yes +``` Example of flashing this keyboard: diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgblight/config.h deleted file mode 100644 index 64579bc0166d..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgblight/rules.mk deleted file mode 100644 index d89358af2b07..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque/config.h deleted file mode 100644 index 64579bc0166d..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque/rules.mk deleted file mode 100644 index 05467e348590..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -ENCODER_ENABLE = no -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_ec11/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_ec11/config.h deleted file mode 100644 index 64579bc0166d..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_ec11/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_ec11/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_ec11/rules.mk deleted file mode 100644 index 22cd87039f23..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_ec11/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -ENCODER_ENABLE = yes -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_evq/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_evq/config.h deleted file mode 100644 index 68ccb17942d1..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_evq/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_evq/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_evq/rules.mk deleted file mode 100644 index 22cd87039f23..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_cirque_evq/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -ENCODER_ENABLE = yes -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11/config.h deleted file mode 100644 index 9a8db4ff0d30..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11/config.h +++ /dev/null @@ -1,29 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11/rules.mk deleted file mode 100644 index 3edb19fd0ee8..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11_evq/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11_evq/config.h deleted file mode 100644 index b406f7b886c7..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11_evq/config.h +++ /dev/null @@ -1,34 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11_evq/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11_evq/rules.mk deleted file mode 100644 index 3edb19fd0ee8..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_ec11_evq/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_evq/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgblight_evq/config.h deleted file mode 100644 index 59600236273e..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_evq/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_evq/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgblight_evq/rules.mk deleted file mode 100644 index 3edb19fd0ee8..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_evq/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled/config.h deleted file mode 100644 index 34b1c09ba7eb..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled/config.h +++ /dev/null @@ -1,32 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled/rules.mk deleted file mode 100644 index ee06510f39a6..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_ec11/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_ec11/config.h deleted file mode 100644 index 6796665ede23..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_ec11/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_ec11/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_ec11/rules.mk deleted file mode 100644 index 7bfa3a1c6386..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_ec11/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_evq/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_evq/config.h deleted file mode 100644 index 25730e6f6095..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_evq/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_evq/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_evq/rules.mk deleted file mode 100644 index 7bfa3a1c6386..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_oled_evq/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni/config.h deleted file mode 100644 index b038387113c2..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni/config.h +++ /dev/null @@ -1,32 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni/rules.mk deleted file mode 100644 index 66fc5b8e8e8f..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni/rules.mk +++ /dev/null @@ -1,14 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_ec11/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_ec11/config.h deleted file mode 100644 index 6a07312dc2b4..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_ec11/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_ec11/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_ec11/rules.mk deleted file mode 100644 index c460bdeeede6..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_ec11/rules.mk +++ /dev/null @@ -1,14 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_evq/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_evq/config.h deleted file mode 100644 index 2533a991ae50..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_evq/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_evq/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_evq/rules.mk deleted file mode 100644 index c460bdeeede6..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgblight_pimoroni_evq/rules.mk +++ /dev/null @@ -1,14 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix/config.h deleted file mode 100644 index 7efaf36db9c0..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix/rules.mk deleted file mode 100644 index 7b9b02c58d08..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque/config.h deleted file mode 100644 index 7efaf36db9c0..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque/rules.mk deleted file mode 100644 index 9f168fd4a073..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -ENCODER_ENABLE = no -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_ec11/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_ec11/config.h deleted file mode 100644 index 7efaf36db9c0..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_ec11/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_ec11/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_ec11/rules.mk deleted file mode 100644 index 1f97a8e9d97b..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_ec11/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -ENCODER_ENABLE = yes -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_evq/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_evq/config.h deleted file mode 100644 index b6d724b0980f..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_evq/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE -#define ENCODERS_B_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_evq/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_evq/rules.mk deleted file mode 100644 index 1f97a8e9d97b..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_cirque_evq/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -ENCODER_ENABLE = yes -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11/config.h deleted file mode 100644 index 4c48e40746ad..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11/config.h +++ /dev/null @@ -1,29 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11/rules.mk deleted file mode 100644 index 862c80855ad2..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11_evq/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11_evq/config.h deleted file mode 100644 index 5edcf027d11b..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11_evq/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11_evq/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11_evq/rules.mk deleted file mode 100644 index 862c80855ad2..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_ec11_evq/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_evq/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_evq/config.h deleted file mode 100644 index 31b81fc9d20e..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_evq/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_evq/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_evq/rules.mk deleted file mode 100644 index 862c80855ad2..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_evq/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled/config.h deleted file mode 100644 index c7795b884ea0..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled/config.h +++ /dev/null @@ -1,32 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled/rules.mk deleted file mode 100644 index 4a8489f025bc..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_ec11/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_ec11/config.h deleted file mode 100644 index 20a78ca2cde4..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_ec11/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_ec11/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_ec11/rules.mk deleted file mode 100644 index 6afc22e0481a..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_ec11/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_evq/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_evq/config.h deleted file mode 100644 index bcc19b1b2e44..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_evq/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_evq/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_evq/rules.mk deleted file mode 100644 index 6afc22e0481a..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_oled_evq/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni/config.h deleted file mode 100644 index 0fecb25fe477..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni/config.h +++ /dev/null @@ -1,32 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni/rules.mk deleted file mode 100644 index 00f3fc675cb4..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni/rules.mk +++ /dev/null @@ -1,14 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_ec11/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_ec11/config.h deleted file mode 100644 index f6ca8afbfdbd..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_ec11/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#ifndef XOIVIOX_EC11 -#define XOIVIOX_EC11 -#endif - -#define ENCODERS_C_REVERSE - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_ec11/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_ec11/rules.mk deleted file mode 100644 index 1acf7ec7b6fd..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_ec11/rules.mk +++ /dev/null @@ -1,14 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_evq/config.h b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_evq/config.h deleted file mode 100644 index 361d09528e0d..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_evq/config.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_PIMORONI -#define XOIVIOX_PIMORONI -#endif - -#ifndef XOIVIOX_EVQ -#define XOIVIOX_EVQ -#endif - -#define ENCODERS_A_REVERSE true -#define ENCODERS_B_REVERSE true - -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_evq/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_evq/rules.mk deleted file mode 100644 index 1acf7ec7b6fd..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/rgbmatrix_pimoroni_evq/rules.mk +++ /dev/null @@ -1,14 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = yes -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER = pimoroni_trackball - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rules.mk index dcedfd9c7768..f066d276d71b 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/rules.mk +++ b/keyboards/fingerpunch/ffkb_byomcu/rules.mk @@ -25,8 +25,8 @@ NKRO_ENABLE = no # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality # Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = yes +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = no RGB_MATRIX_DRIVER = WS2812 MIDI_ENABLE = no # MIDI support @@ -34,9 +34,39 @@ UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches -ENCODER_ENABLE = yes -OLED_DRIVER_ENABLE = yes # this can be yes or no depending on if you have an OLED +ENCODER_ENABLE = no +OLED_ENABLE = no # this can be yes or no depending on if you have an OLED EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed # for instance, if you build "no_features", it's very unlikely you'll need to disable macros MOUSEKEY_ENABLE = no +CIRQUE_ENABLE = no + +ifeq ($(strip $(CIRQUE_ENABLE)), yes) + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := cirque_pinnacle_i2c + OPT_DEFS += -DCIRQUE_ENABLE +endif + +PIMORONI_TRACKBALL_ENABLE = no + +ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := pimoroni_trackball + OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE +endif + +ifeq ($(strip $(FP_EC11_CENTER)), yes) + ENCODER_ENABLE := yes + OPT_DEFS += -DFP_EC11_CENTER +endif + +ifeq ($(strip $(FP_EC11_UNDER_PALMS)), yes) + ENCODER_ENABLE := yes + OPT_DEFS += -DFP_EC11_UNDER_PALMS +endif + +ifeq ($(strip $(FP_EVQ_UNDER_PALMS)), yes) + ENCODER_ENABLE := yes + OPT_DEFS += -DFP_EVQ_UNDER_PALMS +endif \ No newline at end of file diff --git a/keyboards/fingerpunch/luakeeb/config.h b/keyboards/fingerpunch/luakeeb/config.h index 41e476abb36b..58f79216a8d1 100644 --- a/keyboards/fingerpunch/luakeeb/config.h +++ b/keyboards/fingerpunch/luakeeb/config.h @@ -25,7 +25,6 @@ along with this program. If not, see . #define PRODUCT_ID 0x7178 #define MANUFACTURER sadekbaroudi #define PRODUCT sadekbaroudi luakeeb -#define DESCRIPTION sadekbaroudi luakeeb /* key matrix size */ // Rows are doubled-up @@ -47,33 +46,21 @@ along with this program. If not, see . #ifdef RGBLIGHT_ENABLE #define RGBLIGHT_SPLIT #define RGBLED_SPLIT { 21, 21 } - #ifdef RGBLIGHT_ANIMATIONS - #undef RGBLIGHT_ANIMATIONS - #endif #define RGBLED_NUM 42 #define RGBLIGHT_HUE_STEP 16 #define RGBLIGHT_SAT_STEP 16 #define RGBLIGHT_VAL_STEP 16 #define RGBLIGHT_LIMIT_VAL 120 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ -// #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD - #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -// /*== customize breathing effect ==*/ -// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -// /*==== use exp() and sin() ====*/ -// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_TWINKLE #endif #define ENCODERS_PAD_A {B4} diff --git a/keyboards/fingerpunch/luakeeb/fp_build.json b/keyboards/fingerpunch/luakeeb/fp_build.json new file mode 100644 index 000000000000..86e4cf714369 --- /dev/null +++ b/keyboards/fingerpunch/luakeeb/fp_build.json @@ -0,0 +1,12 @@ +[ + { + "type" : "single", + "name" : "RGBLIGHT_ENABLE", + "user_input": "Do you have RGB?" + }, + { + "type" : "single", + "name" : "ENCODER_ENABLE", + "user_input": "Do you have one or more rotary encoders?" + } +] \ No newline at end of file diff --git a/keyboards/fingerpunch/luakeeb/readme.md b/keyboards/fingerpunch/luakeeb/readme.md index 0098d2e40119..743517cf514a 100644 --- a/keyboards/fingerpunch/luakeeb/readme.md +++ b/keyboards/fingerpunch/luakeeb/readme.md @@ -4,12 +4,17 @@ * Hardware Supported: luakeeb PCB Make example for this keyboard (after setting up your build environment): +``` + make fingerpunch/luakeeb:default RGBLIGHT_ENABLE=yes ENCODER_ENABLE=yes +``` - make fingerpunch/luakeeb:default +Don't forget to add ```CONVERT_TO=stemcell``` if using a stemcell controller. -Flashing example for this keyboard ([using the command line](https://docs.qmk.fm/#/newbs_flashing?id=flash-your-keyboard-from-the-command-line)): - - make fingerpunch/luakeeb:default:flash +Options are: +``` + RGBLIGHT_ENABLE=yes + ENCODER_ENABLE=yes +``` See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. diff --git a/keyboards/fingerpunch/luakeeb/rules.mk b/keyboards/fingerpunch/luakeeb/rules.mk index a4fe3e0d4c7f..ceaf7edec565 100644 --- a/keyboards/fingerpunch/luakeeb/rules.mk +++ b/keyboards/fingerpunch/luakeeb/rules.mk @@ -17,9 +17,9 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend # if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work NKRO_ENABLE = no # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output -ENCODER_ENABLE = yes +ENCODER_ENABLE = no SPLIT_KEYBOARD = yes diff --git a/keyboards/fingerpunch/pinkiesout/config.h b/keyboards/fingerpunch/pinkiesout/config.h index dc4e9ffc5572..f5d83033bdd5 100644 --- a/keyboards/fingerpunch/pinkiesout/config.h +++ b/keyboards/fingerpunch/pinkiesout/config.h @@ -26,7 +26,6 @@ along with this program. If not, see . //#define DEVICE_VER 0x0001 // Now defined in the revX/config.h #define MANUFACTURER sadekbaroudi #define PRODUCT sadekbaroudi pinkiesout -#define DESCRIPTION sadekbaroudi pinkiesout /* key matrix size */ /* Rows are doubled up */ @@ -38,7 +37,6 @@ along with this program. If not, see . { B6, F4, B5, B4, B2, B3, B7, D5 } #define MATRIX_COL_PINS \ { D2, D4, C6, D7, E6, F5, F6, F7, B1 } -#define UNUSED_PINS /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 @@ -54,24 +52,15 @@ along with this program. If not, see . #define RGBLIGHT_VAL_STEP 16 #define RGBLIGHT_LIMIT_VAL 60 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ - #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD -// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -// /*== customize breathing effect ==*/ -// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -// /*==== use exp() and sin() ====*/ -// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_TWINKLE #endif #ifdef RGB_MATRIX_ENABLE diff --git a/keyboards/fingerpunch/pinkiesout/fp_build.json b/keyboards/fingerpunch/pinkiesout/fp_build.json new file mode 100644 index 000000000000..839f6b383536 --- /dev/null +++ b/keyboards/fingerpunch/pinkiesout/fp_build.json @@ -0,0 +1,12 @@ +[ + { + "type" : "one-of", + "names" : [ "RGBLIGHT_ENABLE", "RGB_MATRIX_ENABLE" ], + "user_input": "No RGB, RGB light, RGB matrix?" + }, + { + "type" : "single", + "name" : "OLED_ENABLE", + "user_input": "Do you have an OLED?" + } +] \ No newline at end of file diff --git a/keyboards/fingerpunch/pinkiesout/keymaps/sadekbaroudi/rules.mk b/keyboards/fingerpunch/pinkiesout/keymaps/sadekbaroudi/rules.mk index 981196cd7e73..a892a8222e28 100644 --- a/keyboards/fingerpunch/pinkiesout/keymaps/sadekbaroudi/rules.mk +++ b/keyboards/fingerpunch/pinkiesout/keymaps/sadekbaroudi/rules.mk @@ -1,2 +1 @@ -OLED_DRIVER_ENABLE = yes OLED_ENABLE = yes \ No newline at end of file diff --git a/keyboards/fingerpunch/pinkiesout/no_features/config.h b/keyboards/fingerpunch/pinkiesout/no_features/config.h deleted file mode 100644 index d4903b376d72..000000000000 --- a/keyboards/fingerpunch/pinkiesout/no_features/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/pinkiesout/no_features/rules.mk b/keyboards/fingerpunch/pinkiesout/no_features/rules.mk deleted file mode 100644 index 1be0d0d7b369..000000000000 --- a/keyboards/fingerpunch/pinkiesout/no_features/rules.mk +++ /dev/null @@ -1,29 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/pinkiesout/oled/config.h b/keyboards/fingerpunch/pinkiesout/oled/config.h deleted file mode 100644 index 94472f300a80..000000000000 --- a/keyboards/fingerpunch/pinkiesout/oled/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/pinkiesout/oled/rules.mk b/keyboards/fingerpunch/pinkiesout/oled/rules.mk deleted file mode 100644 index 123064d22714..000000000000 --- a/keyboards/fingerpunch/pinkiesout/oled/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/pinkiesout/readme.md b/keyboards/fingerpunch/pinkiesout/readme.md index f47f7ed2b6e2..acd11f0e6b7c 100644 --- a/keyboards/fingerpunch/pinkiesout/readme.md +++ b/keyboards/fingerpunch/pinkiesout/readme.md @@ -6,14 +6,20 @@ An ergonomic 30% keyboard Pinkies Out supports vial! If you want to use Vial, go to https://github.com/sadekbaroudi/vial-qmk/keyboards/fingerpunch/pinkiesout/ -To build the firmware for this keyboard (after setting up your build environment), select from one of the following, depending on what features you have on your board: - - make fingerpunch/pinkiesout/no-features:default - make fingerpunch/pinkiesout/oled:default - make fingerpunch/pinkiesout/rgblight:default - make fingerpunch/pinkiesout/rgblight-oled:default - make fingerpunch/pinkiesout/rgbmatrix:default - make fingerpunch/pinkiesout/rgbmatrix-oled:default +To build the firmware for this keyboard (after setting up your build environment): +``` + make fingerpunch/pinkiesout:default RGBLIGHT_ENABLE=yes OLED_ENABLE=yes +``` + +Don't forget to add ```CONVERT_TO=stemcell``` if using a stemcell controller. + +Options are: +``` + RGBLIGHT_ENABLE=yes + RGB_MATRIX_ENABLE=yes + OLED_ENABLE=yes + PIMORONI_TRACKBALL_ENABLE=yes +``` If using the vial repository, use these: make fingerpunch/pinkiesout/no-features:vial diff --git a/keyboards/fingerpunch/pinkiesout/rgblight/config.h b/keyboards/fingerpunch/pinkiesout/rgblight/config.h deleted file mode 100644 index 64579bc0166d..000000000000 --- a/keyboards/fingerpunch/pinkiesout/rgblight/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/pinkiesout/rgblight/rules.mk b/keyboards/fingerpunch/pinkiesout/rgblight/rules.mk deleted file mode 100644 index e1a5e61510ae..000000000000 --- a/keyboards/fingerpunch/pinkiesout/rgblight/rules.mk +++ /dev/null @@ -1,29 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/pinkiesout/rgblight_oled/config.h b/keyboards/fingerpunch/pinkiesout/rgblight_oled/config.h deleted file mode 100644 index 771d83f52d42..000000000000 --- a/keyboards/fingerpunch/pinkiesout/rgblight_oled/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" - diff --git a/keyboards/fingerpunch/pinkiesout/rgblight_oled/rules.mk b/keyboards/fingerpunch/pinkiesout/rgblight_oled/rules.mk deleted file mode 100644 index f04575f8a30f..000000000000 --- a/keyboards/fingerpunch/pinkiesout/rgblight_oled/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/pinkiesout/rgbmatrix/config.h b/keyboards/fingerpunch/pinkiesout/rgbmatrix/config.h deleted file mode 100644 index 7efaf36db9c0..000000000000 --- a/keyboards/fingerpunch/pinkiesout/rgbmatrix/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/pinkiesout/rgbmatrix/rules.mk b/keyboards/fingerpunch/pinkiesout/rgbmatrix/rules.mk deleted file mode 100644 index 694da383f76e..000000000000 --- a/keyboards/fingerpunch/pinkiesout/rgbmatrix/rules.mk +++ /dev/null @@ -1,29 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/pinkiesout/rgbmatrix_oled/config.h b/keyboards/fingerpunch/pinkiesout/rgbmatrix_oled/config.h deleted file mode 100644 index d2e1240e1ea3..000000000000 --- a/keyboards/fingerpunch/pinkiesout/rgbmatrix_oled/config.h +++ /dev/null @@ -1,27 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/pinkiesout/rgbmatrix_oled/rules.mk b/keyboards/fingerpunch/pinkiesout/rgbmatrix_oled/rules.mk deleted file mode 100644 index 673e966c2a19..000000000000 --- a/keyboards/fingerpunch/pinkiesout/rgbmatrix_oled/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/pinkiesout/rules.mk b/keyboards/fingerpunch/pinkiesout/rules.mk index 789ca561b8c3..82a1ad6a170b 100644 --- a/keyboards/fingerpunch/pinkiesout/rules.mk +++ b/keyboards/fingerpunch/pinkiesout/rules.mk @@ -25,8 +25,8 @@ NKRO_ENABLE = no # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality # Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER -#RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = yes +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = no RGB_MATRIX_DRIVER = WS2812 MIDI_ENABLE = no # MIDI support @@ -35,7 +35,7 @@ BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches ENCODER_ENABLE = no -OLED_ENABLE = yes +OLED_ENABLE = no # EXTRAFLAGS += -flto # macros disabled, if you need the extra space MOUSEKEY_ENABLE = no diff --git a/keyboards/fingerpunch/rockon/config.h b/keyboards/fingerpunch/rockon/config.h index a3831b2c996f..640073edae4d 100644 --- a/keyboards/fingerpunch/rockon/config.h +++ b/keyboards/fingerpunch/rockon/config.h @@ -25,7 +25,6 @@ along with this program. If not, see . //#define DEVICE_VER 0x0001 // Now defined in the vX/config.h #define MANUFACTURER sadekbaroudi #define PRODUCT sadekbaroudi rockon -#define DESCRIPTION sadekbaroudi rockon /* key matrix size */ /* Rows are doubled up */ @@ -37,7 +36,6 @@ along with this program. If not, see . { B6, F4, B5, B4, B2, B3, B7, D5 } #define MATRIX_COL_PINS \ { D2, D4, C6, D7, E6, F5, F6, F7, B1 } -#define UNUSED_PINS /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 @@ -53,24 +51,15 @@ along with this program. If not, see . #define RGBLIGHT_VAL_STEP 16 #define RGBLIGHT_LIMIT_VAL 60 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ - #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD -// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -// /*== customize breathing effect ==*/ -// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -// /*==== use exp() and sin() ====*/ -// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_TWINKLE #endif #ifdef RGB_MATRIX_ENABLE @@ -84,37 +73,37 @@ along with this program. If not, see . #define ENABLE_RGB_MATRIX_ALPHAS_MODS #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT - // #define ENABLE_RGB_MATRIX_BREATHING + #define ENABLE_RGB_MATRIX_BREATHING #define ENABLE_RGB_MATRIX_BAND_SAT #define ENABLE_RGB_MATRIX_BAND_VAL - // #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT - // #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL - // #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT - // #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL - // #define ENABLE_RGB_MATRIX_CYCLE_ALL - // #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT - // #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN - // #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON - // #define ENABLE_RGB_MATRIX_DUAL_BEACON - // #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL - // #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL - // #define ENABLE_RGB_MATRIX_RAINBOW_BEACON - // #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL + #define ENABLE_RGB_MATRIX_CYCLE_ALL + #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN + #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON + #define ENABLE_RGB_MATRIX_DUAL_BEACON + #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL + #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL + #define ENABLE_RGB_MATRIX_RAINBOW_BEACON + #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS #define ENABLE_RGB_MATRIX_RAINDROPS - // #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS + #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS #define ENABLE_RGB_MATRIX_DIGITAL_RAIN #define ENABLE_RGB_MATRIX_SOLID_REACTIVE #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS - // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS - // #define ENABLE_RGB_MATRIX_SPLASH - // #define ENABLE_RGB_MATRIX_MULTISPLASH - // #define ENABLE_RGB_MATRIX_SOLID_SPLASH - // #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS + #define ENABLE_RGB_MATRIX_SPLASH + #define ENABLE_RGB_MATRIX_MULTISPLASH + #define ENABLE_RGB_MATRIX_SOLID_SPLASH + #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH #endif /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ diff --git a/keyboards/fingerpunch/rockon/v1/fp_build.json b/keyboards/fingerpunch/rockon/v1/fp_build.json new file mode 100644 index 000000000000..839f6b383536 --- /dev/null +++ b/keyboards/fingerpunch/rockon/v1/fp_build.json @@ -0,0 +1,12 @@ +[ + { + "type" : "one-of", + "names" : [ "RGBLIGHT_ENABLE", "RGB_MATRIX_ENABLE" ], + "user_input": "No RGB, RGB light, RGB matrix?" + }, + { + "type" : "single", + "name" : "OLED_ENABLE", + "user_input": "Do you have an OLED?" + } +] \ No newline at end of file diff --git a/keyboards/fingerpunch/rockon/v1/keymaps/sadekbaroudi/rules.mk b/keyboards/fingerpunch/rockon/v1/keymaps/sadekbaroudi/rules.mk index 981196cd7e73..a892a8222e28 100644 --- a/keyboards/fingerpunch/rockon/v1/keymaps/sadekbaroudi/rules.mk +++ b/keyboards/fingerpunch/rockon/v1/keymaps/sadekbaroudi/rules.mk @@ -1,2 +1 @@ -OLED_DRIVER_ENABLE = yes OLED_ENABLE = yes \ No newline at end of file diff --git a/keyboards/fingerpunch/rockon/v1/no_features/config.h b/keyboards/fingerpunch/rockon/v1/no_features/config.h deleted file mode 100644 index d4903b376d72..000000000000 --- a/keyboards/fingerpunch/rockon/v1/no_features/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v1/no_features/rules.mk b/keyboards/fingerpunch/rockon/v1/no_features/rules.mk deleted file mode 100644 index 1be0d0d7b369..000000000000 --- a/keyboards/fingerpunch/rockon/v1/no_features/rules.mk +++ /dev/null @@ -1,29 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v1/oled/config.h b/keyboards/fingerpunch/rockon/v1/oled/config.h deleted file mode 100644 index 94472f300a80..000000000000 --- a/keyboards/fingerpunch/rockon/v1/oled/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v1/oled/rules.mk b/keyboards/fingerpunch/rockon/v1/oled/rules.mk deleted file mode 100644 index 123064d22714..000000000000 --- a/keyboards/fingerpunch/rockon/v1/oled/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v1/readme.md b/keyboards/fingerpunch/rockon/v1/readme.md index 3ce2104191ab..80b0d201e39e 100644 --- a/keyboards/fingerpunch/rockon/v1/readme.md +++ b/keyboards/fingerpunch/rockon/v1/readme.md @@ -6,14 +6,19 @@ An ergonomic 30% keyboard Rock On supports vial! If you want to use Vial, go to https://github.com/sadekbaroudi/vial-qmk/keyboards/fingerpunch/rockon/v1/ -To build the firmware for this keyboard (after setting up your build environment), select from one of the following, depending on what features you have on your board: +To build the firmware for this keyboard (after setting up your build environment): +``` + make fingerpunch/rockon/v1:default RGBLIGHT_ENABLE=yes OLED_ENABLE=yes +``` - make fingerpunch/rockon/v1/no-features:default - make fingerpunch/rockon/v1/oled:default - make fingerpunch/rockon/v1/rgblight:default - make fingerpunch/rockon/v1/rgblight-oled:default - make fingerpunch/rockon/v1/rgbmatrix:default - make fingerpunch/rockon/v1/rgbmatrix-oled:default +Don't forget to add ```CONVERT_TO=stemcell``` if using a stemcell controller. + +Options are: +``` + RGBLIGHT_ENABLE=yes + RGB_MATRIX_ENABLE=yes + OLED_ENABLE=yes +``` If using the vial repository, use these: make fingerpunch/rockon/v1/no-features:vial @@ -23,12 +28,4 @@ If using the vial repository, use these: make fingerpunch/rockon/v1/rgbmatrix:vial make fingerpunch/rockon/v1/rgbmatrix-oled:vial -Example of flashing this keyboard: - - make fingerpunch/rockon/v1/no-features:default:flash - -Or in the vial repository: - - make fingerpunch/rockon/v1/no-features:vial:flash - See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/fingerpunch/rockon/v1/rgblight/config.h b/keyboards/fingerpunch/rockon/v1/rgblight/config.h deleted file mode 100644 index 64579bc0166d..000000000000 --- a/keyboards/fingerpunch/rockon/v1/rgblight/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v1/rgblight/rules.mk b/keyboards/fingerpunch/rockon/v1/rgblight/rules.mk deleted file mode 100644 index e1a5e61510ae..000000000000 --- a/keyboards/fingerpunch/rockon/v1/rgblight/rules.mk +++ /dev/null @@ -1,29 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v1/rgblight_oled/config.h b/keyboards/fingerpunch/rockon/v1/rgblight_oled/config.h deleted file mode 100644 index 771d83f52d42..000000000000 --- a/keyboards/fingerpunch/rockon/v1/rgblight_oled/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" - diff --git a/keyboards/fingerpunch/rockon/v1/rgblight_oled/rules.mk b/keyboards/fingerpunch/rockon/v1/rgblight_oled/rules.mk deleted file mode 100644 index f04575f8a30f..000000000000 --- a/keyboards/fingerpunch/rockon/v1/rgblight_oled/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v1/rgbmatrix/config.h b/keyboards/fingerpunch/rockon/v1/rgbmatrix/config.h deleted file mode 100644 index 7efaf36db9c0..000000000000 --- a/keyboards/fingerpunch/rockon/v1/rgbmatrix/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v1/rgbmatrix/rules.mk b/keyboards/fingerpunch/rockon/v1/rgbmatrix/rules.mk deleted file mode 100644 index 694da383f76e..000000000000 --- a/keyboards/fingerpunch/rockon/v1/rgbmatrix/rules.mk +++ /dev/null @@ -1,29 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v1/rgbmatrix_oled/config.h b/keyboards/fingerpunch/rockon/v1/rgbmatrix_oled/config.h deleted file mode 100644 index d2e1240e1ea3..000000000000 --- a/keyboards/fingerpunch/rockon/v1/rgbmatrix_oled/config.h +++ /dev/null @@ -1,27 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v1/rgbmatrix_oled/rules.mk b/keyboards/fingerpunch/rockon/v1/rgbmatrix_oled/rules.mk deleted file mode 100644 index 673e966c2a19..000000000000 --- a/keyboards/fingerpunch/rockon/v1/rgbmatrix_oled/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v1/rules.mk b/keyboards/fingerpunch/rockon/v1/rules.mk index b75838dd0d86..b3c714b9ff63 100644 --- a/keyboards/fingerpunch/rockon/v1/rules.mk +++ b/keyboards/fingerpunch/rockon/v1/rules.mk @@ -25,8 +25,8 @@ NKRO_ENABLE = no # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality # Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER -#RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = yes +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = no RGB_MATRIX_DRIVER = WS2812 MIDI_ENABLE = no # MIDI support @@ -35,6 +35,6 @@ BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches ENCODER_ENABLE = no -OLED_ENABLE = yes +OLED_ENABLE = no # EXTRAFLAGS += -flto # macros disabled, if you need the extra space MOUSEKEY_ENABLE = no diff --git a/keyboards/fingerpunch/rockon/v2/cirque/config.h b/keyboards/fingerpunch/rockon/v2/cirque/config.h deleted file mode 100644 index 6715cc84b5d6..000000000000 --- a/keyboards/fingerpunch/rockon/v2/cirque/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_CIRQUE -#define XOIVIOX_CIRQUE -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/cirque/rules.mk b/keyboards/fingerpunch/rockon/v2/cirque/rules.mk deleted file mode 100644 index 94fdcee2771d..000000000000 --- a/keyboards/fingerpunch/rockon/v2/cirque/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -ENCODER_ENABLE = no -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/cirque_ec11/config.h b/keyboards/fingerpunch/rockon/v2/cirque_ec11/config.h deleted file mode 100644 index 6715cc84b5d6..000000000000 --- a/keyboards/fingerpunch/rockon/v2/cirque_ec11/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_CIRQUE -#define XOIVIOX_CIRQUE -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/cirque_ec11/rules.mk b/keyboards/fingerpunch/rockon/v2/cirque_ec11/rules.mk deleted file mode 100644 index 65a6380f8813..000000000000 --- a/keyboards/fingerpunch/rockon/v2/cirque_ec11/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -ENCODER_ENABLE = yes -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/cirque_oled/config.h b/keyboards/fingerpunch/rockon/v2/cirque_oled/config.h deleted file mode 100644 index 0a35ebf668b1..000000000000 --- a/keyboards/fingerpunch/rockon/v2/cirque_oled/config.h +++ /dev/null @@ -1,27 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#ifndef XOIVIOX_CIRQUE -#define XOIVIOX_CIRQUE -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/cirque_oled/rules.mk b/keyboards/fingerpunch/rockon/v2/cirque_oled/rules.mk deleted file mode 100644 index 6ce6407980d0..000000000000 --- a/keyboards/fingerpunch/rockon/v2/cirque_oled/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/cirque_oled_ec11/config.h b/keyboards/fingerpunch/rockon/v2/cirque_oled_ec11/config.h deleted file mode 100644 index 0a35ebf668b1..000000000000 --- a/keyboards/fingerpunch/rockon/v2/cirque_oled_ec11/config.h +++ /dev/null @@ -1,27 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#ifndef XOIVIOX_CIRQUE -#define XOIVIOX_CIRQUE -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/cirque_oled_ec11/rules.mk b/keyboards/fingerpunch/rockon/v2/cirque_oled_ec11/rules.mk deleted file mode 100644 index 2bda66ca467b..000000000000 --- a/keyboards/fingerpunch/rockon/v2/cirque_oled_ec11/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/config.h b/keyboards/fingerpunch/rockon/v2/config.h index ccc71e53abe5..aca730ccbdd3 100644 --- a/keyboards/fingerpunch/rockon/v2/config.h +++ b/keyboards/fingerpunch/rockon/v2/config.h @@ -24,13 +24,15 @@ along with this program. If not, see . #define ENCODERS_PAD_B {F1, F1} #define ENCODER_RESOLUTION 2 -// cirque trackpad config -#define CIRQUE_PINNACLE_ADDR 0x2A -// If using fingerpunch case -// #define POINTING_DEVICE_ROTATION_270 -// If using chewiedies case -#define POINTING_DEVICE_ROTATION_90 -#define POINTING_DEVICE_TASK_THROTTLE_MS 5 +#ifdef CIRQUE_ENABLE + // cirque trackpad config + #define CIRQUE_PINNACLE_ADDR 0x2A + // If using fingerpunch case + // #define POINTING_DEVICE_ROTATION_270 + // If using chewiedies case + #define POINTING_DEVICE_ROTATION_90 + #define POINTING_DEVICE_TASK_THROTTLE_MS 5 +#endif // BEGIN PWM driver: uncomment if using STeMcell as it's a better led driver // #define WS2812_PWM_DRIVER PWMD2 // default: PWMD2 @@ -43,18 +45,3 @@ along with this program. If not, see . #define I2C1_CLOCK_SPEED 400000 #define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 - -// #define CIRQUE_PINNACLE_TAPPING_TERM 150 -// #define CIRQUE_PINNACLE_TOUCH_DEBOUNCE 100 -// #define CIRQUE_PINNACLE_X_LOWER 200 -// #define CIRQUE_PINNACLE_X_UPPER 1919 -// #define CIRQUE_PINNACLE_Y_LOWER 200 -// #define CIRQUE_PINNACLE_Y_UPPER 1471 - -// Known issue with the cirque and AVR, jumpy mouse movements... -// message from sillyworld 01/31/2022 stating that these improved usability for AVR based MCUs on the cirque -// https://discord.com/channels/440868230475677696/867530303261114398/937731130440970260 -//#define F_SCL 100000UL -//#define POINTING_DEVICE_TASK_THROTTLE_MS 5 - -// Sadek note: tried the above for the cirque fix, and no dice \ No newline at end of file diff --git a/keyboards/fingerpunch/rockon/v2/ec11/config.h b/keyboards/fingerpunch/rockon/v2/ec11/config.h deleted file mode 100644 index d4903b376d72..000000000000 --- a/keyboards/fingerpunch/rockon/v2/ec11/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/ec11/rules.mk b/keyboards/fingerpunch/rockon/v2/ec11/rules.mk deleted file mode 100644 index ac83c7e1dad4..000000000000 --- a/keyboards/fingerpunch/rockon/v2/ec11/rules.mk +++ /dev/null @@ -1,16 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/fp_build.json b/keyboards/fingerpunch/rockon/v2/fp_build.json new file mode 100644 index 000000000000..b30bf093fdf9 --- /dev/null +++ b/keyboards/fingerpunch/rockon/v2/fp_build.json @@ -0,0 +1,27 @@ +[ + { + "type" : "single", + "name" : "CIRQUE_ENABLE", + "user_input": "Do you have a cirque?" + }, + { + "type" : "one-of", + "names" : [ "RGBLIGHT_ENABLE", "RGB_MATRIX_ENABLE" ], + "user_input": "No RGB, RGB light, RGB matrix?" + }, + { + "type" : "single", + "name" : "OLED_ENABLE", + "user_input": "Do you have an OLED?" + }, + { + "type" : "single", + "name" : "ENCODER_ENABLE", + "user_input": "Do you have one or more rotary encoders?" + }, + { + "type" : "single", + "name" : "PIMORONI_TRACKBALL_ENABLE", + "user_input": "Do you have a pimoroni trackball?" + } +] \ No newline at end of file diff --git a/keyboards/fingerpunch/rockon/v2/no_features/config.h b/keyboards/fingerpunch/rockon/v2/no_features/config.h deleted file mode 100644 index d4903b376d72..000000000000 --- a/keyboards/fingerpunch/rockon/v2/no_features/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/no_features/rules.mk b/keyboards/fingerpunch/rockon/v2/no_features/rules.mk deleted file mode 100644 index 1be0d0d7b369..000000000000 --- a/keyboards/fingerpunch/rockon/v2/no_features/rules.mk +++ /dev/null @@ -1,29 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/oled/config.h b/keyboards/fingerpunch/rockon/v2/oled/config.h deleted file mode 100644 index 94472f300a80..000000000000 --- a/keyboards/fingerpunch/rockon/v2/oled/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/oled/rules.mk b/keyboards/fingerpunch/rockon/v2/oled/rules.mk deleted file mode 100644 index 123064d22714..000000000000 --- a/keyboards/fingerpunch/rockon/v2/oled/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/oled_ec11/config.h b/keyboards/fingerpunch/rockon/v2/oled_ec11/config.h deleted file mode 100644 index 94472f300a80..000000000000 --- a/keyboards/fingerpunch/rockon/v2/oled_ec11/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/oled_ec11/rules.mk b/keyboards/fingerpunch/rockon/v2/oled_ec11/rules.mk deleted file mode 100644 index 18db16e53b67..000000000000 --- a/keyboards/fingerpunch/rockon/v2/oled_ec11/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/readme.md b/keyboards/fingerpunch/rockon/v2/readme.md index 3ce2104191ab..def7688c62f2 100644 --- a/keyboards/fingerpunch/rockon/v2/readme.md +++ b/keyboards/fingerpunch/rockon/v2/readme.md @@ -7,28 +7,30 @@ An ergonomic 30% keyboard Rock On supports vial! If you want to use Vial, go to https://github.com/sadekbaroudi/vial-qmk/keyboards/fingerpunch/rockon/v1/ To build the firmware for this keyboard (after setting up your build environment), select from one of the following, depending on what features you have on your board: - - make fingerpunch/rockon/v1/no-features:default - make fingerpunch/rockon/v1/oled:default - make fingerpunch/rockon/v1/rgblight:default - make fingerpunch/rockon/v1/rgblight-oled:default - make fingerpunch/rockon/v1/rgbmatrix:default - make fingerpunch/rockon/v1/rgbmatrix-oled:default - -If using the vial repository, use these: - make fingerpunch/rockon/v1/no-features:vial - make fingerpunch/rockon/v1/oled:vial - make fingerpunch/rockon/v1/rgblight:vial - make fingerpunch/rockon/v1/rgblight-oled:vial - make fingerpunch/rockon/v1/rgbmatrix:vial - make fingerpunch/rockon/v1/rgbmatrix-oled:vial +``` + make fingerpunch/rockon/v2:default RGBLIGHT_ENABLE=yes ENCODER_ENABLE=yes CIRQUE_ENABLE=yes OLED_ENABLE=yes +``` + +Don't forget to add ```CONVERT_TO=stemcell``` if using a stemcell controller. + +Options are: +``` + CIRQUE_ENABLE=yes + RGBLIGHT_ENABLE=yes + RGB_MATRIX_ENABLE=yes + OLED_ENABLE=yes + ENCODER_ENABLE=yes + PIMORONI_TRACKBALL_ENABLE=yes +``` Example of flashing this keyboard: - - make fingerpunch/rockon/v1/no-features:default:flash +``` + make fingerpunch/rockon/v2:default:flash RGBLIGHT_ENABLE=yes ENCODER_ENABLE=yes CIRQUE_ENABLE=yes +``` Or in the vial repository: - - make fingerpunch/rockon/v1/no-features:vial:flash +``` + make fingerpunch/rockon/v2/no-features:vial:flash +``` See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/fingerpunch/rockon/v2/rgblight/config.h b/keyboards/fingerpunch/rockon/v2/rgblight/config.h deleted file mode 100644 index 64579bc0166d..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgblight/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/rgblight/rules.mk b/keyboards/fingerpunch/rockon/v2/rgblight/rules.mk deleted file mode 100644 index e1a5e61510ae..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgblight/rules.mk +++ /dev/null @@ -1,29 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/rgblight_cirque/config.h b/keyboards/fingerpunch/rockon/v2/rgblight_cirque/config.h deleted file mode 100644 index 6715cc84b5d6..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgblight_cirque/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_CIRQUE -#define XOIVIOX_CIRQUE -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/rgblight_cirque/rules.mk b/keyboards/fingerpunch/rockon/v2/rgblight_cirque/rules.mk deleted file mode 100644 index 05467e348590..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgblight_cirque/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -ENCODER_ENABLE = no -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/rgblight_cirque_ec11/config.h b/keyboards/fingerpunch/rockon/v2/rgblight_cirque_ec11/config.h deleted file mode 100644 index 6715cc84b5d6..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgblight_cirque_ec11/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_CIRQUE -#define XOIVIOX_CIRQUE -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/rgblight_cirque_ec11/rules.mk b/keyboards/fingerpunch/rockon/v2/rgblight_cirque_ec11/rules.mk deleted file mode 100644 index 22cd87039f23..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgblight_cirque_ec11/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -ENCODER_ENABLE = yes -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/rgblight_ec11/config.h b/keyboards/fingerpunch/rockon/v2/rgblight_ec11/config.h deleted file mode 100644 index 64579bc0166d..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgblight_ec11/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/rgblight_ec11/rules.mk b/keyboards/fingerpunch/rockon/v2/rgblight_ec11/rules.mk deleted file mode 100644 index 0efff70855a1..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgblight_ec11/rules.mk +++ /dev/null @@ -1,16 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/rgblight_oled/config.h b/keyboards/fingerpunch/rockon/v2/rgblight_oled/config.h deleted file mode 100644 index 771d83f52d42..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgblight_oled/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" - diff --git a/keyboards/fingerpunch/rockon/v2/rgblight_oled/rules.mk b/keyboards/fingerpunch/rockon/v2/rgblight_oled/rules.mk deleted file mode 100644 index f04575f8a30f..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgblight_oled/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/rgblight_oled_ec11/config.h b/keyboards/fingerpunch/rockon/v2/rgblight_oled_ec11/config.h deleted file mode 100644 index 771d83f52d42..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgblight_oled_ec11/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" - diff --git a/keyboards/fingerpunch/rockon/v2/rgblight_oled_ec11/rules.mk b/keyboards/fingerpunch/rockon/v2/rgblight_oled_ec11/rules.mk deleted file mode 100644 index 7bfa3a1c6386..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgblight_oled_ec11/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/rgbmatrix/config.h b/keyboards/fingerpunch/rockon/v2/rgbmatrix/config.h deleted file mode 100644 index 7efaf36db9c0..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgbmatrix/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/rgbmatrix/rules.mk b/keyboards/fingerpunch/rockon/v2/rgbmatrix/rules.mk deleted file mode 100644 index 694da383f76e..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgbmatrix/rules.mk +++ /dev/null @@ -1,29 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque/config.h b/keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque/config.h deleted file mode 100644 index 6715cc84b5d6..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_CIRQUE -#define XOIVIOX_CIRQUE -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque/rules.mk b/keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque/rules.mk deleted file mode 100644 index 9f168fd4a073..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -ENCODER_ENABLE = no -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque_ec11/config.h b/keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque_ec11/config.h deleted file mode 100644 index 6715cc84b5d6..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque_ec11/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_CIRQUE -#define XOIVIOX_CIRQUE -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque_ec11/rules.mk b/keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque_ec11/rules.mk deleted file mode 100644 index 1f97a8e9d97b..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgbmatrix_cirque_ec11/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -ENCODER_ENABLE = yes -CIRQUE_ENABLE = yes -MOUSEKEY_ENABLE = yes - -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c -endif - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/rgbmatrix_ec11/config.h b/keyboards/fingerpunch/rockon/v2/rgbmatrix_ec11/config.h deleted file mode 100644 index 7efaf36db9c0..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgbmatrix_ec11/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/rgbmatrix_ec11/rules.mk b/keyboards/fingerpunch/rockon/v2/rgbmatrix_ec11/rules.mk deleted file mode 100644 index d4d2db92b5ee..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgbmatrix_ec11/rules.mk +++ /dev/null @@ -1,16 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/rgbmatrix_oled/config.h b/keyboards/fingerpunch/rockon/v2/rgbmatrix_oled/config.h deleted file mode 100644 index d2e1240e1ea3..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgbmatrix_oled/config.h +++ /dev/null @@ -1,27 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/rgbmatrix_oled/rules.mk b/keyboards/fingerpunch/rockon/v2/rgbmatrix_oled/rules.mk deleted file mode 100644 index 673e966c2a19..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgbmatrix_oled/rules.mk +++ /dev/null @@ -1,28 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -# Teensy halfkay -# Pro Micro caterina -# Atmel DFU atmel-dfu -# LUFA DFU lufa-dfu -# QMK DFU qmk-dfu -# ATmega32A bootloadHID -# ATmega328P USBasp -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/rgbmatrix_oled_ec11/config.h b/keyboards/fingerpunch/rockon/v2/rgbmatrix_oled_ec11/config.h deleted file mode 100644 index d2e1240e1ea3..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgbmatrix_oled_ec11/config.h +++ /dev/null @@ -1,27 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon/v2/rgbmatrix_oled_ec11/rules.mk b/keyboards/fingerpunch/rockon/v2/rgbmatrix_oled_ec11/rules.mk deleted file mode 100644 index 6afc22e0481a..000000000000 --- a/keyboards/fingerpunch/rockon/v2/rgbmatrix_oled_ec11/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon/v2/rules.mk b/keyboards/fingerpunch/rockon/v2/rules.mk index 4715f7644fc4..d2a24126762d 100644 --- a/keyboards/fingerpunch/rockon/v2/rules.mk +++ b/keyboards/fingerpunch/rockon/v2/rules.mk @@ -23,10 +23,11 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend # if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work NKRO_ENABLE = no # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +MOUSEKEY_ENABLE = yes # Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER -#RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = yes +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = no RGB_MATRIX_DRIVER = WS2812 # BEGIN PWM driver: uncomment if using STeMcell as it's a better led driver @@ -39,6 +40,20 @@ BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches ENCODER_ENABLE = no -OLED_ENABLE = yes +OLED_ENABLE = no # EXTRAFLAGS += -flto # macros disabled, if you need the extra space MOUSEKEY_ENABLE = no + +CIRQUE_ENABLE = no +ifeq ($(strip $(CIRQUE_ENABLE)), yes) + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := cirque_pinnacle_i2c + OPT_DEFS += -DCIRQUE_ENABLE +endif + +PIMORONI_TRACKBALL_ENABLE = no +ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := pimoroni_trackball + OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE +endif \ No newline at end of file diff --git a/keyboards/fingerpunch/rockon_bp/config.h b/keyboards/fingerpunch/rockon_bp/config.h index 8a1eb2642f65..854584fb175e 100644 --- a/keyboards/fingerpunch/rockon_bp/config.h +++ b/keyboards/fingerpunch/rockon_bp/config.h @@ -26,7 +26,6 @@ along with this program. If not, see . //#define DEVICE_VER 0x0001 // Now defined in the revX/config.h #define MANUFACTURER sadekbaroudi #define PRODUCT sadekbaroudi rockon_bp -#define DESCRIPTION sadekbaroudi rockon_bp /* key matrix size */ /* Rows are doubled up */ @@ -36,7 +35,6 @@ along with this program. If not, see . // wiring #define MATRIX_ROW_PINS { A2, B1, B5, B4, A3, A4, B8, B9 } #define MATRIX_COL_PINS { A10, C15, C14, A15, B3, B0, A7, A6, A5 } -#define UNUSED_PINS /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 @@ -78,24 +76,15 @@ along with this program. If not, see . #define RGBLIGHT_VAL_STEP 16 #define RGBLIGHT_LIMIT_VAL 120 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ - #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD -// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -// /*== customize breathing effect ==*/ -// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -// /*==== use exp() and sin() ====*/ -// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_TWINKLE #endif #ifdef RGB_MATRIX_ENABLE diff --git a/keyboards/fingerpunch/rockon_bp/ec11/config.h b/keyboards/fingerpunch/rockon_bp/ec11/config.h deleted file mode 100644 index d4903b376d72..000000000000 --- a/keyboards/fingerpunch/rockon_bp/ec11/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon_bp/ec11/rules.mk b/keyboards/fingerpunch/rockon_bp/ec11/rules.mk deleted file mode 100644 index ac83c7e1dad4..000000000000 --- a/keyboards/fingerpunch/rockon_bp/ec11/rules.mk +++ /dev/null @@ -1,16 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon_bp/fp_build.json b/keyboards/fingerpunch/rockon_bp/fp_build.json new file mode 100644 index 000000000000..b30bf093fdf9 --- /dev/null +++ b/keyboards/fingerpunch/rockon_bp/fp_build.json @@ -0,0 +1,27 @@ +[ + { + "type" : "single", + "name" : "CIRQUE_ENABLE", + "user_input": "Do you have a cirque?" + }, + { + "type" : "one-of", + "names" : [ "RGBLIGHT_ENABLE", "RGB_MATRIX_ENABLE" ], + "user_input": "No RGB, RGB light, RGB matrix?" + }, + { + "type" : "single", + "name" : "OLED_ENABLE", + "user_input": "Do you have an OLED?" + }, + { + "type" : "single", + "name" : "ENCODER_ENABLE", + "user_input": "Do you have one or more rotary encoders?" + }, + { + "type" : "single", + "name" : "PIMORONI_TRACKBALL_ENABLE", + "user_input": "Do you have a pimoroni trackball?" + } +] \ No newline at end of file diff --git a/keyboards/fingerpunch/rockon_bp/no_features/config.h b/keyboards/fingerpunch/rockon_bp/no_features/config.h deleted file mode 100644 index d4903b376d72..000000000000 --- a/keyboards/fingerpunch/rockon_bp/no_features/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon_bp/no_features/rules.mk b/keyboards/fingerpunch/rockon_bp/no_features/rules.mk deleted file mode 100644 index c1e3f00c4823..000000000000 --- a/keyboards/fingerpunch/rockon_bp/no_features/rules.mk +++ /dev/null @@ -1,16 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon_bp/oled/config.h b/keyboards/fingerpunch/rockon_bp/oled/config.h deleted file mode 100644 index 94472f300a80..000000000000 --- a/keyboards/fingerpunch/rockon_bp/oled/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon_bp/oled/rules.mk b/keyboards/fingerpunch/rockon_bp/oled/rules.mk deleted file mode 100644 index 0691c6f6410b..000000000000 --- a/keyboards/fingerpunch/rockon_bp/oled/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon_bp/oled_ec11/config.h b/keyboards/fingerpunch/rockon_bp/oled_ec11/config.h deleted file mode 100644 index 94472f300a80..000000000000 --- a/keyboards/fingerpunch/rockon_bp/oled_ec11/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon_bp/oled_ec11/rules.mk b/keyboards/fingerpunch/rockon_bp/oled_ec11/rules.mk deleted file mode 100644 index 18db16e53b67..000000000000 --- a/keyboards/fingerpunch/rockon_bp/oled_ec11/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon_bp/readme.md b/keyboards/fingerpunch/rockon_bp/readme.md index 5ccd235a9ab9..b0eaa5a213e9 100644 --- a/keyboards/fingerpunch/rockon_bp/readme.md +++ b/keyboards/fingerpunch/rockon_bp/readme.md @@ -6,20 +6,20 @@ An ergonomic 50% keyboard (unimplemented for black pill as of now) Rock On supports vial! If you want to use Vial, go to https://github.com/sadekbaroudi/vial-qmk/keyboards/fingerpunch/rockon_bp/ -To build the firmware for this keyboard (after setting up your build environment), select from one of the following, depending on what features you have on your board: - - make fingerpunch/rockon_bp/no-features:default - make fingerpunch/rockon_bp/oled:default - make fingerpunch/rockon_bp/rgblight:default - make fingerpunch/rockon_bp/rgblight-oled:default - make fingerpunch/rockon_bp/rgbmatrix:default - make fingerpunch/rockon_bp/rgbmatrix-oled:default - make fingerpunch/rockon_bp/ec11:default - make fingerpunch/rockon_bp/oled_ec11:default - make fingerpunch/rockon_bp/rgblight_ec11:default - make fingerpunch/rockon_bp/rgblight_oled_ec11:default - make fingerpunch/rockon_bp/rgbmatrix_ec11:default - make fingerpunch/rockon_bp/rgbmatrix_oled_ec11:default +To build the firmware for this keyboard (after setting up your build environment): +``` + make fingerpunch/rockon_bp:default RGBLIGHT_ENABLE=yes ENCODER_ENABLE=yes CIRQUE_ENABLE=yes OLED_ENABLE=yes +``` + +Options are: +``` + CIRQUE_ENABLE=yes + RGBLIGHT_ENABLE=yes + RGB_MATRIX_ENABLE=yes + OLED_ENABLE=yes + ENCODER_ENABLE=yes + PIMORONI_TRACKBALL_ENABLE=yes +``` (As of April 2022, Vial not supported for this board yet) If using the vial repository, use these: make fingerpunch/rockon_bp/no-features:vial diff --git a/keyboards/fingerpunch/rockon_bp/rgblight/config.h b/keyboards/fingerpunch/rockon_bp/rgblight/config.h deleted file mode 100644 index 64579bc0166d..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgblight/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon_bp/rgblight/rules.mk b/keyboards/fingerpunch/rockon_bp/rgblight/rules.mk deleted file mode 100644 index 8d7dfc18160f..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgblight/rules.mk +++ /dev/null @@ -1,16 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon_bp/rgblight_ec11/config.h b/keyboards/fingerpunch/rockon_bp/rgblight_ec11/config.h deleted file mode 100644 index 64579bc0166d..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgblight_ec11/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon_bp/rgblight_ec11/rules.mk b/keyboards/fingerpunch/rockon_bp/rgblight_ec11/rules.mk deleted file mode 100644 index 0efff70855a1..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgblight_ec11/rules.mk +++ /dev/null @@ -1,16 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon_bp/rgblight_oled/config.h b/keyboards/fingerpunch/rockon_bp/rgblight_oled/config.h deleted file mode 100644 index 771d83f52d42..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgblight_oled/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" - diff --git a/keyboards/fingerpunch/rockon_bp/rgblight_oled/rules.mk b/keyboards/fingerpunch/rockon_bp/rgblight_oled/rules.mk deleted file mode 100644 index ee06510f39a6..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgblight_oled/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon_bp/rgblight_oled_ec11/config.h b/keyboards/fingerpunch/rockon_bp/rgblight_oled_ec11/config.h deleted file mode 100644 index 771d83f52d42..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgblight_oled_ec11/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" - diff --git a/keyboards/fingerpunch/rockon_bp/rgblight_oled_ec11/rules.mk b/keyboards/fingerpunch/rockon_bp/rgblight_oled_ec11/rules.mk deleted file mode 100644 index 7bfa3a1c6386..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgblight_oled_ec11/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -RGB_MATRIX_ENABLE = no -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon_bp/rgbmatrix/config.h b/keyboards/fingerpunch/rockon_bp/rgbmatrix/config.h deleted file mode 100644 index 7efaf36db9c0..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgbmatrix/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon_bp/rgbmatrix/rules.mk b/keyboards/fingerpunch/rockon_bp/rgbmatrix/rules.mk deleted file mode 100644 index 47094934f679..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgbmatrix/rules.mk +++ /dev/null @@ -1,16 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon_bp/rgbmatrix_ec11/config.h b/keyboards/fingerpunch/rockon_bp/rgbmatrix_ec11/config.h deleted file mode 100644 index 7efaf36db9c0..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgbmatrix_ec11/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon_bp/rgbmatrix_ec11/rules.mk b/keyboards/fingerpunch/rockon_bp/rgbmatrix_ec11/rules.mk deleted file mode 100644 index d4d2db92b5ee..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgbmatrix_ec11/rules.mk +++ /dev/null @@ -1,16 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon_bp/rgbmatrix_oled/config.h b/keyboards/fingerpunch/rockon_bp/rgbmatrix_oled/config.h deleted file mode 100644 index d2e1240e1ea3..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgbmatrix_oled/config.h +++ /dev/null @@ -1,27 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon_bp/rgbmatrix_oled/rules.mk b/keyboards/fingerpunch/rockon_bp/rgbmatrix_oled/rules.mk deleted file mode 100644 index 4a8489f025bc..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgbmatrix_oled/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = no - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon_bp/rgbmatrix_oled_ec11/config.h b/keyboards/fingerpunch/rockon_bp/rgbmatrix_oled_ec11/config.h deleted file mode 100644 index d2e1240e1ea3..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgbmatrix_oled_ec11/config.h +++ /dev/null @@ -1,27 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBMATRIX -#define XOIVIOX_RGBMATRIX -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/rockon_bp/rgbmatrix_oled_ec11/rules.mk b/keyboards/fingerpunch/rockon_bp/rgbmatrix_oled_ec11/rules.mk deleted file mode 100644 index 6afc22e0481a..000000000000 --- a/keyboards/fingerpunch/rockon_bp/rgbmatrix_oled_ec11/rules.mk +++ /dev/null @@ -1,15 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes -PIMORONI_TRACKBALL_ENABLE = no -OLED_ENABLE = yes -ENCODER_ENABLE = yes - -ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - SRC += drivers/sensors/pimoroni_trackball.c - QUANTUM_LIB_SRC += i2c_master.c - OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif diff --git a/keyboards/fingerpunch/rockon_bp/rules.mk b/keyboards/fingerpunch/rockon_bp/rules.mk index ac0b9d76d7d3..a3c92d66f0fc 100644 --- a/keyboards/fingerpunch/rockon_bp/rules.mk +++ b/keyboards/fingerpunch/rockon_bp/rules.mk @@ -18,9 +18,9 @@ NKRO_ENABLE = no # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality # Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER -#RGBLIGHT_ENABLE = yes -#RGBLIGHT_DRIVER = WS2812 -RGB_MATRIX_ENABLE = yes +RGBLIGHT_ENABLE = no +RGBLIGHT_DRIVER = WS2812 +RGB_MATRIX_ENABLE = no RGB_MATRIX_DRIVER = WS2812 #// disable testing WS2812_DRIVER = pwm @@ -31,7 +31,7 @@ BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches ENCODER_ENABLE = no -OLED_ENABLE = yes +OLED_ENABLE = no # EXTRAFLAGS += -flto # macros disabled, if you need the extra space MOUSEKEY_ENABLE = yes @@ -42,13 +42,19 @@ OPT_DEFS += -DSTM32_DMA_REQUIRED=TRUE KEYBOARD_SHARED_EP = yes # Free up some extra endpoints - needed if console+mouse+extra -CIRQUE_ENABLE = yes - DEFERRED_EXEC_ENABLE = yes -ENCODER_MAP_ENABLE = yes -# // disable testing +CIRQUE_ENABLE = no + ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := cirque_pinnacle_i2c endif + +PIMORONI_TRACKBALL_ENABLE = no + +ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := pimoroni_trackball + OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE +endif \ No newline at end of file diff --git a/keyboards/fingerpunch/stemcell_jumper_tester/rules.mk b/keyboards/fingerpunch/stemcell_jumper_tester/rules.mk index 71323a6131cf..1309a707a306 100644 --- a/keyboards/fingerpunch/stemcell_jumper_tester/rules.mk +++ b/keyboards/fingerpunch/stemcell_jumper_tester/rules.mk @@ -34,8 +34,8 @@ BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches ENCODER_ENABLE = no -OLED_DRIVER_ENABLE = no # this can be yes or no depending on if you have an OLED -EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed +OLED_ENABLE = no # this can be yes or no depending on if you have an OLED +# EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed # for instance, if you build "no_features", it's very unlikely you'll need to disable macros MOUSEKEY_ENABLE = no diff --git a/keyboards/fingerpunch/sweeeeep/config.h b/keyboards/fingerpunch/sweeeeep/config.h index 0372fee941a3..69a3bcde07c0 100644 --- a/keyboards/fingerpunch/sweeeeep/config.h +++ b/keyboards/fingerpunch/sweeeeep/config.h @@ -24,7 +24,6 @@ #define PRODUCT_ID 0x5111 #define MANUFACTURER sadekbaroudi #define PRODUCT sadekbaroudi sweeeeep -#define DESCRIPTION sadekbaroudi sweeeeep /* * Keyboard Matrix Assignments @@ -62,32 +61,21 @@ #define RGBLIGHT_VAL_STEP 16 #define RGBLIGHT_LIMIT_VAL 150 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ - #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD -// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -// /*== customize breathing effect ==*/ -// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -// /*==== use exp() and sin() ====*/ -// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_TWINKLE #endif #ifdef OLED_ENABLE #define OLED_DISPLAY_128X32 #endif -#define UNUSED_PINS - /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 diff --git a/keyboards/fingerpunch/sweeeeep/evq/config.h b/keyboards/fingerpunch/sweeeeep/evq/config.h deleted file mode 100644 index 92f927666295..000000000000 --- a/keyboards/fingerpunch/sweeeeep/evq/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once -#include "config_common.h" \ No newline at end of file diff --git a/keyboards/fingerpunch/sweeeeep/evq/rules.mk b/keyboards/fingerpunch/sweeeeep/evq/rules.mk deleted file mode 100644 index 4b21dccad2b1..000000000000 --- a/keyboards/fingerpunch/sweeeeep/evq/rules.mk +++ /dev/null @@ -1,7 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no -ENCODER_ENABLE = yes diff --git a/keyboards/fingerpunch/sweeeeep/fp_build.json b/keyboards/fingerpunch/sweeeeep/fp_build.json new file mode 100644 index 000000000000..177536d322c0 --- /dev/null +++ b/keyboards/fingerpunch/sweeeeep/fp_build.json @@ -0,0 +1,17 @@ +[ + { + "type" : "single", + "name" : "RGBLIGHT_ENABLE", + "user_input": "Do you have RGB?" + }, + { + "type" : "single", + "name" : "ENCODER_ENABLE", + "user_input": "Do you have one or more rotary encoders?" + }, + { + "type" : "single", + "name" : "OLED_ENABLE", + "user_input": "Do you have an OLED?" + } +] \ No newline at end of file diff --git a/keyboards/fingerpunch/sweeeeep/no_features/config.h b/keyboards/fingerpunch/sweeeeep/no_features/config.h deleted file mode 100644 index 92f927666295..000000000000 --- a/keyboards/fingerpunch/sweeeeep/no_features/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once -#include "config_common.h" \ No newline at end of file diff --git a/keyboards/fingerpunch/sweeeeep/no_features/rules.mk b/keyboards/fingerpunch/sweeeeep/no_features/rules.mk deleted file mode 100644 index fc775fab24fd..000000000000 --- a/keyboards/fingerpunch/sweeeeep/no_features/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no diff --git a/keyboards/fingerpunch/sweeeeep/oled/config.h b/keyboards/fingerpunch/sweeeeep/oled/config.h deleted file mode 100644 index 94472f300a80..000000000000 --- a/keyboards/fingerpunch/sweeeeep/oled/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/sweeeeep/oled/rules.mk b/keyboards/fingerpunch/sweeeeep/oled/rules.mk deleted file mode 100644 index d2ba31991209..000000000000 --- a/keyboards/fingerpunch/sweeeeep/oled/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = no -OLED_ENABLE = yes - diff --git a/keyboards/fingerpunch/sweeeeep/readme.md b/keyboards/fingerpunch/sweeeeep/readme.md index a88e848c6f52..ec59632a1b78 100644 --- a/keyboards/fingerpunch/sweeeeep/readme.md +++ b/keyboards/fingerpunch/sweeeeep/readme.md @@ -12,13 +12,19 @@ This is a reversible sweep pcb with support for 36 keys, per key leds, oled, and # Firmware -To build the firmware for this keyboard (after setting up your build environment), select from one of the following, depending on what features you have on your board: - - make fingerpunch/sweeeeep/no-features:default - make fingerpunch/sweeeeep/oled:default - make fingerpunch/sweeeeep/rgblight:default - make fingerpunch/sweeeeep/rgblight_oled:default - +To build the firmware for this keyboard (after setting up your build environment): +``` + make fingerpunch/sweeeeep:default RGBLIGHT_ENABLE=yes ENCODER_ENABLE=yes OLED_ENABLE=yes +``` + +Don't forget to add ```CONVERT_TO=stemcell``` if using a stemcell controller. + +Options are: +``` + RGBLIGHT_ENABLE=yes + OLED_ENABLE=yes + ENCODER_ENABLE=yes +``` If using the vial repository, use these: make fingerpunch/sweeeeep/no-features:vial diff --git a/keyboards/fingerpunch/sweeeeep/rgblight/config.h b/keyboards/fingerpunch/sweeeeep/rgblight/config.h deleted file mode 100644 index 64579bc0166d..000000000000 --- a/keyboards/fingerpunch/sweeeeep/rgblight/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#pragma once -#include "config_common.h" diff --git a/keyboards/fingerpunch/sweeeeep/rgblight/rules.mk b/keyboards/fingerpunch/sweeeeep/rgblight/rules.mk deleted file mode 100644 index 9e3bed953d41..000000000000 --- a/keyboards/fingerpunch/sweeeeep/rgblight/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -OLED_ENABLE = no -OLED_DRIVER_ENABLE = no diff --git a/keyboards/fingerpunch/sweeeeep/rgblight_evq/config.h b/keyboards/fingerpunch/sweeeeep/rgblight_evq/config.h deleted file mode 100644 index 771d83f52d42..000000000000 --- a/keyboards/fingerpunch/sweeeeep/rgblight_evq/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" - diff --git a/keyboards/fingerpunch/sweeeeep/rgblight_evq/rules.mk b/keyboards/fingerpunch/sweeeeep/rgblight_evq/rules.mk deleted file mode 100644 index 0f699aef25f4..000000000000 --- a/keyboards/fingerpunch/sweeeeep/rgblight_evq/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -OLED_ENABLE = no -ENCODER_ENABLE = yes diff --git a/keyboards/fingerpunch/sweeeeep/rgblight_oled/config.h b/keyboards/fingerpunch/sweeeeep/rgblight_oled/config.h deleted file mode 100644 index 771d83f52d42..000000000000 --- a/keyboards/fingerpunch/sweeeeep/rgblight_oled/config.h +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2021 Sadek Baroudi - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef XOIVIOX_RGBLIGHT -#define XOIVIOX_RGBLIGHT -#endif - -#ifndef XOIVIOX_OLED -#define XOIVIOX_OLED -#endif - -#pragma once -#include "config_common.h" - diff --git a/keyboards/fingerpunch/sweeeeep/rgblight_oled/rules.mk b/keyboards/fingerpunch/sweeeeep/rgblight_oled/rules.mk deleted file mode 100644 index ef79dd6846e7..000000000000 --- a/keyboards/fingerpunch/sweeeeep/rgblight_oled/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Build Options -# change yes to no to disable -# -RGBLIGHT_ENABLE = yes -OLED_ENABLE = yes - diff --git a/keyboards/fingerpunch/sweeeeep/rules.mk b/keyboards/fingerpunch/sweeeeep/rules.mk index 7efa64d51c4e..02666b30bd01 100644 --- a/keyboards/fingerpunch/sweeeeep/rules.mk +++ b/keyboards/fingerpunch/sweeeeep/rules.mk @@ -23,7 +23,7 @@ BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches ENCODER_ENABLE = no -OLED_ENABLE = yes +OLED_ENABLE = no # EXTRAFLAGS += -flto # macros disabled, if you need the extra space MOUSEKEY_ENABLE = no diff --git a/keyboards/fingerpunch/ximi/config.h b/keyboards/fingerpunch/ximi/config.h index 869316bba1ef..10125d1126eb 100644 --- a/keyboards/fingerpunch/ximi/config.h +++ b/keyboards/fingerpunch/ximi/config.h @@ -31,6 +31,11 @@ along with this program. If not, see . #define MATRIX_ROWS 6 #define MATRIX_COLS 16 +// For shift register (and optionally trackball) +#define SPI_SCK_PIN GP2 +#define SPI_MOSI_PIN GP3 +#define SPI_MISO_PIN GP4 + #define SHIFTREG_MATRIX_COL_CS GP1 #define SHIFTREG_DIVISOR 8 // needs to be the same as the PMW33XX_CS_DIVISOR below // These next two should match the MATRIX_ROWS and MATRIX_COLS if a unibody, and should be cut in half if a split keyboard @@ -46,32 +51,76 @@ along with this program. If not, see . #define SPLIT_POINTING_ENABLE #define SPLIT_LAYER_STATE_ENABLE #define SPLIT_MODS_ENABLE -#define POINTING_DEVICE_COMBINED #define SOFT_SERIAL_PIN GP0 #define USE_SERIAL #define SELECT_SOFT_SERIAL_SPEED 0 #define RGB_DI_PIN GP26 #ifdef RGBLIGHT_ENABLE -# define RGBLIGHT_SPLIT -# define RGBLED_SPLIT { 21, 21 } -# define RGBLED_NUM 42 -# define RGBLIGHT_HUE_STEP 16 -# define RGBLIGHT_SAT_STEP 16 -# define RGBLIGHT_VAL_STEP 16 -# define RGBLIGHT_LIMIT_VAL 180 /* The maximum brightness level for RGBLIGHT_ENABLE */ -# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ + #define RGBLIGHT_SPLIT + #define RGBLED_SPLIT { 21, 21 } + #define RGBLED_NUM 42 + #define RGBLIGHT_HUE_STEP 16 + #define RGBLIGHT_SAT_STEP 16 + #define RGBLIGHT_VAL_STEP 16 + #define RGBLIGHT_LIMIT_VAL 180 /* The maximum brightness level for RGBLIGHT_ENABLE */ + #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_TWINKLE #endif #ifdef RGB_MATRIX_ENABLE -# define SPLIT_TRANSPORT_MIRROR -# define DRIVER_LED_TOTAL 42 // Number of LEDs -# define RGB_MATRIX_SPLIT { 21, 21 } -# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 180 -# define RGB_MATRIX_STARTUP_HUE 35 -# define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS -# define RGB_DISABLE_WHEN_USB_SUSPENDED -# define RGB_MATRIX_KEYPRESSES + #define SPLIT_TRANSPORT_MIRROR + #define DRIVER_LED_TOTAL 42 // Number of LEDs + #define RGB_MATRIX_SPLIT { 21, 21 } + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 180 + #define RGB_MATRIX_STARTUP_HUE 35 + #define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS + #define RGB_DISABLE_WHEN_USB_SUSPENDED + #define RGB_MATRIX_KEYPRESSES + #define RGB_MATRIX_FRAMEBUFFER_EFFECTS + #define RGB_MATRIX_KEYREACTIVE_ENABLED + #define ENABLE_RGB_MATRIX_ALPHAS_MODS + #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN + #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_BREATHING + #define ENABLE_RGB_MATRIX_BAND_SAT + #define ENABLE_RGB_MATRIX_BAND_VAL + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL + #define ENABLE_RGB_MATRIX_CYCLE_ALL + #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN + #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON + #define ENABLE_RGB_MATRIX_DUAL_BEACON + #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL + #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL + #define ENABLE_RGB_MATRIX_RAINBOW_BEACON + #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS + #define ENABLE_RGB_MATRIX_RAINDROPS + #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS + #define ENABLE_RGB_MATRIX_DIGITAL_RAIN + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS + #define ENABLE_RGB_MATRIX_SPLASH + #define ENABLE_RGB_MATRIX_MULTISPLASH + #define ENABLE_RGB_MATRIX_SOLID_SPLASH + #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH #endif /* Set 0 if debouncing isn't needed */ @@ -80,31 +129,31 @@ along with this program. If not, see . /* audio support */ // Pending https://github.com/qmk/qmk_firmware/pull/17723 and https://github.com/qmk/qmk_firmware/pull/17706 #ifdef AUDIO_ENABLE -# define AUDIO_VOICES -# define AUDIO_PIN GP4 -# define AUDIO_PWM_DRIVER PWMD2 -# define AUDIO_PWM_CHANNEL RP2040_PWM_CHANNEL_4 -# define NO_MUSIC_MODE -# define STARTUP_SONG SONG(PREONIC_SOUND) -# define DEFAULT_LAYER_SONGS \ + #define AUDIO_VOICES + #define AUDIO_PIN GP4 + #define AUDIO_PWM_DRIVER PWMD2 + #define AUDIO_PWM_CHANNEL RP2040_PWM_CHANNEL_4 + #define NO_MUSIC_MODE + #define STARTUP_SONG SONG(PREONIC_SOUND) + #define DEFAULT_LAYER_SONGS \ { SONG(QWERTY_SOUND), SONG(COLEMAK_SOUND) } #endif #ifdef HAPTIC_ENABLE -# define FB_ERM_LRA 1 -# define FB_BRAKEFACTOR 3 // For 1x:0, 2x:1, 3x:2, 4x:3, 6x:4, 8x:5, 16x:6, Disable Braking:7 -# define FB_LOOPGAIN 1 // For Low:0, Medium:1, High:2, Very High:3 -# define RATED_VOLTAGE 2 -# define V_PEAK 2.8 -# define V_RMS 2.0 -# define F_LRA 150 // resonance freq -# define DRV_GREETING alert_750ms -# define NO_HAPTIC_ALPHA -# define NO_HAPTIC_LOCKKEYS -# define NO_HAPTIC_PUNCTUATION -# define NO_HAPTIC_NAV -# define NO_HAPTIC_NUMERIC -# define NO_HAPTIC_MOD + #define FB_ERM_LRA 1 + #define FB_BRAKEFACTOR 3 // For 1x:0, 2x:1, 3x:2, 4x:3, 6x:4, 8x:5, 16x:6, Disable Braking:7 + #define FB_LOOPGAIN 1 // For Low:0, Medium:1, High:2, Very High:3 + #define RATED_VOLTAGE 2 + #define V_PEAK 2.8 + #define V_RMS 2.0 + #define F_LRA 150 // resonance freq + #define DRV_GREETING alert_750ms + #define NO_HAPTIC_ALPHA + #define NO_HAPTIC_LOCKKEYS + #define NO_HAPTIC_PUNCTUATION + #define NO_HAPTIC_NAV + #define NO_HAPTIC_NUMERIC + #define NO_HAPTIC_MOD #endif /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ @@ -116,36 +165,41 @@ along with this program. If not, see . #define I2C1_SDA_PIN GP6 #define I2C1_SCL_PIN GP7 -// cirque trackpad config -#define CIRQUE_PINNACLE_ADDR 0x2A -// Comment line above, and uncomment 2 lines below to switch to relative mode and enable right click -// Note that tap to click doesn't work on the slave side unless you enable relative mode -// #define CIRQUE_PINNACLE_POSITION_MODE CIRQUE_PINNACLE_RELATIVE_MODE -// #define CIRQUE_PINNACLE_SECONDARY_TAP_ENABLE -#define CIRQUE_PINNACLE_TAP_ENABLE -#define POINTING_DEVICE_TASK_THROTTLE_MS 5 -#define POINTING_DEVICE_ROTATION_90 // move to cirque specific config -#define POINTING_DEVICE_ROTATION_90_RIGHT -#define I2C1_CLOCK_SPEED 400000 -#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 - -// Trackball config -// Move into pwm3360 feature directory -#define PMW33XX_CS_PIN GP26 -#define PMW33XX_CPI 800 -#define PMW33XX_CS_DIVISOR 8 // needs to be the same as the SHIFTREG_DIVISOR above -// #define POINTING_DEVICE_INVERT_Y // move to trackball specific config - -#define SPI_SCK_PIN GP2 -#define SPI_MOSI_PIN GP3 -#define SPI_MISO_PIN GP4 +#ifdef CIRQUE_ENABLE + // cirque trackpad config + #define CIRQUE_PINNACLE_ADDR 0x2A + // Comment line above, and uncomment 2 lines below to switch to relative mode and enable right click + // Note that tap to click doesn't work on the slave side unless you enable relative mode + // #define CIRQUE_PINNACLE_POSITION_MODE CIRQUE_PINNACLE_RELATIVE_MODE + // #define CIRQUE_PINNACLE_SECONDARY_TAP_ENABLE + #define CIRQUE_PINNACLE_TAP_ENABLE + #define POINTING_DEVICE_TASK_THROTTLE_MS 5 + #define POINTING_DEVICE_ROTATION_90 // move to cirque specific config + #define POINTING_DEVICE_ROTATION_90_RIGHT + #define I2C1_CLOCK_SPEED 400000 + #define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 +#ifdef FP_CIRQUE_BOTH + #define POINTING_DEVICE_COMBINED +#endif +#ifdef FP_CIRQUE_LEFT + #define POINTING_DEVICE_LEFT +#endif +#ifdef FP_CIRQUE_RIGHT + #define POINTING_DEVICE_RIGHT +#endif +#endif -/* SPI config for pmw3360 sensor. */ -// #define SPI_DRIVER SPID1 -// #define SPI_SCK_PIN GP2 -// #define SPI_SCK_PAL_MODE 5 -// #define SPI_MOSI_PIN GP3 -// #define SPI_MOSI_PAL_MODE 5 -// #define SPI_MISO_PIN GP4 -// #define SPI_MISO_PAL_MODE 5 -// end Trackball config +#ifdef FP_TRACKBALL_ENABLE + // Trackball config + #define PMW33XX_CS_PIN GP26 + #define PMW33XX_CPI 800 + #define PMW33XX_CS_DIVISOR 8 // needs to be the same as the SHIFTREG_DIVISOR above + // #define POINTING_DEVICE_INVERT_Y // move to trackball specific config + + /* SPI config for pmw3360 sensor. */ + #define SPI_DRIVER SPID1 + #define SPI_SCK_PAL_MODE 5 + #define SPI_MOSI_PAL_MODE 5 + #define SPI_MISO_PIN GP4 + #define SPI_MISO_PAL_MODE 5 +#endif \ No newline at end of file diff --git a/keyboards/fingerpunch/ximi/fp_build.json b/keyboards/fingerpunch/ximi/fp_build.json new file mode 100644 index 000000000000..f11b87ff14f5 --- /dev/null +++ b/keyboards/fingerpunch/ximi/fp_build.json @@ -0,0 +1,27 @@ +[ + { + "type" : "one-of", + "names" : [ "FP_TRACKBALL_BOTH", "FP_TRACKBALL_LEFT", "FP_TRACKBALL_RIGHT" ], + "user_input": "Do you have a no trackball, on both sides, left, or right?" + }, + { + "type" : "one-of", + "names" : [ "FP_CIRQUE_BOTH", "FP_CIRQUE_LEFT", "FP_CIRQUE_RIGHT" ], + "user_input": "Do you have a no cirque trackpad, on both sides, left, or right?" + }, + { + "type" : "single", + "name" : "RGBLIGHT_ENABLE", + "user_input": "Do you have RGB?" + }, + { + "type" : "single", + "name" : "AUDIO_ENABLE", + "user_input": "Do you have audio buzzer?" + }, + { + "type" : "single", + "name" : "HAPTIC_FEEDBACK", + "user_input": "Do you have haptic feedback?" + } +] diff --git a/keyboards/fingerpunch/ximi/readme.md b/keyboards/fingerpunch/ximi/readme.md index 1fb992764e25..4de424884769 100644 --- a/keyboards/fingerpunch/ximi/readme.md +++ b/keyboards/fingerpunch/ximi/readme.md @@ -4,19 +4,35 @@ * Hardware Supported: ximi PCB Make example for this keyboard (after setting up your build environment): - - make fingerpunch/ximi:default - -Flashing example for this keyboard ([using the command line](https://docs.qmk.fm/#/newbs_flashing?id=flash-your-keyboard-from-the-command-line)): - - make fingerpunch/ximi:default:flash +``` + make fingerpunch/ximi:default RGBLIGHT_ENABLE=yes FP_CIRQUE_BOTH=yes HAPTIC_ENABLE=yes +``` + +Don't forget to add ```CONVERT_TO=stemcell``` if using a stemcell controller. + +Options are: +``` + FP_TRACKBALL_BOTH=yes + FP_TRACKBALL_LEFT=yes + FP_TRACKBALL_RIGHT=yes + FP_CIRQUE_BOTH=yes + FP_CIRQUE_LEFT=yes + FP_CIRQUE_RIGHT=yes + RGBLIGHT_ENABLE=yes + AUDIO_ENABLE=yes + HAPTIC_FEEDBACK=yes +``` + +Notes: +* Pick one (or none) of FP_TRACKBALL_* only. Pick one (or none) of FP_CIRQUE_* only. +* If you are using a trackball, you cannot use per key rgb or audio. It will be automatically disabled. The hardware doesn't support them together. See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. ## Build Guide See: -https://github.com/sadekbaroudi/fingerpunch/blob/master/luakeeb/BUILDGUIDE.md +https://github.com/sadekbaroudi/fingerpunch/blob/master/ximi/ ## Choosing which board to plug the USB cable into (choosing Master) diff --git a/keyboards/fingerpunch/ximi/rules.mk b/keyboards/fingerpunch/ximi/rules.mk index 4225ba4c3471..e5b2d4edc236 100644 --- a/keyboards/fingerpunch/ximi/rules.mk +++ b/keyboards/fingerpunch/ximi/rules.mk @@ -17,7 +17,7 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality # Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = no +RGB_MATRIX_ENABLE = no # not supported yet, but will add RGB_MATRIX_DRIVER = WS2812 WS2812_DRIVER = vendor @@ -27,7 +27,6 @@ BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches ENCODER_ENABLE = no -OLED_DRIVER_ENABLE = no # this can be yes or no depending on if you have an OLED EXTRAFLAGS += -flto # macros enable or disable MOUSEKEY_ENABLE = yes @@ -36,26 +35,68 @@ SERIAL_DRIVER = vendor #HAPTIC FEEDBACK +HAPTIC_ENABLE ?= no HAPTIC_DRIVER = DRV2605L -HAPTIC_ENABLE = yes # Audio doesn't work with RP2040 yet :( -AUDIO_ENABLE = no +# Pending https://github.com/qmk/qmk_firmware/pull/17723 and https://github.com/qmk/qmk_firmware/pull/17706 +AUDIO_ENABLE ?= no -CIRQUE_ENABLE = yes +FP_CIRQUE_BOTH ?= no # Choose one of (BOTH, LEFT, RIGHT) +FP_CIRQUE_LEFT ?= no # Choose one of (BOTH, LEFT, RIGHT) +FP_CIRQUE_RIGHT ?= no # Choose one of (BOTH, LEFT, RIGHT) +CIRQUE_ENABLE = no # Don't set this one, gets set automatically by FP_CIRQUE_* + +ifeq ($(strip $(FP_CIRQUE_BOTH)), yes) + CIRQUE_ENABLE := yes + OPT_DEFS += -DFP_CIRQUE_BOTH +endif + +ifeq ($(strip $(FP_CIRQUE_LEFT)), yes) + CIRQUE_ENABLE := yes + OPT_DEFS += -DFP_CIRQUE_LEFT +endif + +ifeq ($(strip $(FP_CIRQUE_RIGHT)), yes) + CIRQUE_ENABLE := yes + OPT_DEFS += -DFP_CIRQUE_RIGHT +endif ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE = yes - POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := cirque_pinnacle_i2c + OPT_DEFS += -DCIRQUE_ENABLE endif -# PMW3360_ENABLE = no +FP_TRACKBALL_BOTH ?= no # Choose one of (BOTH, LEFT, RIGHT) +FP_TRACKBALL_LEFT ?= no # Choose one of (BOTH, LEFT, RIGHT) +FP_TRACKBALL_RIGHT ?= no # Choose one of (BOTH, LEFT, RIGHT) +PMW3360_ENABLE = no # Don't set this one, gets set automatically by FP_TRACKBALL_* -# ifeq ($(strip $(PMW3360_ENABLE)), yes) -# POINTING_DEVICE_ENABLE := yes -# POINTING_DEVICE_DRIVER = pmw3360 -# QUANTUM_LIB_SRC += spi_master.c -# endif +ifeq ($(strip $(FP_TRACKBALL_BOTH)), yes) + PMW3360_ENABLE := yes + OPT_DEFS += -DFP_TRACKBALL_BOTH +endif + +ifeq ($(strip $(FP_TRACKBALL_LEFT)), yes) + PMW3360_ENABLE := yes + OPT_DEFS += -DFP_TRACKBALL_LEFT +endif + +ifeq ($(strip $(FP_TRACKBALL_RIGHT)), yes) + PMW3360_ENABLE := yes + OPT_DEFS += -DFP_TRACKBALL_RIGHT +endif + +ifeq ($(strip $(PMW3360_ENABLE)), yes) + AUDIO_ENABLE := no + RGBLIGHT_ENABLE := no + RGB_MATRIX_ENABLE := no + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := pmw3360 + QUANTUM_LIB_SRC += spi_master.c + OPT_DEFS += -DFP_TRACKBALL_ENABLE +endif SRC += matrix_74hc595_spi.c From 6b0c70ebe271f1219a1a507430c6e887b2374b27 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Wed, 21 Sep 2022 21:49:29 -0700 Subject: [PATCH 02/51] fixed trackball, switched from SPI1 to SPI0, as it works with shift register and trackball --- keyboards/fingerpunch/ximi/config.h | 19 ++++++++++++++----- keyboards/fingerpunch/ximi/mcuconf.c | 4 ++-- users/sadekbaroudi/pointing_stuff.c | 2 +- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/keyboards/fingerpunch/ximi/config.h b/keyboards/fingerpunch/ximi/config.h index 10125d1126eb..2434f88d8028 100644 --- a/keyboards/fingerpunch/ximi/config.h +++ b/keyboards/fingerpunch/ximi/config.h @@ -194,12 +194,21 @@ along with this program. If not, see . #define PMW33XX_CS_PIN GP26 #define PMW33XX_CPI 800 #define PMW33XX_CS_DIVISOR 8 // needs to be the same as the SHIFTREG_DIVISOR above - // #define POINTING_DEVICE_INVERT_Y // move to trackball specific config + #define POINTING_DEVICE_INVERT_X // move to trackball specific config /* SPI config for pmw3360 sensor. */ - #define SPI_DRIVER SPID1 - #define SPI_SCK_PAL_MODE 5 - #define SPI_MOSI_PAL_MODE 5 + #define SPI_DRIVER SPID0 + // #define SPI_SCK_PAL_MODE 5 // already defined in chibios + // #define SPI_MOSI_PAL_MODE 5 // already defined in chibios #define SPI_MISO_PIN GP4 - #define SPI_MISO_PAL_MODE 5 + // #define SPI_MISO_PAL_MODE 5 // already defined in chibios +#ifdef FP_TRACKBALL_BOTH + #define POINTING_DEVICE_COMBINED +#endif +#ifdef FP_TRACKBALL_LEFT + #define POINTING_DEVICE_LEFT +#endif +#ifdef FP_TRACKBALL_RIGHT + #define POINTING_DEVICE_RIGHT +#endif #endif \ No newline at end of file diff --git a/keyboards/fingerpunch/ximi/mcuconf.c b/keyboards/fingerpunch/ximi/mcuconf.c index 34708ac79aa1..8af485361ee1 100644 --- a/keyboards/fingerpunch/ximi/mcuconf.c +++ b/keyboards/fingerpunch/ximi/mcuconf.c @@ -2,8 +2,8 @@ #include_next "mcuconf.h" -#undef RP_SPI_USE_SPI1 -#define RP_SPI_USE_SPI1 TRUE +#undef RP_SPI_USE_SPI0 +#define RP_SPI_USE_SPI0 TRUE #undef RP_I2C_USE_I2C1 #define RP_I2C_USE_I2C1 TRUE \ No newline at end of file diff --git a/users/sadekbaroudi/pointing_stuff.c b/users/sadekbaroudi/pointing_stuff.c index 40c225859fdb..b376bd014906 100644 --- a/users/sadekbaroudi/pointing_stuff.c +++ b/users/sadekbaroudi/pointing_stuff.c @@ -46,4 +46,4 @@ void pointing_device_set_cpi_combined_defaults(void) { pointing_device_set_cpi_on_side(true, 50); //Set cpi on left side to a low value for slower scrolling. pointing_device_set_cpi_on_side(false, 2000); //Set cpi on right side to a reasonable value for mousing. } -#endif +#endif \ No newline at end of file From ff7530a798946b43cf2dd91b6a381af814f60325 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Thu, 22 Sep 2022 00:01:59 -0700 Subject: [PATCH 03/51] typo in haptic feedback parameter for build json for ximi --- keyboards/fingerpunch/ximi/fp_build.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/fingerpunch/ximi/fp_build.json b/keyboards/fingerpunch/ximi/fp_build.json index f11b87ff14f5..ccbf4705663d 100644 --- a/keyboards/fingerpunch/ximi/fp_build.json +++ b/keyboards/fingerpunch/ximi/fp_build.json @@ -21,7 +21,7 @@ }, { "type" : "single", - "name" : "HAPTIC_FEEDBACK", + "name" : "HAPTIC_ENABLE", "user_input": "Do you have haptic feedback?" } ] From a713657980a247c2345cf87ec85ae3b8466b9a8f Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Sat, 24 Sep 2022 13:12:33 -0700 Subject: [PATCH 04/51] added ffkb v3, and converted ffkb to separate versions per keyboard --- keyboards/fingerpunch/ffkb_byomcu/config.h | 51 +-- .../fingerpunch/ffkb_byomcu/ffkb_byomcu.h | 37 +- keyboards/fingerpunch/ffkb_byomcu/v1/config.h | 69 ++++ .../fingerpunch/ffkb_byomcu/v1/fp_build.json | 27 ++ .../{ => v1}/keymaps/default/keymap.c | 0 .../keymaps/manna-harbour_miryoku/config.h | 0 .../keymaps/manna-harbour_miryoku/keymap.c | 0 .../{ => v1}/keymaps/sadekbaroudi/keymap.c | 0 .../ffkb_byomcu/{ => v1}/keymaps/via/keymap.c | 0 .../ffkb_byomcu/{ => v1}/keymaps/via/rules.mk | 0 .../ffkb_byomcu/{ => v1}/kle-via.json | 0 .../fingerpunch/ffkb_byomcu/v1/readme.md | 27 ++ keyboards/fingerpunch/ffkb_byomcu/v1/rules.mk | 64 +++ keyboards/fingerpunch/ffkb_byomcu/v1/v1.h | 34 ++ keyboards/fingerpunch/ffkb_byomcu/v2/config.h | 70 ++++ .../ffkb_byomcu/{ => v2}/fp_build.json | 0 .../ffkb_byomcu/v2/keymaps/default/keymap.c | 385 ++++++++++++++++++ .../v2/keymaps/manna-harbour_miryoku/config.h | 22 + .../v2/keymaps/manna-harbour_miryoku/keymap.c | 4 + .../v2/keymaps/sadekbaroudi/keymap.c | 348 ++++++++++++++++ .../ffkb_byomcu/v2/keymaps/via/keymap.c | 382 +++++++++++++++++ .../ffkb_byomcu/v2/keymaps/via/rules.mk | 1 + .../fingerpunch/ffkb_byomcu/v2/kle-via.json | 310 ++++++++++++++ .../ffkb_byomcu/{ => v2}/readme.md | 4 - .../fingerpunch/ffkb_byomcu/{ => v2}/rules.mk | 0 keyboards/fingerpunch/ffkb_byomcu/v2/v2.h | 44 ++ keyboards/fingerpunch/ffkb_byomcu/v3/config.h | 81 ++++ .../fingerpunch/ffkb_byomcu/v3/fp_build.json | 22 + .../fingerpunch/ffkb_byomcu/v3/halconf.h | 25 ++ .../ffkb_byomcu/v3/keymaps/default/keymap.c | 205 ++++++++++ .../v3/keymaps/manna-harbour_miryoku/config.h | 21 + .../v3/keymaps/manna-harbour_miryoku/keymap.c | 4 + .../v3/keymaps/sadekbaroudi/keymap.c | 96 +++++ .../ffkb_byomcu/v3/keymaps/via/keymap.c | 189 +++++++++ .../ffkb_byomcu/v3/keymaps/via/rules.mk | 1 + .../fingerpunch/ffkb_byomcu/v3/kle-via.json | 310 ++++++++++++++ .../ffkb_byomcu/v3/matrix_74hc595_spi.c | 150 +++++++ .../fingerpunch/ffkb_byomcu/v3/mcuconf.h | 25 ++ .../fingerpunch/ffkb_byomcu/v3/readme.md | 26 ++ keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk | 69 ++++ keyboards/fingerpunch/ffkb_byomcu/v3/v3.h | 43 ++ keyboards/fingerpunch/ffkb_byomcu/via.json | 322 --------------- 42 files changed, 3064 insertions(+), 404 deletions(-) create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v1/config.h create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v1/fp_build.json rename keyboards/fingerpunch/ffkb_byomcu/{ => v1}/keymaps/default/keymap.c (100%) rename keyboards/fingerpunch/ffkb_byomcu/{ => v1}/keymaps/manna-harbour_miryoku/config.h (100%) rename keyboards/fingerpunch/ffkb_byomcu/{ => v1}/keymaps/manna-harbour_miryoku/keymap.c (100%) rename keyboards/fingerpunch/ffkb_byomcu/{ => v1}/keymaps/sadekbaroudi/keymap.c (100%) rename keyboards/fingerpunch/ffkb_byomcu/{ => v1}/keymaps/via/keymap.c (100%) rename keyboards/fingerpunch/ffkb_byomcu/{ => v1}/keymaps/via/rules.mk (100%) rename keyboards/fingerpunch/ffkb_byomcu/{ => v1}/kle-via.json (100%) create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v1/readme.md create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v1/rules.mk create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v1/v1.h create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v2/config.h rename keyboards/fingerpunch/ffkb_byomcu/{ => v2}/fp_build.json (100%) create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/default/keymap.c create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/manna-harbour_miryoku/config.h create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/manna-harbour_miryoku/keymap.c create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/sadekbaroudi/keymap.c create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/via/keymap.c create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/via/rules.mk create mode 100755 keyboards/fingerpunch/ffkb_byomcu/v2/kle-via.json rename keyboards/fingerpunch/ffkb_byomcu/{ => v2}/readme.md (89%) rename keyboards/fingerpunch/ffkb_byomcu/{ => v2}/rules.mk (100%) create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v2/v2.h create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/config.h create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/fp_build.json create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/halconf.h create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/keymap.c create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/manna-harbour_miryoku/config.h create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/manna-harbour_miryoku/keymap.c create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/sadekbaroudi/keymap.c create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/via/keymap.c create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/via/rules.mk create mode 100755 keyboards/fingerpunch/ffkb_byomcu/v3/kle-via.json create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/matrix_74hc595_spi.c create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/mcuconf.h create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/readme.md create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/v3.h delete mode 100644 keyboards/fingerpunch/ffkb_byomcu/via.json diff --git a/keyboards/fingerpunch/ffkb_byomcu/config.h b/keyboards/fingerpunch/ffkb_byomcu/config.h index 00a4e96f0db7..390573943efc 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/config.h +++ b/keyboards/fingerpunch/ffkb_byomcu/config.h @@ -20,23 +20,12 @@ along with this program. If not, see . /* USB Device descriptor parameter */ -#define DEVICE_VER 0x0001 +// #define DEVICE_VER 0x0001 // now defined in vx/config.h #define VENDOR_ID 0xFEFE #define PRODUCT_ID 0xFFBB #define MANUFACTURER sadekbaroudi #define PRODUCT sadekbaroudi ffkb_byomcu -/* key matrix size */ -/* Rows are doubled up */ -#define MATRIX_ROWS 6 -#define MATRIX_COLS 8 - -// wiring -#define MATRIX_ROW_PINS \ - { D2, F4, F5, F6, F7, B1 } -#define MATRIX_COL_PINS \ - { B5, B4, E6, D7, C6, D4, B2, B3 } - /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 @@ -108,46 +97,10 @@ along with this program. If not, see . #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH #endif -#define ENCODERS_PAD_A {D5, B6, D1} -#define ENCODERS_PAD_B {B7, F1, D0} - -#ifdef FP_EVQ_UNDER_PALMS -#define ENCODERS_A_REVERSE -#define ENCODERS_B_REVERSE -#endif - -#ifdef FP_EC11_UNDER_PALMS -#define ENCODERS_C_REVERSE -#endif - -#if defined(OLED_ENABLE) || defined(PIMORONI_TRACKBALL_ENABLE) -#undef ENCODERS_PAD_A -#define ENCODERS_PAD_A {D5, B6} -#undef ENCODERS_PAD_B -#define ENCODERS_PAD_B {B7, F1} -#endif - -#define ENCODER_RESOLUTION 2 - /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -#ifdef PIMORONI_TRACKBALL_ENABLE -#define PIMORONI_TRACKBALL_ROTATE -#define PIMORONI_TRACKBALL_CLICK -#endif - -// cirque trackpad config -#define CIRQUE_PINNACLE_ADDR 0x2A -#define POINTING_DEVICE_ROTATION_90 -#define CIRQUE_PINNACLE_TAP_ENABLE -#define POINTING_DEVICE_TASK_THROTTLE_MS 5 -#define I2C1_CLOCK_SPEED 400000 -#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 - -// If using encoder type 2, uncomment this -// #define ENCODERS_B_REVERSE - +// For via/vial only #define DYNAMIC_KEYMAP_LAYER_COUNT 5 diff --git a/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.h b/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.h index e54dd52d8eea..fd9182c4a86e 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.h +++ b/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.h @@ -1,4 +1,4 @@ -/* Copyright 2021 Sadek Baroudi +/* Copyright 2022 Sadek Baroudi * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -17,31 +17,10 @@ #include "quantum.h" -/* This a shortcut to help you visually see your layout. - * - * The first section contains all of the arguments representing the physical - * layout of the board and position of the keys. - * - * The second converts the arguments into a two-dimensional array which - * represents the switch matrix. - */ - -// 1-40 are the keyswitches, and 50 and 51 are the rotary encoders -#define LAYOUT_ffkb( \ - K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, \ - K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, \ - K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ - K32, K34, K35, K36, K37, K38, K39, K3B, \ - K3A \ -) \ -{ \ - { K01, K02, K03, K04, K05, K06, K07, K08 }, \ - { K11, K12, K13, K14, K15, K16, K17, K18 }, \ - { K21, K22, K23, K24, K25, K26, K27, K28 }, \ - { KC_NO, KC_NO, K19, K2A, K0A, K1B, K2B, K0C }, \ - { KC_NO, K3A, K29, K09, K1A, K0B, K2C, K1C }, \ - { K3B, K32, K39, K34, K35, K36, K37, K38 } \ -} - - -// KC_NO, K32, KC_NO, K34, K35, K36, K37, K38 +#if defined(KEYBOARD_fingerpunch_ffkb_byomcu_v1) +# include "v1.h" +#elif defined(KEYBOARD_fingerpunch_ffkb_byomcu_v2) +# include "v2.h" +#elif defined(KEYBOARD_fingerpunch_ffkb_byomcu_v3) +# include "v3.h" +#endif \ No newline at end of file diff --git a/keyboards/fingerpunch/ffkb_byomcu/v1/config.h b/keyboards/fingerpunch/ffkb_byomcu/v1/config.h new file mode 100644 index 000000000000..dec8f017b1c5 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v1/config.h @@ -0,0 +1,69 @@ +/* +Copyright 2021 Sadek Baroudi + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define DEVICE_VER 0x0001 + +/* key matrix size */ +/* Rows are doubled up */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 8 + +// wiring +#define MATRIX_ROW_PINS \ + { D2, F4, F5, F6, F7, B1 } +#define MATRIX_COL_PINS \ + { B5, B4, E6, D7, C6, D4, B2, B3 } + +#define ENCODERS_PAD_A {D5, B6, D1} +#define ENCODERS_PAD_B {B7, F1, D0} + +#ifdef FP_EVQ_UNDER_PALMS +#define ENCODERS_A_REVERSE +#define ENCODERS_B_REVERSE +#endif + +#ifdef FP_EC11_UNDER_PALMS +#define ENCODERS_C_REVERSE +#endif + +#if defined(OLED_ENABLE) || defined(PIMORONI_TRACKBALL_ENABLE) +#undef ENCODERS_PAD_A +#define ENCODERS_PAD_A {D5, B6} +#undef ENCODERS_PAD_B +#define ENCODERS_PAD_B {B7, F1} +#endif + +#define ENCODER_RESOLUTION 2 + +#ifdef PIMORONI_TRACKBALL_ENABLE +#define PIMORONI_TRACKBALL_ROTATE +#define PIMORONI_TRACKBALL_CLICK +#endif + +#ifdef CIRQUE_ENABLE + // cirque trackpad config + #define CIRQUE_PINNACLE_ADDR 0x2A + #define POINTING_DEVICE_ROTATION_90 + #define CIRQUE_PINNACLE_TAP_ENABLE + #define POINTING_DEVICE_TASK_THROTTLE_MS 5 + #define I2C1_CLOCK_SPEED 400000 + #define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 +#endif \ No newline at end of file diff --git a/keyboards/fingerpunch/ffkb_byomcu/v1/fp_build.json b/keyboards/fingerpunch/ffkb_byomcu/v1/fp_build.json new file mode 100644 index 000000000000..38ef3f0c4240 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v1/fp_build.json @@ -0,0 +1,27 @@ +[ + { + "type" : "one-of", + "names" : [ "RGBLIGHT_ENABLE", "RGB_MATRIX_ENABLE" ], + "user_input": "No RGB, RGB light, RGB matrix?" + }, + { + "type" : "single", + "name" : "OLED_ENABLE", + "user_input": "Do you have an OLED?" + }, + { + "type" : "single", + "name" : "FP_EC11_CENTER", + "user_input": "Do you have an EC11 in the center?" + }, + { + "type" : "one-of", + "names" : [ "FP_EC11_UNDER_PALMS", "FP_EVQ_UNDER_PALMS" ], + "user_input": "No under palm encoders, EC11, or EVQ?" + }, + { + "type" : "single", + "name" : "PIMORONI_TRACKBALL_ENABLE", + "user_input": "Do you have a pimoroni trackball?" + } +] \ No newline at end of file diff --git a/keyboards/fingerpunch/ffkb_byomcu/keymaps/default/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/default/keymap.c similarity index 100% rename from keyboards/fingerpunch/ffkb_byomcu/keymaps/default/keymap.c rename to keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/default/keymap.c diff --git a/keyboards/fingerpunch/ffkb_byomcu/keymaps/manna-harbour_miryoku/config.h b/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/manna-harbour_miryoku/config.h similarity index 100% rename from keyboards/fingerpunch/ffkb_byomcu/keymaps/manna-harbour_miryoku/config.h rename to keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/manna-harbour_miryoku/config.h diff --git a/keyboards/fingerpunch/ffkb_byomcu/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/manna-harbour_miryoku/keymap.c similarity index 100% rename from keyboards/fingerpunch/ffkb_byomcu/keymaps/manna-harbour_miryoku/keymap.c rename to keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/manna-harbour_miryoku/keymap.c diff --git a/keyboards/fingerpunch/ffkb_byomcu/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/sadekbaroudi/keymap.c similarity index 100% rename from keyboards/fingerpunch/ffkb_byomcu/keymaps/sadekbaroudi/keymap.c rename to keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/sadekbaroudi/keymap.c diff --git a/keyboards/fingerpunch/ffkb_byomcu/keymaps/via/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/via/keymap.c similarity index 100% rename from keyboards/fingerpunch/ffkb_byomcu/keymaps/via/keymap.c rename to keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/via/keymap.c diff --git a/keyboards/fingerpunch/ffkb_byomcu/keymaps/via/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/via/rules.mk similarity index 100% rename from keyboards/fingerpunch/ffkb_byomcu/keymaps/via/rules.mk rename to keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/via/rules.mk diff --git a/keyboards/fingerpunch/ffkb_byomcu/kle-via.json b/keyboards/fingerpunch/ffkb_byomcu/v1/kle-via.json similarity index 100% rename from keyboards/fingerpunch/ffkb_byomcu/kle-via.json rename to keyboards/fingerpunch/ffkb_byomcu/v1/kle-via.json diff --git a/keyboards/fingerpunch/ffkb_byomcu/v1/readme.md b/keyboards/fingerpunch/ffkb_byomcu/v1/readme.md new file mode 100644 index 000000000000..cb98de7f3698 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v1/readme.md @@ -0,0 +1,27 @@ +# ffkb + +An ergonomic 30% keyboard + +* Keyboard Maintainer: [sadekbaroudi](https://github.com/sadekbaroudi) + +Faux fox keyboard (ffkb) + +Make example for this keyboard (after setting up your build environment): +``` + make fingerpunch/ffkb_byomcu:default RGBLIGHT_ENABLE=yes FP_EC11_UNDER_PALMS=yes CIRQUE_ENABLE=yes OLED_ENABLE=yes +``` + +Don't forget to add ```CONVERT_TO=stemcell``` if using a stemcell controller. + +Options are: +``` + RGBLIGHT_ENABLE=yes + RGB_MATRIX_ENABLE=yes + OLED_ENABLE=yes + FP_EC11_CENTER=yes + FP_EC11_UNDER_PALMS=yes + FP_EVQ_UNDER_PALMS=yes + PIMORONI_TRACKBALL_ENABLE=yes +``` + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/fingerpunch/ffkb_byomcu/v1/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/v1/rules.mk new file mode 100644 index 000000000000..551e7b5921e6 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v1/rules.mk @@ -0,0 +1,64 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +# Teensy halfkay +# Pro Micro caterina +# Atmel DFU atmel-dfu +# LUFA DFU lufa-dfu +# QMK DFU qmk-dfu +# ATmega32A bootloadHID +# ATmega328P USBasp +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE = no # USB Nkey Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality + +# Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = no +RGB_MATRIX_DRIVER = WS2812 + +MIDI_ENABLE = no # MIDI support +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +AUDIO_ENABLE = no # Audio output on port C6 +FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches +ENCODER_ENABLE = no +OLED_ENABLE = no # this can be yes or no depending on if you have an OLED +EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed + # for instance, if you build "no_features", it's very unlikely you'll need to disable macros +MOUSEKEY_ENABLE = no + +PIMORONI_TRACKBALL_ENABLE = no + +ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := pimoroni_trackball + OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE +endif + +ifeq ($(strip $(FP_EC11_CENTER)), yes) + ENCODER_ENABLE := yes + OPT_DEFS += -DFP_EC11_CENTER +endif + +ifeq ($(strip $(FP_EC11_UNDER_PALMS)), yes) + ENCODER_ENABLE := yes + OPT_DEFS += -DFP_EC11_UNDER_PALMS +endif + +ifeq ($(strip $(FP_EVQ_UNDER_PALMS)), yes) + ENCODER_ENABLE := yes + OPT_DEFS += -DFP_EVQ_UNDER_PALMS +endif \ No newline at end of file diff --git a/keyboards/fingerpunch/ffkb_byomcu/v1/v1.h b/keyboards/fingerpunch/ffkb_byomcu/v1/v1.h new file mode 100644 index 000000000000..4b03fd79b511 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v1/v1.h @@ -0,0 +1,34 @@ +/* Copyright 2021-2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#pragma once + +#include "quantum.h" + +#define LAYOUT_ffkb( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ + K32, K34, K35, K36, K37, K38, K39, K3B, \ + K3A \ +) \ +{ \ + { K01, K02, K03, K04, K05, K06, K07, K08 }, \ + { K11, K12, K13, K14, K15, K16, K17, K18 }, \ + { K21, K22, K23, K24, K25, K26, K27, K28 }, \ + { KC_NO, KC_NO, K19, K2A, K0A, K1B, K2B, K0C }, \ + { KC_NO, K3A, K29, K09, K1A, K0B, K2C, K1C }, \ + { K3B, K32, K39, K34, K35, K36, K37, K38 } \ +} diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/config.h b/keyboards/fingerpunch/ffkb_byomcu/v2/config.h new file mode 100644 index 000000000000..9fe45dc39dcc --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/config.h @@ -0,0 +1,70 @@ +/* +Copyright 2021 Sadek Baroudi + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once +#include "config_common.h" + + +/* USB Device descriptor parameter */ +#define DEVICE_VER 0x0002 + +/* key matrix size */ +/* Rows are doubled up */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 8 + +// wiring +#define MATRIX_ROW_PINS \ + { D2, F4, F5, F6, F7, B1 } +#define MATRIX_COL_PINS \ + { B5, B4, E6, D7, C6, D4, B2, B3 } + +#define ENCODERS_PAD_A {D5, B6, D1} +#define ENCODERS_PAD_B {B7, F1, D0} + +#ifdef FP_EVQ_UNDER_PALMS +#define ENCODERS_A_REVERSE +#define ENCODERS_B_REVERSE +#endif + +#ifdef FP_EC11_UNDER_PALMS +#define ENCODERS_C_REVERSE +#endif + +#if defined(OLED_ENABLE) || defined(PIMORONI_TRACKBALL_ENABLE) +#undef ENCODERS_PAD_A +#define ENCODERS_PAD_A {D5, B6} +#undef ENCODERS_PAD_B +#define ENCODERS_PAD_B {B7, F1} +#endif + +#define ENCODER_RESOLUTION 2 + +#ifdef PIMORONI_TRACKBALL_ENABLE +#define PIMORONI_TRACKBALL_ROTATE +#define PIMORONI_TRACKBALL_CLICK +#endif + +#ifdef CIRQUE_ENABLE + // cirque trackpad config + #define CIRQUE_PINNACLE_ADDR 0x2A + #define POINTING_DEVICE_ROTATION_90 + #define CIRQUE_PINNACLE_TAP_ENABLE + #define POINTING_DEVICE_TASK_THROTTLE_MS 5 + #define I2C1_CLOCK_SPEED 400000 + #define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 +#endif \ No newline at end of file diff --git a/keyboards/fingerpunch/ffkb_byomcu/fp_build.json b/keyboards/fingerpunch/ffkb_byomcu/v2/fp_build.json similarity index 100% rename from keyboards/fingerpunch/ffkb_byomcu/fp_build.json rename to keyboards/fingerpunch/ffkb_byomcu/v2/fp_build.json diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/default/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/default/keymap.c new file mode 100644 index 000000000000..94bc199cfd00 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/default/keymap.c @@ -0,0 +1,385 @@ +#include QMK_KEYBOARD_H + +#ifdef ENCODER_ENABLE +bool is_alt_tab_active = false; +uint16_t alt_tab_timer = 0; +#endif + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _QWERTY, + _COLEMAK, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * + * ,-----------------------------------------. ,-----------------------------------------. + * | ESC | Q | W | E | R | T | | Y | U | I | O | P |BckSpc| + * |------+------+------+------+------+------| ,------. |------+------+------+------+------+------| + * | TAB | A | S | D | F | G | |ALTTAB| | H | J | K | L | ; | ' | + * |------+------+------+------+------+------| `------' |------+------+------+------+------+------| + * | SFT | Z | X | C | V | B | | N | M | , | . | / | SFT | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +// Default config uses home row mods. So hold each of the keys on the home row to use ctrl, gui, alt, or shift +[_QWERTY] = LAYOUT_ffkb( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, LCTL_T(KC_A), LGUI_T(KC_S), LALT_T(KC_D), LSFT_T(KC_F), KC_G, KC_H, RSFT_T(KC_J), RALT_T(KC_K), RGUI_T(KC_L), RCTL_T(KC_SCLN), KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_MUTE, KC_BSLS, KC_ENT, LOWER, RAISE, KC_SPC, KC_DEL, LCTL(KC_BSPC), + LALT(KC_TAB) +), + +/* Colemak-dh + * + * ,-----------------------------------------. ,-----------------------------------------. + * | ESC | Q | W | E | R | T | | Y | U | I | O | P |BckSpc| + * |------+------+------+------+------+------| ,------. |------+------+------+------+------+------| + * | TAB | A | S | D | F | G | |ALTTAB| | H | J | K | L | ; | ' | + * |------+------+------+------+------+------| `------' |------+------+------+------+------+------| + * | SFT | Z | X | C | V | B | | N | M | , | . | / | SFT | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +// Default config uses home row mods. So hold each of the keys on the home row to use ctrl, gui, alt, or shift +[_COLEMAK] = LAYOUT_ffkb( + KC_ESC, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, + KC_TAB, LCTL_T(KC_A), LGUI_T(KC_R), LALT_T(KC_S), LSFT_T(KC_T), KC_G, KC_M, RSFT_T(KC_N), RALT_T(KC_E), RGUI_T(KC_I), RCTL_T(KC_O), KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_MUTE, KC_BSLS, KC_ENT, LOWER, RAISE, KC_SPC, KC_DEL, LCTL(KC_BSPC), + LALT(KC_TAB) +), + + +/* Raise + * + * ,-----------------------------------------. ,-----------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | | + * |------+------+------+------+------+------| ,------. |------+------+------+------+------+------| + * | Home | Left | Down | Up | Right| End | |ALTTAB| | | - | = | [ | ] | | + * |------+------+------+------+------+------| `------' |------+------+------+------+------+------| + * | | | PgDn | PgUp | | | | | | | | | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +[_RAISE] = LAYOUT_ffkb( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TAB, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, + _______, _______, KC_PGDN, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, + _______ +), + + + +/* Raise + * + * ,-----------------------------------------. ,-----------------------------------------. + * | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | | + * |------+------+------+------+------+------| ,------. |------+------+------+------+------+------| + * | | | | | | | |ALTTAB| | | _ | + | { | } | | + * |------+------+------+------+------+------| `------' |------+------+------+------+------+------| + * | | Caps| | | | | | | | | | | " | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +[_RAISE] = LAYOUT_ffkb( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TAB, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, + _______, _______, KC_PGDN, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, + _______ +), +/* Lower + * + * ,-----------------------------------------. ,-----------------------------------------. + * | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | | + * |------+------+------+------+------+------| ,------. |------+------+------+------+------+------| + * | | | | | | | |ALTTAB| | | _ | + | { | } | | + * |------+------+------+------+------+------| `------' |------+------+------+------+------+------| + * | | Caps| | | | | | | | | | | " | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ +[_LOWER] = LAYOUT_ffkb( + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + _______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, _______, + _______, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PIPE, KC_DQT, _______, + _______, _______, _______, _______, _______, _______, _______, _______, + _______ +), + +/* Adjust (Lower + Raise) + + * ,-----------------------------------------. ,-----------------------------------------. + * | | RGB_T| RGB_R| RGB_F| |QWERTY| | F1 | F2 | F3 | F4 | F5 | | + * |------+------+------+------+------+------| ,------. |------+------+------+------+------+------| + * | | SPD_I| HUE_I| SAT_I| VAL_I|COLEMK| |ALTTAB| | F6 | F7 | F8 | F9 | F10 | | + * |------+------+------+------+------+------| `------' |------+------+------+------+------+------| + * | | SPD_D| HUE_D| SAT_D| VAL_D| | | F11 | F12 | | | Reset| | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ +[_ADJUST] = LAYOUT_ffkb( + _______, RGB_TOG, RGB_RMOD, RGB_MOD, _______, TO(_QWERTY), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, + _______, RGB_SPI, RGB_HUI, RGB_SAI, RGB_VAI, TO(_COLEMAK), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, + _______, RGB_SPD, RGB_HUD, RGB_SAD, RGB_VAD, _______, KC_F11, KC_F12, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, + _______ +) +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + +#ifdef ENCODER_ENABLE + +void press_super_alt_tab(bool shift) { + if (shift) { + register_code(KC_LSHIFT); + } + if (!is_alt_tab_active) { + is_alt_tab_active = true; + register_code(KC_LALT); + } + alt_tab_timer = timer_read(); + tap_code(KC_TAB); + if (shift) { + unregister_code(KC_LSHIFT); + } +} + +bool encoder_update_user(uint8_t index, bool clockwise) { + // default behavior if undefined + if (index == 0) { + // Conditional to reverse the direction of encoder number 1 + // The reason I have this is that for some of my boards, it supports two different types of encoders, and they may differ in direction + #ifdef ENCODERS_A_REVERSE + if (!clockwise) { + #else + if (clockwise) { + #endif + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + } + else if (index == 1) { + // Conditional to reverse the direction of encoder number 1 + // The reason I have this is that for some of my boards, it supports two different types of encoders, and they may differ in direction + #ifdef ENCODERS_B_REVERSE + if (!clockwise) { + #else + if (clockwise) { + #endif + tap_code16(C(KC_RGHT)); + } + else{ + tap_code16(C(KC_LEFT)); + } + } + else if (index == 2) { + #ifdef ENCODERS_C_REVERSE + if (!clockwise) { + #else + if (clockwise) { + #endif + press_super_alt_tab(true); + } else { + press_super_alt_tab(false); + } + } + + return true; +} +#endif + +#ifdef OLED_ENABLE + + +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + return OLED_ROTATION_180; +} + + +// Commenting out logo as it takes up a lot of space :( +static void render_logo(void) { + // ffkb logo, 128x64px + static const char PROGMEM ffkb_logo[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xe0, 0xc0, 0x80, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x80, 0xc0, 0xe0, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, + 0xfe, 0x02, 0x02, 0x02, 0x82, 0x06, 0x0e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0x0f, 0x07, 0x0f, 0x1f, + 0x3e, 0x7c, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, + 0x1f, 0x0f, 0x07, 0x0f, 0xff, 0xff, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x02, 0x82, + 0x82, 0xc2, 0xe2, 0xde, 0x0e, 0x0e, 0x06, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x02, 0x02, 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xe0, 0xf8, 0xfc, 0x7e, + 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, + 0x7e, 0xfc, 0xf8, 0xe0, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x1f, + 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, + 0x07, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xff, 0x7f, 0x1f, 0x87, 0x83, 0x80, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, + 0x80, 0x80, 0x83, 0x87, 0x1f, 0x7f, 0xff, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x04, 0x04, + 0x04, 0x05, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0xe0, 0x20, 0x20, 0x20, 0x20, 0x60, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x18, 0x3c, 0x3e, 0x7f, 0xff, 0xff, 0xff, 0xef, 0xcf, 0x8f, 0x87, 0x07, 0x07, 0x07, 0x07, + 0x07, 0xe7, 0xe7, 0xe7, 0xc7, 0x07, 0x07, 0x0f, 0x3f, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0x3f, 0x0f, 0x07, 0x07, 0xc7, 0xe7, 0xe7, 0xe7, 0x07, + 0x07, 0x07, 0x07, 0x07, 0x87, 0x8f, 0xcf, 0xef, 0xef, 0xff, 0xff, 0x7f, 0x3e, 0x3c, 0x18, 0x08, + 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x20, 0x20, + 0x60, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x20, 0x20, 0x70, 0xf8, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1e, 0x3e, 0x7c, + 0xf8, 0xf1, 0xf1, 0xe1, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, + 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe1, 0xf1, 0xf1, 0xf8, + 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x20, 0x20, + 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, + 0x7f, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7e, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x3c, + 0x3c, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, + 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0e, + 0x0e, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + +}; + oled_write_raw_P(ffkb_logo, sizeof(ffkb_logo)); + +} + +/* +static void render_status(void) { + oled_write_P(PSTR(" Layer: "), false); + switch (get_highest_layer(layer_state|default_layer_state)) { + case _ALPHA_ALT: + oled_write_P(PSTR("Alphalt "), false); + break; + case _ALPHA: + oled_write_P(PSTR("Alpha "), false); + break; + case _NAVIGATION: + oled_write_P(PSTR("Nav "), false); + break; + case _SYMBOLS: + oled_write_P(PSTR("Symbols "), false); + break; + case _FUNCTION: + oled_write_P(PSTR("Function "), false); + break; + case _MEDIA: + oled_write_P(PSTR("Media "), false); + break; + case _MOUSE: + oled_write_P(PSTR("Mouse "), false); + break; + default: + oled_write_P(PSTR("Unkn "), false); + break; + } + + // // Write host Keyboard LED Status to OLEDs + // led_t led_usb_state = host_keyboard_led_state(); + // oled_write_P(led_usb_state.num_lock ? PSTR("NUMLCK ") : PSTR(" "), false); + // oled_write_P(led_usb_state.caps_lock ? PSTR("CAPLCK ") : PSTR(" "), false); + // oled_write_P(led_usb_state.scroll_lock ? PSTR("SCRLCK ") : PSTR(" "), false); + + // ffkb logo, 128x48px + static const char ffkb_logo_small [] PROGMEM = { + 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, + 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0x40, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xf8, 0xfe, 0x8e, 0xdc, 0xf0, 0x70, 0x60, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x70, 0xf0, 0xd8, 0x9c, 0x9e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x10, + 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x10, 0x10, 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x78, 0x7c, + 0xff, 0xd7, 0x9b, 0x18, 0x78, 0x78, 0x18, 0x30, 0x70, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, + 0x18, 0x58, 0x78, 0x18, 0x99, 0x9b, 0xf7, 0xfc, 0x78, 0x30, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x78, 0xfc, 0xfc, 0xfe, 0xff, 0xf8, 0xf0, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x10, 0x10, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x01, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x18, 0x3f, 0x7f, 0x68, 0x68, 0x3f, 0x3f, 0x0c, + 0x0c, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, + 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, 0x01, 0x0b, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x08, 0x08, 0x0c, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 + }; + oled_write_raw_P(ffkb_logo_small, sizeof(ffkb_logo_small)); +} +*/ + +bool oled_task_user(void) { + // If you don't want to display the logo, switch + if (false) { + //render_status(); + } else if (true) { + render_logo(); + } else { + //render_logo_text(); + } + return true; +} + +#endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/manna-harbour_miryoku/config.h b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/manna-harbour_miryoku/config.h new file mode 100644 index 000000000000..4885988f2bed --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/manna-harbour_miryoku/config.h @@ -0,0 +1,22 @@ +// Copyright 2022 Manna Harbour +// https://github.com/manna-harbour/miryoku + +// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . + +#pragma once + +#define XXX KC_NO + +#define LAYOUT_miryoku( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \ + N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \ +) \ +LAYOUT_ffkb( \ +XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \ +XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \ +XXX, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, XXX, \ + XXX, K32, K33, K34, K35, K36, K37, XXX, \ + XXX \ +) diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/manna-harbour_miryoku/keymap.c new file mode 100644 index 000000000000..fadfdc83651a --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/manna-harbour_miryoku/keymap.c @@ -0,0 +1,4 @@ +// Copyright 2022 Manna Harbour +// https://github.com/manna-harbour/miryoku + +// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/sadekbaroudi/keymap.c new file mode 100644 index 000000000000..0f97d6f69f7b --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/sadekbaroudi/keymap.c @@ -0,0 +1,348 @@ +/* Copyright 2021 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "sadekbaroudi.h" +#ifdef PIMORONI_TRACKBALL_ENABLE +#include "drivers/sensors/pimoroni_trackball.h" +#include "pointing_device.h" +#include "color.h" +#endif +#include QMK_KEYBOARD_H + +/* + * The `LAYOUT_ffkb_base` macro is a template to allow the use of identical + * modifiers for the default layouts (eg ALPHA_ALT, Colemak, Dvorak, etc), so + * that there is no need to set them up for each layout, and modify all of + * them if I want to change them. This helps to keep consistency and ease + * of use. K## is a placeholder to pass through the individual keycodes + */ + +// clang-format off +#define LAYOUT_ffkb_base( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \ + K33, K34, K35, K36, K37, K38 \ + ) \ + LAYOUT_wrapper( \ + KC_MS_BTN3, K01, K02, K03, LT(_FUNCTION, K04), K05, K06, LT(_FUNCTION, K07), K08, K09, K0A, KC_BSLS, \ + KC_MS_BTN1, LCTL_T(K11), LGUI_T(K12), LALT_T(K13), LSFT_T(K14), K15, LT(_MOUSE, K16), RSFT_T(K17), RALT_T(K18), RGUI_T(K19), RCTL_T(K1A), LCTL(KC_V), \ + KC_MS_BTN2, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, S_ALT_TAB, \ + KC_MUTE, K33, LT(_NAVIGATION,K34), LT(_FUNCTION,K35), LT(_MEDIA,K36), LT(_SYMBOLS,K37), K38, LCTL(KC_BSPC), \ + N_DEL_LINE \ + ) + +/* Re-pass though to allow templates to be used */ +#define LAYOUT_ffkb_byomcu_base_wrapper(...) LAYOUT_ffkb_base(__VA_ARGS__) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_ALPHA_ALT] = LAYOUT_ffkb_byomcu_base_wrapper( + _________________ALPHA_ALT_L1_________________, _________________ALPHA_ALT_R1_________________, + _________________ALPHA_ALT_L2_________________, _________________ALPHA_ALT_R2_________________, + _________________ALPHA_ALT_L3_________________, _________________ALPHA_ALT_R3_________________, + __ALPHA_ALT_THUMBS_6__ + ), + + [_ALPHA] = LAYOUT_ffkb_byomcu_base_wrapper( + __________________ALPHA_L1____________________, __________________ALPHA_R1____________________, + __________________ALPHA_L2____________________, __________________ALPHA_R2____________________, + __________________ALPHA_L3____________________, __________________ALPHA_R3____________________, + __ALPHA_THUMBS_6__ + ), + + [_NAVIGATION] = LAYOUT_wrapper( + _______, ________________NAVIGATION_1_______________, _________________NUMPAD_1__________________, _______, + _______, ________________NAVIGATION_2_______________, _________________NUMPAD_2__________________, _______, + _______, ________________NAVIGATION_3_______________, _________________NUMPAD_3__________________, _______, + _______, _______, _______, KC_TAB, KC_BSPC, KC_SPACE, KC_DOT, _______, + _______ + ), + + [_SYMBOLS] = LAYOUT_wrapper( + _______, ________________SYMBOLS_L1_________________, ________________SYMBOLS_R1_________________, _______, + _______, ________________SYMBOLS_L2_________________, ________________SYMBOLS_R2_________________, _______, + _______, ________________SYMBOLS_L3_________________, ________________SYMBOLS_R3_________________, _______, + _______, _______, KC_ENT, KC_DEL, KC_BSPC, _______, _______, _______, + _______ + ), + + [_FUNCTION] = LAYOUT_wrapper( + _______, ________________SHIFTNAV_1_________________, ________________FUNCTION_1_________________, _______, + _______, ________________SHIFTNAV_2_________________, ________________FUNCTION_2_________________, _______, + _______, ________________SHIFTNAV_3_________________, ________________FUNCTION_3_________________, _______, + _______, _______, _______, _______, N_DEL_LINE, KC_SPACE, _______, _______, + _______ + ), + + [_MEDIA] = LAYOUT_wrapper( + _______, ___________________RGB_1___________________, _________________MACROS_1__________________, _______, + _______, ___________________RGB_2___________________, _________________MACROS_2__________________, _______, + _______, ___________________RGB_3___________________, _________________MACROS_3__________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, + _______ + ), + + [_MOUSE] = LAYOUT_wrapper( + _______, __________________MOUSE_1__________________, ___________________BLANK___________________, _______, + _______, __________________MOUSE_2__________________, ___________________BLANK___________________, _______, + _______, __________________MOUSE_3__________________, ___________________BLANK___________________, _______, + _______, _______, KC_MS_BTN1, KC_MS_BTN3, KC_MS_BTN3, KC_MS_BTN2, _______, _______, + _______ + ) +}; + + +#ifdef OLED_ENABLE + + +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + return OLED_ROTATION_180; +} + + +static void render_logo(void) { + // ffkb logo, 128x32px + static const char PROGMEM ffkb_logo[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + 0xf0, 0x10, 0x10, 0x10, 0x90, 0x30, 0x30, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfc, 0x3c, 0x3c, 0x38, 0x70, + 0x70, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0x70, + 0x70, 0x38, 0x3c, 0x3c, 0xfc, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x10, 0x00, + 0x80, 0x90, 0xd0, 0xf0, 0x30, 0x30, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, + 0x3f, 0x21, 0x01, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe7, 0xff, 0x7f, 0x7f, 0xbc, 0x9e, 0x8e, 0x8f, + 0x87, 0x87, 0x83, 0x83, 0x81, 0x81, 0x81, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x81, 0x81, 0x81, 0x83, 0x83, 0x87, 0x87, + 0x8f, 0x8e, 0x9e, 0xbc, 0x7f, 0x7f, 0xff, 0xe7, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x23, 0x07, + 0x0f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, + 0xfc, 0x44, 0x44, 0x44, 0xe4, 0x0c, 0x0c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x02, 0x06, 0x06, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1b, 0x3b, 0x3b, 0x73, 0x73, 0x73, 0xe3, + 0xe3, 0xdf, 0xdf, 0xdf, 0x8b, 0x83, 0x03, 0x03, 0x07, 0x1f, 0xfe, 0xfc, 0xf8, 0xe0, 0x00, 0x00, + 0x00, 0x00, 0xe0, 0xf8, 0xfc, 0xfe, 0x1f, 0x07, 0x03, 0x03, 0x83, 0x8b, 0xdf, 0xdf, 0xdf, 0xe3, + 0xe3, 0x73, 0x73, 0x73, 0x3b, 0x3b, 0x1b, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x06, 0x06, 0x02, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0x44, 0x44, + 0x44, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xb8, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0e, 0x1f, 0x3f, 0x3f, 0x3f, 0x36, 0x36, + 0x36, 0x36, 0x3f, 0x3f, 0x3f, 0x1f, 0x0e, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x08, + 0x08, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + }; + // ffkb logo, 128x64px + // static const char PROGMEM ffkb_logo[] = { + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xe0, 0xc0, 0x80, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x80, 0xc0, 0xe0, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, + // 0xfe, 0x02, 0x02, 0x02, 0x82, 0x06, 0x0e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0x0f, 0x07, 0x0f, 0x1f, + // 0x3e, 0x7c, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + // 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, + // 0x1f, 0x0f, 0x07, 0x0f, 0xff, 0xff, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x02, 0x82, + // 0x82, 0xc2, 0xe2, 0xde, 0x0e, 0x0e, 0x06, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + // 0xff, 0x02, 0x02, 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xe0, 0xf8, 0xfc, 0x7e, + // 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, + // 0x7e, 0xfc, 0xf8, 0xe0, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x1f, + // 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, + // 0x07, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xff, 0x7f, 0x1f, 0x87, 0x83, 0x80, 0x80, + // 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, + // 0x80, 0x80, 0x83, 0x87, 0x1f, 0x7f, 0xff, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x04, 0x04, + // 0x04, 0x05, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + // 0xe0, 0x20, 0x20, 0x20, 0x20, 0x60, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x08, 0x18, 0x3c, 0x3e, 0x7f, 0xff, 0xff, 0xff, 0xef, 0xcf, 0x8f, 0x87, 0x07, 0x07, 0x07, 0x07, + // 0x07, 0xe7, 0xe7, 0xe7, 0xc7, 0x07, 0x07, 0x0f, 0x3f, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0x3f, 0x0f, 0x07, 0x07, 0xc7, 0xe7, 0xe7, 0xe7, 0x07, + // 0x07, 0x07, 0x07, 0x07, 0x87, 0x8f, 0xcf, 0xef, 0xef, 0xff, 0xff, 0x7f, 0x3e, 0x3c, 0x18, 0x08, + // 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x20, 0x20, + // 0x60, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + // 0xff, 0x20, 0x20, 0x70, 0xf8, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1e, 0x3e, 0x7c, + // 0xf8, 0xf1, 0xf1, 0xe1, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, + // 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe1, 0xf1, 0xf1, 0xf8, + // 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x20, 0x20, + // 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, + // 0x7f, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7e, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x3c, + // 0x3c, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, + // 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0e, + // 0x0e, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + // }; + oled_write_raw_P(ffkb_logo, sizeof(ffkb_logo)); + +} + + +/* +static void render_status(void) { + oled_write_P(PSTR(" Layer: "), false); + switch (get_highest_layer(layer_state|default_layer_state)) { + case _ALPHA_ALT: + oled_write_P(PSTR("Alphalt "), false); + break; + case _ALPHA: + oled_write_P(PSTR("Alpha "), false); + break; + case _NAVIGATION: + oled_write_P(PSTR("Nav "), false); + break; + case _SYMBOLS: + oled_write_P(PSTR("Symbols "), false); + break; + case _FUNCTION: + oled_write_P(PSTR("Function "), false); + break; + case _MEDIA: + oled_write_P(PSTR("Media "), false); + break; + case _MOUSE: + oled_write_P(PSTR("Mouse "), false); + break; + default: + oled_write_P(PSTR("Unkn "), false); + break; + } + + // // Write host Keyboard LED Status to OLEDs + // led_t led_usb_state = host_keyboard_led_state(); + // oled_write_P(led_usb_state.num_lock ? PSTR("NUMLCK ") : PSTR(" "), false); + // oled_write_P(led_usb_state.caps_lock ? PSTR("CAPLCK ") : PSTR(" "), false); + // oled_write_P(led_usb_state.scroll_lock ? PSTR("SCRLCK ") : PSTR(" "), false); + + // ffkb logo, 128x48px + static const char ffkb_logo_small [] PROGMEM = { + 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, + 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0x40, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xf8, 0xfe, 0x8e, 0xdc, 0xf0, 0x70, 0x60, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x70, 0xf0, 0xd8, 0x9c, 0x9e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x10, + 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x10, 0x10, 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x78, 0x7c, + 0xff, 0xd7, 0x9b, 0x18, 0x78, 0x78, 0x18, 0x30, 0x70, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, + 0x18, 0x58, 0x78, 0x18, 0x99, 0x9b, 0xf7, 0xfc, 0x78, 0x30, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x78, 0xfc, 0xfc, 0xfe, 0xff, 0xf8, 0xf0, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x10, 0x10, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x01, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x18, 0x3f, 0x7f, 0x68, 0x68, 0x3f, 0x3f, 0x0c, + 0x0c, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, + 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, 0x01, 0x0b, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x08, 0x08, 0x0c, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 + }; + oled_write_raw_P(ffkb_logo_small, sizeof(ffkb_logo_small)); +} +*/ + +/* +static void render_logo_text(void) { + oled_write_P(PSTR("ffkb"), false); +} +*/ + +bool oled_task_user(void) { + // If you don't want to display the logo, switch + if (false) { + //render_status(); + } else if (true) { + render_logo(); + } else { + //render_logo_text(); + } + return true; +} + +#endif + + +#if !defined(RGBLIGHT_ENABLE) && defined(PIMORONI_TRACKBALL_ENABLE) +layer_state_t layer_state_set_keymap(layer_state_t state) { + switch (get_highest_layer(state)) { + case _ALPHA_ALT: + if (is_caps_lock_on) { + pimoroni_trackball_set_rgbw(RGB_CYAN, 0x00); + } else { + pimoroni_trackball_set_rgbw(RGB_BLUE, 0x00); + } + break; + case _NAVIGATION: + pimoroni_trackball_set_rgbw(RGB_GREEN, 0x00); + break; + case _SYMBOLS: + pimoroni_trackball_set_rgbw(RGB_PURPLE, 0x00); + break; + case _FUNCTION: + pimoroni_trackball_set_rgbw(RGB_YELLOW, 0x00); + break; + case _MEDIA: + pimoroni_trackball_set_rgbw(RGB_ORANGE, 0x00); + break; + case _MOUSE: + pimoroni_trackball_set_rgbw(RGB_WHITE, 0x00); + break; + default: // for any other layers, or the default layer + if (is_caps_lock_on) { + pimoroni_trackball_set_rgbw(RGB_CYAN, 0x00); + } else { + pimoroni_trackball_set_rgbw(RGB_BLUE, 0x00); + } + break; + } + return state; +} +#endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/via/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/via/keymap.c new file mode 100644 index 000000000000..4f76efda9406 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/via/keymap.c @@ -0,0 +1,382 @@ +#include QMK_KEYBOARD_H + +#ifdef ENCODER_ENABLE +bool is_alt_tab_active = false; +uint16_t alt_tab_timer = 0; +#endif + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _QWERTY, + _COLEMAK, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * + * ,-----------------------------------------. ,-----------------------------------------. + * | ESC | Q | W | E | R | T | | Y | U | I | O | P |BckSpc| + * |------+------+------+------+------+------| ,------. |------+------+------+------+------+------| + * | TAB | A | S | D | F | G | |ALTTAB| | H | J | K | L | ; | ' | + * |------+------+------+------+------+------| `------' |------+------+------+------+------+------| + * | SFT | Z | X | C | V | B | | N | M | , | . | / | SFT | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +// Default config uses home row mods. So hold each of the keys on the home row to use ctrl, gui, alt, or shift +[_QWERTY] = LAYOUT_ffkb( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, LCTL_T(KC_A), LGUI_T(KC_S), LALT_T(KC_D), LSFT_T(KC_F), KC_G, KC_H, RSFT_T(KC_J), RALT_T(KC_K), RGUI_T(KC_L), RCTL_T(KC_SCLN), KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_MUTE, KC_BSLS, KC_ENT, LOWER, RAISE, KC_SPC, KC_DEL, LCTL(KC_BSPC), + LALT(KC_TAB) +), + +/* Colemak-dh + * + * ,-----------------------------------------. ,-----------------------------------------. + * | ESC | Q | W | E | R | T | | Y | U | I | O | P |BckSpc| + * |------+------+------+------+------+------| ,------. |------+------+------+------+------+------| + * | TAB | A | S | D | F | G | |ALTTAB| | H | J | K | L | ; | ' | + * |------+------+------+------+------+------| `------' |------+------+------+------+------+------| + * | SFT | Z | X | C | V | B | | N | M | , | . | / | SFT | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +// Default config uses home row mods. So hold each of the keys on the home row to use ctrl, gui, alt, or shift +[_COLEMAK] = LAYOUT_ffkb( + KC_ESC, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, + KC_TAB, LCTL_T(KC_A), LGUI_T(KC_R), LALT_T(KC_S), LSFT_T(KC_T), KC_G, KC_M, RSFT_T(KC_N), RALT_T(KC_E), RGUI_T(KC_I), RCTL_T(KC_O), KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_MUTE, KC_BSLS, KC_ENT, LOWER, RAISE, KC_SPC, KC_DEL, LCTL(KC_BSPC), + LALT(KC_TAB) +), + + +/* Raise + * + * ,-----------------------------------------. ,-----------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | | + * |------+------+------+------+------+------| ,------. |------+------+------+------+------+------| + * | Home | Left | Down | Up | Right| End | |ALTTAB| | | - | = | [ | ] | | + * |------+------+------+------+------+------| `------' |------+------+------+------+------+------| + * | | | PgDn | PgUp | | | | | | | | | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +[_RAISE] = LAYOUT_ffkb( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TAB, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, + _______, _______, KC_PGDN, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, + _______ +), + + + +/* Raise + * + * ,-----------------------------------------. ,-----------------------------------------. + * | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | | + * |------+------+------+------+------+------| ,------. |------+------+------+------+------+------| + * | | | | | | | |ALTTAB| | | _ | + | { | } | | + * |------+------+------+------+------+------| `------' |------+------+------+------+------+------| + * | | Caps| | | | | | | | | | | " | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +[_RAISE] = LAYOUT_ffkb( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TAB, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, + _______, _______, KC_PGDN, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, + _______ +), +/* Lower + * + * ,-----------------------------------------. ,-----------------------------------------. + * | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | | + * |------+------+------+------+------+------| ,------. |------+------+------+------+------+------| + * | | | | | | | |ALTTAB| | | _ | + | { | } | | + * |------+------+------+------+------+------| `------' |------+------+------+------+------+------| + * | | Caps| | | | | | | | | | | " | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ +[_LOWER] = LAYOUT_ffkb( + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + _______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, _______, + _______, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PIPE, KC_DQT, _______, + _______, _______, _______, _______, _______, _______, _______, _______, + _______ +), + +/* Adjust (Lower + Raise) + + * ,-----------------------------------------. ,-----------------------------------------. + * | | RGB_T| RGB_R| RGB_F| |QWERTY| | F1 | F2 | F3 | F4 | F5 | | + * |------+------+------+------+------+------| ,------. |------+------+------+------+------+------| + * | | SPD_I| HUE_I| SAT_I| VAL_I|COLEMK| |ALTTAB| | F6 | F7 | F8 | F9 | F10 | | + * |------+------+------+------+------+------| `------' |------+------+------+------+------+------| + * | | SPD_D| HUE_D| SAT_D| VAL_D| | | F11 | F12 | | | Reset| | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ +[_ADJUST] = LAYOUT_ffkb( + _______, RGB_TOG, RGB_RMOD, RGB_MOD, _______, TO(_QWERTY), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, + _______, RGB_SPI, RGB_HUI, RGB_SAI, RGB_VAI, TO(_COLEMAK), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, + _______, RGB_SPD, RGB_HUD, RGB_SAD, RGB_VAD, _______, KC_F11, KC_F12, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, + _______ +) +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + +#ifdef ENCODER_ENABLE +bool encoder_update_user(uint8_t index, bool clockwise) { + // default behavior if undefined + if (index == 0) { + // Conditional to reverse the direction of encoder number 1 + // The reason I have this is that for some of my boards, it supports two different types of encoders, and they may differ in direction + #ifdef ENCODERS_A_REVERSE + if (!clockwise) { + #else + if (clockwise) { + #endif + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + } + else if (index == 1) { + // Conditional to reverse the direction of encoder number 1 + // The reason I have this is that for some of my boards, it supports two different types of encoders, and they may differ in direction + #ifdef ENCODERS_B_REVERSE + if (!clockwise) { + #else + if (clockwise) { + #endif + tap_code16(C(KC_RGHT)); + } + else{ + tap_code16(C(KC_LEFT)); + } + } + else if (index == 2) { + #ifdef ENCODERS_C_REVERSE + if (!clockwise) { + #else + if (clockwise) { + #endif + register_code(KC_LSHIFT); + } + + if (!is_alt_tab_active) { + is_alt_tab_active = true; + register_code(KC_LALT); + } + alt_tab_timer = timer_read(); + tap_code(KC_TAB); + + #ifdef ENCODERS_C_REVERSE + if (!clockwise) { + #else + if (clockwise) { + #endif + unregister_code(KC_LSHIFT); + } + } + + return true; +} +#endif + +#ifdef OLED_ENABLE + + +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + return OLED_ROTATION_180; +} + + +// Commenting out logo as it takes up a lot of space :( +static void render_logo(void) { + // ffkb logo, 128x64px + static const char PROGMEM ffkb_logo[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xe0, 0xc0, 0x80, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x80, 0xc0, 0xe0, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, + 0xfe, 0x02, 0x02, 0x02, 0x82, 0x06, 0x0e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0x0f, 0x07, 0x0f, 0x1f, + 0x3e, 0x7c, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, + 0x1f, 0x0f, 0x07, 0x0f, 0xff, 0xff, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x02, 0x82, + 0x82, 0xc2, 0xe2, 0xde, 0x0e, 0x0e, 0x06, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x02, 0x02, 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xe0, 0xf8, 0xfc, 0x7e, + 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, + 0x7e, 0xfc, 0xf8, 0xe0, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x1f, + 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, + 0x07, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xff, 0x7f, 0x1f, 0x87, 0x83, 0x80, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, + 0x80, 0x80, 0x83, 0x87, 0x1f, 0x7f, 0xff, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x04, 0x04, + 0x04, 0x05, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0xe0, 0x20, 0x20, 0x20, 0x20, 0x60, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x18, 0x3c, 0x3e, 0x7f, 0xff, 0xff, 0xff, 0xef, 0xcf, 0x8f, 0x87, 0x07, 0x07, 0x07, 0x07, + 0x07, 0xe7, 0xe7, 0xe7, 0xc7, 0x07, 0x07, 0x0f, 0x3f, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0x3f, 0x0f, 0x07, 0x07, 0xc7, 0xe7, 0xe7, 0xe7, 0x07, + 0x07, 0x07, 0x07, 0x07, 0x87, 0x8f, 0xcf, 0xef, 0xef, 0xff, 0xff, 0x7f, 0x3e, 0x3c, 0x18, 0x08, + 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x20, 0x20, + 0x60, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x20, 0x20, 0x70, 0xf8, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1e, 0x3e, 0x7c, + 0xf8, 0xf1, 0xf1, 0xe1, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, + 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe1, 0xf1, 0xf1, 0xf8, + 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x20, 0x20, + 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, + 0x7f, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7e, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x3c, + 0x3c, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, + 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0e, + 0x0e, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + +}; + oled_write_raw_P(ffkb_logo, sizeof(ffkb_logo)); + +} + +/* +static void render_status(void) { + oled_write_P(PSTR(" Layer: "), false); + switch (get_highest_layer(layer_state|default_layer_state)) { + case _ALPHA_ALT: + oled_write_P(PSTR("Alphalt "), false); + break; + case _ALPHA: + oled_write_P(PSTR("Alpha "), false); + break; + case _NAVIGATION: + oled_write_P(PSTR("Nav "), false); + break; + case _SYMBOLS: + oled_write_P(PSTR("Symbols "), false); + break; + case _FUNCTION: + oled_write_P(PSTR("Function "), false); + break; + case _MEDIA: + oled_write_P(PSTR("Media "), false); + break; + case _MOUSE: + oled_write_P(PSTR("Mouse "), false); + break; + default: + oled_write_P(PSTR("Unkn "), false); + break; + } + + // // Write host Keyboard LED Status to OLEDs + // led_t led_usb_state = host_keyboard_led_state(); + // oled_write_P(led_usb_state.num_lock ? PSTR("NUMLCK ") : PSTR(" "), false); + // oled_write_P(led_usb_state.caps_lock ? PSTR("CAPLCK ") : PSTR(" "), false); + // oled_write_P(led_usb_state.scroll_lock ? PSTR("SCRLCK ") : PSTR(" "), false); + + // ffkb logo, 128x48px + static const char ffkb_logo_small [] PROGMEM = { + 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, + 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0x40, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xf8, 0xfe, 0x8e, 0xdc, 0xf0, 0x70, 0x60, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x70, 0xf0, 0xd8, 0x9c, 0x9e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x10, + 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x10, 0x10, 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x78, 0x7c, + 0xff, 0xd7, 0x9b, 0x18, 0x78, 0x78, 0x18, 0x30, 0x70, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, + 0x18, 0x58, 0x78, 0x18, 0x99, 0x9b, 0xf7, 0xfc, 0x78, 0x30, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x78, 0xfc, 0xfc, 0xfe, 0xff, 0xf8, 0xf0, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x10, 0x10, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x01, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x18, 0x3f, 0x7f, 0x68, 0x68, 0x3f, 0x3f, 0x0c, + 0x0c, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, + 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, 0x01, 0x0b, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x08, 0x08, 0x0c, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 + }; + oled_write_raw_P(ffkb_logo_small, sizeof(ffkb_logo_small)); +} +*/ + +bool oled_task_user(void) { + // If you don't want to display the logo, switch + if (false) { + //render_status(); + } else if (true) { + render_logo(); + } else { + //render_logo_text(); + } + return true; +} + +#endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/via/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/via/rules.mk new file mode 100644 index 000000000000..1e5b99807cb7 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/kle-via.json b/keyboards/fingerpunch/ffkb_byomcu/v2/kle-via.json new file mode 100755 index 000000000000..06afa3b70723 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/kle-via.json @@ -0,0 +1,310 @@ +[ + [ + { + "y": 4, + "x": 7 + }, + "3,9\nenc2" + ], + [ + { + "r": 15, + "rx": 1, + "y": -0.09999999999999998, + "x": 3 + }, + "0,3" + ], + [ + { + "y": -0.65, + "x": 2 + }, + "0,2", + { + "x": 1 + }, + "0,4" + ], + [ + { + "y": -0.85, + "x": 5 + }, + "0,5" + ], + [ + { + "y": -0.4999999999999999, + "x": 3, + "c": "#5dd971" + }, + "1,3\nAlt" + ], + [ + { + "y": -0.8999999999999999, + "x": 1, + "c": "#cccccc" + }, + "0,1" + ], + [ + { + "y": -0.75, + "x": 2, + "c": "#5dd971" + }, + "1,2\nWin", + { + "x": 1 + }, + "1,4\nShift" + ], + [ + { + "y": -0.8775, + "c": "#cccccc" + }, + "0,0" + ], + [ + { + "y": -0.9725000000000001, + "x": 5 + }, + "1,5" + ], + [ + { + "y": -0.5, + "x": 3 + }, + "2,3" + ], + [ + { + "y": -0.8999999999999999, + "x": 1, + "c": "#5dd971" + }, + "1,1\nCtrl" + ], + [ + { + "y": -0.75, + "x": 2, + "c": "#cccccc" + }, + "2,2", + { + "x": 1 + }, + "2,4" + ], + [ + { + "y": -0.8775 + }, + "1,0" + ], + [ + { + "y": -0.9725000000000001, + "x": 5 + }, + "2,5" + ], + [ + { + "y": -0.3999999999999999, + "x": 1 + }, + "2,1" + ], + [ + { + "y": -0.6275 + }, + "2,0" + ], + [ + { + "y": -0.6225000000000005, + "x": 2.5 + }, + "3,1\nenc1", + { + "x": 0.5 + }, + "3,3" + ], + [ + { + "r": 25, + "y": -1.9500000000000002, + "x": 5.8 + }, + "3,4" + ], + [ + { + "r": 35, + "y": -2.1999999999999997, + "x": 7.4 + }, + "3,5" + ], + [ + { + "r": -35, + "rx": 10.65, + "ry": 4.5, + "y": -0.25, + "x": -3.1000000000000005 + }, + "3,6" + ], + [ + { + "r": -25, + "y": -0.6500000000000004, + "x": -1.9000000000000004 + }, + "3,7" + ], + [ + { + "r": -15, + "y": -0.8499999999999996, + "x": -0.6500000000000004 + }, + "3,8", + { + "x": 0.5 + }, + "3,10\nenc3" + ], + [ + { + "rx": 11, + "ry": 4.3, + "y": -3.535 + }, + "0,8" + ], + [ + { + "y": -0.6499999999999999, + "x": -1 + }, + "0,7", + { + "x": 1 + }, + "0,9" + ], + [ + { + "y": -0.8499999999999999, + "x": -2 + }, + "0,6" + ], + [ + { + "y": -0.5, + "c": "#5dd971" + }, + "1,8\nAlt" + ], + [ + { + "y": -0.8999999999999997, + "x": 2, + "c": "#cccccc" + }, + "0,10" + ], + [ + { + "y": -0.7500000000000004, + "x": -1, + "c": "#5dd971" + }, + "1,7\nShift", + { + "x": 1 + }, + "1,9\nWin" + ], + [ + { + "y": -0.8775, + "x": 3, + "c": "#cccccc" + }, + "0,11" + ], + [ + { + "y": -0.9724999999999997, + "x": -2 + }, + "1,6" + ], + [ + { + "y": -0.5000000000000004 + }, + "2,8" + ], + [ + { + "y": -0.8999999999999995, + "x": 2, + "c": "#5dd971" + }, + "1,10\nCtrl" + ], + [ + { + "y": -0.7500000000000004, + "x": -1, + "c": "#cccccc" + }, + "2,7", + { + "x": 1 + }, + "2,9" + ], + [ + { + "y": -0.8912500000000003, + "x": 3 + }, + "1,11" + ], + [ + { + "y": -0.9737499999999999, + "x": -2 + }, + "2,6" + ], + [ + { + "y": -0.3849999999999998, + "x": 2 + }, + "2,10" + ], + [ + { + "y": -0.6412500000000003, + "x": 3 + }, + "2,11" + ] +] \ No newline at end of file diff --git a/keyboards/fingerpunch/ffkb_byomcu/readme.md b/keyboards/fingerpunch/ffkb_byomcu/v2/readme.md similarity index 89% rename from keyboards/fingerpunch/ffkb_byomcu/readme.md rename to keyboards/fingerpunch/ffkb_byomcu/v2/readme.md index 5111e7c21f72..32340a6b14e8 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/readme.md +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/readme.md @@ -25,8 +25,4 @@ Options are: PIMORONI_TRACKBALL_ENABLE=yes ``` -Example of flashing this keyboard: - - make fingerpunch/ffkb_byomcu/rgblight_oled_ec11:default:flash - See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/fingerpunch/ffkb_byomcu/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk similarity index 100% rename from keyboards/fingerpunch/ffkb_byomcu/rules.mk rename to keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/v2.h b/keyboards/fingerpunch/ffkb_byomcu/v2/v2.h new file mode 100644 index 000000000000..f79495353465 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/v2.h @@ -0,0 +1,44 @@ +/* Copyright 2021-2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#pragma once + +#include "quantum.h" + +/* This a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ + +// 1-40 are the keyswitches, and 50 and 51 are the rotary encoders +#define LAYOUT_ffkb( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ + K32, K34, K35, K36, K37, K38, K39, K3B, \ + K3A \ +) \ +{ \ + { K01, K02, K03, K04, K05, K06, K07, K08 }, \ + { K11, K12, K13, K14, K15, K16, K17, K18 }, \ + { K21, K22, K23, K24, K25, K26, K27, K28 }, \ + { KC_NO, KC_NO, K19, K2A, K0A, K1B, K2B, K0C }, \ + { KC_NO, K3A, K29, K09, K1A, K0B, K2C, K1C }, \ + { K3B, K32, K39, K34, K35, K36, K37, K38 } \ +} diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/config.h b/keyboards/fingerpunch/ffkb_byomcu/v3/config.h new file mode 100644 index 000000000000..6deffb10cd19 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/config.h @@ -0,0 +1,81 @@ +/* +Copyright 2021 Sadek Baroudi + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once +#include "config_common.h" + + +/* USB Device descriptor parameter */ +#define DEVICE_VER 0x0003 + +/* key matrix size */ +/* Rows are doubled up */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 8 + +// SHIFT REGISTER +// Only needed for matrix_74hc595_spi.c +#define SHIFTREG_MATRIX_COL_CS B6 +#define SHIFTREG_DIVISOR 8 // needs to be the same as the PMW33XX_CS_DIVISOR below +#define MATRIX_ROW_PINS_SR { D2, F4, F5, F6, F7, D4 } + +// SPI config for shift register (and trackball if enabled) +#define SPI_DRIVER SPID1 +#define SPI_SCK_PIN B1 +#define SPI_SCK_PAL_MODE 5 +#define SPI_MOSI_PIN B2 +#define SPI_MOSI_PAL_MODE 5 +#define SPI_MISO_PIN B3 +#define SPI_MISO_PAL_MODE 5 + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +#define ENCODERS_PAD_A {C6, E6} +#define ENCODERS_PAD_B {D7, B4} + + +#ifdef FP_EVQ +#define ENCODERS_A_REVERSE +#define ENCODERS_B_REVERSE +#endif + +#ifdef FP_EC11 +#define ENCODERS_C_REVERSE +#endif + +#define ENCODER_RESOLUTION 2 + +#ifdef CIRQUE_ENABLE + // cirque trackpad config + #define CIRQUE_PINNACLE_ADDR 0x2A + #define POINTING_DEVICE_ROTATION_90 + #define CIRQUE_PINNACLE_TAP_ENABLE + #define POINTING_DEVICE_TASK_THROTTLE_MS 5 + #define I2C1_CLOCK_SPEED 400000 + #define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 +#endif + +#ifdef FP_TRACKBALL_ENABLE + // Trackball config + #define PMW33XX_CS_PIN B5 + #define PMW33XX_CPI 800 + #define PMW33XX_CS_DIVISOR 8 // needs to be the same as the SHIFTREG_DIVISOR above + #define POINTING_DEVICE_INVERT_Y +#endif + +#define DYNAMIC_KEYMAP_LAYER_COUNT 5 diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/fp_build.json b/keyboards/fingerpunch/ffkb_byomcu/v3/fp_build.json new file mode 100644 index 000000000000..ae4d3a65aae0 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/fp_build.json @@ -0,0 +1,22 @@ +[ + { + "type" : "single", + "name" : "CIRQUE_ENABLE", + "user_input": "Do you have a cirque?" + }, + { + "type" : "single", + "name" : "FP_TRACKBALL_ENABLE", + "user_input": "Do you have a trackball?" + }, + { + "type" : "one-of", + "names" : [ "RGBLIGHT_ENABLE", "RGB_MATRIX_ENABLE" ], + "user_input": "No RGB, RGB light, RGB matrix?" + }, + { + "type" : "one-of", + "names" : [ "FP_EC11", "FP_EVQ" ], + "user_input": "No rotary encoders, EC11, or EVQ?" + } +] \ No newline at end of file diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/halconf.h b/keyboards/fingerpunch/ffkb_byomcu/v3/halconf.h new file mode 100644 index 000000000000..482d3eba6498 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/halconf.h @@ -0,0 +1,25 @@ +/* + * Copyright 2022 Charly Delay (@0xcharly) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once + +#define HAL_USE_SERIAL TRUE +#define HAL_USE_SPI TRUE +#define SPI_USE_WAIT TRUE +#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD + +#include_next "halconf.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/keymap.c new file mode 100644 index 000000000000..ec50f1afebd4 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/keymap.c @@ -0,0 +1,205 @@ +#include QMK_KEYBOARD_H + +#ifdef ENCODER_ENABLE +bool is_alt_tab_active = false; +uint16_t alt_tab_timer = 0; +#endif + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _QWERTY, + _COLEMAK, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * + * ,-----------------------------------------. ,-----------------------------------------. + * | ESC | Q | W | E | R | T | | Y | U | I | O | P |BckSpc| + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | TAB | A | S | D | F | G | | H | J | K | L | ; | ' | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | SFT | Z | X | C | V | B | | N | M | , | . | / | SFT | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +// Default config uses home row mods. So hold each of the keys on the home row to use ctrl, gui, alt, or shift +[_QWERTY] = LAYOUT_ffkb( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, LCTL_T(KC_A), LGUI_T(KC_S), LALT_T(KC_D), LSFT_T(KC_F), KC_G, KC_H, RSFT_T(KC_J), RALT_T(KC_K), RGUI_T(KC_L), RCTL_T(KC_SCLN), KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_MUTE, KC_BSLS, KC_ENT, LOWER, RAISE, KC_SPC, KC_DEL, LCTL(KC_BSPC) +), + +/* Colemak-dh + * + * ,-----------------------------------------. ,-----------------------------------------. + * | ESC | Q | W | E | R | T | | Y | U | I | O | P |BckSpc| + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | TAB | A | S | D | F | G | | H | J | K | L | ; | ' | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | SFT | Z | X | C | V | B | | N | M | , | . | / | SFT | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +// Default config uses home row mods. So hold each of the keys on the home row to use ctrl, gui, alt, or shift +[_COLEMAK] = LAYOUT_ffkb( + KC_ESC, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, + KC_TAB, LCTL_T(KC_A), LGUI_T(KC_R), LALT_T(KC_S), LSFT_T(KC_T), KC_G, KC_M, RSFT_T(KC_N), RALT_T(KC_E), RGUI_T(KC_I), RCTL_T(KC_O), KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_MUTE, KC_BSLS, KC_ENT, LOWER, RAISE, KC_SPC, KC_DEL, LCTL(KC_BSPC) +), + + +/* Raise + * + * ,-----------------------------------------. ,-----------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | Home | Left | Down | Up | Right| End | | | - | = | [ | ] | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | PgDn | PgUp | | | | | | | | | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +[_RAISE] = LAYOUT_ffkb( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TAB, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, + _______, _______, KC_PGDN, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ +), + + + +/* Raise + * + * ,-----------------------------------------. ,-----------------------------------------. + * | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | | | | _ | + | { | } | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | Caps| | | | | | | | | | | " | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +[_RAISE] = LAYOUT_ffkb( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TAB, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, + _______, _______, KC_PGDN, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ +), +/* Lower + * + * ,-----------------------------------------. ,-----------------------------------------. + * | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | | | | _ | + | { | } | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | Caps| | | | | | | | | | | " | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ +[_LOWER] = LAYOUT_ffkb( + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + _______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, _______, + _______, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PIPE, KC_DQT, _______, + _______, _______, _______, _______, _______, _______, _______, _______ +), + +/* Adjust (Lower + Raise) + + * ,-----------------------------------------. ,-----------------------------------------. + * | | RGB_T| RGB_R| RGB_F| |QWERTY| | F1 | F2 | F3 | F4 | F5 | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | SPD_I| HUE_I| SAT_I| VAL_I|COLEMK| | F6 | F7 | F8 | F9 | F10 | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | SPD_D| HUE_D| SAT_D| VAL_D| | | F11 | F12 | | | Reset| | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ +[_ADJUST] = LAYOUT_ffkb( + _______, RGB_TOG, RGB_RMOD, RGB_MOD, _______, TO(_QWERTY), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, + _______, RGB_SPI, RGB_HUI, RGB_SAI, RGB_VAI, TO(_COLEMAK), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, + _______, RGB_SPD, RGB_HUD, RGB_SAD, RGB_VAD, _______, KC_F11, KC_F12, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______ +) +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + +#ifdef ENCODER_ENABLE + +void press_super_alt_tab(bool shift) { + if (shift) { + register_code(KC_LSHIFT); + } + if (!is_alt_tab_active) { + is_alt_tab_active = true; + register_code(KC_LALT); + } + alt_tab_timer = timer_read(); + tap_code(KC_TAB); + if (shift) { + unregister_code(KC_LSHIFT); + } +} + +bool encoder_update_user(uint8_t index, bool clockwise) { + // default behavior if undefined + if (index == 0) { + // Conditional to reverse the direction of encoder number 1 + // The reason I have this is that for some of my boards, it supports two different types of encoders, and they may differ in direction + #ifdef ENCODERS_A_REVERSE + if (!clockwise) { + #else + if (clockwise) { + #endif + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + } + else if (index == 1) { + // Conditional to reverse the direction of encoder number 1 + // The reason I have this is that for some of my boards, it supports two different types of encoders, and they may differ in direction + #ifdef ENCODERS_B_REVERSE + if (!clockwise) { + #else + if (clockwise) { + #endif + press_super_alt_tab(true); + } + else{ + press_super_alt_tab(false); + } + } + + return true; +} +#endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/manna-harbour_miryoku/config.h b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/manna-harbour_miryoku/config.h new file mode 100644 index 000000000000..ea24a2468551 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/manna-harbour_miryoku/config.h @@ -0,0 +1,21 @@ +// Copyright 2022 Manna Harbour +// https://github.com/manna-harbour/miryoku + +// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . + +#pragma once + +#define XXX KC_NO + +#define LAYOUT_miryoku( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \ + N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \ +) \ +LAYOUT_ffkb( \ +XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \ +XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \ +XXX, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, XXX, \ + XXX, K32, K33, K34, K35, K36, K37, XXX \ +) diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/manna-harbour_miryoku/keymap.c new file mode 100644 index 000000000000..fadfdc83651a --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/manna-harbour_miryoku/keymap.c @@ -0,0 +1,4 @@ +// Copyright 2022 Manna Harbour +// https://github.com/manna-harbour/miryoku + +// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/sadekbaroudi/keymap.c new file mode 100644 index 000000000000..18356e32cbc0 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/sadekbaroudi/keymap.c @@ -0,0 +1,96 @@ +/* Copyright 2021 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "sadekbaroudi.h" +#include QMK_KEYBOARD_H + +/* + * The `LAYOUT_ffkb_base` macro is a template to allow the use of identical + * modifiers for the default layouts (eg ALPHA_ALT, Colemak, Dvorak, etc), so + * that there is no need to set them up for each layout, and modify all of + * them if I want to change them. This helps to keep consistency and ease + * of use. K## is a placeholder to pass through the individual keycodes + */ + +// clang-format off +#define LAYOUT_ffkb_base( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \ + K33, K34, K35, K36, K37, K38 \ + ) \ + LAYOUT_wrapper( \ + KC_MS_BTN3, K01, K02, K03, LT(_FUNCTION, K04), K05, K06, LT(_FUNCTION, K07), K08, K09, K0A, KC_BSLS, \ + KC_MS_BTN1, LCTL_T(K11), LGUI_T(K12), LALT_T(K13), LSFT_T(K14), K15, LT(_MOUSE, K16), RSFT_T(K17), RALT_T(K18), RGUI_T(K19), RCTL_T(K1A), LCTL(KC_V), \ + KC_MS_BTN2, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, S_ALT_TAB, \ + KC_MUTE, K33, LT(_NAVIGATION,K34), LT(_FUNCTION,K35), LT(_MEDIA,K36), LT(_SYMBOLS,K37), K38, LCTL(KC_BSPC) \ + ) + +/* Re-pass though to allow templates to be used */ +#define LAYOUT_ffkb_byomcu_base_wrapper(...) LAYOUT_ffkb_base(__VA_ARGS__) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_ALPHA_ALT] = LAYOUT_ffkb_byomcu_base_wrapper( + _________________ALPHA_ALT_L1_________________, _________________ALPHA_ALT_R1_________________, + _________________ALPHA_ALT_L2_________________, _________________ALPHA_ALT_R2_________________, + _________________ALPHA_ALT_L3_________________, _________________ALPHA_ALT_R3_________________, + __ALPHA_ALT_THUMBS_6__ + ), + + [_ALPHA] = LAYOUT_ffkb_byomcu_base_wrapper( + __________________ALPHA_L1____________________, __________________ALPHA_R1____________________, + __________________ALPHA_L2____________________, __________________ALPHA_R2____________________, + __________________ALPHA_L3____________________, __________________ALPHA_R3____________________, + __ALPHA_THUMBS_6__ + ), + + [_NAVIGATION] = LAYOUT_wrapper( + _______, ________________NAVIGATION_1_______________, _________________NUMPAD_1__________________, _______, + _______, ________________NAVIGATION_2_______________, _________________NUMPAD_2__________________, _______, + _______, ________________NAVIGATION_3_______________, _________________NUMPAD_3__________________, _______, + _______, _______, _______, KC_TAB, KC_BSPC, KC_SPACE, KC_DOT, _______ + ), + + [_SYMBOLS] = LAYOUT_wrapper( + _______, ________________SYMBOLS_L1_________________, ________________SYMBOLS_R1_________________, _______, + _______, ________________SYMBOLS_L2_________________, ________________SYMBOLS_R2_________________, _______, + _______, ________________SYMBOLS_L3_________________, ________________SYMBOLS_R3_________________, _______, + _______, _______, KC_ENT, KC_DEL, KC_BSPC, _______, _______, _______ + ), + + [_FUNCTION] = LAYOUT_wrapper( + _______, ________________SHIFTNAV_1_________________, ________________FUNCTION_1_________________, _______, + _______, ________________SHIFTNAV_2_________________, ________________FUNCTION_2_________________, _______, + _______, ________________SHIFTNAV_3_________________, ________________FUNCTION_3_________________, _______, + _______, _______, _______, _______, N_DEL_LINE, KC_SPACE, _______, _______ + ), + + [_MEDIA] = LAYOUT_wrapper( + _______, ___________________RGB_1___________________, _________________MACROS_1__________________, _______, + _______, ___________________RGB_2___________________, _________________MACROS_2__________________, _______, + _______, ___________________RGB_3___________________, _________________MACROS_3__________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + + [_MOUSE] = LAYOUT_wrapper( + _______, __________________MOUSE_1__________________, ___________________BLANK___________________, _______, + _______, __________________MOUSE_2__________________, ___________________BLANK___________________, _______, + _______, __________________MOUSE_3__________________, ___________________BLANK___________________, _______, + _______, _______, KC_MS_BTN1, KC_MS_BTN3, KC_MS_BTN3, KC_MS_BTN2, _______, _______ + ) +}; + diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/via/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/via/keymap.c new file mode 100644 index 000000000000..8c89b303e66d --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/via/keymap.c @@ -0,0 +1,189 @@ +#include QMK_KEYBOARD_H + +#ifdef ENCODER_ENABLE +bool is_alt_tab_active = false; +uint16_t alt_tab_timer = 0; +#endif + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _QWERTY, + _COLEMAK, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * + * ,-----------------------------------------. ,-----------------------------------------. + * | ESC | Q | W | E | R | T | | Y | U | I | O | P |BckSpc| + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | TAB | A | S | D | F | G | | H | J | K | L | ; | ' | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | SFT | Z | X | C | V | B | | N | M | , | . | / | SFT | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +// Default config uses home row mods. So hold each of the keys on the home row to use ctrl, gui, alt, or shift +[_QWERTY] = LAYOUT_ffkb( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, LCTL_T(KC_A), LGUI_T(KC_S), LALT_T(KC_D), LSFT_T(KC_F), KC_G, KC_H, RSFT_T(KC_J), RALT_T(KC_K), RGUI_T(KC_L), RCTL_T(KC_SCLN), KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_MUTE, KC_BSLS, KC_ENT, LOWER, RAISE, KC_SPC, KC_DEL, LCTL(KC_BSPC) +), + +/* Colemak-dh + * + * ,-----------------------------------------. ,-----------------------------------------. + * | ESC | Q | W | E | R | T | | Y | U | I | O | P |BckSpc| + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | TAB | A | S | D | F | G | | H | J | K | L | ; | ' | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | SFT | Z | X | C | V | B | | N | M | , | . | / | SFT | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +// Default config uses home row mods. So hold each of the keys on the home row to use ctrl, gui, alt, or shift +[_COLEMAK] = LAYOUT_ffkb( + KC_ESC, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, + KC_TAB, LCTL_T(KC_A), LGUI_T(KC_R), LALT_T(KC_S), LSFT_T(KC_T), KC_G, KC_M, RSFT_T(KC_N), RALT_T(KC_E), RGUI_T(KC_I), RCTL_T(KC_O), KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_MUTE, KC_BSLS, KC_ENT, LOWER, RAISE, KC_SPC, KC_DEL, LCTL(KC_BSPC) +), + + +/* Raise + * + * ,-----------------------------------------. ,-----------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | Home | Left | Down | Up | Right| End | | | - | = | [ | ] | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | PgDn | PgUp | | | | | | | | | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +[_RAISE] = LAYOUT_ffkb( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TAB, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, + _______, _______, KC_PGDN, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ +), + + + +/* Raise + * + * ,-----------------------------------------. ,-----------------------------------------. + * | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | | | | _ | + | { | } | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | Caps| | | | | | | | | | | " | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +[_RAISE] = LAYOUT_ffkb( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TAB, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, + _______, _______, KC_PGDN, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ +), +/* Lower + * + * ,-----------------------------------------. ,-----------------------------------------. + * | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | | | | _ | + | { | } | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | Caps| | | | | | | | | | | " | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ +[_LOWER] = LAYOUT_ffkb( + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + _______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, _______, + _______, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PIPE, KC_DQT, _______, + _______, _______, _______, _______, _______, _______, _______, _______ +), + +/* Adjust (Lower + Raise) + + * ,-----------------------------------------. ,-----------------------------------------. + * | | RGB_T| RGB_R| RGB_F| |QWERTY| | F1 | F2 | F3 | F4 | F5 | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | SPD_I| HUE_I| SAT_I| VAL_I|COLEMK| | F6 | F7 | F8 | F9 | F10 | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | SPD_D| HUE_D| SAT_D| VAL_D| | | F11 | F12 | | | Reset| | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ +[_ADJUST] = LAYOUT_ffkb( + _______, RGB_TOG, RGB_RMOD, RGB_MOD, _______, TO(_QWERTY), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, + _______, RGB_SPI, RGB_HUI, RGB_SAI, RGB_VAI, TO(_COLEMAK), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, + _______, RGB_SPD, RGB_HUD, RGB_SAD, RGB_VAD, _______, KC_F11, KC_F12, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______ +) +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + +#ifdef ENCODER_ENABLE +bool encoder_update_user(uint8_t index, bool clockwise) { + // default behavior if undefined + if (index == 0) { + // Conditional to reverse the direction of encoder number 1 + // The reason I have this is that for some of my boards, it supports two different types of encoders, and they may differ in direction + #ifdef ENCODERS_A_REVERSE + if (!clockwise) { + #else + if (clockwise) { + #endif + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + } + else if (index == 1) { + // Conditional to reverse the direction of encoder number 1 + // The reason I have this is that for some of my boards, it supports two different types of encoders, and they may differ in direction + #ifdef ENCODERS_B_REVERSE + if (!clockwise) { + #else + if (clockwise) { + #endif + tap_code16(C(KC_RGHT)); + } + else{ + tap_code16(C(KC_LEFT)); + } + } + + return true; +} +#endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/via/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/via/rules.mk new file mode 100644 index 000000000000..1e5b99807cb7 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/kle-via.json b/keyboards/fingerpunch/ffkb_byomcu/v3/kle-via.json new file mode 100755 index 000000000000..06afa3b70723 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/kle-via.json @@ -0,0 +1,310 @@ +[ + [ + { + "y": 4, + "x": 7 + }, + "3,9\nenc2" + ], + [ + { + "r": 15, + "rx": 1, + "y": -0.09999999999999998, + "x": 3 + }, + "0,3" + ], + [ + { + "y": -0.65, + "x": 2 + }, + "0,2", + { + "x": 1 + }, + "0,4" + ], + [ + { + "y": -0.85, + "x": 5 + }, + "0,5" + ], + [ + { + "y": -0.4999999999999999, + "x": 3, + "c": "#5dd971" + }, + "1,3\nAlt" + ], + [ + { + "y": -0.8999999999999999, + "x": 1, + "c": "#cccccc" + }, + "0,1" + ], + [ + { + "y": -0.75, + "x": 2, + "c": "#5dd971" + }, + "1,2\nWin", + { + "x": 1 + }, + "1,4\nShift" + ], + [ + { + "y": -0.8775, + "c": "#cccccc" + }, + "0,0" + ], + [ + { + "y": -0.9725000000000001, + "x": 5 + }, + "1,5" + ], + [ + { + "y": -0.5, + "x": 3 + }, + "2,3" + ], + [ + { + "y": -0.8999999999999999, + "x": 1, + "c": "#5dd971" + }, + "1,1\nCtrl" + ], + [ + { + "y": -0.75, + "x": 2, + "c": "#cccccc" + }, + "2,2", + { + "x": 1 + }, + "2,4" + ], + [ + { + "y": -0.8775 + }, + "1,0" + ], + [ + { + "y": -0.9725000000000001, + "x": 5 + }, + "2,5" + ], + [ + { + "y": -0.3999999999999999, + "x": 1 + }, + "2,1" + ], + [ + { + "y": -0.6275 + }, + "2,0" + ], + [ + { + "y": -0.6225000000000005, + "x": 2.5 + }, + "3,1\nenc1", + { + "x": 0.5 + }, + "3,3" + ], + [ + { + "r": 25, + "y": -1.9500000000000002, + "x": 5.8 + }, + "3,4" + ], + [ + { + "r": 35, + "y": -2.1999999999999997, + "x": 7.4 + }, + "3,5" + ], + [ + { + "r": -35, + "rx": 10.65, + "ry": 4.5, + "y": -0.25, + "x": -3.1000000000000005 + }, + "3,6" + ], + [ + { + "r": -25, + "y": -0.6500000000000004, + "x": -1.9000000000000004 + }, + "3,7" + ], + [ + { + "r": -15, + "y": -0.8499999999999996, + "x": -0.6500000000000004 + }, + "3,8", + { + "x": 0.5 + }, + "3,10\nenc3" + ], + [ + { + "rx": 11, + "ry": 4.3, + "y": -3.535 + }, + "0,8" + ], + [ + { + "y": -0.6499999999999999, + "x": -1 + }, + "0,7", + { + "x": 1 + }, + "0,9" + ], + [ + { + "y": -0.8499999999999999, + "x": -2 + }, + "0,6" + ], + [ + { + "y": -0.5, + "c": "#5dd971" + }, + "1,8\nAlt" + ], + [ + { + "y": -0.8999999999999997, + "x": 2, + "c": "#cccccc" + }, + "0,10" + ], + [ + { + "y": -0.7500000000000004, + "x": -1, + "c": "#5dd971" + }, + "1,7\nShift", + { + "x": 1 + }, + "1,9\nWin" + ], + [ + { + "y": -0.8775, + "x": 3, + "c": "#cccccc" + }, + "0,11" + ], + [ + { + "y": -0.9724999999999997, + "x": -2 + }, + "1,6" + ], + [ + { + "y": -0.5000000000000004 + }, + "2,8" + ], + [ + { + "y": -0.8999999999999995, + "x": 2, + "c": "#5dd971" + }, + "1,10\nCtrl" + ], + [ + { + "y": -0.7500000000000004, + "x": -1, + "c": "#cccccc" + }, + "2,7", + { + "x": 1 + }, + "2,9" + ], + [ + { + "y": -0.8912500000000003, + "x": 3 + }, + "1,11" + ], + [ + { + "y": -0.9737499999999999, + "x": -2 + }, + "2,6" + ], + [ + { + "y": -0.3849999999999998, + "x": 2 + }, + "2,10" + ], + [ + { + "y": -0.6412500000000003, + "x": 3 + }, + "2,11" + ] +] \ No newline at end of file diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/matrix_74hc595_spi.c b/keyboards/fingerpunch/ffkb_byomcu/v3/matrix_74hc595_spi.c new file mode 100644 index 000000000000..ac743545c3e9 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/matrix_74hc595_spi.c @@ -0,0 +1,150 @@ +// Copyright 2022 @sadekbaroudi (Sadek Baroudi) +// SPDX-License-Identifier: GPL-3.0-or-later +#include "quantum.h" +#include "spi_master.h" +#include /* memset */ +#include /* close */ +#include "quantum.h" +#include "matrix.h" +// added for testing with SR_DEBUG_RATIO, remove when done +#include +#include +// end testing + +#define SR_DEBUG_RATIO 10000 + +#if (!defined(SHIFTREG_MATRIX_COL_CS)) +# error Missing shift register I/O pin definitions +#endif + +int matrixArraySize = MATRIX_ROWS * sizeof(matrix_row_t); +matrix_row_t oldMatrix[MATRIX_ROWS]; + +#define SHIFTREG_OUTPUT_BITS 8 +pin_t rowPinsSR[MATRIX_ROWS] = MATRIX_ROW_PINS_SR; + +// semaphore to make sure SPI doesn't get called multiple times +static bool shiftRegisterSPILocked = false; + +void semaphore_lock(bool value) { + shiftRegisterSPILocked = value; +} + +bool semaphore_is_locked(void) { + return shiftRegisterSPILocked; +} + +void sr_74hc595_spi_stop(void) { + spi_stop(); + semaphore_lock(false); +} + +bool sr_74hc595_spi_start(void) { + if (!spi_start(SHIFTREG_MATRIX_COL_CS, false, 0, SHIFTREG_DIVISOR)) { + xprintf("74hc595 matrix: failed to start spi\n"); + sr_74hc595_spi_stop(); + return false; + } + + semaphore_lock(true); + wait_us(1); // not sure if I need this + return true; +} + +bool sr_74hc595_spi_send_byte(uint8_t data) { + sr_74hc595_spi_start(); + writePinLow(SHIFTREG_MATRIX_COL_CS); + matrix_io_delay(); + // spi_status_t spiResponse = spi_write(data); + spi_write(data); + // Status is irrelevant as we don't have a MISO pin to check if it succeeded + // if (spiResponse != SPI_STATUS_SUCCESS) { + // xprintf("74hc595 matrix: failed to send data over SPI: response %d\n", spiResponse); + // writePinHigh(SHIFTREG_MATRIX_COL_CS); + // sr_74hc595_spi_stop(); + // return false; + // } + matrix_io_delay(); + writePinHigh(SHIFTREG_MATRIX_COL_CS); + sr_74hc595_spi_stop(); + return true; +} + +/** + * Set the entire shift register to be full of inactive bits + */ +void clearColumns(void) { + uint8_t value = 0b00000000; + sr_74hc595_spi_send_byte(value); +} + +void setColumn(int columnShift, bool test_run) { + uint8_t columnShiftByte = ((uint8_t)1 << columnShift); + if(test_run) { + xprintf("byte sent: %d\n", columnShiftByte); + } + sr_74hc595_spi_send_byte(columnShiftByte); +} + +/* + * override of the qmk intialization function + */ +void matrix_init_custom(void) { + wait_ms(300); + spi_init(); + // Set up the initial states for all the row pins + for (int r = 0; r < MATRIX_ROWS; r++) { + // Note: This needs to use the internal pull down resistors, and atmegas do *not* support that + setPinInputLow(rowPinsSR[r]); + } + + // Set the CS to low by default, and specify as an output pin + writePinHigh(SHIFTREG_MATRIX_COL_CS); // should be high when using SPI? + setPinOutput(SHIFTREG_MATRIX_COL_CS); + + // Since it's the init, deactivate all the columns. We'll activate once we get to the matrix scan + clearColumns(); +} + +bool matrix_scan_custom(matrix_row_t current_matrix[]) { + // respect the semaphore + if (semaphore_is_locked()) { + return false; + } + + // Keep track of if something was modified + bool matrix_has_changed = false; + + // reset the current matrix, as we'll be updating and comparing to the old matrix + memset(current_matrix, 0, matrixArraySize); + + bool debug_output = ((rand() % SR_DEBUG_RATIO) == 1); + // Loop through the columns, activating one at a time, and read the rows, and place in the new current_matrix + for (int c = 0; c < MATRIX_COLS; c++) { + if (debug_output) { + xprintf("column iteration: %d\n", c); + } + setColumn(c, debug_output); + matrix_io_delay(); + + for (int r = 0; r < MATRIX_ROWS; r++) { + current_matrix[r] |= ((readPin(rowPinsSR[r]) ? 1 : 0) << c); + } + } + + matrix_has_changed = memcmp(current_matrix, oldMatrix, matrixArraySize) != 0; + memcpy(oldMatrix, current_matrix, matrixArraySize); + + if (matrix_has_changed) { + matrix_print(); + } + // matrix_print(); + // xprintf("matrix_has_changed: %d\n", matrix_has_changed); + + // Deactivate all the columns for the next run. + clearColumns(); + matrix_io_delay(); + + return matrix_has_changed; +} + diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/mcuconf.h b/keyboards/fingerpunch/ffkb_byomcu/v3/mcuconf.h new file mode 100644 index 000000000000..57de50198b41 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/mcuconf.h @@ -0,0 +1,25 @@ +#pragma once + +#include_next "mcuconf.h" + +#undef STM32_SPI_USE_SPI0 +#define STM32_SPI_USE_SPI0 TRUE + +// Added because of this error at compile time +/* +Compiling: keyboards/fingerpunch/ffkb_byomcu/v3/matrix_74hc595_spi.c In file included from ./lib/chibios/os/hal/include/hal_spi_v2.h:146:0, + from ./lib/chibios/os/hal/include/hal_spi.h:31, + from ./lib/chibios/os/hal/include/hal.h:315, + from platforms/chibios/platform_deps.h:18, + from quantum/quantum.h:18, + from keyboards/fingerpunch/ffkb_byomcu/v3/matrix_74hc595_spi.c:3: +./lib/chibios/os/hal/ports/STM32/LLD/SPIv1/hal_spi_v2_lld.h:282:2: error: #error "SPI driver activated but no SPI peripheral assigned" + #error "SPI driver activated but no SPI peripheral assigned" + ^~~~~ + [ERRORS] +*/ +#undef STM32_SPI_USE_SPI1 +#define STM32_SPI_USE_SPI1 TRUE + +#undef STM32_ST_USE_TIMER +#define STM32_ST_USE_TIMER 5 \ No newline at end of file diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/readme.md b/keyboards/fingerpunch/ffkb_byomcu/v3/readme.md new file mode 100644 index 000000000000..e41f06b41601 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/readme.md @@ -0,0 +1,26 @@ +# ffkb + +An ergonomic 30% keyboard + +* Keyboard Maintainer: [sadekbaroudi](https://github.com/sadekbaroudi) + +Faux fox keyboard (ffkb) + +Make example for this keyboard (after setting up your build environment): +``` + make fingerpunch/ffkb_byomcu:default RGBLIGHT_ENABLE=yes FP_EC11=yes CIRQUE_ENABLE=yes +``` + +Don't forget to add ```CONVERT_TO=stemcell``` if using a stemcell controller. + +Options are: +``` + CIRQUE_ENABLE=yes + FP_TRACKBALL_ENABLE=yes + RGBLIGHT_ENABLE=yes + RGB_MATRIX_ENABLE=yes + FP_EC11=yes + FP_EVQ=yes +``` + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk new file mode 100644 index 000000000000..f977133738fa --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk @@ -0,0 +1,69 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +# Teensy halfkay +# Pro Micro caterina +# Atmel DFU atmel-dfu +# LUFA DFU lufa-dfu +# QMK DFU qmk-dfu +# ATmega32A bootloadHID +# ATmega328P USBasp +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE = no # USB Nkey Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality + +# Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = no +RGB_MATRIX_DRIVER = WS2812 + +MIDI_ENABLE = no # MIDI support +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +AUDIO_ENABLE = no # Audio output on port C6 +FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches +ENCODER_ENABLE = no +OLED_ENABLE = no # this can be yes or no depending on if you have an OLED +EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed + # for instance, if you build "no_features", it's very unlikely you'll need to disable macros + +SRC += matrix_74hc595_spi.c +QUANTUM_LIB_SRC += spi_master.c +CUSTOM_MATRIX = lite + +ifeq ($(strip $(CIRQUE_ENABLE)), yes) + MOUSEKEY_ENABLE := yes # not required, but enabling for mouse button keys + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := cirque_pinnacle_i2c + OPT_DEFS += -DCIRQUE_ENABLE +endif + +ifeq ($(strip $(FP_TRACKBALL_ENABLE)), yes) + MOUSEKEY_ENABLE := yes # not required, but enabling for mouse button keys + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := pmw3360 + QUANTUM_LIB_SRC += spi_master.c + OPT_DEFS += -DFP_TRACKBALL_ENABLE +endif + +ifeq ($(strip $(FP_EC11)), yes) + ENCODER_ENABLE := yes + OPT_DEFS += -DFP_EC11_UNDER_PALMS +endif + +ifeq ($(strip $(FP_EVQ)), yes) + ENCODER_ENABLE := yes + OPT_DEFS += -DFP_EVQ_UNDER_PALMS +endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/v3.h b/keyboards/fingerpunch/ffkb_byomcu/v3/v3.h new file mode 100644 index 000000000000..16950faf5373 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/v3.h @@ -0,0 +1,43 @@ +/* Copyright 2021 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#pragma once + +#include "quantum.h" + +/* This a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ + +// With the shift register, define the columns in the order of A-H as defined in the schematic +#define LAYOUT_ffkb( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ + K32, K34, K35, K36, K37, K38, K39, K3B \ +) \ +{ \ + { K01, K03, K05, K04, K06, K07, K08, K02 }, \ + { K11, K13, K15, K14, K16, K17, K18, K12 }, \ + { K21, K23, K25, K24, K26, K27, K28, K22 }, \ + { KC_NO, K19, K0A, K2A, K1B, K2B, K0C, KC_NO }, \ + { KC_NO, K29, K1A, K09, K0B, K2C, K1C, KC_NO }, \ + { K3B, K39, K35, K34, K36, K37, K38, K32 } \ +} diff --git a/keyboards/fingerpunch/ffkb_byomcu/via.json b/keyboards/fingerpunch/ffkb_byomcu/via.json deleted file mode 100644 index 11d5ee06ab12..000000000000 --- a/keyboards/fingerpunch/ffkb_byomcu/via.json +++ /dev/null @@ -1,322 +0,0 @@ -{ - "name": "ffkb", - "vendorId": "0xFEFE", - "productId": "0xFF3B", - "matrix": {"rows": 4, "cols": 12}, - "lighting": "qmk_rgblight", - "layouts": { - "labels": [ - ["Layout"] - ], - "keymap": [ - [ - { - "y": 4, - "x": 7 - }, - "3,9\nenc2" - ], - [ - { - "r": 15, - "rx": 1, - "y": -0.09999999999999998, - "x": 3 - }, - "0,3" - ], - [ - { - "y": -0.65, - "x": 2 - }, - "0,2", - { - "x": 1 - }, - "0,4" - ], - [ - { - "y": -0.85, - "x": 5 - }, - "0,5" - ], - [ - { - "y": -0.4999999999999999, - "x": 3, - "c": "#5dd971" - }, - "1,3\nAlt" - ], - [ - { - "y": -0.8999999999999999, - "x": 1, - "c": "#cccccc" - }, - "0,1" - ], - [ - { - "y": -0.75, - "x": 2, - "c": "#5dd971" - }, - "1,2\nWin", - { - "x": 1 - }, - "1,4\nShift" - ], - [ - { - "y": -0.8775, - "c": "#cccccc" - }, - "0,0" - ], - [ - { - "y": -0.9725000000000001, - "x": 5 - }, - "1,5" - ], - [ - { - "y": -0.5, - "x": 3 - }, - "2,3" - ], - [ - { - "y": -0.8999999999999999, - "x": 1, - "c": "#5dd971" - }, - "1,1\nCtrl" - ], - [ - { - "y": -0.75, - "x": 2, - "c": "#cccccc" - }, - "2,2", - { - "x": 1 - }, - "2,4" - ], - [ - { - "y": -0.8775 - }, - "1,0" - ], - [ - { - "y": -0.9725000000000001, - "x": 5 - }, - "2,5" - ], - [ - { - "y": -0.3999999999999999, - "x": 1 - }, - "2,1" - ], - [ - { - "y": -0.6275 - }, - "2,0" - ], - [ - { - "y": -0.6225000000000005, - "x": 2.5 - }, - "3,1\nenc1", - { - "x": 0.5 - }, - "3,3" - ], - [ - { - "r": 25, - "y": -1.9500000000000002, - "x": 5.8 - }, - "3,4" - ], - [ - { - "r": 35, - "y": -2.1999999999999997, - "x": 7.4 - }, - "3,5" - ], - [ - { - "r": -35, - "rx": 10.65, - "ry": 4.5, - "y": -0.25, - "x": -3.1000000000000005 - }, - "3,6" - ], - [ - { - "r": -25, - "y": -0.6500000000000004, - "x": -1.9000000000000004 - }, - "3,7" - ], - [ - { - "r": -15, - "y": -0.8499999999999996, - "x": -0.6500000000000004 - }, - "3,8", - { - "x": 0.5 - }, - "3,10\nenc3" - ], - [ - { - "rx": 11, - "ry": 4.3, - "y": -3.535 - }, - "0,8" - ], - [ - { - "y": -0.6499999999999999, - "x": -1 - }, - "0,7", - { - "x": 1 - }, - "0,9" - ], - [ - { - "y": -0.8499999999999999, - "x": -2 - }, - "0,6" - ], - [ - { - "y": -0.5, - "c": "#5dd971" - }, - "1,8\nAlt" - ], - [ - { - "y": -0.8999999999999997, - "x": 2, - "c": "#cccccc" - }, - "0,10" - ], - [ - { - "y": -0.7500000000000004, - "x": -1, - "c": "#5dd971" - }, - "1,7\nShift", - { - "x": 1 - }, - "1,9\nWin" - ], - [ - { - "y": -0.8775, - "x": 3, - "c": "#cccccc" - }, - "0,11" - ], - [ - { - "y": -0.9724999999999997, - "x": -2 - }, - "1,6" - ], - [ - { - "y": -0.5000000000000004 - }, - "2,8" - ], - [ - { - "y": -0.8999999999999995, - "x": 2, - "c": "#5dd971" - }, - "1,10\nCtrl" - ], - [ - { - "y": -0.7500000000000004, - "x": -1, - "c": "#cccccc" - }, - "2,7", - { - "x": 1 - }, - "2,9" - ], - [ - { - "y": -0.8912500000000003, - "x": 3 - }, - "1,11" - ], - [ - { - "y": -0.9737499999999999, - "x": -2 - }, - "2,6" - ], - [ - { - "y": -0.3849999999999998, - "x": 2 - }, - "2,10" - ], - [ - { - "y": -0.6412500000000003, - "x": 3 - }, - "2,11" - ] - ] - } -} \ No newline at end of file From b909e9b7eeffb81c0f3b1ff06bfe030ad00fa6c9 Mon Sep 17 00:00:00 2001 From: Alabastard-64 <96358682+Alabastard-64@users.noreply.github.com> Date: Sat, 24 Sep 2022 00:43:55 -0600 Subject: [PATCH 05/51] [Core] Pointing Device Automatic Mouse Layer (#17962) Co-authored-by: Drashna Jaelre Co-authored-by: Stefan Kerkmann --- builddefs/common_features.mk | 1 + docs/feature_pointing_device.md | 242 ++++++++++- quantum/pointing_device/pointing_device.c | 4 + quantum/pointing_device/pointing_device.h | 4 + .../pointing_device_auto_mouse.c | 384 ++++++++++++++++++ .../pointing_device_auto_mouse.h | 87 ++++ .../pointing_device/pointing_device_drivers.c | 13 + quantum/quantum.c | 3 + 8 files changed, 737 insertions(+), 1 deletion(-) create mode 100644 quantum/pointing_device/pointing_device_auto_mouse.c create mode 100644 quantum/pointing_device/pointing_device_auto_mouse.h diff --git a/builddefs/common_features.mk b/builddefs/common_features.mk index a23b5e82b915..38fdbad65a1c 100644 --- a/builddefs/common_features.mk +++ b/builddefs/common_features.mk @@ -136,6 +136,7 @@ ifeq ($(strip $(POINTING_DEVICE_ENABLE)), yes) VPATH += $(QUANTUM_DIR)/pointing_device SRC += $(QUANTUM_DIR)/pointing_device/pointing_device.c SRC += $(QUANTUM_DIR)/pointing_device/pointing_device_drivers.c + SRC += $(QUANTUM_DIR)/pointing_device/pointing_device_auto_mouse.c ifneq ($(strip $(POINTING_DEVICE_DRIVER)), custom) SRC += drivers/sensors/$(strip $(POINTING_DEVICE_DRIVER)).c OPT_DEFS += -DPOINTING_DEVICE_DRIVER_$(strip $(shell echo $(POINTING_DEVICE_DRIVER) | tr '[:lower:]' '[:upper:]')) diff --git a/docs/feature_pointing_device.md b/docs/feature_pointing_device.md index 999dd1272dda..f31910ed11dc 100644 --- a/docs/feature_pointing_device.md +++ b/docs/feature_pointing_device.md @@ -345,7 +345,7 @@ The combined functions below are only available when using `SPLIT_POINTING_ENABL | Function | Description | | --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | | `pointing_device_set_shared_report(mouse_report)` | Sets the shared mouse report to the assigned `mouse_report_t` data structured passed to the function. | -| `pointing_device_set_cpi_on_side(bool, uint16_t)` | Sets the CPI/DPI of one side, if supported. Passing `true` will set the left and `false` the right` | +| `pointing_device_set_cpi_on_side(bool, uint16_t)` | Sets the CPI/DPI of one side, if supported. Passing `true` will set the left and `false` the right | | `pointing_device_combine_reports(left_report, right_report)` | Returns a combined mouse_report of left_report and right_report (as a `mouse_report_t` data structure) | | `pointing_device_task_combined_kb(left_report, right_report)` | Callback, so keyboard code can intercept and modify the data. Returns a combined mouse report. | | `pointing_device_task_combined_user(left_report, right_report)` | Callback, so user code can intercept and modify. Returns a combined mouse report using `pointing_device_combine_reports` | @@ -487,3 +487,243 @@ report_mouse_t pointing_device_task_combined_user(report_mouse_t left_report, re return pointing_device_combine_reports(left_report, right_report); } ``` + +# Troubleshooting + +If you are having issues with pointing device drivers debug messages can be enabled that will give you insights in the inner workings. To enable these add to your keyboards `config.h` file: + +```c +#define POINTING_DEVICE_DEBUG +``` + +?> The messages will be printed out to the `CONSOLE` output. For additional information, refer to [Debugging/Troubleshooting QMK](faq_debug.md). + + +--- +# Automatic Mouse Layer :id=pointing-device-auto-mouse + +When using a pointing device combined with a keyboard the mouse buttons are often kept on a separate layer from the default keyboard layer, which requires pressing or holding a key to change layers before using the mouse. To make this easier and more efficient an additional pointing device feature may be enabled that will automatically activate a target layer as soon as the pointing device is active _(in motion, mouse button pressed etc.)_ and deactivate the target layer after a set time. + +Additionally if any key that is defined as a mouse key is pressed then the layer will be held as long as the key is pressed and the timer will be reset on key release. When a non-mouse key is pressed then the layer is deactivated early _(with some exceptions see below)_. Mod, mod tap, and one shot mod keys are ignored _(i.e. don't hold or activate layer but do not deactivate the layer either)_ when sending a modifier keycode _(e.g. hold for mod tap)_ allowing for mod keys to be used with the mouse without activating the target layer when typing. + +All of the standard layer keys (tap toggling, toggle, toggle on, one_shot, layer tap, layer mod) that activate the current target layer are uniquely handled to ensure they behave as expected _(see layer key table below)_. The target layer that can be changed at any point during by calling the `set_auto_mouse_layer();` function. + +### Behaviour of Layer keys that activate the target layer +| Layer key as in `keymap.c` | Auto Mouse specific behaviour | +| -------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| `MO()` | Treated as a mouse key holding the layer while pressed | +| `LT()` | When tapped will be treated as non mouse key and mouse key when held | +| `LM()` | Treated as a mouse key | +| `TG()` | Will set flag preventing target layer deactivation or removal until pressed again | +| `TO()` | Same as `TG()` | +| `TT()` | Treated as a mouse key when `tap.count < TAPPING_TOGGLE` and as `TG` when `tap.count == TAPPING_TOGGLE` | +| `DF()` | Skips auto mouse key processing similar to mod keys | +| `OSL()` | Skips, but if current one shot layer is the target layer then it will prevent target layer deactivation or removal | + + +## How to enable: + +```c +// in config.h: +#define POINTING_DEVICE_AUTO_MOUSE_ENABLE +// only required if not setting mouse layer elsewhere +#define AUTO_MOUSE_DEFAULT_LAYER + +// in keymap.c: +void pointing_device_init_user(void) { + set_auto_mouse_layer(); // only required if AUTO_MOUSE_DEFAULT_LAYER is not set to index of + set_auto_mouse_enable(true); // always required before the auto mouse feature will work +} +``` + +Because the auto mouse feature can be disabled/enabled during runtime and starts as disabled by default it must be enabled by calling `set_auto_mouse_enable(true);` somewhere in firmware before the feature will work. +_Note: for setting the target layer during initialization either setting `AUTO_MOUSE_DEFAULT_LAYER` in `config.h` or calling `set_auto_mouse_layer()` can be used._ + + +## How to Customize: + +There are a few ways to control the auto mouse feature with both `config.h` options and functions for controlling it during runtime. + +### `config.h` Options: +| Define | Description | Range | Units | Default | +| ----------------------------------- | --------------------------------------------------------------------- | :------------------: | :---------: | -------------------------: | +| `POINTING_DEVICE_AUTO_MOUSE_ENABLE` | (Required) Enables auto mouse layer feature | | _None_ | _Not defined_ | +| `AUTO_MOUSE_DEFAULT_LAYER` | (Optional) Index of layer to use as default target layer | 0 - `LAYER_MAX` | _`uint8_t`_ | `1` | +| `AUTO_MOUSE_TIME` | (Optional) Time layer remains active after activation | _ideally_ (250-1000) | _ms_ | `650 ms` | +| `AUTO_MOUSE_DELAY` | (Optional) Lockout time after non-mouse key is pressed | _ideally_ (100-1000) | _ms_ | `TAPPING_TERM` or `200 ms` | +| `AUTO_MOUSE_DEBOUNCE` | (Optional) Time delay from last activation to next update | _ideally_ (10 - 100) | _ms_ | `25 ms` | + +### Adding mouse keys + +While all default mouse keys and layer keys(for current mouse layer) are treated as mouse keys, additional Keyrecords can be added to mouse keys by adding them to the is_mouse_record_* stack. + +#### Callbacks for setting up additional key codes as mouse keys: +| Callback | Description | +| -------------------------------------------------------------------- | -------------------------------------------------- | +| `bool is_mouse_record_kb(uint16_t keycode, keyrecord_t* record)` | keyboard level callback for adding mouse keys | +| `bool is_mouse_record_user(uint16_t keycode, keyrecord_t* record)` | user/keymap level callback for adding mouse keys | + +##### To use the callback function to add mouse keys: + +The following code will cause the enter key and all of the arrow keys to be treated as mouse keys (hold target layer while they are pressed and reset active layer timer). +```c + +// in .c: +bool is_mouse_record_kb(uint16_t keycode, keyrecord_t* record) { + switch(keycode) { + case KC_ENT: + return true; + case KC_RIGHT ... KC_UP: + return true; + default: + return false; + } + return is_mouse_record_user(keycode, record); +} +``` + + +## Advanced control + +There are several functions that allow for more advanced interaction with the auto mouse feature allowing for greater control. + +### Functions to control auto mouse enable and target layer: +| Function | Description | Aliases | Return type | +| :--------------------------------------------------------- | ------------------------------------------------------------------------------------ | ------------------------- | --------------: | +| `set_auto_mouse_enable(bool enable)` | Enable or disable auto mouse (true:enable, false:disable) | | `void`(None) | +| `get_auto_mouse_enable(void)` | Return auto mouse enable state (true:enabled, false:disabled) | `AUTO_MOUSE_ENABLED` | `bool` | +| `set_auto_mouse_layer(uint8_t LAYER)` | Change/set the target layer for auto mouse | | `void`(None) | +| `get_auto_mouse_layer(void)` | Return auto mouse target layer index | `AUTO_MOUSE_TARGET_LAYER` | `uint8_t` | +| `remove_auto_mouse_layer(layer_state_t state, bool force)` | Return `state` with target layer removed if appropriate (ignore criteria if `force`) | | `layer_state_t` | +| `auto_mouse_layer_off(void)` | Disable target layer if appropriate will call (makes call to `layer_state_set`) | | `void`(None) | +| `auto_mouse_toggle(void)` | Toggle on/off target toggle state (disables layer deactivation when true) | | `void`(None) | +| `get_auto_mouse_toggle(void)` | Return value of toggling state variable | | `bool` | + +_NOTES:_ + - _Due to the nature of how some functions work, the `auto_mouse_trigger_reset`, and `auto_mouse_layer_off` functions should never be called in the `layer_state_set_*` stack as this can cause indefinite loops._ + - _It is recommended that `remove_auto_mouse_layer` is used in the `layer_state_set_*` stack of functions and `auto_mouse_layer_off` is used everywhere else_ + - _`remove_auto_mouse_layer(state, false)` or `auto_mouse_layer_off()` should be called before any instance of `set_auto_mouse_enabled(false)` or `set_auto_mouse_layer(layer)` to ensure that the target layer will be removed appropriately before disabling auto mouse or changing target to avoid a stuck layer_ + +### Functions for handling custom key events: +| Function | Description | Return type | +| :--------------------------------------------------------- | -------------------------------------------------------------------------------- | --------------: | +| `auto_mouse_keyevent(bool pressed)` | Auto mouse mouse key event (true: key down, false: key up) | `void`(None) | +| `auto_mouse_trigger_reset(bool pressed)` | Reset auto mouse status on key down and start delay timer (non-mouse key event) | `void`(None) | +| `auto_mouse_toggle(void)` | Toggle on/off target toggle state (disables layer deactivation when true) | `void`(None) | +| `get_auto_mouse_toggle(void)` | Return value of toggling state variable | `bool` | +_NOTE: Generally it would be preferable to use the `is_mouse_record_*` functions to add any additional keys that should act as mouse keys rather than adding `auto_mouse_keyevent(record.event->pressed)` to `process_records_*`_ + +### Advanced control examples + +#### Disable auto mouse on certain layers: + +The auto mouse feature can be disabled any time and this can be helpful if you want to disable the auto mouse feature under certain circumstances such as when particular layers are active. One issue however is the handling of the target layer, it needs to be removed appropriately **before** disabling auto mouse _(see notes under control functions above)_. The following function would disable the auto_mouse feature whenever the layers `_LAYER5` through `_LAYER7` are active as the top most layer _(ignoring target layer)_. + +```c +// in keymap.c: +layer_state_t layer_state_set_user(layer_state_t state) { + // checks highest layer other than target layer + switch(get_highest_layer(remove_auto_mouse_layer(state, true))) { + case _LAYER5 ... _LAYER7: + // remove_auto_mouse_target must be called to adjust state *before* setting enable + state = remove_auto_mouse_layer(state, false); + set_auto_mouse_enable(false); + break; + default: + set_auto_mouse_enable(true); + break; + } + // recommend that any code that makes adjustment based on auto mouse layer state would go here + return state; +} +``` + +#### Set different target layer when a particular layer is active: + +The below code will change the auto mouse layer target to `_MOUSE_LAYER_2` when `_DEFAULT_LAYER_2` is highest default layer state. +*NOTE: that `auto_mouse_layer_off` is used here instead of `remove_auto_mouse_layer` as `default_layer_state_set_*` stack is separate from the `layer_state_set_*` stack* if something similar was to be done in `layer_state_set_user `state = remove_auto_mouse_layer(state, false)` should be used instead +*ADDITIONAL NOTE: `AUTO_MOUSE_TARGET_LAYER` is checked if already set to avoid deactivating the target layer unless needed* + +```c +// in keymap.c +layer_state_t default_layer_state_set_user(layer_state_t state) { + // switch on change in default layer need to check if target layer already set to avoid turning off layer needlessly + switch(get_highest_layer(state)) { + case _DEFAULT_LAYER_2: + if ((AUTO_MOUSE_TARGET_LAYER) == _MOUSE_LAYER_2) break; + auto_mouse_layer_off(); + set_auto_mouse_layer(_MOUSE_LAYER_2); + break; + + default: + if((AUTO_MOUSE_TARGET_LAYER) == _MOUSE_LAYER_1) break; + auto_mouse_layer_off(); + set_auto_mouse_layer(_MOUSE_LAYER_1); + } + return state; +} +``` + +### Use custom keys to control auto mouse: +Custom key records could also be created that control the auto mouse feature. +The code example below would create a custom key that would toggle the auto mouse feature on and off when pressed while also setting a bool that could be used to disable other code that may turn it on such as the layer code above. + +```c +// in config.h: +enum user_custom_keycodes { + AM_Toggle = SAFE_RANGE +}; + +// in keymap.c: +// set up global bool to adjust other user code +bool auto_mouse_tg_off = !AUTO_MOUSE_ENABLED; + +bool process_record_user(uint16_t keycode, keyrecord_t* record) { + switch (keycode) { + // toggle auto mouse enable key + case AM_Toggle: + if(record->event.pressed) { // key down + auto_mouse_layer_off(); // disable target layer if needed + set_auto_mouse_enabled((AUTO_MOUSE_ENABLED) ^ 1); + auto_mouse_tg_off = !get_auto_mouse_enabled(); + } // do nothing on key up + return false; // prevent further processing of keycode + } +} +``` + + +## Customize Target Layer Activation + +Layer activation can be customized by overwriting the `auto_mouse_activation` function. This function is checked every time `pointing_device_task` is called when inactive and every `AUTO_MOUSE_DEBOUNCE` ms when active, and will evaluate pointing device level conditions that trigger target layer activation. When it returns true, the target layer will be activated barring the usual exceptions _(e.g. delay time has not expired)_. + +By default it will return true if any of the `mouse_report` axes `x`,`y`,`h`,`v` are non zero, or if there is any mouse buttons active in `mouse_report`. +_Note: The Cirque pinnacle track pad already implements a custom activation function that will activate on touchdown as well as movement all of the default conditions, currently this only works for the master side of split keyboards._ + +| Function | Description | Return type | +| :--------------------------------------------------------- | -------------------------------------------------------------------------------- | --------------: | +| `auto_mouse_activation(report_mouse_t mouse_report)` | Overwritable function that controls target layer activation (when true) | `bool` | + +## Auto Mouse for Custom Pointing Device Task + +When using a custom pointing device (overwriting `pointing_device_task`) the following code should be somewhere in the `pointing_device_task_*` stack: + +```c +void pointing_device_task(void) { + //...Custom pointing device task code + + // handle automatic mouse layer (needs report_mouse_t as input) + pointing_device_task_auto_mouse(local_mouse_report); + + //...More custom pointing device task code + + pointing_device_send(); +} +``` + +In general the following two functions must be implemented in appropriate locations for auto mouse to function: + +| Function | Description | Suggested location | +| -------------------------------------------------------------- | ------------------------------------------------------------ | ---------------------------: | +| `pointing_device_task_auto_mouse(report_mouse_t mouse_report)` | handles target layer activation and is_active status updates | `pointing_device_task` stack | +| `process_auto_mouse(uint16_t keycode, keyrecord_t* record)` | Keycode processing for auto mouse | `process_record` stack | diff --git a/quantum/pointing_device/pointing_device.c b/quantum/pointing_device/pointing_device.c index 505a7a6ffd52..100f46cebc31 100644 --- a/quantum/pointing_device/pointing_device.c +++ b/quantum/pointing_device/pointing_device.c @@ -269,6 +269,10 @@ __attribute__((weak)) void pointing_device_task(void) { #else local_mouse_report = pointing_device_adjust_by_defines(local_mouse_report); local_mouse_report = pointing_device_task_kb(local_mouse_report); +#endif + // automatic mouse layer function +#ifdef POINTING_DEVICE_AUTO_MOUSE_ENABLE + pointing_device_task_auto_mouse(local_mouse_report); #endif // combine with mouse report to ensure that the combined is sent correctly #ifdef MOUSEKEY_ENABLE diff --git a/quantum/pointing_device/pointing_device.h b/quantum/pointing_device/pointing_device.h index 77db5471eac6..a002bd4b2572 100644 --- a/quantum/pointing_device/pointing_device.h +++ b/quantum/pointing_device/pointing_device.h @@ -21,6 +21,10 @@ along with this program. If not, see . #include "host.h" #include "report.h" +#ifdef POINTING_DEVICE_AUTO_MOUSE_ENABLE +# include "pointing_device_auto_mouse.h" +#endif + #if defined(POINTING_DEVICE_DRIVER_adns5050) # include "drivers/sensors/adns5050.h" #elif defined(POINTING_DEVICE_DRIVER_adns9800) diff --git a/quantum/pointing_device/pointing_device_auto_mouse.c b/quantum/pointing_device/pointing_device_auto_mouse.c new file mode 100644 index 000000000000..edffd4478743 --- /dev/null +++ b/quantum/pointing_device/pointing_device_auto_mouse.c @@ -0,0 +1,384 @@ +/* Copyright 2021 Christopher Courtney, aka Drashna Jael're (@drashna) + * Copyright 2022 Alabastard + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#ifdef POINTING_DEVICE_AUTO_MOUSE_ENABLE + +# include "pointing_device_auto_mouse.h" + +/* local data structure for tracking auto mouse */ +static auto_mouse_context_t auto_mouse_context = {.config.layer = (uint8_t)AUTO_MOUSE_DEFAULT_LAYER}; + +/* local functions */ +static bool is_mouse_record(uint16_t keycode, keyrecord_t* record); +static void auto_mouse_reset(void); + +/* check for target layer deactivation overrides */ +static inline bool layer_hold_check(void) { + return get_auto_mouse_toggle() || +# ifndef NO_ACTION_ONESHOT + get_oneshot_layer() == (AUTO_MOUSE_TARGET_LAYER) || +# endif + false; +} + +/* check all layer activation criteria */ +static inline bool is_auto_mouse_active(void) { + return auto_mouse_context.status.is_activated || auto_mouse_context.status.mouse_key_tracker || layer_hold_check(); +} + +/** + * @brief Get auto mouse enable state + * + * Return is_enabled value + * + * @return bool true: auto mouse enabled false: auto mouse disabled + */ +bool get_auto_mouse_enable(void) { + return auto_mouse_context.config.is_enabled; +} + +/** + * @brief get current target layer index + * + * NOTE: (AUTO_MOUSE_TARGET_LAYER) is an alias for this function + * + * @return uint8_t target layer index + */ +uint8_t get_auto_mouse_layer(void) { + return auto_mouse_context.config.layer; +} + +/** + * @brief get layer_toggled value + * + * @return bool of current layer_toggled state + */ +bool get_auto_mouse_toggle(void) { + return auto_mouse_context.status.is_toggled; +} + +/** + * @brief Reset auto mouse context + * + * Clear timers and status + * + * NOTE: this will set is_toggled to false so careful when using it + */ +static void auto_mouse_reset(void) { + memset(&auto_mouse_context.status, 0, sizeof(auto_mouse_context.status)); + memset(&auto_mouse_context.timer, 0, sizeof(auto_mouse_context.timer)); +} + +/** + * @brief Set auto mouse enable state + * + * Set local auto mouse enabled state + * + * @param[in] state bool + */ +void set_auto_mouse_enable(bool enable) { + // skip if unchanged + if (auto_mouse_context.config.is_enabled == enable) return; + auto_mouse_context.config.is_enabled = enable; + auto_mouse_reset(); +} + +/** + * @brief Change target layer for auto mouse + * + * Sets input as the new target layer if different from current and resets auto mouse + * + * NOTE: remove_auto_mouse_layer(state, false) or auto_mouse_layer_off should be called + * before this function to avoid issues with layers getting stuck + * + * @param[in] layer uint8_t + */ +void set_auto_mouse_layer(uint8_t layer) { + // skip if unchanged + if (auto_mouse_context.config.layer == layer) return; + auto_mouse_context.config.layer = layer; + auto_mouse_reset(); +} + +/** + * @brief toggle mouse layer setting + * + * Change state of local layer_toggled bool meant to track when the mouse layer is toggled on by other means + * + * NOTE: While is_toggled is true it will prevent deactiving target layer (but not activation) + */ +void auto_mouse_toggle(void) { + auto_mouse_context.status.is_toggled ^= 1; + auto_mouse_context.timer.delay = 0; +} + +/** + * @brief Remove current auto mouse target layer from layer state + * + * Will remove auto mouse target layer from given layer state if appropriate. + * + * NOTE: Removal can be forced, ignoring appropriate critera + * + * @params state[in] layer_state_t original layer state + * @params force[in] bool force removal + * + * @return layer_state_t modified layer state + */ +layer_state_t remove_auto_mouse_layer(layer_state_t state, bool force) { + if (force || ((AUTO_MOUSE_ENABLED) && !layer_hold_check())) { + state &= ~((layer_state_t)1 << (AUTO_MOUSE_TARGET_LAYER)); + } + return state; +} + +/** + * @brief Disable target layer + * + * Will disable target layer if appropriate. + * NOTE: NOT TO BE USED in layer_state_set stack!!! + */ +void auto_mouse_layer_off(void) { + if (layer_state_is((AUTO_MOUSE_TARGET_LAYER)) && (AUTO_MOUSE_ENABLED) && !layer_hold_check()) { + layer_off((AUTO_MOUSE_TARGET_LAYER)); + } +} + +/** + * @brief Weak function to handel testing if pointing_device is active + * + * Will trigger target layer activation(if delay timer has expired) and prevent deactivation when true. + * May be replaced by bool in report_mouse_t in future + * + * NOTE: defined weakly to allow for changing and adding conditions for specific hardware/customization + * + * @param[in] mouse_report report_mouse_t + * @return bool of pointing_device activation + */ +__attribute__((weak)) bool auto_mouse_activation(report_mouse_t mouse_report) { + return mouse_report.x != 0 || mouse_report.y != 0 || mouse_report.h != 0 || mouse_report.v != 0 || mouse_report.buttons; +} + +/** + * @brief Update the auto mouse based on mouse_report + * + * Handel activation/deactivation of target layer based on auto_mouse_activation and state timers and local key/layer tracking data + * + * @param[in] mouse_report report_mouse_t + */ +void pointing_device_task_auto_mouse(report_mouse_t mouse_report) { + // skip if disabled, delay timer running, or debounce + if (!(AUTO_MOUSE_ENABLED) || timer_elapsed(auto_mouse_context.timer.active) <= AUTO_MOUSE_DEBOUNCE || timer_elapsed(auto_mouse_context.timer.delay) <= AUTO_MOUSE_DELAY) { + return; + } + // update activation and reset debounce + auto_mouse_context.status.is_activated = auto_mouse_activation(mouse_report); + if (is_auto_mouse_active()) { + auto_mouse_context.timer.active = timer_read(); + auto_mouse_context.timer.delay = 0; + if (!layer_state_is((AUTO_MOUSE_TARGET_LAYER))) { + layer_on((AUTO_MOUSE_TARGET_LAYER)); + } + } else if (layer_state_is((AUTO_MOUSE_TARGET_LAYER)) && timer_elapsed(auto_mouse_context.timer.active) > AUTO_MOUSE_TIME) { + layer_off((AUTO_MOUSE_TARGET_LAYER)); + auto_mouse_context.timer.active = 0; + } +} + +/** + * @brief Handle mouskey event + * + * Increments/decrements mouse_key_tracker and restart active timer + * + * @param[in] pressed bool + */ +void auto_mouse_keyevent(bool pressed) { + if (pressed) { + auto_mouse_context.status.mouse_key_tracker++; + } else { + auto_mouse_context.status.mouse_key_tracker--; + } + auto_mouse_context.timer.delay = 0; +} + +/** + * @brief Handle auto mouse non mousekey reset + * + * Start/restart delay timer and reset auto mouse on keydown as well as turn the + * target layer off if on and reset toggle status + * + * NOTE: NOT TO BE USED in layer_state_set stack!!! + * + * @param[in] pressed bool + */ +void auto_mouse_reset_trigger(bool pressed) { + if (pressed) { + if (layer_state_is((AUTO_MOUSE_TARGET_LAYER))) { + layer_off((AUTO_MOUSE_TARGET_LAYER)); + }; + auto_mouse_reset(); + } + auto_mouse_context.timer.delay = timer_read(); +} + +/** + * @brief handle key events processing for auto mouse + * + * Will process keys differently depending on if key is defined as mousekey or not. + * Some keys have built in behaviour(not overwritable): + * mouse buttons : auto_mouse_keyevent() + * non-mouse keys : auto_mouse_reset_trigger() + * mod keys : skip auto mouse key processing + * mod tap : skip on hold (mod keys) + * QK mods e.g. LCTL(kc): default to non-mouse key, add at kb/user level as needed + * non target layer keys: skip auto mouse key processing (same as mod keys) + * MO(target layer) : auto_mouse_keyevent() + * target layer toggles : auto_mouse_toggle() (on both key up and keydown) + * target layer tap : default processing on tap mouse key on hold + * all other keycodes : default to non-mouse key, add at kb/user level as needed + * + * Will deactivate target layer once a non mouse key is pressed if nothing is holding the layer active + * such as held mousekey, toggled current target layer, or auto_mouse_activation is true + * + * @params keycode[in] uint16_t + * @params record[in] keyrecord_t pointer + */ +bool process_auto_mouse(uint16_t keycode, keyrecord_t* record) { + // skip if not enabled or mouse_layer not set + if (!(AUTO_MOUSE_ENABLED)) return true; + + switch (keycode) { + // Skip Mod keys to avoid layer reset + case KC_LEFT_CTRL ... KC_RIGHT_GUI: + case QK_MODS ... QK_MODS_MAX: + break; + // TO((AUTO_MOUSE_TARGET_LAYER))------------------------------------------------------------------------------- + case QK_TO ... QK_TO_MAX: // same proccessing as next + // TG((AUTO_MOUSE_TARGET_LAYER))------------------------------------------------------------------------------- + case QK_TOGGLE_LAYER ... QK_TOGGLE_LAYER_MAX: + if ((keycode & 0xff) == (AUTO_MOUSE_TARGET_LAYER)) { + if (!(record->event.pressed)) auto_mouse_toggle(); + } + break; + // MO((AUTO_MOUSE_TARGET_LAYER))------------------------------------------------------------------------------- + case QK_MOMENTARY ... QK_MOMENTARY_MAX: + if ((keycode & 0xff) == (AUTO_MOUSE_TARGET_LAYER)) { + auto_mouse_keyevent(record->event.pressed); + } + // DF --------------------------------------------------------------------------------------------------------- + case QK_DEF_LAYER ... QK_DEF_LAYER_MAX: +# ifndef NO_ACTION_ONESHOT + // OSL((AUTO_MOUSE_TARGET_LAYER))------------------------------------------------------------------------------ + case QK_ONE_SHOT_LAYER ... QK_ONE_SHOT_LAYER_MAX: + case QK_ONE_SHOT_MOD ... QK_ONE_SHOT_MOD_MAX: +# endif + break; + // LM((AUTO_MOUSE_TARGET_LAYER), mod)-------------------------------------------------------------------------- + case QK_LAYER_MOD ... QK_LAYER_MOD_MAX: + if (((keycode >> 8) & 0x0f) == (AUTO_MOUSE_TARGET_LAYER)) { + auto_mouse_keyevent(record->event.pressed); + } + break; + // TT((AUTO_MOUSE_TARGET_LAYER))--------------------------------------------------------------------------- +# ifndef NO_ACTION_TAPPING + case QK_LAYER_TAP_TOGGLE ... QK_LAYER_TAP_TOGGLE_MAX: + if ((keycode & 0xff) == (AUTO_MOUSE_TARGET_LAYER)) { + auto_mouse_keyevent(record->event.pressed); +# if TAPPING_TOGGLE != 0 + if (record->tap.count == TAPPING_TOGGLE) { + if (record->event.pressed) { + auto_mouse_context.status.mouse_key_tracker--; + } else { + auto_mouse_toggle(); + auto_mouse_context.status.mouse_key_tracker++; + } + } +# endif + } + break; + // LT((AUTO_MOUSE_TARGET_LAYER), kc)--------------------------------------------------------------------------- + case QK_LAYER_TAP ... QK_LAYER_TAP_MAX: + if (!record->tap.count) { + if (((keycode >> 8) & 0x0f) == (AUTO_MOUSE_TARGET_LAYER)) { + auto_mouse_keyevent(record->event.pressed); + } + break; + } + // MT(kc) only skip on hold + case QK_MOD_TAP ... QK_MOD_TAP_MAX: + if (!record->tap.count) break; +# endif + // QK_MODS goes to default + default: + // skip on no event + if (IS_NOEVENT(record->event)) break; + // check if keyrecord is mousekey + if (is_mouse_record(keycode, record)) { + auto_mouse_keyevent(record->event.pressed); + } else if (!is_auto_mouse_active()) { + // all non-mousekey presses restart delay timer and reset status + auto_mouse_reset_trigger(record->event.pressed); + } + } + if (auto_mouse_context.status.mouse_key_tracker < 0) { + auto_mouse_context.status.mouse_key_tracker = 0; + dprintf("key tracker error (<0) \n"); + } + return true; +} + +/** + * @brief Local function to handle checking if a keycode is a mouse button + * + * Starts code stack for checking keyrecord if defined as mousekey + * + * @params keycode[in] uint16_t + * @params record[in] keyrecord_t pointer + * @return bool true: keyrecord is mousekey false: keyrecord is not mousekey + */ +static bool is_mouse_record(uint16_t keycode, keyrecord_t* record) { + // allow for keyboard to hook in and override if need be + if (is_mouse_record_kb(keycode, record) || IS_MOUSEKEY(keycode)) return true; + return false; +} + +/** + * @brief Weakly defined keyboard level callback for adding keyrecords as mouse keys + * + * Meant for redefinition at keyboard level and should return is_mouse_record_user by default at end of function + * + * @params keycode[in] uint16_t + * @params record[in] keyrecord_t pointer + * @return bool true: keyrecord is defined as mouse key false: keyrecord is not defined as mouse key + */ +__attribute__((weak)) bool is_mouse_record_kb(uint16_t keycode, keyrecord_t* record) { + return is_mouse_record_user(keycode, record); +} + +/** + * @brief Weakly defined keymap/user level callback for adding keyrecords as mouse keys + * + * Meant for redefinition at keymap/user level and should return false by default at end of function + * + * @params keycode[in] uint16_t + * @params record[in] keyrecord_t pointer + * @return bool true: keyrecord is defined as mouse key false: keyrecord is not defined as mouse key + */ +__attribute__((weak)) bool is_mouse_record_user(uint16_t keycode, keyrecord_t* record) { + return false; +} + +#endif // POINTING_DEVICE_AUTO_MOUSE_ENABLE diff --git a/quantum/pointing_device/pointing_device_auto_mouse.h b/quantum/pointing_device/pointing_device_auto_mouse.h new file mode 100644 index 000000000000..eaa6aa2c09ee --- /dev/null +++ b/quantum/pointing_device/pointing_device_auto_mouse.h @@ -0,0 +1,87 @@ +/* Copyright 2022 Alabastard + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once + +#include + +#include "quantum.h" +#include "pointing_device.h" +#include "print.h" + +/* check settings and set defaults */ +#ifndef POINTING_DEVICE_AUTO_MOUSE_ENABLE +# error "POINTING_DEVICE_AUTO_MOUSE_ENABLE not defined! check config settings" +#endif + +#ifndef AUTO_MOUSE_DEFAULT_LAYER +# define AUTO_MOUSE_DEFAULT_LAYER 1 +#endif +#ifndef AUTO_MOUSE_TIME +# define AUTO_MOUSE_TIME 650 +#endif +#ifndef AUTO_MOUSE_DELAY + #define AUTO_MOUSE_DELAY GET_TAPPING_TERM(KC_MS_BTN1, &(keyrecord_t){}) +#endif +#ifndef AUTO_MOUSE_DEBOUNCE +# define AUTO_MOUSE_DEBOUNCE 25 +#endif + +/* data structure */ +typedef struct { + struct { + bool is_enabled; + uint8_t layer; + } config; + struct { + uint16_t active; + uint16_t delay; + } timer; + struct { + bool is_activated; + bool is_toggled; + int8_t mouse_key_tracker; + } status; +} auto_mouse_context_t; + +/* ----------Set up and control------------------------------------------------------------------------------ */ +void set_auto_mouse_enable(bool enable); // enable/disable auto mouse feature +bool get_auto_mouse_enable(void); // get auto_mouse_enable +void set_auto_mouse_layer(uint8_t layer); // set target layer by index +uint8_t get_auto_mouse_layer(void); // get target layer index +void auto_mouse_layer_off(void); // disable target layer if appropriate (DO NOT USE in layer_state_set stack!!) +layer_state_t remove_auto_mouse_layer(layer_state_t state, bool force); // remove auto mouse target layer from state if appropriate (can be forced) + +/* ----------For custom pointing device activation----------------------------------------------------------- */ +bool auto_mouse_activation(report_mouse_t mouse_report); // handles pointing device trigger conditions for target layer activation (overwritable) + +/* ----------Handling keyevents------------------------------------------------------------------------------ */ +void auto_mouse_keyevent(bool pressed); // trigger auto mouse keyevent: mouse_keytracker increment/decrement on press/release +void auto_mouse_reset_trigger(bool pressed); // trigger non mouse keyevent: reset and start delay timer (DO NOT USE in layer_state_set stack!!) +void auto_mouse_toggle(void); // toggle mouse layer flag disables mouse layer deactivation while on (meant for tap toggle or toggle of target) +bool get_auto_mouse_toggle(void); // get toggle mouse layer flag value + +/* ----------Callbacks for adding keycodes to mouse record checking------------------------------------------ */ +bool is_mouse_record_kb(uint16_t keycode, keyrecord_t* record); +bool is_mouse_record_user(uint16_t keycode, keyrecord_t* record); + +/* ----------Core functions (only used in custom pointing devices or key processing)------------------------- */ +void pointing_device_task_auto_mouse(report_mouse_t mouse_report); // add to pointing_device_task_* +bool process_auto_mouse(uint16_t keycode, keyrecord_t* record); // add to process_record_* + +/* ----------Macros/Aliases---------------------------------------------------------------------------------- */ +#define AUTO_MOUSE_TARGET_LAYER get_auto_mouse_layer() +#define AUTO_MOUSE_ENABLED get_auto_mouse_enable() diff --git a/quantum/pointing_device/pointing_device_drivers.c b/quantum/pointing_device/pointing_device_drivers.c index b96f8ff4b33a..8b5f812cb490 100644 --- a/quantum/pointing_device/pointing_device_drivers.c +++ b/quantum/pointing_device/pointing_device_drivers.c @@ -117,6 +117,15 @@ void cirque_pinnacle_configure_cursor_glide(float trigger_px) { # endif # if CIRQUE_PINNACLE_POSITION_MODE + +# ifdef POINTING_DEVICE_AUTO_MOUSE_ENABLE +static bool is_touch_down; + +bool auto_mouse_activation(report_mouse_t mouse_report) { + return is_touch_down || mouse_report.x != 0 || mouse_report.y != 0 || mouse_report.h != 0 || mouse_report.v != 0 || mouse_report.buttons; +} +# endif + report_mouse_t cirque_pinnacle_get_report(report_mouse_t mouse_report) { pinnacle_data_t touchData = cirque_pinnacle_read_data(); mouse_xy_report_t report_x = 0, report_y = 0; @@ -146,6 +155,10 @@ report_mouse_t cirque_pinnacle_get_report(report_mouse_t mouse_report) { } # endif +# ifdef POINTING_DEVICE_AUTO_MOUSE_ENABLE + is_touch_down = touchData.touchDown; +# endif + // Scale coordinates to arbitrary X, Y resolution cirque_pinnacle_scale_data(&touchData, cirque_pinnacle_get_scale(), cirque_pinnacle_get_scale()); diff --git a/quantum/quantum.c b/quantum/quantum.c index 9a0016b15060..99170266d485 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c @@ -271,6 +271,9 @@ bool process_record_quantum(keyrecord_t *record) { #endif #if defined(VIA_ENABLE) process_record_via(keycode, record) && +#endif +#if defined(POINTING_DEVICE_ENABLE) && defined(POINTING_DEVICE_AUTO_MOUSE_ENABLE) + process_auto_mouse(keycode, record) && #endif process_record_kb(keycode, record) && #if defined(SECURE_ENABLE) From 9f9de77492e9da75c4590ec79fac0dd48d86ae29 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Tue, 27 Sep 2022 16:28:35 -0700 Subject: [PATCH 06/51] Issue 12: adding fingerpunch config framework to use across keyboards --- .gitignore | 5 +- keyboards/absolem/absolem.h | 2 + .../absolem/keymaps/sadekbaroudi/config.h | 2 + .../absolem/keymaps/sadekbaroudi/rules.mk | 6 + keyboards/fingerpunch/FP_LIBRARY_SUPPORT.md | 60 ++++ keyboards/fingerpunch/README.md | 163 +++++++++ .../fingerpunch/arachnophobe/arachnophobe.h | 2 + keyboards/fingerpunch/arachnophobe/rules.mk | 7 + keyboards/fingerpunch/barobord/barobord.h | 2 + keyboards/fingerpunch/barobord/rules.mk | 9 +- .../barobord_byomcu/barobord_byomcu.h | 2 + .../fingerpunch/barobord_byomcu/rules.mk | 9 +- keyboards/fingerpunch/bgkeeb/bgkeeb.h | 1 + keyboards/fingerpunch/bgkeeb/rules.mk | 7 + .../fingerpunch/bigbarobord/bigbarobord.h | 2 + keyboards/fingerpunch/bigbarobord/rules.mk | 9 +- keyboards/fingerpunch/ffkb/ffkb.h | 2 + keyboards/fingerpunch/ffkb/rules.mk | 9 +- .../fingerpunch/ffkb_byomcu/ffkb_byomcu.c | 1 - .../fingerpunch/ffkb_byomcu/ffkb_byomcu.h | 4 +- keyboards/fingerpunch/ffkb_byomcu/rules.mk | 6 + .../ffkb_byomcu/v1/keymaps/default/keymap.c | 172 +++++----- .../v1/keymaps/sadekbaroudi/keymap.c | 274 +++++++-------- keyboards/fingerpunch/ffkb_byomcu/v1/rules.mk | 2 +- keyboards/fingerpunch/ffkb_byomcu/v1/via.json | 322 ++++++++++++++++++ keyboards/fingerpunch/ffkb_byomcu/v2/config.h | 2 +- .../fingerpunch/ffkb_byomcu/v2/fp_build.json | 2 +- .../ffkb_byomcu/v2/keymaps/default/keymap.c | 221 ++++++------ .../v2/keymaps/sadekbaroudi/keymap.c | 279 +++++++-------- keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk | 3 +- keyboards/fingerpunch/ffkb_byomcu/v2/via.json | 322 ++++++++++++++++++ keyboards/fingerpunch/ffkb_byomcu/v3/config.h | 3 +- .../fingerpunch/ffkb_byomcu/v3/fp_build.json | 2 +- .../ffkb_byomcu/v3/keymaps/default/config.h | 8 + .../ffkb_byomcu/v3/keymaps/default/keymap.c | 45 ++- .../v3/keymaps/sadekbaroudi/keymap.c | 36 +- keyboards/fingerpunch/ffkb_byomcu/v3/via.json | 322 ++++++++++++++++++ keyboards/fingerpunch/fp.c | 117 +++++++ keyboards/fingerpunch/fp.h | 53 +++ keyboards/fingerpunch/fp_haptic.c | 105 ++++++ keyboards/fingerpunch/fp_haptic.h | 22 ++ keyboards/fingerpunch/fp_keyhandler.c | 66 ++++ keyboards/fingerpunch/fp_keyhandler.h | 37 ++ keyboards/fingerpunch/fp_pointing.c | 258 ++++++++++++++ keyboards/fingerpunch/fp_pointing.h | 31 ++ keyboards/fingerpunch/fp_rgb_matrix.c | 38 +++ keyboards/fingerpunch/fp_rgb_matrix.h | 22 ++ keyboards/fingerpunch/fp_rgblight.c | 183 ++++++++++ keyboards/fingerpunch/fp_rgblight.h | 22 ++ keyboards/fingerpunch/luakeeb/luakeeb.h | 1 + keyboards/fingerpunch/luakeeb/rules.mk | 7 + keyboards/fingerpunch/pinkiesout/pinkiesout.h | 2 + keyboards/fingerpunch/pinkiesout/rules.mk | 7 + keyboards/fingerpunch/rockon/rockon.h | 4 +- keyboards/fingerpunch/rockon/rules.mk | 6 + .../rockon/v1/keymaps/sadekbaroudi/keymap.c | 236 ++++++------- .../rockon/v2/keymaps/sadekbaroudi/keymap.c | 234 ++++++------- .../rockon_bp/keymaps/sadekbaroudi/keymap.c | 234 ++++++------- keyboards/fingerpunch/rockon_bp/rockon_bp.h | 2 + keyboards/fingerpunch/rockon_bp/rules.mk | 9 +- keyboards/fingerpunch/sweeeeep/rules.mk | 9 +- keyboards/fingerpunch/sweeeeep/sweeeeep.h | 2 + keyboards/fingerpunch/ximi/rules.mk | 8 +- keyboards/fingerpunch/ximi/ximi.h | 1 + users/sadekbaroudi/config.h | 100 ++---- users/sadekbaroudi/encoder_stuff.c | 10 +- users/sadekbaroudi/hid.c | 6 +- users/sadekbaroudi/pointing_stuff.c | 14 +- users/sadekbaroudi/pointing_stuff.h | 6 +- users/sadekbaroudi/process_records.c | 109 +----- users/sadekbaroudi/process_records.h | 24 +- users/sadekbaroudi/rgb_stuff.c | 25 +- users/sadekbaroudi/rgb_stuff.h | 2 + users/sadekbaroudi/rules.mk | 8 +- users/sadekbaroudi/sadekbaroudi.c | 67 +--- users/sadekbaroudi/sadekbaroudi.h | 4 +- users/sadekbaroudi/template.c | 4 +- users/sadekbaroudi/wrappers.h | 30 +- 78 files changed, 3298 insertions(+), 1152 deletions(-) create mode 100644 keyboards/absolem/keymaps/sadekbaroudi/config.h create mode 100644 keyboards/absolem/keymaps/sadekbaroudi/rules.mk create mode 100644 keyboards/fingerpunch/FP_LIBRARY_SUPPORT.md create mode 100644 keyboards/fingerpunch/README.md create mode 100644 keyboards/fingerpunch/ffkb_byomcu/rules.mk create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v1/via.json create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v2/via.json create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/config.h create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/via.json create mode 100644 keyboards/fingerpunch/fp.c create mode 100644 keyboards/fingerpunch/fp.h create mode 100644 keyboards/fingerpunch/fp_haptic.c create mode 100644 keyboards/fingerpunch/fp_haptic.h create mode 100644 keyboards/fingerpunch/fp_keyhandler.c create mode 100644 keyboards/fingerpunch/fp_keyhandler.h create mode 100644 keyboards/fingerpunch/fp_pointing.c create mode 100644 keyboards/fingerpunch/fp_pointing.h create mode 100644 keyboards/fingerpunch/fp_rgb_matrix.c create mode 100644 keyboards/fingerpunch/fp_rgb_matrix.h create mode 100644 keyboards/fingerpunch/fp_rgblight.c create mode 100644 keyboards/fingerpunch/fp_rgblight.h create mode 100644 keyboards/fingerpunch/rockon/rules.mk diff --git a/.gitignore b/.gitignore index 51b0a38e0a50..e45bf3ed7ba3 100644 --- a/.gitignore +++ b/.gitignore @@ -94,4 +94,7 @@ compile_commands.json .cache/ # VIA(L) json files that don't belong in QMK repo -via*.json +# via*.json + +# Sadek additions +.vscode/settings.json diff --git a/keyboards/absolem/absolem.h b/keyboards/absolem/absolem.h index c9a53f447223..3d7950dfbde3 100644 --- a/keyboards/absolem/absolem.h +++ b/keyboards/absolem/absolem.h @@ -33,3 +33,5 @@ { K30, K29, K28, K27, K26 }, \ { KC_NO, KC_NO, K38, K37, K36 }, \ } + +#include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/absolem/keymaps/sadekbaroudi/config.h b/keyboards/absolem/keymaps/sadekbaroudi/config.h new file mode 100644 index 000000000000..6563b4b5642d --- /dev/null +++ b/keyboards/absolem/keymaps/sadekbaroudi/config.h @@ -0,0 +1,2 @@ +#define FP_LAYER_LIGHTING_MODE RGBLIGHT_MODE_SNAKE +#define FP_LAYER_LIGHTING_CAPS_LOCK_MODE RGBLIGHT_MODE_SNAKE diff --git a/keyboards/absolem/keymaps/sadekbaroudi/rules.mk b/keyboards/absolem/keymaps/sadekbaroudi/rules.mk new file mode 100644 index 000000000000..3bc0cce8b53a --- /dev/null +++ b/keyboards/absolem/keymaps/sadekbaroudi/rules.mk @@ -0,0 +1,6 @@ +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/FP_LIBRARY_SUPPORT.md b/keyboards/fingerpunch/FP_LIBRARY_SUPPORT.md new file mode 100644 index 000000000000..18c556b2f713 --- /dev/null +++ b/keyboards/fingerpunch/FP_LIBRARY_SUPPORT.md @@ -0,0 +1,60 @@ +# Adding fingerpunch feature support + +The purpose of this doc is mostly to make note to myself on adding the fingerpunch library support, as described in the README.md in this directory. + +That said, if you are looking to leverage the features, you may be able to follow these steps for your keyboard as well. Note that this is untested. + +## Required additions to the keyboard codebase + +1. Add the following line to your keyboard {keyboard_name}.h file, e.g. ffkb_byomcu.h + +`#include "keyboards/fingerpunch/fp.h"` + +2. Include the source files in your keyboard's `rules.mk` file + +Note that below is an example. You should check for the latest version of this code block as found in `keyboards/fingerpunch/ffkb_byomcu/rules.mk` + +```make +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c +``` + +## Personal notes for Sadek's keymaps + +* Add the following to my keymap + * `FP_SCROLL_TOG` (pointing) + * `FP_SNIPE_TOG` (pointing) + * `FP_SUPER_TAB` (replace `S_ALT_TAB` if it exists) +* Change keymap mouse layer for pointing keyboards with pointing devices + * `__________________MOUSE_1__________________` to `_______________AUTO_MOUSE_1________________` +* Add the keyboard to my personal userspace `process_records.h` so that I can continue to use my own keycodes in addition to fingerpunch ones + +```C +// Check to see which keyboard you're using, and define the PLACEHOLDER_SAFE_RANGE based on that. +#if defined(KEYBOARD_fingerpunch_arachnophobe) \ + || defined(KEYBOARD_fingerpunch_barobord) \ + || defined(KEYBOARD_fingerpunch_barobord_byomcu) \ + || defined(KEYBOARD_fingerpunch_bgkeeb) \ + || defined(KEYBOARD_fingerpunch_bigbarobord) \ + || defined(KEYBOARD_fingerpunch_euclid36) \ + || defined(KEYBOARD_fingerpunch_euclid36_proto) \ + || defined(KEYBOARD_fingerpunch_ffkb) \ + || defined(KEYBOARD_fingerpunch_ffkb_byomcu_v1) \ + || defined(KEYBOARD_fingerpunch_ffkb_byomcu_v2) \ + || defined(KEYBOARD_fingerpunch_ffkb_byomcu_v3) \ + || defined(KEYBOARD_fingerpunch_luakeeb) \ + || defined(KEYBOARD_fingerpunch_pinkiesout) \ + || defined(KEYBOARD_fingerpunch_rockon_v1) \ + || defined(KEYBOARD_fingerpunch_rockon_v2) \ + || defined(KEYBOARD_fingerpunch_rockon_bp) \ + || defined(KEYBOARD_fingerpunch_sweeeeep) \ + || defined(KEYBOARD_fingerpunch_ximi) +# define PLACEHOLDER_SAFE_RANGE FP_SAFE_RANGE +#else +# define PLACEHOLDER_SAFE_RANGE SAFE_RANGE +#endif +``` diff --git a/keyboards/fingerpunch/README.md b/keyboards/fingerpunch/README.md new file mode 100644 index 000000000000..034dbf2d7832 --- /dev/null +++ b/keyboards/fingerpunch/README.md @@ -0,0 +1,163 @@ +# fingerpunch keyboards + +## Operating system + +| Setting | Description | Default | +| --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | -------------------------------- | +| `FP_MAC_PREFERRED` | (Optional) If you are primarily using a Mac, enable to use Mac specific keycode logic for fingerpunch features | `undefined` | + +## Keycodes and settings + +### Settings + +| Setting | Description | Default | +| --------------------------------------- | ----------------------------------------------------------------------------------------------------------- | -------------------------------- | +| `FP_DISABLE_CUSTOM_KEYCODES` | (Optional) Disables all the custom keycodes defined in the Keycodes section on this page | `undefined` | +| `FP_SUPER_TAB_TIMEOUT` | (Required) Sets the timeout (in milliseconds) for the alt tab (using keycode `FP_SUPER_TAB`) to go away | `500` | + +### Keycodes + +| Key | Description | +| ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `FP_SCROLL_TOG` | Pointing Device: Toggle scrolling mode | +| `FP_SCROLL_ON` | Pointing Device: Turn on scrolling mode | +| `FP_SCROLL_OFF` | Pointing Device: Turn off scrolling mode | +| `FP_SNIPE_TOG` | Pointing Device: Toggle sniping mode | +| `FP_SNIPE_ON` | Pointing Device: Turn on sniping mode | +| `FP_SNIPE_OFF` | Pointing Device: Turn off sniping mode | +| `FP_SUPER_TAB` | Super alt tab, tap to alt tab instead of holding alt, supports holding shift to alt tab backwards (to use on Mac, see `FP_MAC_PREFERRED` and see `FP_SUPER_TAB_TIMEOUT` to change timeout) | + +Note: if you are using a userspace, and you have custom keycodes, you will need to add some logic in your userspace keycodes .h file that will handle the `SAFE_RANGE` appropriately. + +```C +// Check to see which keyboard you're using, and define the PLACEHOLDER_SAFE_RANGE based on that. +#if defined(KEYBOARD_fingerpunch_arachnophobe) \ + || defined(KEYBOARD_fingerpunch_barobord) \ + || defined(KEYBOARD_fingerpunch_barobord_byomcu) \ + || defined(KEYBOARD_fingerpunch_bgkeeb) \ + || defined(KEYBOARD_fingerpunch_bigbarobord) \ + || defined(KEYBOARD_fingerpunch_euclid36) \ + || defined(KEYBOARD_fingerpunch_euclid36_proto) \ + || defined(KEYBOARD_fingerpunch_ffkb) \ + || defined(KEYBOARD_fingerpunch_ffkb_byomcu_v1) \ + || defined(KEYBOARD_fingerpunch_ffkb_byomcu_v2) \ + || defined(KEYBOARD_fingerpunch_ffkb_byomcu_v3) \ + || defined(KEYBOARD_fingerpunch_luakeeb) \ + || defined(KEYBOARD_fingerpunch_pinkiesout) \ + || defined(KEYBOARD_fingerpunch_rockon_v1) \ + || defined(KEYBOARD_fingerpunch_rockon_v2) \ + || defined(KEYBOARD_fingerpunch_rockon_bp) \ + || defined(KEYBOARD_fingerpunch_sweeeeep) \ + || defined(KEYBOARD_fingerpunch_ximi) +# define PLACEHOLDER_SAFE_RANGE FP_SAFE_RANGE +#else +# define PLACEHOLDER_SAFE_RANGE SAFE_RANGE +#endif + +enum userspace_custom_keycodes { + YOUR_KEYCODE_1 = PLACEHOLDER_SAFE_RANGE, + YOUR_KEYCODE_2, +... + NEW_SAFE_RANGE, +} +``` +## Pointing Device + +### General Settings + +| Setting | Description | Default | +| --------------------------------------- | ----------------------------------------------------------------------------------------- | -------------------------------- | +| `FP_POINTING_DEFAULT_DPI` | (Required) Sets the default DPI for your pointing device | `1000` | +| `FP_POINTING_SCROLLING_DPI` | (Required) Sets the default DPI for scrolling | `50` | +| `FP_POINTING_SCROLLING_LAYER_ENABLE` | (Optional) Enables scrolling mode for the layer `FP_POINTING_SCROLLING_LAYER` | `undefined` | +| `FP_POINTING_SCROLLING_LAYER` | (Required) Defines the layer used to enable scrolling | `3` (`_RAISE` on default keymap) | +| `FP_POINTING_SNIPING_DPI` | (Required) Sets the default DPI for scrolling | `50` | +| `FP_POINTING_SNIPING_LAYER_ENABLE` | (Required) Enables scrolling mode for the layer `FP_POINTING_SNIPING_LAYER` | `undefined` | +| `FP_POINTING_SNIPING_LAYER` | (Required) Defines the layer used to enable sniping | `2` (`_LOWER` on default keymap) | + + + +### Combined Pointing Devices + +This only applies if you are using a split fingerpunch keyboard with two pointing devices. The default is for the left one to be scrolling, and the right one to act as the mouse, but this is configurable via `FP_POINTING_COMBINED_SCROLLING_LEFT` and `FP_POINTING_COMBINED_SCROLLING_RIGHT` + +| Setting | Description | Default | +| --------------------------------------- | ------------------------------------------------------------------- | -------------------------- | +| `FP_POINTING_COMBINED_SCROLLING_LEFT` | (Required) Sets default behavior to scrolling on the left half | `true` | +| `FP_POINTING_COMBINED_SCROLLING_RIGHT` | (Required) Sets default behavior to scrolling on the right half | `false` | + + +### Auto mouse layer + +As of 2022-09-26, this has been pulled in early from qmk develop, but should be available in the Q4 release. See the documentation here: +https://github.com/qmk/qmk_firmware/blob/develop/docs/feature_pointing_device.md#automatic-mouse-layer-idpointing-device-auto-mouse + +This is fully supported. Once I merge the next major release in Q4, I will remove this documentation. + +In addition to the default configurations, there are additional features added to fingerpunch keyboards: + +| Setting | Description | Default | +| ------------------------------------------------ | ------------------------------------------------------------------------------- | ------------------------------- | +| `FP_AUTO_MOUSE_TRACKBALL_SENSITIVITY` | (Required) Trackball auto mouse sensitivity value | `3` | + +(Additional auto mouse configuration in the layer lighting section) + +More detail on `FP_AUTO_MOUSE_TRACKBALL_SENSITIVITY`. If you are experiencing that the auto mouse layer triggers while typing, you can adjust this value. The default for for the core qmk feature is 0, which works great for trackpads. As you increase, it will require more mouse movement to trigger auto mouse layer. The default for trackballs on fingerpunch keyboards is 3. This value is only applied if you are using a trackball, and is otherwise ignored. + +Note that I'm automatically enabling the feature if you add the `POINTING_DEVICE_AUTO_MOUSE_ENABLE` and `AUTO_MOUSE_DEFAULT_LAYER` to your config.h, such that you don't have to add this code: +```c +// in keymap.c: +void pointing_device_init_user(void) { + set_auto_mouse_layer(); // only required if AUTO_MOUSE_DEFAULT_LAYER is not set to index of + set_auto_mouse_enable(true); // always required before the auto mouse feature will work +} +``` + +## RGB Lighting + +### Layer lighting + +If using this feature (`FP_LAYER_LIGHTING_ENABLE`), please note that the `FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE` will be automatically disabled. Given that this feature will handle the auto mouse layer as well, you don't need to activate the layer lighting twice. Just set the mouse layer lighting to the color you prefer using the `FP_LAYER_LIGHTING_HUE_X` below. + +| Setting | Description | Default | +| --------------------------------------- | ------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | +| `FP_LAYER_LIGHTING_ENABLE` | (Optional) Define this to enable layer lighting | `undefined` | +| `FP_LAYER_LIGHTING_MODE` | (Required) Set the layer lighting default mode | `RGBLIGHT_MODE_STATIC_LIGHT` | +| `FP_LAYER_LIGHTING_HUE_0` | (Required) Set the layer lighting hue for layer 0 | `HSV_BLUE` | +| `FP_LAYER_LIGHTING_HUE_1` | (Required) Set the layer lighting hue for layer 1 | `HSV_WHITE` | +| `FP_LAYER_LIGHTING_HUE_2` | (Required) Set the layer lighting hue for layer 2 | `HSV_GREEN` | +| `FP_LAYER_LIGHTING_HUE_3` | (Required) Set the layer lighting hue for layer 3 | `HSV_PURPLE` | +| `FP_LAYER_LIGHTING_HUE_4` | (Required) Set the layer lighting hue for layer 4 | `HSV_YELLOW` | +| `FP_LAYER_LIGHTING_HUE_5` | (Required) Set the layer lighting hue for layer 5 | `HSV_MAGENTA` | +| `FP_LAYER_LIGHTING_HUE_6` | (Required) Set the layer lighting hue for layer 6 | `HSV_CYAN` | +| `FP_LAYER_LIGHTING_HUE_7` | (Required) Set the layer lighting hue for layer 7 | `HSV_SPRINGGREEN` | +| `FP_LAYER_LIGHTING_MODE_0` | (Required) Set the layer lighting mode for layer 0 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_1` | (Required) Set the layer lighting mode for layer 1 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_2` | (Required) Set the layer lighting mode for layer 2 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_3` | (Required) Set the layer lighting mode for layer 3 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_4` | (Required) Set the layer lighting mode for layer 4 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_5` | (Required) Set the layer lighting mode for layer 5 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_6` | (Required) Set the layer lighting mode for layer 6 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_7` | (Required) Set the layer lighting mode for layer 7 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_CAPS_LOCK_HUE` | (Required) Set the layer lighting hue when caps lock is enabled | `HSV_RED` | +| `FP_LAYER_LIGHTING_CAPS_LOCK_MODE` | (Required) Set the layer lighting mode when caps lock is enabled | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE` | (Optional) If using RGB, set the layer lighting when auto mouse is triggered | `undefined` | +| `FP_LAYER_LIGHTING_AUTO_MOUSE_HUE` | (Required) This is the hue that is used for the auto mouse layer lighting | `HSV_ORANGE` | +| `FP_LAYER_LIGHTING_AUTO_MOUSE_MODE` | (Required) This is the mode that is used for the auto mouse layer lighting | `FP_LAYER_LIGHTING_MODE` | + +## Haptic Feedback + +Enable special haptic feedback features. + +Note that the ctrl-X haptic feedback responses will use control as the modifier, so it won't work on a Mac by default. However, if are primarily using a Mac, enable the `FP_MAC_PREFERRED` in your config.h + +| Setting | Description | Default | +| --------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------- | +| `FP_HAPTIC_MOUSE_BUTTONS` | (Optional) Enable haptic feedback response for Mouse 1, 2, and 3 | `undefined` | +| `FP_HAPTIC_CUT_COPY_PASTE` | (Optional) Enable haptic feedback response for ctrl-x, ctrl-c, ctrl-v | `undefined` | +| `FP_HAPTIC_SAVE` | (Optional) Enable haptic feedback response for ctrl-s | `undefined` | + + +## Keymap + +If you are looking to use process_record_kb() or process_record diff --git a/keyboards/fingerpunch/arachnophobe/arachnophobe.h b/keyboards/fingerpunch/arachnophobe/arachnophobe.h index 2358a36157f3..7bb81214724f 100644 --- a/keyboards/fingerpunch/arachnophobe/arachnophobe.h +++ b/keyboards/fingerpunch/arachnophobe/arachnophobe.h @@ -39,3 +39,5 @@ { K36, K18, K29, K09, K1A, K2A }, \ { K37, K28, K08, K19, K38, K27 }, \ } + +#include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/fingerpunch/arachnophobe/rules.mk b/keyboards/fingerpunch/arachnophobe/rules.mk index da7b41a4807c..99dcdaf885ec 100644 --- a/keyboards/fingerpunch/arachnophobe/rules.mk +++ b/keyboards/fingerpunch/arachnophobe/rules.mk @@ -29,3 +29,10 @@ ENCODER_ENABLE = no OLED_ENABLE = no # this can be yes or no depending on if you have an OLED EXTRAFLAGS += -flto # macros enable or disable MOUSEKEY_ENABLE = yes + +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/barobord/barobord.h b/keyboards/fingerpunch/barobord/barobord.h index fe8de5a9df6c..4ea7cdf7b207 100644 --- a/keyboards/fingerpunch/barobord/barobord.h +++ b/keyboards/fingerpunch/barobord/barobord.h @@ -40,3 +40,5 @@ { K21, K22, K23, K24, K25, K26, K27, K28, K29, K30, K50 }, \ { K31, K32, K33, K34, K35, K36, K37, K38, K39, K40, K51 } \ } + +#include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/fingerpunch/barobord/rules.mk b/keyboards/fingerpunch/barobord/rules.mk index 4cbeece48f11..3e1b3d807a9c 100644 --- a/keyboards/fingerpunch/barobord/rules.mk +++ b/keyboards/fingerpunch/barobord/rules.mk @@ -46,4 +46,11 @@ ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) POINTING_DEVICE_ENABLE := yes POINTING_DEVICE_DRIVER := pimoroni_trackball OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif \ No newline at end of file +endif + +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/barobord_byomcu/barobord_byomcu.h b/keyboards/fingerpunch/barobord_byomcu/barobord_byomcu.h index c7c8206a7a97..2f608f0bad11 100644 --- a/keyboards/fingerpunch/barobord_byomcu/barobord_byomcu.h +++ b/keyboards/fingerpunch/barobord_byomcu/barobord_byomcu.h @@ -41,3 +41,5 @@ { K31, K32, K33, K34, K35, K36, K37, K38, K39 }, \ { KC_NO, KC_NO, KC_NO, K36, K35, K10, K20, K30, K40 }, \ } + +#include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/fingerpunch/barobord_byomcu/rules.mk b/keyboards/fingerpunch/barobord_byomcu/rules.mk index 13cb43a5ee05..b0afee954a02 100644 --- a/keyboards/fingerpunch/barobord_byomcu/rules.mk +++ b/keyboards/fingerpunch/barobord_byomcu/rules.mk @@ -53,4 +53,11 @@ ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) POINTING_DEVICE_ENABLE := yes POINTING_DEVICE_DRIVER := pimoroni_trackball OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif \ No newline at end of file +endif + +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/bgkeeb/bgkeeb.h b/keyboards/fingerpunch/bgkeeb/bgkeeb.h index c19afee1baa0..a9a29b724173 100644 --- a/keyboards/fingerpunch/bgkeeb/bgkeeb.h +++ b/keyboards/fingerpunch/bgkeeb/bgkeeb.h @@ -22,3 +22,4 @@ #define LAYOUT LAYOUT_split_3x5_4 +#include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/fingerpunch/bgkeeb/rules.mk b/keyboards/fingerpunch/bgkeeb/rules.mk index 18ffd7223c33..ba24f50069b7 100644 --- a/keyboards/fingerpunch/bgkeeb/rules.mk +++ b/keyboards/fingerpunch/bgkeeb/rules.mk @@ -24,3 +24,10 @@ ENCODER_ENABLE = no SPLIT_KEYBOARD = yes LAYOUTS = split_3x5_3 + +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/bigbarobord/bigbarobord.h b/keyboards/fingerpunch/bigbarobord/bigbarobord.h index 09ff6ed912ea..de12813e0071 100644 --- a/keyboards/fingerpunch/bigbarobord/bigbarobord.h +++ b/keyboards/fingerpunch/bigbarobord/bigbarobord.h @@ -44,3 +44,5 @@ { K41, K42, K43, K44, K45, K46, K47, K48, K49 }, \ { ___, K3B, K3C, K0A, K2B, K1A, K2A, K3A, K4A } \ } + +#include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/fingerpunch/bigbarobord/rules.mk b/keyboards/fingerpunch/bigbarobord/rules.mk index 3e9921b5e0de..392fcfc250bb 100644 --- a/keyboards/fingerpunch/bigbarobord/rules.mk +++ b/keyboards/fingerpunch/bigbarobord/rules.mk @@ -46,4 +46,11 @@ ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) POINTING_DEVICE_ENABLE := yes POINTING_DEVICE_DRIVER := pimoroni_trackball OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif \ No newline at end of file +endif + +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/ffkb/ffkb.h b/keyboards/fingerpunch/ffkb/ffkb.h index fd51d7cfa945..d1a531bcd26b 100644 --- a/keyboards/fingerpunch/ffkb/ffkb.h +++ b/keyboards/fingerpunch/ffkb/ffkb.h @@ -40,3 +40,5 @@ { K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C }, \ { KC_NO, K32, KC_NO, K34, K35, K36, K37, K38, K39, K3A, K3B, KC_NO } \ } + +#include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/fingerpunch/ffkb/rules.mk b/keyboards/fingerpunch/ffkb/rules.mk index a64a82193ee6..84ea85c761e6 100644 --- a/keyboards/fingerpunch/ffkb/rules.mk +++ b/keyboards/fingerpunch/ffkb/rules.mk @@ -61,4 +61,11 @@ endif ifeq ($(strip $(FP_EVQ_UNDER_PALMS)), yes) ENCODER_ENABLE := yes OPT_DEFS += -DFP_EVQ_UNDER_PALMS -endif \ No newline at end of file +endif + +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.c b/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.c index 97c60a1a5985..4a8fc7d7f09c 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.c +++ b/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.c @@ -36,7 +36,6 @@ led_config_t g_led_config = { { 4, 4, 4, 1, 1, 1 } }; - // 5 column config /* led_config_t g_led_config = { { diff --git a/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.h b/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.h index fd9182c4a86e..76ff1c0a50ee 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.h +++ b/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.h @@ -23,4 +23,6 @@ # include "v2.h" #elif defined(KEYBOARD_fingerpunch_ffkb_byomcu_v3) # include "v3.h" -#endif \ No newline at end of file +#endif + +#include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/fingerpunch/ffkb_byomcu/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rules.mk new file mode 100644 index 000000000000..9afc914efe61 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/rules.mk @@ -0,0 +1,6 @@ +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/default/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/default/keymap.c index 94bc199cfd00..15925359fa23 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/default/keymap.c +++ b/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/default/keymap.c @@ -233,69 +233,69 @@ oled_rotation_t oled_init_user(oled_rotation_t rotation) { static void render_logo(void) { // ffkb logo, 128x64px static const char PROGMEM ffkb_logo[] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xe0, 0xc0, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x80, 0xc0, 0xe0, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, - 0xfe, 0x02, 0x02, 0x02, 0x82, 0x06, 0x0e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0x0f, 0x07, 0x0f, 0x1f, - 0x3e, 0x7c, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, - 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, - 0x1f, 0x0f, 0x07, 0x0f, 0xff, 0xff, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x02, 0x82, - 0x82, 0xc2, 0xe2, 0xde, 0x0e, 0x0e, 0x06, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0x02, 0x02, 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xe0, 0xf8, 0xfc, 0x7e, - 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, - 0x7e, 0xfc, 0xf8, 0xe0, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x1f, - 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, - 0x07, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xff, 0x7f, 0x1f, 0x87, 0x83, 0x80, 0x80, - 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, - 0x80, 0x80, 0x83, 0x87, 0x1f, 0x7f, 0xff, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x04, 0x04, - 0x04, 0x05, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, - 0xe0, 0x20, 0x20, 0x20, 0x20, 0x60, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x08, 0x18, 0x3c, 0x3e, 0x7f, 0xff, 0xff, 0xff, 0xef, 0xcf, 0x8f, 0x87, 0x07, 0x07, 0x07, 0x07, - 0x07, 0xe7, 0xe7, 0xe7, 0xc7, 0x07, 0x07, 0x0f, 0x3f, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0x3f, 0x0f, 0x07, 0x07, 0xc7, 0xe7, 0xe7, 0xe7, 0x07, - 0x07, 0x07, 0x07, 0x07, 0x87, 0x8f, 0xcf, 0xef, 0xef, 0xff, 0xff, 0x7f, 0x3e, 0x3c, 0x18, 0x08, - 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x20, 0x20, - 0x60, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0x20, 0x20, 0x70, 0xf8, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1e, 0x3e, 0x7c, - 0xf8, 0xf1, 0xf1, 0xe1, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, - 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe1, 0xf1, 0xf1, 0xf8, - 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x20, 0x20, - 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, - 0x7f, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7e, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x3c, - 0x3c, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, - 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0e, - 0x0e, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xe0, 0xc0, 0x80, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x80, 0xc0, 0xe0, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, + 0xfe, 0x02, 0x02, 0x02, 0x82, 0x06, 0x0e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0x0f, 0x07, 0x0f, 0x1f, + 0x3e, 0x7c, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, + 0x1f, 0x0f, 0x07, 0x0f, 0xff, 0xff, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x02, 0x82, + 0x82, 0xc2, 0xe2, 0xde, 0x0e, 0x0e, 0x06, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x02, 0x02, 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xe0, 0xf8, 0xfc, 0x7e, + 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, + 0x7e, 0xfc, 0xf8, 0xe0, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x1f, + 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, + 0x07, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xff, 0x7f, 0x1f, 0x87, 0x83, 0x80, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, + 0x80, 0x80, 0x83, 0x87, 0x1f, 0x7f, 0xff, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x04, 0x04, + 0x04, 0x05, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0xe0, 0x20, 0x20, 0x20, 0x20, 0x60, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x18, 0x3c, 0x3e, 0x7f, 0xff, 0xff, 0xff, 0xef, 0xcf, 0x8f, 0x87, 0x07, 0x07, 0x07, 0x07, + 0x07, 0xe7, 0xe7, 0xe7, 0xc7, 0x07, 0x07, 0x0f, 0x3f, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0x3f, 0x0f, 0x07, 0x07, 0xc7, 0xe7, 0xe7, 0xe7, 0x07, + 0x07, 0x07, 0x07, 0x07, 0x87, 0x8f, 0xcf, 0xef, 0xef, 0xff, 0xff, 0x7f, 0x3e, 0x3c, 0x18, 0x08, + 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x20, 0x20, + 0x60, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x20, 0x20, 0x70, 0xf8, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1e, 0x3e, 0x7c, + 0xf8, 0xf1, 0xf1, 0xe1, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, + 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe1, 0xf1, 0xf1, 0xf8, + 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x20, 0x20, + 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, + 0x7f, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7e, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x3c, + 0x3c, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, + 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0e, + 0x0e, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; @@ -341,29 +341,29 @@ static void render_status(void) { // ffkb logo, 128x48px static const char ffkb_logo_small [] PROGMEM = { - 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, - 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0x40, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xf8, 0xfe, 0x8e, 0xdc, 0xf0, 0x70, 0x60, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, - 0x30, 0x70, 0xf0, 0xd8, 0x9c, 0x9e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, - 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x10, - 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0x10, 0x10, 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x78, 0x7c, - 0xff, 0xd7, 0x9b, 0x18, 0x78, 0x78, 0x18, 0x30, 0x70, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, - 0x18, 0x58, 0x78, 0x18, 0x99, 0x9b, 0xf7, 0xfc, 0x78, 0x30, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x78, 0xfc, 0xfc, 0xfe, 0xff, 0xf8, 0xf0, - 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0x10, 0x10, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, - 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x01, 0x01, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x18, 0x3f, 0x7f, 0x68, 0x68, 0x3f, 0x3f, 0x0c, - 0x0c, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, - 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, 0x01, 0x0b, 0x0f, 0x0f, 0x0f, 0x0f, - 0x0f, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, + 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0x40, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xf8, 0xfe, 0x8e, 0xdc, 0xf0, 0x70, 0x60, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x70, 0xf0, 0xd8, 0x9c, 0x9e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x10, + 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x10, 0x10, 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x78, 0x7c, + 0xff, 0xd7, 0x9b, 0x18, 0x78, 0x78, 0x18, 0x30, 0x70, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, + 0x18, 0x58, 0x78, 0x18, 0x99, 0x9b, 0xf7, 0xfc, 0x78, 0x30, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x78, 0xfc, 0xfc, 0xfe, 0xff, 0xf8, 0xf0, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x10, 0x10, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x01, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x18, 0x3f, 0x7f, 0x68, 0x68, 0x3f, 0x3f, 0x0c, + 0x0c, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, + 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, 0x01, 0x0b, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x08, 0x0c, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 }; oled_write_raw_P(ffkb_logo_small, sizeof(ffkb_logo_small)); diff --git a/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/sadekbaroudi/keymap.c index 0f97d6f69f7b..77ebf5618c1e 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/sadekbaroudi/keymap.c +++ b/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/sadekbaroudi/keymap.c @@ -40,7 +40,7 @@ LAYOUT_wrapper( \ KC_MS_BTN3, K01, K02, K03, LT(_FUNCTION, K04), K05, K06, LT(_FUNCTION, K07), K08, K09, K0A, KC_BSLS, \ KC_MS_BTN1, LCTL_T(K11), LGUI_T(K12), LALT_T(K13), LSFT_T(K14), K15, LT(_MOUSE, K16), RSFT_T(K17), RALT_T(K18), RGUI_T(K19), RCTL_T(K1A), LCTL(KC_V), \ - KC_MS_BTN2, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, S_ALT_TAB, \ + KC_MS_BTN2, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, FP_SUPER_TAB, \ KC_MUTE, K33, LT(_NAVIGATION,K34), LT(_FUNCTION,K35), LT(_MEDIA,K36), LT(_SYMBOLS,K37), K38, LCTL(KC_BSPC), \ N_DEL_LINE \ ) @@ -65,41 +65,41 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_NAVIGATION] = LAYOUT_wrapper( - _______, ________________NAVIGATION_1_______________, _________________NUMPAD_1__________________, _______, - _______, ________________NAVIGATION_2_______________, _________________NUMPAD_2__________________, _______, - _______, ________________NAVIGATION_3_______________, _________________NUMPAD_3__________________, _______, - _______, _______, _______, KC_TAB, KC_BSPC, KC_SPACE, KC_DOT, _______, + _______, ________________NAVIGATION_1_______________, _________________NUMPAD_1__________________, _______, + _______, ________________NAVIGATION_2_______________, _________________NUMPAD_2__________________, _______, + _______, ________________NAVIGATION_3_______________, _________________NUMPAD_3__________________, _______, + _______, _______, _______, KC_TAB, KC_BSPC, KC_SPACE, KC_DOT, _______, _______ ), [_SYMBOLS] = LAYOUT_wrapper( - _______, ________________SYMBOLS_L1_________________, ________________SYMBOLS_R1_________________, _______, - _______, ________________SYMBOLS_L2_________________, ________________SYMBOLS_R2_________________, _______, - _______, ________________SYMBOLS_L3_________________, ________________SYMBOLS_R3_________________, _______, + _______, ________________SYMBOLS_L1_________________, ________________SYMBOLS_R1_________________, _______, + _______, ________________SYMBOLS_L2_________________, ________________SYMBOLS_R2_________________, _______, + _______, ________________SYMBOLS_L3_________________, ________________SYMBOLS_R3_________________, _______, _______, _______, KC_ENT, KC_DEL, KC_BSPC, _______, _______, _______, _______ ), [_FUNCTION] = LAYOUT_wrapper( - _______, ________________SHIFTNAV_1_________________, ________________FUNCTION_1_________________, _______, - _______, ________________SHIFTNAV_2_________________, ________________FUNCTION_2_________________, _______, - _______, ________________SHIFTNAV_3_________________, ________________FUNCTION_3_________________, _______, - _______, _______, _______, _______, N_DEL_LINE, KC_SPACE, _______, _______, + _______, ________________SHIFTNAV_1_________________, ________________FUNCTION_1_________________, _______, + _______, ________________SHIFTNAV_2_________________, ________________FUNCTION_2_________________, _______, + _______, ________________SHIFTNAV_3_________________, ________________FUNCTION_3_________________, _______, + _______, _______, _______, _______, N_DEL_LINE, KC_SPACE, _______, _______, _______ ), [_MEDIA] = LAYOUT_wrapper( - _______, ___________________RGB_1___________________, _________________MACROS_1__________________, _______, - _______, ___________________RGB_2___________________, _________________MACROS_2__________________, _______, - _______, ___________________RGB_3___________________, _________________MACROS_3__________________, _______, + _______, ___________________RGB_1___________________, _________________MACROS_1__________________, _______, + _______, ___________________RGB_2___________________, _________________MACROS_2__________________, _______, + _______, ___________________RGB_3___________________, _________________MACROS_3__________________, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - + [_MOUSE] = LAYOUT_wrapper( - _______, __________________MOUSE_1__________________, ___________________BLANK___________________, _______, - _______, __________________MOUSE_2__________________, ___________________BLANK___________________, _______, - _______, __________________MOUSE_3__________________, ___________________BLANK___________________, _______, + _______, __________________MOUSE_1__________________, ___________________BLANK___________________, _______, + _______, __________________MOUSE_2__________________, ___________________BLANK___________________, _______, + _______, __________________MOUSE_3__________________, ___________________BLANK___________________, _______, _______, _______, KC_MS_BTN1, KC_MS_BTN3, KC_MS_BTN3, KC_MS_BTN2, _______, _______, _______ ) @@ -111,110 +111,110 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { oled_rotation_t oled_init_user(oled_rotation_t rotation) { return OLED_ROTATION_180; -} +} static void render_logo(void) { // ffkb logo, 128x32px static const char PROGMEM ffkb_logo[] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, - 0xf0, 0x10, 0x10, 0x10, 0x90, 0x30, 0x30, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfc, 0x3c, 0x3c, 0x38, 0x70, - 0x70, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0x70, - 0x70, 0x38, 0x3c, 0x3c, 0xfc, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x10, 0x00, - 0x80, 0x90, 0xd0, 0xf0, 0x30, 0x30, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, - 0x3f, 0x21, 0x01, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe7, 0xff, 0x7f, 0x7f, 0xbc, 0x9e, 0x8e, 0x8f, - 0x87, 0x87, 0x83, 0x83, 0x81, 0x81, 0x81, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x81, 0x81, 0x81, 0x83, 0x83, 0x87, 0x87, - 0x8f, 0x8e, 0x9e, 0xbc, 0x7f, 0x7f, 0xff, 0xe7, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x23, 0x07, - 0x0f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, - 0xfc, 0x44, 0x44, 0x44, 0xe4, 0x0c, 0x0c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x02, 0x06, 0x06, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1b, 0x3b, 0x3b, 0x73, 0x73, 0x73, 0xe3, - 0xe3, 0xdf, 0xdf, 0xdf, 0x8b, 0x83, 0x03, 0x03, 0x07, 0x1f, 0xfe, 0xfc, 0xf8, 0xe0, 0x00, 0x00, - 0x00, 0x00, 0xe0, 0xf8, 0xfc, 0xfe, 0x1f, 0x07, 0x03, 0x03, 0x83, 0x8b, 0xdf, 0xdf, 0xdf, 0xe3, - 0xe3, 0x73, 0x73, 0x73, 0x3b, 0x3b, 0x1b, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x06, 0x06, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0x44, 0x44, - 0x44, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xb8, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, - 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0e, 0x1f, 0x3f, 0x3f, 0x3f, 0x36, 0x36, - 0x36, 0x36, 0x3f, 0x3f, 0x3f, 0x1f, 0x0e, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x08, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + 0xf0, 0x10, 0x10, 0x10, 0x90, 0x30, 0x30, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfc, 0x3c, 0x3c, 0x38, 0x70, + 0x70, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0x70, + 0x70, 0x38, 0x3c, 0x3c, 0xfc, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x10, 0x00, + 0x80, 0x90, 0xd0, 0xf0, 0x30, 0x30, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, + 0x3f, 0x21, 0x01, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe7, 0xff, 0x7f, 0x7f, 0xbc, 0x9e, 0x8e, 0x8f, + 0x87, 0x87, 0x83, 0x83, 0x81, 0x81, 0x81, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x81, 0x81, 0x81, 0x83, 0x83, 0x87, 0x87, + 0x8f, 0x8e, 0x9e, 0xbc, 0x7f, 0x7f, 0xff, 0xe7, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x23, 0x07, + 0x0f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, + 0xfc, 0x44, 0x44, 0x44, 0xe4, 0x0c, 0x0c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x02, 0x06, 0x06, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1b, 0x3b, 0x3b, 0x73, 0x73, 0x73, 0xe3, + 0xe3, 0xdf, 0xdf, 0xdf, 0x8b, 0x83, 0x03, 0x03, 0x07, 0x1f, 0xfe, 0xfc, 0xf8, 0xe0, 0x00, 0x00, + 0x00, 0x00, 0xe0, 0xf8, 0xfc, 0xfe, 0x1f, 0x07, 0x03, 0x03, 0x83, 0x8b, 0xdf, 0xdf, 0xdf, 0xe3, + 0xe3, 0x73, 0x73, 0x73, 0x3b, 0x3b, 0x1b, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x06, 0x06, 0x02, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0x44, 0x44, + 0x44, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xb8, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0e, 0x1f, 0x3f, 0x3f, 0x3f, 0x36, 0x36, + 0x36, 0x36, 0x3f, 0x3f, 0x3f, 0x1f, 0x0e, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x08, 0x08, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; // ffkb logo, 128x64px // static const char PROGMEM ffkb_logo[] = { - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xe0, 0xc0, 0x80, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x80, 0xc0, 0xe0, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, - // 0xfe, 0x02, 0x02, 0x02, 0x82, 0x06, 0x0e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0x0f, 0x07, 0x0f, 0x1f, - // 0x3e, 0x7c, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, - // 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, - // 0x1f, 0x0f, 0x07, 0x0f, 0xff, 0xff, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x02, 0x82, - // 0x82, 0xc2, 0xe2, 0xde, 0x0e, 0x0e, 0x06, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - // 0xff, 0x02, 0x02, 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xe0, 0xf8, 0xfc, 0x7e, - // 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, - // 0x7e, 0xfc, 0xf8, 0xe0, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x1f, - // 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, - // 0x07, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xff, 0x7f, 0x1f, 0x87, 0x83, 0x80, 0x80, - // 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, - // 0x80, 0x80, 0x83, 0x87, 0x1f, 0x7f, 0xff, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x04, 0x04, - // 0x04, 0x05, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, - // 0xe0, 0x20, 0x20, 0x20, 0x20, 0x60, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x08, 0x18, 0x3c, 0x3e, 0x7f, 0xff, 0xff, 0xff, 0xef, 0xcf, 0x8f, 0x87, 0x07, 0x07, 0x07, 0x07, - // 0x07, 0xe7, 0xe7, 0xe7, 0xc7, 0x07, 0x07, 0x0f, 0x3f, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0x3f, 0x0f, 0x07, 0x07, 0xc7, 0xe7, 0xe7, 0xe7, 0x07, - // 0x07, 0x07, 0x07, 0x07, 0x87, 0x8f, 0xcf, 0xef, 0xef, 0xff, 0xff, 0x7f, 0x3e, 0x3c, 0x18, 0x08, - // 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x20, 0x20, - // 0x60, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - // 0xff, 0x20, 0x20, 0x70, 0xf8, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1e, 0x3e, 0x7c, - // 0xf8, 0xf1, 0xf1, 0xe1, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, - // 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe1, 0xf1, 0xf1, 0xf8, - // 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x20, 0x20, - // 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, - // 0x7f, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7e, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x3c, - // 0x3c, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, - // 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0e, - // 0x0e, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xe0, 0xc0, 0x80, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x80, 0xc0, 0xe0, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, + // 0xfe, 0x02, 0x02, 0x02, 0x82, 0x06, 0x0e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0x0f, 0x07, 0x0f, 0x1f, + // 0x3e, 0x7c, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + // 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, + // 0x1f, 0x0f, 0x07, 0x0f, 0xff, 0xff, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x02, 0x82, + // 0x82, 0xc2, 0xe2, 0xde, 0x0e, 0x0e, 0x06, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + // 0xff, 0x02, 0x02, 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xe0, 0xf8, 0xfc, 0x7e, + // 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, + // 0x7e, 0xfc, 0xf8, 0xe0, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x1f, + // 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, + // 0x07, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xff, 0x7f, 0x1f, 0x87, 0x83, 0x80, 0x80, + // 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, + // 0x80, 0x80, 0x83, 0x87, 0x1f, 0x7f, 0xff, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x04, 0x04, + // 0x04, 0x05, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + // 0xe0, 0x20, 0x20, 0x20, 0x20, 0x60, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x08, 0x18, 0x3c, 0x3e, 0x7f, 0xff, 0xff, 0xff, 0xef, 0xcf, 0x8f, 0x87, 0x07, 0x07, 0x07, 0x07, + // 0x07, 0xe7, 0xe7, 0xe7, 0xc7, 0x07, 0x07, 0x0f, 0x3f, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0x3f, 0x0f, 0x07, 0x07, 0xc7, 0xe7, 0xe7, 0xe7, 0x07, + // 0x07, 0x07, 0x07, 0x07, 0x87, 0x8f, 0xcf, 0xef, 0xef, 0xff, 0xff, 0x7f, 0x3e, 0x3c, 0x18, 0x08, + // 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x20, 0x20, + // 0x60, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + // 0xff, 0x20, 0x20, 0x70, 0xf8, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1e, 0x3e, 0x7c, + // 0xf8, 0xf1, 0xf1, 0xe1, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, + // 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe1, 0xf1, 0xf1, 0xf8, + // 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x20, 0x20, + // 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, + // 0x7f, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7e, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x3c, + // 0x3c, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, + // 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0e, + // 0x0e, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // }; oled_write_raw_P(ffkb_logo, sizeof(ffkb_logo)); @@ -260,29 +260,29 @@ static void render_status(void) { // ffkb logo, 128x48px static const char ffkb_logo_small [] PROGMEM = { - 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, - 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0x40, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xf8, 0xfe, 0x8e, 0xdc, 0xf0, 0x70, 0x60, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, - 0x30, 0x70, 0xf0, 0xd8, 0x9c, 0x9e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, - 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x10, - 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0x10, 0x10, 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x78, 0x7c, - 0xff, 0xd7, 0x9b, 0x18, 0x78, 0x78, 0x18, 0x30, 0x70, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, - 0x18, 0x58, 0x78, 0x18, 0x99, 0x9b, 0xf7, 0xfc, 0x78, 0x30, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x78, 0xfc, 0xfc, 0xfe, 0xff, 0xf8, 0xf0, - 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0x10, 0x10, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, - 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x01, 0x01, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x18, 0x3f, 0x7f, 0x68, 0x68, 0x3f, 0x3f, 0x0c, - 0x0c, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, - 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, 0x01, 0x0b, 0x0f, 0x0f, 0x0f, 0x0f, - 0x0f, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, + 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0x40, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xf8, 0xfe, 0x8e, 0xdc, 0xf0, 0x70, 0x60, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x70, 0xf0, 0xd8, 0x9c, 0x9e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x10, + 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x10, 0x10, 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x78, 0x7c, + 0xff, 0xd7, 0x9b, 0x18, 0x78, 0x78, 0x18, 0x30, 0x70, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, + 0x18, 0x58, 0x78, 0x18, 0x99, 0x9b, 0xf7, 0xfc, 0x78, 0x30, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x78, 0xfc, 0xfc, 0xfe, 0xff, 0xf8, 0xf0, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x10, 0x10, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x01, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x18, 0x3f, 0x7f, 0x68, 0x68, 0x3f, 0x3f, 0x0c, + 0x0c, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, + 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, 0x01, 0x0b, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x08, 0x0c, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 }; oled_write_raw_P(ffkb_logo_small, sizeof(ffkb_logo_small)); diff --git a/keyboards/fingerpunch/ffkb_byomcu/v1/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/v1/rules.mk index 551e7b5921e6..2cc6d6a69c99 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v1/rules.mk +++ b/keyboards/fingerpunch/ffkb_byomcu/v1/rules.mk @@ -61,4 +61,4 @@ endif ifeq ($(strip $(FP_EVQ_UNDER_PALMS)), yes) ENCODER_ENABLE := yes OPT_DEFS += -DFP_EVQ_UNDER_PALMS -endif \ No newline at end of file +endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/v1/via.json b/keyboards/fingerpunch/ffkb_byomcu/v1/via.json new file mode 100644 index 000000000000..c7a920f24ec0 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v1/via.json @@ -0,0 +1,322 @@ +{ + "name": "ffkb v1", + "vendorId": "0xFEFE", + "productId": "0xFFBB", + "matrix": {"rows": 4, "cols": 12}, + "lighting": "qmk_rgblight", + "layouts": { + "labels": [ + ["Layout"] + ], + "keymap": [ + [ + { + "y": 4, + "x": 7 + }, + "3,9\nenc2" + ], + [ + { + "r": 15, + "rx": 1, + "y": -0.09999999999999998, + "x": 3 + }, + "0,3" + ], + [ + { + "y": -0.65, + "x": 2 + }, + "0,2", + { + "x": 1 + }, + "0,4" + ], + [ + { + "y": -0.85, + "x": 5 + }, + "0,5" + ], + [ + { + "y": -0.4999999999999999, + "x": 3, + "c": "#5dd971" + }, + "1,3\nAlt" + ], + [ + { + "y": -0.8999999999999999, + "x": 1, + "c": "#cccccc" + }, + "0,1" + ], + [ + { + "y": -0.75, + "x": 2, + "c": "#5dd971" + }, + "1,2\nWin", + { + "x": 1 + }, + "1,4\nShift" + ], + [ + { + "y": -0.8775, + "c": "#cccccc" + }, + "0,0" + ], + [ + { + "y": -0.9725000000000001, + "x": 5 + }, + "1,5" + ], + [ + { + "y": -0.5, + "x": 3 + }, + "2,3" + ], + [ + { + "y": -0.8999999999999999, + "x": 1, + "c": "#5dd971" + }, + "1,1\nCtrl" + ], + [ + { + "y": -0.75, + "x": 2, + "c": "#cccccc" + }, + "2,2", + { + "x": 1 + }, + "2,4" + ], + [ + { + "y": -0.8775 + }, + "1,0" + ], + [ + { + "y": -0.9725000000000001, + "x": 5 + }, + "2,5" + ], + [ + { + "y": -0.3999999999999999, + "x": 1 + }, + "2,1" + ], + [ + { + "y": -0.6275 + }, + "2,0" + ], + [ + { + "y": -0.6225000000000005, + "x": 2.5 + }, + "3,1\nenc1", + { + "x": 0.5 + }, + "3,3" + ], + [ + { + "r": 25, + "y": -1.9500000000000002, + "x": 5.8 + }, + "3,4" + ], + [ + { + "r": 35, + "y": -2.1999999999999997, + "x": 7.4 + }, + "3,5" + ], + [ + { + "r": -35, + "rx": 10.65, + "ry": 4.5, + "y": -0.25, + "x": -3.1000000000000005 + }, + "3,6" + ], + [ + { + "r": -25, + "y": -0.6500000000000004, + "x": -1.9000000000000004 + }, + "3,7" + ], + [ + { + "r": -15, + "y": -0.8499999999999996, + "x": -0.6500000000000004 + }, + "3,8", + { + "x": 0.5 + }, + "3,10\nenc3" + ], + [ + { + "rx": 11, + "ry": 4.3, + "y": -3.535 + }, + "0,8" + ], + [ + { + "y": -0.6499999999999999, + "x": -1 + }, + "0,7", + { + "x": 1 + }, + "0,9" + ], + [ + { + "y": -0.8499999999999999, + "x": -2 + }, + "0,6" + ], + [ + { + "y": -0.5, + "c": "#5dd971" + }, + "1,8\nAlt" + ], + [ + { + "y": -0.8999999999999997, + "x": 2, + "c": "#cccccc" + }, + "0,10" + ], + [ + { + "y": -0.7500000000000004, + "x": -1, + "c": "#5dd971" + }, + "1,7\nShift", + { + "x": 1 + }, + "1,9\nWin" + ], + [ + { + "y": -0.8775, + "x": 3, + "c": "#cccccc" + }, + "0,11" + ], + [ + { + "y": -0.9724999999999997, + "x": -2 + }, + "1,6" + ], + [ + { + "y": -0.5000000000000004 + }, + "2,8" + ], + [ + { + "y": -0.8999999999999995, + "x": 2, + "c": "#5dd971" + }, + "1,10\nCtrl" + ], + [ + { + "y": -0.7500000000000004, + "x": -1, + "c": "#cccccc" + }, + "2,7", + { + "x": 1 + }, + "2,9" + ], + [ + { + "y": -0.8912500000000003, + "x": 3 + }, + "1,11" + ], + [ + { + "y": -0.9737499999999999, + "x": -2 + }, + "2,6" + ], + [ + { + "y": -0.3849999999999998, + "x": 2 + }, + "2,10" + ], + [ + { + "y": -0.6412500000000003, + "x": 3 + }, + "2,11" + ] + ] + } +} \ No newline at end of file diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/config.h b/keyboards/fingerpunch/ffkb_byomcu/v2/config.h index 9fe45dc39dcc..12b3abfeb0c6 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v2/config.h +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/config.h @@ -67,4 +67,4 @@ along with this program. If not, see . #define POINTING_DEVICE_TASK_THROTTLE_MS 5 #define I2C1_CLOCK_SPEED 400000 #define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 -#endif \ No newline at end of file +#endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/fp_build.json b/keyboards/fingerpunch/ffkb_byomcu/v2/fp_build.json index 30332ef66400..d9e508ce2d01 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v2/fp_build.json +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/fp_build.json @@ -29,4 +29,4 @@ "name" : "PIMORONI_TRACKBALL_ENABLE", "user_input": "Do you have a pimoroni trackball?" } -] \ No newline at end of file +] diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/default/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/default/keymap.c index 94bc199cfd00..2e47108a0b88 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/default/keymap.c +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/default/keymap.c @@ -11,7 +11,8 @@ enum layer_names { _COLEMAK, _LOWER, _RAISE, - _ADJUST + _ADJUST, + _MOUSE }; #define LOWER MO(_LOWER) @@ -66,31 +67,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LALT(KC_TAB) ), - -/* Raise - * - * ,-----------------------------------------. ,-----------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | | - * |------+------+------+------+------+------| ,------. |------+------+------+------+------+------| - * | Home | Left | Down | Up | Right| End | |ALTTAB| | | - | = | [ | ] | | - * |------+------+------+------+------+------| `------' |------+------+------+------+------+------| - * | | | PgDn | PgUp | | | | | | | | | | - * `-----------------------------------------' `-----------------------------------------' - * ,------. ,--------------------. ,--------------------. ,------. - * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | - * `------' `--------------------' `--------------------. `------' - */ - -[_RAISE] = LAYOUT_ffkb( - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, - KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TAB, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, - _______, _______, KC_PGDN, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, - _______ -), - - - /* Raise * * ,-----------------------------------------. ,-----------------------------------------. @@ -152,6 +128,27 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, RGB_SPD, RGB_HUD, RGB_SAD, RGB_VAD, _______, KC_F11, KC_F12, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +), + +/* Mouse layer + + * ,-----------------------------------------. ,-----------------------------------------. + * | | |KC_WHU| |KC_WHD| | | | | | | | | + * |------+------+------+------+------+------| ,------. |------+------+------+------+------+------| + * | |KC_WHL|MSBTN3|MSBTN2|MSBTN1|KC_WHR| | | | | | | | | | + * |------+------+------+------+------+------| `------' |------+------+------+------+------+------| + * | | | | | | | | | | | | | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ +[_MOUSE] = LAYOUT_ffkb( + _______, _______, KC_WH_U, _______, KC_WH_D, _______, _______, _______, _______, _______, _______, _______, + _______, KC_WH_L, KC_BTN3, KC_BTN2, KC_BTN1, KC_WH_R, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, + _______ ) }; @@ -233,69 +230,69 @@ oled_rotation_t oled_init_user(oled_rotation_t rotation) { static void render_logo(void) { // ffkb logo, 128x64px static const char PROGMEM ffkb_logo[] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xe0, 0xc0, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x80, 0xc0, 0xe0, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, - 0xfe, 0x02, 0x02, 0x02, 0x82, 0x06, 0x0e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0x0f, 0x07, 0x0f, 0x1f, - 0x3e, 0x7c, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, - 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, - 0x1f, 0x0f, 0x07, 0x0f, 0xff, 0xff, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x02, 0x82, - 0x82, 0xc2, 0xe2, 0xde, 0x0e, 0x0e, 0x06, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0x02, 0x02, 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xe0, 0xf8, 0xfc, 0x7e, - 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, - 0x7e, 0xfc, 0xf8, 0xe0, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x1f, - 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, - 0x07, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xff, 0x7f, 0x1f, 0x87, 0x83, 0x80, 0x80, - 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, - 0x80, 0x80, 0x83, 0x87, 0x1f, 0x7f, 0xff, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x04, 0x04, - 0x04, 0x05, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, - 0xe0, 0x20, 0x20, 0x20, 0x20, 0x60, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x08, 0x18, 0x3c, 0x3e, 0x7f, 0xff, 0xff, 0xff, 0xef, 0xcf, 0x8f, 0x87, 0x07, 0x07, 0x07, 0x07, - 0x07, 0xe7, 0xe7, 0xe7, 0xc7, 0x07, 0x07, 0x0f, 0x3f, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0x3f, 0x0f, 0x07, 0x07, 0xc7, 0xe7, 0xe7, 0xe7, 0x07, - 0x07, 0x07, 0x07, 0x07, 0x87, 0x8f, 0xcf, 0xef, 0xef, 0xff, 0xff, 0x7f, 0x3e, 0x3c, 0x18, 0x08, - 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x20, 0x20, - 0x60, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0x20, 0x20, 0x70, 0xf8, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1e, 0x3e, 0x7c, - 0xf8, 0xf1, 0xf1, 0xe1, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, - 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe1, 0xf1, 0xf1, 0xf8, - 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x20, 0x20, - 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, - 0x7f, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7e, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x3c, - 0x3c, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, - 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0e, - 0x0e, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xe0, 0xc0, 0x80, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x80, 0xc0, 0xe0, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, + 0xfe, 0x02, 0x02, 0x02, 0x82, 0x06, 0x0e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0x0f, 0x07, 0x0f, 0x1f, + 0x3e, 0x7c, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, + 0x1f, 0x0f, 0x07, 0x0f, 0xff, 0xff, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x02, 0x82, + 0x82, 0xc2, 0xe2, 0xde, 0x0e, 0x0e, 0x06, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x02, 0x02, 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xe0, 0xf8, 0xfc, 0x7e, + 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, + 0x7e, 0xfc, 0xf8, 0xe0, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x1f, + 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, + 0x07, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xff, 0x7f, 0x1f, 0x87, 0x83, 0x80, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, + 0x80, 0x80, 0x83, 0x87, 0x1f, 0x7f, 0xff, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x04, 0x04, + 0x04, 0x05, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0xe0, 0x20, 0x20, 0x20, 0x20, 0x60, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x18, 0x3c, 0x3e, 0x7f, 0xff, 0xff, 0xff, 0xef, 0xcf, 0x8f, 0x87, 0x07, 0x07, 0x07, 0x07, + 0x07, 0xe7, 0xe7, 0xe7, 0xc7, 0x07, 0x07, 0x0f, 0x3f, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0x3f, 0x0f, 0x07, 0x07, 0xc7, 0xe7, 0xe7, 0xe7, 0x07, + 0x07, 0x07, 0x07, 0x07, 0x87, 0x8f, 0xcf, 0xef, 0xef, 0xff, 0xff, 0x7f, 0x3e, 0x3c, 0x18, 0x08, + 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x20, 0x20, + 0x60, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x20, 0x20, 0x70, 0xf8, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1e, 0x3e, 0x7c, + 0xf8, 0xf1, 0xf1, 0xe1, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, + 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe1, 0xf1, 0xf1, 0xf8, + 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x20, 0x20, + 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, + 0x7f, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7e, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x3c, + 0x3c, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, + 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0e, + 0x0e, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; @@ -341,29 +338,29 @@ static void render_status(void) { // ffkb logo, 128x48px static const char ffkb_logo_small [] PROGMEM = { - 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, - 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0x40, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xf8, 0xfe, 0x8e, 0xdc, 0xf0, 0x70, 0x60, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, - 0x30, 0x70, 0xf0, 0xd8, 0x9c, 0x9e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, - 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x10, - 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0x10, 0x10, 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x78, 0x7c, - 0xff, 0xd7, 0x9b, 0x18, 0x78, 0x78, 0x18, 0x30, 0x70, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, - 0x18, 0x58, 0x78, 0x18, 0x99, 0x9b, 0xf7, 0xfc, 0x78, 0x30, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x78, 0xfc, 0xfc, 0xfe, 0xff, 0xf8, 0xf0, - 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0x10, 0x10, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, - 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x01, 0x01, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x18, 0x3f, 0x7f, 0x68, 0x68, 0x3f, 0x3f, 0x0c, - 0x0c, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, - 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, 0x01, 0x0b, 0x0f, 0x0f, 0x0f, 0x0f, - 0x0f, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, + 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0x40, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xf8, 0xfe, 0x8e, 0xdc, 0xf0, 0x70, 0x60, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x70, 0xf0, 0xd8, 0x9c, 0x9e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x10, + 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x10, 0x10, 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x78, 0x7c, + 0xff, 0xd7, 0x9b, 0x18, 0x78, 0x78, 0x18, 0x30, 0x70, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, + 0x18, 0x58, 0x78, 0x18, 0x99, 0x9b, 0xf7, 0xfc, 0x78, 0x30, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x78, 0xfc, 0xfc, 0xfe, 0xff, 0xf8, 0xf0, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x10, 0x10, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x01, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x18, 0x3f, 0x7f, 0x68, 0x68, 0x3f, 0x3f, 0x0c, + 0x0c, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, + 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, 0x01, 0x0b, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x08, 0x0c, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 }; oled_write_raw_P(ffkb_logo_small, sizeof(ffkb_logo_small)); diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/sadekbaroudi/keymap.c index 0f97d6f69f7b..8786134b07e7 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/sadekbaroudi/keymap.c +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/sadekbaroudi/keymap.c @@ -38,9 +38,9 @@ K33, K34, K35, K36, K37, K38 \ ) \ LAYOUT_wrapper( \ - KC_MS_BTN3, K01, K02, K03, LT(_FUNCTION, K04), K05, K06, LT(_FUNCTION, K07), K08, K09, K0A, KC_BSLS, \ + FP_SCROLL_TOG, K01, K02, K03, LT(_FUNCTION, K04), K05, K06, LT(_FUNCTION, K07), K08, K09, K0A, KC_BSLS, \ KC_MS_BTN1, LCTL_T(K11), LGUI_T(K12), LALT_T(K13), LSFT_T(K14), K15, LT(_MOUSE, K16), RSFT_T(K17), RALT_T(K18), RGUI_T(K19), RCTL_T(K1A), LCTL(KC_V), \ - KC_MS_BTN2, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, S_ALT_TAB, \ + FP_SNIPE_TOG, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, FP_SUPER_TAB, \ KC_MUTE, K33, LT(_NAVIGATION,K34), LT(_FUNCTION,K35), LT(_MEDIA,K36), LT(_SYMBOLS,K37), K38, LCTL(KC_BSPC), \ N_DEL_LINE \ ) @@ -65,44 +65,45 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_NAVIGATION] = LAYOUT_wrapper( - _______, ________________NAVIGATION_1_______________, _________________NUMPAD_1__________________, _______, - _______, ________________NAVIGATION_2_______________, _________________NUMPAD_2__________________, _______, - _______, ________________NAVIGATION_3_______________, _________________NUMPAD_3__________________, _______, - _______, _______, _______, KC_TAB, KC_BSPC, KC_SPACE, KC_DOT, _______, + _______, ________________NAVIGATION_1_______________, _________________NUMPAD_1__________________, _______, + _______, ________________NAVIGATION_2_______________, _________________NUMPAD_2__________________, _______, + _______, ________________NAVIGATION_3_______________, _________________NUMPAD_3__________________, _______, + _______, _______, _______, KC_TAB, KC_BSPC, KC_SPACE, KC_DOT, _______, _______ ), [_SYMBOLS] = LAYOUT_wrapper( - _______, ________________SYMBOLS_L1_________________, ________________SYMBOLS_R1_________________, _______, - _______, ________________SYMBOLS_L2_________________, ________________SYMBOLS_R2_________________, _______, - _______, ________________SYMBOLS_L3_________________, ________________SYMBOLS_R3_________________, _______, + _______, ________________SYMBOLS_L1_________________, ________________SYMBOLS_R1_________________, _______, + _______, ________________SYMBOLS_L2_________________, ________________SYMBOLS_R2_________________, _______, + _______, ________________SYMBOLS_L3_________________, ________________SYMBOLS_R3_________________, _______, _______, _______, KC_ENT, KC_DEL, KC_BSPC, _______, _______, _______, _______ ), [_FUNCTION] = LAYOUT_wrapper( - _______, ________________SHIFTNAV_1_________________, ________________FUNCTION_1_________________, _______, - _______, ________________SHIFTNAV_2_________________, ________________FUNCTION_2_________________, _______, - _______, ________________SHIFTNAV_3_________________, ________________FUNCTION_3_________________, _______, - _______, _______, _______, _______, N_DEL_LINE, KC_SPACE, _______, _______, + _______, ________________SHIFTNAV_1_________________, ________________FUNCTION_1_________________, _______, + _______, ________________SHIFTNAV_2_________________, ________________FUNCTION_2_________________, _______, + _______, ________________SHIFTNAV_3_________________, ________________FUNCTION_3_________________, _______, + _______, _______, _______, _______, N_DEL_LINE, KC_SPACE, _______, _______, _______ ), [_MEDIA] = LAYOUT_wrapper( - _______, ___________________RGB_1___________________, _________________MACROS_1__________________, _______, - _______, ___________________RGB_2___________________, _________________MACROS_2__________________, _______, - _______, ___________________RGB_3___________________, _________________MACROS_3__________________, _______, + _______, ___________________RGB_1___________________, _________________MACROS_1__________________, _______, + _______, ___________________RGB_2___________________, _________________MACROS_2__________________, _______, + _______, ___________________RGB_3___________________, _________________MACROS_3__________________, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - + [_MOUSE] = LAYOUT_wrapper( - _______, __________________MOUSE_1__________________, ___________________BLANK___________________, _______, - _______, __________________MOUSE_2__________________, ___________________BLANK___________________, _______, - _______, __________________MOUSE_3__________________, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_1________________, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_2________________, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_3________________, ___________________BLANK___________________, _______, _______, _______, KC_MS_BTN1, KC_MS_BTN3, KC_MS_BTN3, KC_MS_BTN2, _______, _______, _______ - ) + ), + }; @@ -111,110 +112,110 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { oled_rotation_t oled_init_user(oled_rotation_t rotation) { return OLED_ROTATION_180; -} +} static void render_logo(void) { // ffkb logo, 128x32px static const char PROGMEM ffkb_logo[] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, - 0xf0, 0x10, 0x10, 0x10, 0x90, 0x30, 0x30, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfc, 0x3c, 0x3c, 0x38, 0x70, - 0x70, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0x70, - 0x70, 0x38, 0x3c, 0x3c, 0xfc, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x10, 0x00, - 0x80, 0x90, 0xd0, 0xf0, 0x30, 0x30, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, - 0x3f, 0x21, 0x01, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe7, 0xff, 0x7f, 0x7f, 0xbc, 0x9e, 0x8e, 0x8f, - 0x87, 0x87, 0x83, 0x83, 0x81, 0x81, 0x81, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x81, 0x81, 0x81, 0x83, 0x83, 0x87, 0x87, - 0x8f, 0x8e, 0x9e, 0xbc, 0x7f, 0x7f, 0xff, 0xe7, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x23, 0x07, - 0x0f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, - 0xfc, 0x44, 0x44, 0x44, 0xe4, 0x0c, 0x0c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x02, 0x06, 0x06, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1b, 0x3b, 0x3b, 0x73, 0x73, 0x73, 0xe3, - 0xe3, 0xdf, 0xdf, 0xdf, 0x8b, 0x83, 0x03, 0x03, 0x07, 0x1f, 0xfe, 0xfc, 0xf8, 0xe0, 0x00, 0x00, - 0x00, 0x00, 0xe0, 0xf8, 0xfc, 0xfe, 0x1f, 0x07, 0x03, 0x03, 0x83, 0x8b, 0xdf, 0xdf, 0xdf, 0xe3, - 0xe3, 0x73, 0x73, 0x73, 0x3b, 0x3b, 0x1b, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x06, 0x06, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0x44, 0x44, - 0x44, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xb8, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, - 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0e, 0x1f, 0x3f, 0x3f, 0x3f, 0x36, 0x36, - 0x36, 0x36, 0x3f, 0x3f, 0x3f, 0x1f, 0x0e, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x08, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + 0xf0, 0x10, 0x10, 0x10, 0x90, 0x30, 0x30, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfc, 0x3c, 0x3c, 0x38, 0x70, + 0x70, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0x70, + 0x70, 0x38, 0x3c, 0x3c, 0xfc, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x10, 0x00, + 0x80, 0x90, 0xd0, 0xf0, 0x30, 0x30, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, + 0x3f, 0x21, 0x01, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe7, 0xff, 0x7f, 0x7f, 0xbc, 0x9e, 0x8e, 0x8f, + 0x87, 0x87, 0x83, 0x83, 0x81, 0x81, 0x81, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x81, 0x81, 0x81, 0x83, 0x83, 0x87, 0x87, + 0x8f, 0x8e, 0x9e, 0xbc, 0x7f, 0x7f, 0xff, 0xe7, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x23, 0x07, + 0x0f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, + 0xfc, 0x44, 0x44, 0x44, 0xe4, 0x0c, 0x0c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x02, 0x06, 0x06, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1b, 0x3b, 0x3b, 0x73, 0x73, 0x73, 0xe3, + 0xe3, 0xdf, 0xdf, 0xdf, 0x8b, 0x83, 0x03, 0x03, 0x07, 0x1f, 0xfe, 0xfc, 0xf8, 0xe0, 0x00, 0x00, + 0x00, 0x00, 0xe0, 0xf8, 0xfc, 0xfe, 0x1f, 0x07, 0x03, 0x03, 0x83, 0x8b, 0xdf, 0xdf, 0xdf, 0xe3, + 0xe3, 0x73, 0x73, 0x73, 0x3b, 0x3b, 0x1b, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x06, 0x06, 0x02, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0x44, 0x44, + 0x44, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xb8, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0e, 0x1f, 0x3f, 0x3f, 0x3f, 0x36, 0x36, + 0x36, 0x36, 0x3f, 0x3f, 0x3f, 0x1f, 0x0e, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x08, 0x08, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; // ffkb logo, 128x64px // static const char PROGMEM ffkb_logo[] = { - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xe0, 0xc0, 0x80, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x80, 0xc0, 0xe0, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, - // 0xfe, 0x02, 0x02, 0x02, 0x82, 0x06, 0x0e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0x0f, 0x07, 0x0f, 0x1f, - // 0x3e, 0x7c, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, - // 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, - // 0x1f, 0x0f, 0x07, 0x0f, 0xff, 0xff, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x02, 0x82, - // 0x82, 0xc2, 0xe2, 0xde, 0x0e, 0x0e, 0x06, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - // 0xff, 0x02, 0x02, 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xe0, 0xf8, 0xfc, 0x7e, - // 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, - // 0x7e, 0xfc, 0xf8, 0xe0, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x1f, - // 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, - // 0x07, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xff, 0x7f, 0x1f, 0x87, 0x83, 0x80, 0x80, - // 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, - // 0x80, 0x80, 0x83, 0x87, 0x1f, 0x7f, 0xff, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x04, 0x04, - // 0x04, 0x05, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, - // 0xe0, 0x20, 0x20, 0x20, 0x20, 0x60, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x08, 0x18, 0x3c, 0x3e, 0x7f, 0xff, 0xff, 0xff, 0xef, 0xcf, 0x8f, 0x87, 0x07, 0x07, 0x07, 0x07, - // 0x07, 0xe7, 0xe7, 0xe7, 0xc7, 0x07, 0x07, 0x0f, 0x3f, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0x3f, 0x0f, 0x07, 0x07, 0xc7, 0xe7, 0xe7, 0xe7, 0x07, - // 0x07, 0x07, 0x07, 0x07, 0x87, 0x8f, 0xcf, 0xef, 0xef, 0xff, 0xff, 0x7f, 0x3e, 0x3c, 0x18, 0x08, - // 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x20, 0x20, - // 0x60, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - // 0xff, 0x20, 0x20, 0x70, 0xf8, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1e, 0x3e, 0x7c, - // 0xf8, 0xf1, 0xf1, 0xe1, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, - // 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe1, 0xf1, 0xf1, 0xf8, - // 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x20, 0x20, - // 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, - // 0x7f, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7e, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x3c, - // 0x3c, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, - // 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0e, - // 0x0e, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xe0, 0xc0, 0x80, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x80, 0xc0, 0xe0, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, + // 0xfe, 0x02, 0x02, 0x02, 0x82, 0x06, 0x0e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0x0f, 0x07, 0x0f, 0x1f, + // 0x3e, 0x7c, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + // 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, + // 0x1f, 0x0f, 0x07, 0x0f, 0xff, 0xff, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x02, 0x82, + // 0x82, 0xc2, 0xe2, 0xde, 0x0e, 0x0e, 0x06, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + // 0xff, 0x02, 0x02, 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xe0, 0xf8, 0xfc, 0x7e, + // 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, + // 0x7e, 0xfc, 0xf8, 0xe0, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x1f, + // 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, + // 0x07, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xff, 0x7f, 0x1f, 0x87, 0x83, 0x80, 0x80, + // 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, + // 0x80, 0x80, 0x83, 0x87, 0x1f, 0x7f, 0xff, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x04, 0x04, + // 0x04, 0x05, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + // 0xe0, 0x20, 0x20, 0x20, 0x20, 0x60, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x08, 0x18, 0x3c, 0x3e, 0x7f, 0xff, 0xff, 0xff, 0xef, 0xcf, 0x8f, 0x87, 0x07, 0x07, 0x07, 0x07, + // 0x07, 0xe7, 0xe7, 0xe7, 0xc7, 0x07, 0x07, 0x0f, 0x3f, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0x3f, 0x0f, 0x07, 0x07, 0xc7, 0xe7, 0xe7, 0xe7, 0x07, + // 0x07, 0x07, 0x07, 0x07, 0x87, 0x8f, 0xcf, 0xef, 0xef, 0xff, 0xff, 0x7f, 0x3e, 0x3c, 0x18, 0x08, + // 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x20, 0x20, + // 0x60, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + // 0xff, 0x20, 0x20, 0x70, 0xf8, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1e, 0x3e, 0x7c, + // 0xf8, 0xf1, 0xf1, 0xe1, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, + // 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe1, 0xf1, 0xf1, 0xf8, + // 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x20, 0x20, + // 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, + // 0x7f, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7e, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x3c, + // 0x3c, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, + // 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0e, + // 0x0e, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // }; oled_write_raw_P(ffkb_logo, sizeof(ffkb_logo)); @@ -260,29 +261,29 @@ static void render_status(void) { // ffkb logo, 128x48px static const char ffkb_logo_small [] PROGMEM = { - 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, - 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0x40, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xf8, 0xfe, 0x8e, 0xdc, 0xf0, 0x70, 0x60, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, - 0x30, 0x70, 0xf0, 0xd8, 0x9c, 0x9e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, - 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x10, - 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0x10, 0x10, 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x78, 0x7c, - 0xff, 0xd7, 0x9b, 0x18, 0x78, 0x78, 0x18, 0x30, 0x70, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, - 0x18, 0x58, 0x78, 0x18, 0x99, 0x9b, 0xf7, 0xfc, 0x78, 0x30, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x78, 0xfc, 0xfc, 0xfe, 0xff, 0xf8, 0xf0, - 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0x10, 0x10, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, - 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x01, 0x01, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x18, 0x3f, 0x7f, 0x68, 0x68, 0x3f, 0x3f, 0x0c, - 0x0c, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, - 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, 0x01, 0x0b, 0x0f, 0x0f, 0x0f, 0x0f, - 0x0f, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, + 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0x40, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xf8, 0xfe, 0x8e, 0xdc, 0xf0, 0x70, 0x60, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x70, 0xf0, 0xd8, 0x9c, 0x9e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x10, + 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x10, 0x10, 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x78, 0x7c, + 0xff, 0xd7, 0x9b, 0x18, 0x78, 0x78, 0x18, 0x30, 0x70, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, + 0x18, 0x58, 0x78, 0x18, 0x99, 0x9b, 0xf7, 0xfc, 0x78, 0x30, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x78, 0xfc, 0xfc, 0xfe, 0xff, 0xf8, 0xf0, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x10, 0x10, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x01, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x18, 0x3f, 0x7f, 0x68, 0x68, 0x3f, 0x3f, 0x0c, + 0x0c, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, + 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, 0x01, 0x0b, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x08, 0x0c, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 }; oled_write_raw_P(ffkb_logo_small, sizeof(ffkb_logo_small)); diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk index f066d276d71b..787d69a9a8a0 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk @@ -43,6 +43,7 @@ MOUSEKEY_ENABLE = no CIRQUE_ENABLE = no ifeq ($(strip $(CIRQUE_ENABLE)), yes) + MOUSEKEY_ENABLE := yes # not required, but enabling for mouse button keys POINTING_DEVICE_ENABLE := yes POINTING_DEVICE_DRIVER := cirque_pinnacle_i2c OPT_DEFS += -DCIRQUE_ENABLE @@ -69,4 +70,4 @@ endif ifeq ($(strip $(FP_EVQ_UNDER_PALMS)), yes) ENCODER_ENABLE := yes OPT_DEFS += -DFP_EVQ_UNDER_PALMS -endif \ No newline at end of file +endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/via.json b/keyboards/fingerpunch/ffkb_byomcu/v2/via.json new file mode 100644 index 000000000000..77b5f683ae76 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/via.json @@ -0,0 +1,322 @@ +{ + "name": "ffkb", + "vendorId": "0xFEFE", + "productId": "0xFFBB", + "matrix": {"rows": 4, "cols": 12}, + "lighting": "qmk_rgblight", + "layouts": { + "labels": [ + ["Layout"] + ], + "keymap": [ + [ + { + "y": 4, + "x": 7 + }, + "3,9\nenc2" + ], + [ + { + "r": 15, + "rx": 1, + "y": -0.09999999999999998, + "x": 3 + }, + "0,3" + ], + [ + { + "y": -0.65, + "x": 2 + }, + "0,2", + { + "x": 1 + }, + "0,4" + ], + [ + { + "y": -0.85, + "x": 5 + }, + "0,5" + ], + [ + { + "y": -0.4999999999999999, + "x": 3, + "c": "#5dd971" + }, + "1,3\nAlt" + ], + [ + { + "y": -0.8999999999999999, + "x": 1, + "c": "#cccccc" + }, + "0,1" + ], + [ + { + "y": -0.75, + "x": 2, + "c": "#5dd971" + }, + "1,2\nWin", + { + "x": 1 + }, + "1,4\nShift" + ], + [ + { + "y": -0.8775, + "c": "#cccccc" + }, + "0,0" + ], + [ + { + "y": -0.9725000000000001, + "x": 5 + }, + "1,5" + ], + [ + { + "y": -0.5, + "x": 3 + }, + "2,3" + ], + [ + { + "y": -0.8999999999999999, + "x": 1, + "c": "#5dd971" + }, + "1,1\nCtrl" + ], + [ + { + "y": -0.75, + "x": 2, + "c": "#cccccc" + }, + "2,2", + { + "x": 1 + }, + "2,4" + ], + [ + { + "y": -0.8775 + }, + "1,0" + ], + [ + { + "y": -0.9725000000000001, + "x": 5 + }, + "2,5" + ], + [ + { + "y": -0.3999999999999999, + "x": 1 + }, + "2,1" + ], + [ + { + "y": -0.6275 + }, + "2,0" + ], + [ + { + "y": -0.6225000000000005, + "x": 2.5 + }, + "3,1\nenc1", + { + "x": 0.5 + }, + "3,3" + ], + [ + { + "r": 25, + "y": -1.9500000000000002, + "x": 5.8 + }, + "3,4" + ], + [ + { + "r": 35, + "y": -2.1999999999999997, + "x": 7.4 + }, + "3,5" + ], + [ + { + "r": -35, + "rx": 10.65, + "ry": 4.5, + "y": -0.25, + "x": -3.1000000000000005 + }, + "3,6" + ], + [ + { + "r": -25, + "y": -0.6500000000000004, + "x": -1.9000000000000004 + }, + "3,7" + ], + [ + { + "r": -15, + "y": -0.8499999999999996, + "x": -0.6500000000000004 + }, + "3,8", + { + "x": 0.5 + }, + "3,10\nenc3" + ], + [ + { + "rx": 11, + "ry": 4.3, + "y": -3.535 + }, + "0,8" + ], + [ + { + "y": -0.6499999999999999, + "x": -1 + }, + "0,7", + { + "x": 1 + }, + "0,9" + ], + [ + { + "y": -0.8499999999999999, + "x": -2 + }, + "0,6" + ], + [ + { + "y": -0.5, + "c": "#5dd971" + }, + "1,8\nAlt" + ], + [ + { + "y": -0.8999999999999997, + "x": 2, + "c": "#cccccc" + }, + "0,10" + ], + [ + { + "y": -0.7500000000000004, + "x": -1, + "c": "#5dd971" + }, + "1,7\nShift", + { + "x": 1 + }, + "1,9\nWin" + ], + [ + { + "y": -0.8775, + "x": 3, + "c": "#cccccc" + }, + "0,11" + ], + [ + { + "y": -0.9724999999999997, + "x": -2 + }, + "1,6" + ], + [ + { + "y": -0.5000000000000004 + }, + "2,8" + ], + [ + { + "y": -0.8999999999999995, + "x": 2, + "c": "#5dd971" + }, + "1,10\nCtrl" + ], + [ + { + "y": -0.7500000000000004, + "x": -1, + "c": "#cccccc" + }, + "2,7", + { + "x": 1 + }, + "2,9" + ], + [ + { + "y": -0.8912500000000003, + "x": 3 + }, + "1,11" + ], + [ + { + "y": -0.9737499999999999, + "x": -2 + }, + "2,6" + ], + [ + { + "y": -0.3849999999999998, + "x": 2 + }, + "2,10" + ], + [ + { + "y": -0.6412500000000003, + "x": 3 + }, + "2,11" + ] + ] + } +} \ No newline at end of file diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/config.h b/keyboards/fingerpunch/ffkb_byomcu/v3/config.h index 6deffb10cd19..a72fc1628f96 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v3/config.h +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/config.h @@ -72,8 +72,9 @@ along with this program. If not, see . #ifdef FP_TRACKBALL_ENABLE // Trackball config + #define FP_POINTING_DEFAULT_DPI 800 #define PMW33XX_CS_PIN B5 - #define PMW33XX_CPI 800 + #define PMW33XX_CPI FP_POINTING_DEFAULT_DPI #define PMW33XX_CS_DIVISOR 8 // needs to be the same as the SHIFTREG_DIVISOR above #define POINTING_DEVICE_INVERT_Y #endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/fp_build.json b/keyboards/fingerpunch/ffkb_byomcu/v3/fp_build.json index ae4d3a65aae0..ca946ce18bcc 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v3/fp_build.json +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/fp_build.json @@ -19,4 +19,4 @@ "names" : [ "FP_EC11", "FP_EVQ" ], "user_input": "No rotary encoders, EC11, or EVQ?" } -] \ No newline at end of file +] diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/config.h b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/config.h new file mode 100644 index 000000000000..4aa17a121f7a --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/config.h @@ -0,0 +1,8 @@ +#define POINTING_DEVICE_AUTO_MOUSE_ENABLE +#define AUTO_MOUSE_DEFAULT_LAYER 5 + +// Define only one of the two below, but not both. +// Read here for details: https://github.com/sadekbaroudi/qmk_firmware/tree/master/keyboards/fingerpunch#layer-lighting + +#define FP_LAYER_LIGHTING_ENABLE +//#define FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/keymap.c index ec50f1afebd4..5db75f2d4358 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/keymap.c +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/keymap.c @@ -11,7 +11,8 @@ enum layer_names { _COLEMAK, _LOWER, _RAISE, - _ADJUST + _ADJUST, + _MOUSE }; #define LOWER MO(_LOWER) @@ -86,28 +87,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______ ), - - -/* Raise - * - * ,-----------------------------------------. ,-----------------------------------------. - * | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | | | | | | | | | _ | + | { | } | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | | Caps| | | | | | | | | | | " | | - * `-----------------------------------------' `-----------------------------------------' - * ,------. ,--------------------. ,--------------------. ,------. - * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | - * `------' `--------------------' `--------------------. `------' - */ - -[_RAISE] = LAYOUT_ffkb( - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, - KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TAB, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, - _______, _______, KC_PGDN, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______ -), /* Lower * * ,-----------------------------------------. ,-----------------------------------------. @@ -146,6 +125,26 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, RGB_SPI, RGB_HUI, RGB_SAI, RGB_VAI, TO(_COLEMAK), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, RGB_SPD, RGB_HUD, RGB_SAD, RGB_VAD, _______, KC_F11, KC_F12, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______ +), + +/* Mouse layer + + * ,-----------------------------------------. ,-----------------------------------------. + * | | |KC_WHU| |KC_WHD| | | | | | | | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | |KC_WHL|MSBTN3|MSBTN2|MSBTN1|KC_WHR| | | | | | | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | | | | | | | | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ +[_MOUSE] = LAYOUT_ffkb( + _______, _______, KC_WH_U, _______, KC_WH_D, _______, _______, _______, _______, _______, _______, _______, + _______, KC_WH_L, KC_BTN3, KC_BTN2, KC_BTN1, KC_WH_R, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/sadekbaroudi/keymap.c index 18356e32cbc0..dea0a22b51a4 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/sadekbaroudi/keymap.c +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/sadekbaroudi/keymap.c @@ -33,9 +33,9 @@ K33, K34, K35, K36, K37, K38 \ ) \ LAYOUT_wrapper( \ - KC_MS_BTN3, K01, K02, K03, LT(_FUNCTION, K04), K05, K06, LT(_FUNCTION, K07), K08, K09, K0A, KC_BSLS, \ + FP_SCROLL_TOG, K01, K02, K03, LT(_FUNCTION, K04), K05, K06, LT(_FUNCTION, K07), K08, K09, K0A, KC_BSLS, \ KC_MS_BTN1, LCTL_T(K11), LGUI_T(K12), LALT_T(K13), LSFT_T(K14), K15, LT(_MOUSE, K16), RSFT_T(K17), RALT_T(K18), RGUI_T(K19), RCTL_T(K1A), LCTL(KC_V), \ - KC_MS_BTN2, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, S_ALT_TAB, \ + FP_SNIPE_TOG, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, FP_SUPER_TAB, \ KC_MUTE, K33, LT(_NAVIGATION,K34), LT(_FUNCTION,K35), LT(_MEDIA,K36), LT(_SYMBOLS,K37), K38, LCTL(KC_BSPC) \ ) @@ -59,37 +59,37 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_NAVIGATION] = LAYOUT_wrapper( - _______, ________________NAVIGATION_1_______________, _________________NUMPAD_1__________________, _______, - _______, ________________NAVIGATION_2_______________, _________________NUMPAD_2__________________, _______, - _______, ________________NAVIGATION_3_______________, _________________NUMPAD_3__________________, _______, + _______, ________________NAVIGATION_1_______________, _________________NUMPAD_1__________________, _______, + _______, ________________NAVIGATION_2_______________, _________________NUMPAD_2__________________, _______, + _______, ________________NAVIGATION_3_______________, _________________NUMPAD_3__________________, _______, _______, _______, _______, KC_TAB, KC_BSPC, KC_SPACE, KC_DOT, _______ ), [_SYMBOLS] = LAYOUT_wrapper( - _______, ________________SYMBOLS_L1_________________, ________________SYMBOLS_R1_________________, _______, - _______, ________________SYMBOLS_L2_________________, ________________SYMBOLS_R2_________________, _______, - _______, ________________SYMBOLS_L3_________________, ________________SYMBOLS_R3_________________, _______, + _______, ________________SYMBOLS_L1_________________, ________________SYMBOLS_R1_________________, _______, + _______, ________________SYMBOLS_L2_________________, ________________SYMBOLS_R2_________________, _______, + _______, ________________SYMBOLS_L3_________________, ________________SYMBOLS_R3_________________, _______, _______, _______, KC_ENT, KC_DEL, KC_BSPC, _______, _______, _______ ), [_FUNCTION] = LAYOUT_wrapper( - _______, ________________SHIFTNAV_1_________________, ________________FUNCTION_1_________________, _______, - _______, ________________SHIFTNAV_2_________________, ________________FUNCTION_2_________________, _______, - _______, ________________SHIFTNAV_3_________________, ________________FUNCTION_3_________________, _______, + _______, ________________SHIFTNAV_1_________________, ________________FUNCTION_1_________________, _______, + _______, ________________SHIFTNAV_2_________________, ________________FUNCTION_2_________________, _______, + _______, ________________SHIFTNAV_3_________________, ________________FUNCTION_3_________________, _______, _______, _______, _______, _______, N_DEL_LINE, KC_SPACE, _______, _______ ), [_MEDIA] = LAYOUT_wrapper( - _______, ___________________RGB_1___________________, _________________MACROS_1__________________, _______, - _______, ___________________RGB_2___________________, _________________MACROS_2__________________, _______, - _______, ___________________RGB_3___________________, _________________MACROS_3__________________, _______, + _______, ___________________RGB_1___________________, _________________MACROS_1__________________, _______, + _______, ___________________RGB_2___________________, _________________MACROS_2__________________, _______, + _______, ___________________RGB_3___________________, _________________MACROS_3__________________, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - + [_MOUSE] = LAYOUT_wrapper( - _______, __________________MOUSE_1__________________, ___________________BLANK___________________, _______, - _______, __________________MOUSE_2__________________, ___________________BLANK___________________, _______, - _______, __________________MOUSE_3__________________, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_1________________, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_2________________, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_3________________, ___________________BLANK___________________, _______, _______, _______, KC_MS_BTN1, KC_MS_BTN3, KC_MS_BTN3, KC_MS_BTN2, _______, _______ ) }; diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/via.json b/keyboards/fingerpunch/ffkb_byomcu/v3/via.json new file mode 100644 index 000000000000..77b5f683ae76 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/via.json @@ -0,0 +1,322 @@ +{ + "name": "ffkb", + "vendorId": "0xFEFE", + "productId": "0xFFBB", + "matrix": {"rows": 4, "cols": 12}, + "lighting": "qmk_rgblight", + "layouts": { + "labels": [ + ["Layout"] + ], + "keymap": [ + [ + { + "y": 4, + "x": 7 + }, + "3,9\nenc2" + ], + [ + { + "r": 15, + "rx": 1, + "y": -0.09999999999999998, + "x": 3 + }, + "0,3" + ], + [ + { + "y": -0.65, + "x": 2 + }, + "0,2", + { + "x": 1 + }, + "0,4" + ], + [ + { + "y": -0.85, + "x": 5 + }, + "0,5" + ], + [ + { + "y": -0.4999999999999999, + "x": 3, + "c": "#5dd971" + }, + "1,3\nAlt" + ], + [ + { + "y": -0.8999999999999999, + "x": 1, + "c": "#cccccc" + }, + "0,1" + ], + [ + { + "y": -0.75, + "x": 2, + "c": "#5dd971" + }, + "1,2\nWin", + { + "x": 1 + }, + "1,4\nShift" + ], + [ + { + "y": -0.8775, + "c": "#cccccc" + }, + "0,0" + ], + [ + { + "y": -0.9725000000000001, + "x": 5 + }, + "1,5" + ], + [ + { + "y": -0.5, + "x": 3 + }, + "2,3" + ], + [ + { + "y": -0.8999999999999999, + "x": 1, + "c": "#5dd971" + }, + "1,1\nCtrl" + ], + [ + { + "y": -0.75, + "x": 2, + "c": "#cccccc" + }, + "2,2", + { + "x": 1 + }, + "2,4" + ], + [ + { + "y": -0.8775 + }, + "1,0" + ], + [ + { + "y": -0.9725000000000001, + "x": 5 + }, + "2,5" + ], + [ + { + "y": -0.3999999999999999, + "x": 1 + }, + "2,1" + ], + [ + { + "y": -0.6275 + }, + "2,0" + ], + [ + { + "y": -0.6225000000000005, + "x": 2.5 + }, + "3,1\nenc1", + { + "x": 0.5 + }, + "3,3" + ], + [ + { + "r": 25, + "y": -1.9500000000000002, + "x": 5.8 + }, + "3,4" + ], + [ + { + "r": 35, + "y": -2.1999999999999997, + "x": 7.4 + }, + "3,5" + ], + [ + { + "r": -35, + "rx": 10.65, + "ry": 4.5, + "y": -0.25, + "x": -3.1000000000000005 + }, + "3,6" + ], + [ + { + "r": -25, + "y": -0.6500000000000004, + "x": -1.9000000000000004 + }, + "3,7" + ], + [ + { + "r": -15, + "y": -0.8499999999999996, + "x": -0.6500000000000004 + }, + "3,8", + { + "x": 0.5 + }, + "3,10\nenc3" + ], + [ + { + "rx": 11, + "ry": 4.3, + "y": -3.535 + }, + "0,8" + ], + [ + { + "y": -0.6499999999999999, + "x": -1 + }, + "0,7", + { + "x": 1 + }, + "0,9" + ], + [ + { + "y": -0.8499999999999999, + "x": -2 + }, + "0,6" + ], + [ + { + "y": -0.5, + "c": "#5dd971" + }, + "1,8\nAlt" + ], + [ + { + "y": -0.8999999999999997, + "x": 2, + "c": "#cccccc" + }, + "0,10" + ], + [ + { + "y": -0.7500000000000004, + "x": -1, + "c": "#5dd971" + }, + "1,7\nShift", + { + "x": 1 + }, + "1,9\nWin" + ], + [ + { + "y": -0.8775, + "x": 3, + "c": "#cccccc" + }, + "0,11" + ], + [ + { + "y": -0.9724999999999997, + "x": -2 + }, + "1,6" + ], + [ + { + "y": -0.5000000000000004 + }, + "2,8" + ], + [ + { + "y": -0.8999999999999995, + "x": 2, + "c": "#5dd971" + }, + "1,10\nCtrl" + ], + [ + { + "y": -0.7500000000000004, + "x": -1, + "c": "#cccccc" + }, + "2,7", + { + "x": 1 + }, + "2,9" + ], + [ + { + "y": -0.8912500000000003, + "x": 3 + }, + "1,11" + ], + [ + { + "y": -0.9737499999999999, + "x": -2 + }, + "2,6" + ], + [ + { + "y": -0.3849999999999998, + "x": 2 + }, + "2,10" + ], + [ + { + "y": -0.6412500000000003, + "x": 3 + }, + "2,11" + ] + ] + } +} \ No newline at end of file diff --git a/keyboards/fingerpunch/fp.c b/keyboards/fingerpunch/fp.c new file mode 100644 index 000000000000..245b094eafc2 --- /dev/null +++ b/keyboards/fingerpunch/fp.c @@ -0,0 +1,117 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "keyboards/fingerpunch/fp.h" + +#ifndef FP_SUPER_TAB_TIMEOUT +# define FP_SUPER_TAB_TIMEOUT 500 +#endif + +bool is_caps_lock_on = false; +bool is_alt_tab_active = false; +uint16_t alt_tab_timer = 0; + +bool fp_caps_lock_get(void) { + return is_caps_lock_on; +} + +void fp_caps_lock_toggle(void) { + is_caps_lock_on = !is_caps_lock_on; + handle_caps_lock_change(); +} + +void handle_caps_lock_change(void) { +#if defined(RGBLIGHT_ENABLE) // We only do this because we want the layer color to change + fp_layer_state_set_rgblight(layer_state); +#endif // RGBLIGHT_ENABLE +} + +void press_super_tab(bool shift) { + if (shift) { + register_code(KC_LSHIFT); + } + if (!is_alt_tab_active) { + is_alt_tab_active = true; +#ifdef FP_MAC_PREFERRED + register_code(KC_LGUI); +#else + register_code(KC_LALT); +#endif + } + + alt_tab_timer = timer_read(); + tap_code(KC_TAB); +} + +void unregister_super_tab(void) { + if (is_alt_tab_active) { + if (timer_elapsed(alt_tab_timer) > FP_SUPER_TAB_TIMEOUT) { +#ifdef FP_MAC_PREFERRED + unregister_code(KC_LGUI); +#else + unregister_code(KC_LALT); +#endif + is_alt_tab_active = false; + + if (get_mods() & MOD_MASK_SHIFT) { + unregister_code(KC_LSHIFT); + } + } + } +} + +void matrix_scan_kb(void) { + // We do this in matrix scan in case there are two keyboards connected and we + // need to make sure this keyboard is aware + led_t led_state = host_keyboard_led_state(); + if (led_state.caps_lock != is_caps_lock_on) { + is_caps_lock_on = led_state.caps_lock; + handle_caps_lock_change(); + } + + unregister_super_tab(); + + matrix_scan_user(); +} + +void keyboard_post_init_kb(void) { + #if defined(PIMORONI_TRACKBALL_ENABLE) && !defined(RGBLIGHT_ENABLE) + pimoroni_trackball_set_rgbw(RGB_BLUE, 0x00); + #endif + + #if defined(POINTING_DEVICE_ENABLE) && defined(POINTING_DEVICE_COMBINED) + fp_pointing_device_set_cpi_combined_defaults(); + #endif + + keyboard_post_init_user(); +} + +layer_state_t layer_state_set_kb(layer_state_t state) { +#ifdef RGBLIGHT_ENABLE + state = fp_layer_state_set_rgblight(state); +#endif // RGBLIGHT_ENABLE +#ifdef RGB_MATRIX_ENABLE + state = fp_layer_state_set_rgb_matrix(state); +#endif // RGB_MATRIX_ENABLE +#ifdef HAPTIC_ENABLE + state = fp_layer_state_set_haptic(state); +#endif // HAPTIC_ENABLE +#ifdef POINTING_DEVICE_ENABLE + state = fp_layer_state_set_pointing(state); +#endif // POINTING_DEVICE_ENABLE + + return layer_state_set_user(state); +} diff --git a/keyboards/fingerpunch/fp.h b/keyboards/fingerpunch/fp.h new file mode 100644 index 000000000000..65e885ed410e --- /dev/null +++ b/keyboards/fingerpunch/fp.h @@ -0,0 +1,53 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see .j + */ + +#pragma once +#include QMK_KEYBOARD_H + +#include "eeprom.h" + +bool fp_caps_lock_get(void); +void fp_caps_lock_toggle(void); +void handle_caps_lock_change(void); +void press_super_tab(bool shift); + +// IMPORTANT NOTE: Don't forget to add the following line to every fingerpunch keyboard's .h file (e.g. ffkb_byomcu.h) +// #include "keyboards/fingerpunch/fp.h" + +#include "keyboards/fingerpunch/fp_keyhandler.h" +#ifdef RGBLIGHT_ENABLE +# include "keyboards/fingerpunch/fp_rgblight.h" +#endif +#ifdef RGB_MATRIX_ENABLE +# include "keyboards/fingerpunch/fp_rgb_matrix.h" +#endif +#ifdef HAPTIC_ENABLE +# include "keyboards/fingerpunch/fp_haptic.h" +#endif +#ifdef POINTING_DEVICE_ENABLE +# include "keyboards/fingerpunch/fp_pointing.h" +#endif + +// clang-format off +typedef union { + uint32_t raw; + struct { + bool rgb_layer_change :1; + }; +} fp_config_t; +// clang-format on + +extern fp_config_t fp_config; diff --git a/keyboards/fingerpunch/fp_haptic.c b/keyboards/fingerpunch/fp_haptic.c new file mode 100644 index 000000000000..ce71b60645b7 --- /dev/null +++ b/keyboards/fingerpunch/fp_haptic.c @@ -0,0 +1,105 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "keyboards/fingerpunch/fp_haptic.h" + +#ifdef HAPTIC_ENABLE +layer_state_t fp_layer_state_set_haptic(layer_state_t state) { + switch (get_highest_layer(state)) { + default: + break; + } + return state; +} + +bool fp_process_record_haptic(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { +# ifndef FP_DISABLE_CUSTOM_KEYCODES + // NOTE TO SELF: IF I EVER ADD KEYCODES HERE, DETERMINE WHETHER THEY ARE CONSIDERED CUSTOM KEYCODES OR NOT + // In the case of the mouse buttons and ctrl-x,c,v,s features below, they are treated independently, so they aren't effected by FP_DISABLE_CUSTOM_KEYCODES +# endif // FP_DISABLE_CUSTOM_KEYCODES +# ifdef FP_HAPTIC_MOUSE_BUTTONS + case KC_BTN1: + if (record->event.pressed) { + DRV_pulse(medium_click1); + } + break; + case KC_BTN2: + if (record->event.pressed) { + DRV_pulse(sh_dblclick_str); + } + break; + case KC_BTN3: + if (record->event.pressed) { + DRV_pulse(medium_click1); + } + break; +# endif +# ifdef FP_HAPTIC_CUT_COPY_PASTE + case KC_C: // copy + if (record->event.pressed) { +# ifdef FP_MAC_PREFERRED + if (get_mods() & MOD_MASK_CTRL) { +# else + if (get_mods() & MOD_MASK_GUI) { +# endif + DRV_pulse(lg_dblclick_str); + } + } + break; + case KC_X: // cut + if (record->event.pressed) { +# ifdef FP_MAC_PREFERRED + if (get_mods() & MOD_MASK_CTRL) { +# else + if (get_mods() & MOD_MASK_GUI) { +# endif + DRV_pulse(lg_dblclick_str); + } + } + break; + case KC_V: // paste + if (record->event.pressed) { +# ifdef FP_MAC_PREFERRED + if (get_mods() & MOD_MASK_CTRL) { +# else + if (get_mods() & MOD_MASK_GUI) { +# endif + DRV_pulse(soft_bump); + } + } + break; +# endif +# ifdef FP_HAPTIC_SAVE + case KC_S: // save + if (record->event.pressed) { +# ifdef FP_MAC_PREFERRED + if (get_mods() & MOD_MASK_CTRL) { +# else + if (get_mods() & MOD_MASK_GUI) { +# endif + DRV_pulse(pulsing_strong); + } + } + break; +#endif + default: + break; + } + + return true; +} +#endif diff --git a/keyboards/fingerpunch/fp_haptic.h b/keyboards/fingerpunch/fp_haptic.h new file mode 100644 index 000000000000..618e6ec26451 --- /dev/null +++ b/keyboards/fingerpunch/fp_haptic.h @@ -0,0 +1,22 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once +#include QMK_KEYBOARD_H +#include "keyboards/fingerpunch/fp.h" + +layer_state_t fp_layer_state_set_haptic(layer_state_t state); +bool fp_process_record_haptic(uint16_t keycode, keyrecord_t *record); diff --git a/keyboards/fingerpunch/fp_keyhandler.c b/keyboards/fingerpunch/fp_keyhandler.c new file mode 100644 index 000000000000..8764fb8356b5 --- /dev/null +++ b/keyboards/fingerpunch/fp_keyhandler.c @@ -0,0 +1,66 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "keyboards/fingerpunch/fp_keyhandler.h" + +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + // If console is enabled, it will print the matrix position and status of each key pressed +#ifdef KEYLOGGER_ENABLE + uprintf("KL: kc: 0x%04X, col: %2u, row: %2u, pressed: %1d, time: %5u, int: %1d, count: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time, record->tap.interrupted, record->tap.count); +#endif // KEYLOGGER_ENABLE + + if (!(process_record_user(keycode, record) +#ifdef RGB_MATRIX_ENABLE + && fp_process_record_rgb_matrix(keycode, record) +#endif +#ifdef RGBLIGHT_ENABLE + && fp_process_record_rgblight(keycode, record) +#endif +#ifdef FP_UNICODE_ENABLE + && fp_process_record_unicode(keycode, record) +#endif +#ifdef HAPTIC_ENABLE + && fp_process_record_haptic(keycode, record) +#endif +#if defined(POINTING_DEVICE_ENABLE) + && fp_process_record_pointing(keycode, record) +#endif + && true)) { + return false; + } + switch (keycode) { +#ifndef FP_DISABLE_CUSTOM_KEYCODES + case KC_CAPSLOCK: + if (record->event.pressed) { + fp_caps_lock_toggle(); + } + break; + case FP_SUPER_TAB: + if (record->event.pressed) { + if (get_mods() & MOD_MASK_SHIFT) { + press_super_tab(true); + } else { + press_super_tab(false); + } + } + break; +#endif + default: + break; + } + + return true; +} diff --git a/keyboards/fingerpunch/fp_keyhandler.h b/keyboards/fingerpunch/fp_keyhandler.h new file mode 100644 index 000000000000..06bfbe82e3c5 --- /dev/null +++ b/keyboards/fingerpunch/fp_keyhandler.h @@ -0,0 +1,37 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once +#include "quantum.h" +#include QMK_KEYBOARD_H +#include "keyboards/fingerpunch/fp.h" + +#ifndef FP_DISABLE_CUSTOM_KEYCODES +enum fp_keycodes { +# ifdef VIA_ENABLE + FP_SCROLL_TOG = USER00, +# else + FP_SCROLL_TOG = SAFE_RANGE, +# endif // VIA_ENABLE + FP_SCROLL_ON, + FP_SCROLL_OFF, + FP_SNIPE_TOG, + FP_SNIPE_ON, + FP_SNIPE_OFF, + FP_SUPER_TAB, + FP_SAFE_RANGE +}; +#endif // FP_DISABLE_CUSTOM_KEYCODES diff --git a/keyboards/fingerpunch/fp_pointing.c b/keyboards/fingerpunch/fp_pointing.c new file mode 100644 index 000000000000..fa3df7e63e8d --- /dev/null +++ b/keyboards/fingerpunch/fp_pointing.c @@ -0,0 +1,258 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "keyboards/fingerpunch/fp_pointing.h" +#include "math.h" + +#ifdef POINTING_DEVICE_ENABLE +# ifndef FP_POINTING_DEFAULT_DPI +# define FP_POINTING_DEFAULT_DPI 1000 +# endif + +# ifndef FP_POINTING_SNIPING_DPI +# define FP_POINTING_SNIPING_DPI 50 +# endif + +# ifndef FP_POINTING_SNIPING_LAYER +# define FP_POINTING_SNIPING_LAYER 2 +# endif + +# ifndef FP_POINTING_SCROLLING_DPI +# define FP_POINTING_SCROLLING_DPI 50 +# endif + +# ifndef FP_POINTING_SCROLLING_LAYER +# define FP_POINTING_SCROLLING_LAYER 3 +# endif + +# ifndef FP_POINTING_COMBINED_SCROLLING_LEFT +# define FP_POINTING_COMBINED_SCROLLING_LEFT true +# endif + +# ifndef FP_POINTING_COMBINED_SCROLLING_RIGHT +# define FP_POINTING_COMBINED_SCROLLING_RIGHT false +# endif + +# ifndef FP_AUTO_MOUSE_TRACKBALL_SENSITIVITY +# define FP_AUTO_MOUSE_TRACKBALL_SENSITIVITY 3 +# endif + + +static bool scrolling_enabled = false; +static bool scrolling_layer_enabled = false; +static bool sniping_enabled = false; +static bool sniping_layer_enabled = false; + +void fp_scroll_layer_set(bool scroll_value) { + scrolling_layer_enabled = scroll_value; + fp_scroll_apply_dpi(); +} + +void fp_scroll_keycode_set(bool scroll_value) { + scrolling_enabled = scroll_value; + fp_scroll_apply_dpi(); +} + +void fp_scroll_keycode_toggle(void) { + scrolling_enabled = !scrolling_enabled; + fp_scroll_apply_dpi(); +} + +bool fp_scroll_get(void) { + return (scrolling_enabled || scrolling_layer_enabled); +} + +void fp_scroll_apply_dpi(void) { + // We don't want to apply the dpi change if sniping mode is enabled, since that will win! + if(!fp_snipe_get()) { + if(fp_scroll_get()) { + pointing_device_set_cpi(FP_POINTING_SCROLLING_DPI); + } else { +#ifdef POINTING_DEVICE_COMBINED + fp_pointing_device_set_cpi_combined_defaults(); +#else + pointing_device_set_cpi(FP_POINTING_DEFAULT_DPI); +#endif + } + } +} + +void fp_snipe_layer_set(bool snipe_value) { + sniping_layer_enabled = snipe_value; + fp_snipe_apply_dpi(); +} + +void fp_snipe_keycode_set(bool snipe_value) { + sniping_enabled = snipe_value; + fp_snipe_apply_dpi(); +} + +void fp_snipe_keycode_toggle(void) { + sniping_enabled = !sniping_enabled; + fp_snipe_apply_dpi(); +} + +bool fp_snipe_get(void) { + return (sniping_enabled || sniping_layer_enabled); +} + +void fp_snipe_apply_dpi(void) { + if(fp_snipe_get()) { + pointing_device_set_cpi(FP_POINTING_SNIPING_DPI); + } else { + pointing_device_set_cpi(FP_POINTING_DEFAULT_DPI); + } +} + +report_mouse_t pointing_device_task_kb(report_mouse_t mouse_report) { + if (fp_scroll_get()) { + mouse_report.h = mouse_report.x; + mouse_report.v = -mouse_report.y; + mouse_report.x = 0; + mouse_report.y = 0; + } + + mouse_report = pointing_device_task_user(mouse_report); + return mouse_report; +} + +layer_state_t fp_layer_state_set_pointing(layer_state_t state) { + switch (get_highest_layer(state)) { + case FP_POINTING_SCROLLING_LAYER: +#ifdef FP_POINTING_SCROLLING_LAYER_ENABLE + fp_scroll_layer_set(true); +#endif + break; + case FP_POINTING_SNIPING_LAYER: +#ifdef FP_POINTING_SNIPING_LAYER_ENABLE + fp_snipe_layer_set(true); +#endif + break; +#ifdef POINTING_DEVICE_AUTO_MOUSE_ENABLE + case AUTO_MOUSE_DEFAULT_LAYER: + // Do nothing, but this needs to exist so we don't go into the "default" below and automatically + // disable the scroll/snipe adjustments because we used the pointing device + // Problem happens when POINTING_DEVICE_AUTO_MOUSE_ENABLE and FP_POINTING_SCROLLING_LAYER_ENABLE or + // FP_POINTING_SNIPING_LAYER_ENABLE are enabled at the samet time + break; +#endif + default: + if (scrolling_layer_enabled) { +#ifdef FP_POINTING_SCROLLING_LAYER_ENABLE + fp_scroll_layer_set(false); +#endif + } + if (sniping_layer_enabled) { +#ifdef FP_POINTING_SNIPING_LAYER_ENABLE + fp_snipe_layer_set(false); +#endif + } + break; + } + return state; +} + +#ifdef POINTING_DEVICE_COMBINED +report_mouse_t pointing_device_task_combined_kb(report_mouse_t left_report, report_mouse_t right_report) { + if (FP_POINTING_COMBINED_SCROLLING_LEFT) { + left_report.h = left_report.x; + left_report.v = -left_report.y; + left_report.x = 0; + left_report.y = 0; + } + + if (FP_POINTING_COMBINED_SCROLLING_RIGHT) { + right_report.h = right_report.x; + right_report.v = -right_report.y; + right_report.x = 0; + right_report.y = 0; + } + + return pointing_device_task_combined_user(left_report, right_report); +} + +void fp_pointing_device_set_cpi_combined_defaults(void) { + pointing_device_set_cpi_on_side(true, FP_POINTING_SCROLLING_DPI); //Set cpi on left side to a low value for slower scrolling. + pointing_device_set_cpi_on_side(false, FP_POINTING_DEFAULT_DPI); //Set cpi on right side to a reasonable value for mousing. +} +#endif + +void pointing_device_init_kb(void) { +# ifdef POINTING_DEVICE_AUTO_MOUSE_ENABLE + set_auto_mouse_enable(true); // always required before the auto mouse feature will work +# endif + + pointing_device_init_user(); +} + +#ifdef FP_TRACKBALL_ENABLE +// Override when using a trackball so that you can account for acciental triggers due to a sensitive sensor +bool auto_mouse_activation(report_mouse_t mouse_report) { + // If we're in sniping mode, lower the threshold, otherwise give it some room to move for accidental triggers of auto mouse layer + if (fp_snipe_get()) { + return fabs(mouse_report.x) >= 0.5 || fabs(mouse_report.y) >= 0.5 || fabs(mouse_report.h) >= 0.5 || fabs(mouse_report.v) >= 0.5 || mouse_report.buttons; + } else { + return fabs(mouse_report.x) >= FP_AUTO_MOUSE_TRACKBALL_SENSITIVITY || + fabs(mouse_report.y) >= FP_AUTO_MOUSE_TRACKBALL_SENSITIVITY || + fabs(mouse_report.h) >= FP_AUTO_MOUSE_TRACKBALL_SENSITIVITY || + fabs(mouse_report.v) >= FP_AUTO_MOUSE_TRACKBALL_SENSITIVITY || + mouse_report.buttons; + } +} +#endif + +bool fp_process_record_pointing(uint16_t keycode, keyrecord_t *record) { +# ifndef FP_DISABLE_CUSTOM_KEYCODES + switch (keycode) { + case FP_SCROLL_TOG: + if (record->event.pressed) { + fp_scroll_keycode_toggle(); + } + break; + case FP_SCROLL_ON: + if (record->event.pressed) { + fp_scroll_keycode_set(true); + } + break; + case FP_SCROLL_OFF: + if (record->event.pressed) { + fp_scroll_keycode_set(true); + } + break; + case FP_SNIPE_TOG: + if (record->event.pressed) { + fp_snipe_keycode_toggle(); + } + break; + case FP_SNIPE_ON: + if (record->event.pressed) { + fp_snipe_keycode_set(true); + } + break; + case FP_SNIPE_OFF: + if (record->event.pressed) { + fp_snipe_keycode_set(true); + } + break; + default: + break; + } +# endif // FP_DISABLE_CUSTOM_KEYCODES + + return true; +} + +#endif diff --git a/keyboards/fingerpunch/fp_pointing.h b/keyboards/fingerpunch/fp_pointing.h new file mode 100644 index 000000000000..4817eecc09b9 --- /dev/null +++ b/keyboards/fingerpunch/fp_pointing.h @@ -0,0 +1,31 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once +#include QMK_KEYBOARD_H +#include "keyboards/fingerpunch/fp.h" + +layer_state_t fp_layer_state_set_pointing(layer_state_t state); +bool fp_process_record_pointing(uint16_t keycode, keyrecord_t *record); +void fp_pointing_device_set_cpi_combined_defaults(void); +void fp_scroll_set(bool scroll_value); +bool fp_scroll_get(void); +void fp_scroll_toggle(void); +void fp_scroll_apply_dpi(void); +void fp_snipe_set(bool snipe_value); +bool fp_snipe_get(void); +void fp_snipe_toggle(void); +void fp_snipe_apply_dpi(void); diff --git a/keyboards/fingerpunch/fp_rgb_matrix.c b/keyboards/fingerpunch/fp_rgb_matrix.c new file mode 100644 index 000000000000..0018c8d60b9b --- /dev/null +++ b/keyboards/fingerpunch/fp_rgb_matrix.c @@ -0,0 +1,38 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "keyboards/fingerpunch/fp_rgb_matrix.h" + +#ifdef RGB_MATRIX_ENABLE +layer_state_t fp_layer_state_set_rgb_matrix(layer_state_t state) { + switch (get_highest_layer(state)) { + default: + break; + } + return state; +} + +bool fp_process_record_rgb_matrix(uint16_t keycode, keyrecord_t *record) { +# ifndef FP_DISABLE_CUSTOM_KEYCODES + switch (keycode) { + default: + break; + } +# endif // FP_DISABLE_CUSTOM_KEYCODES + + return true; +} +#endif diff --git a/keyboards/fingerpunch/fp_rgb_matrix.h b/keyboards/fingerpunch/fp_rgb_matrix.h new file mode 100644 index 000000000000..c7791a25a325 --- /dev/null +++ b/keyboards/fingerpunch/fp_rgb_matrix.h @@ -0,0 +1,22 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once +#include QMK_KEYBOARD_H +#include "keyboards/fingerpunch/fp.h" + +layer_state_t fp_layer_state_set_rgb_matrix(layer_state_t state); +bool fp_process_record_rgb_matrix(uint16_t keycode, keyrecord_t *record); diff --git a/keyboards/fingerpunch/fp_rgblight.c b/keyboards/fingerpunch/fp_rgblight.c new file mode 100644 index 000000000000..0be65254b4a4 --- /dev/null +++ b/keyboards/fingerpunch/fp_rgblight.c @@ -0,0 +1,183 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + + +#include "keyboards/fingerpunch/fp_rgblight.h" + +#ifdef RGBLIGHT_ENABLE +# ifndef FP_LAYER_LIGHTING_MODE +# define FP_LAYER_LIGHTING_MODE RGBLIGHT_MODE_STATIC_LIGHT +# endif + +# ifndef FP_LAYER_LIGHTING_HUE_0 +# define FP_LAYER_LIGHTING_HUE_0 HSV_BLUE +# endif // FP_LAYER_LIGHTING_HUE_0 + +# ifndef FP_LAYER_LIGHTING_HUE_1 +# define FP_LAYER_LIGHTING_HUE_1 HSV_WHITE +# endif // FP_LAYER_LIGHTING_HUE_1 + +# ifndef FP_LAYER_LIGHTING_HUE_2 +# define FP_LAYER_LIGHTING_HUE_2 HSV_GREEN +# endif // FP_LAYER_LIGHTING_HUE_2 + +# ifndef FP_LAYER_LIGHTING_HUE_3 +# define FP_LAYER_LIGHTING_HUE_3 HSV_PURPLE +# endif // FP_LAYER_LIGHTING_HUE_3 + +# ifndef FP_LAYER_LIGHTING_HUE_4 +# define FP_LAYER_LIGHTING_HUE_4 HSV_YELLOW +# endif // FP_LAYER_LIGHTING_HUE_4 + +# ifndef FP_LAYER_LIGHTING_HUE_5 +# define FP_LAYER_LIGHTING_HUE_5 HSV_MAGENTA +# endif // FP_LAYER_LIGHTING_HUE_5 + +# ifndef FP_LAYER_LIGHTING_HUE_6 +# define FP_LAYER_LIGHTING_HUE_6 HSV_CYAN +# endif // FP_LAYER_LIGHTING_HUE_6 + +# ifndef FP_LAYER_LIGHTING_HUE_7 +# define FP_LAYER_LIGHTING_HUE_7 HSV_SPRINGGREEN +# endif // FP_LAYER_LIGHTING_HUE_7 + +# ifndef FP_LAYER_LIGHTING_MODE_0 +# define FP_LAYER_LIGHTING_MODE_0 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_0 + +# ifndef FP_LAYER_LIGHTING_MODE_1 +# define FP_LAYER_LIGHTING_MODE_1 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_1 + +# ifndef FP_LAYER_LIGHTING_MODE_2 +# define FP_LAYER_LIGHTING_MODE_2 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_2 + +# ifndef FP_LAYER_LIGHTING_MODE_3 +# define FP_LAYER_LIGHTING_MODE_3 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_3 + +# ifndef FP_LAYER_LIGHTING_MODE_4 +# define FP_LAYER_LIGHTING_MODE_4 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_4 + +# ifndef FP_LAYER_LIGHTING_MODE_5 +# define FP_LAYER_LIGHTING_MODE_5 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_5 + +# ifndef FP_LAYER_LIGHTING_MODE_6 +# define FP_LAYER_LIGHTING_MODE_6 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_6 + +# ifndef FP_LAYER_LIGHTING_MODE_7 +# define FP_LAYER_LIGHTING_MODE_7 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_7 + +# ifndef FP_LAYER_LIGHTING_AUTO_MOUSE_HUE +# define FP_LAYER_LIGHTING_AUTO_MOUSE_HUE HSV_ORANGE +# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE + +# ifndef FP_LAYER_LIGHTING_AUTO_MOUSE_MODE +# define FP_LAYER_LIGHTING_AUTO_MOUSE_MODE FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE + +# ifndef FP_LAYER_LIGHTING_CAPS_LOCK_HUE +# define FP_LAYER_LIGHTING_CAPS_LOCK_HUE HSV_RED +# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE + +# ifndef FP_LAYER_LIGHTING_CAPS_LOCK_MODE +# define FP_LAYER_LIGHTING_CAPS_LOCK_MODE FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE + +void fp_rgblight_set_hsv_and_mode(uint8_t hue, uint8_t sat, uint8_t val, uint8_t mode) { + rgblight_sethsv_noeeprom(hue, sat, val); + rgblight_mode_noeeprom(mode); +} + +layer_state_t fp_layer_state_set_rgblight(layer_state_t state) { + switch (get_highest_layer(state)) { + // TODO: This logic is clearly flawed, decide what to do with this +# if defined(FP_LAYER_LIGHTING_ENABLE) && defined(AUTO_MOUSE_DEFAULT_LAYER) && !defined(FP_LAYER_LIGHTING_ENABLE) + case AUTO_MOUSE_DEFAULT_LAYER: + fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_AUTO_MOUSE_HUE, FP_LAYER_LIGHTING_AUTO_MOUSE_MODE); + break; +# endif + case 0: +# ifdef FP_LAYER_LIGHTING_ENABLE + if (fp_caps_lock_get()) { + fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_CAPS_LOCK_HUE, FP_LAYER_LIGHTING_CAPS_LOCK_MODE); + } else { + fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_0, FP_LAYER_LIGHTING_MODE_0); + } +# endif + break; + case 1: +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_1, FP_LAYER_LIGHTING_MODE_1); +# endif + break; + case 2: +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_2, FP_LAYER_LIGHTING_MODE_2); +# endif + break; + case 3: +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_3, FP_LAYER_LIGHTING_MODE_3); +# endif + break; + case 4: +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_4, FP_LAYER_LIGHTING_MODE_4); +# endif + break; + case 5: +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_5, FP_LAYER_LIGHTING_MODE_5); +# endif + break; + case 6: +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_6, FP_LAYER_LIGHTING_MODE_6); +# endif + break; + case 7: +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_7, FP_LAYER_LIGHTING_MODE_7); +# endif + break; + default: + // default to layer 0 behavior +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_0, FP_LAYER_LIGHTING_MODE_0); +# endif + break; + } + return state; +} + +bool fp_process_record_rgblight(uint16_t keycode, keyrecord_t *record) { +# ifndef FP_DISABLE_CUSTOM_KEYCODES + switch (keycode) { + default: + break; + } +# endif // FP_DISABLE_CUSTOM_KEYCODES + + return true; +} + +#endif diff --git a/keyboards/fingerpunch/fp_rgblight.h b/keyboards/fingerpunch/fp_rgblight.h new file mode 100644 index 000000000000..109fb117a9c3 --- /dev/null +++ b/keyboards/fingerpunch/fp_rgblight.h @@ -0,0 +1,22 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once +#include QMK_KEYBOARD_H +#include "keyboards/fingerpunch/fp.h" + +layer_state_t fp_layer_state_set_rgblight(layer_state_t state); +bool fp_process_record_rgblight(uint16_t keycode, keyrecord_t *record); diff --git a/keyboards/fingerpunch/luakeeb/luakeeb.h b/keyboards/fingerpunch/luakeeb/luakeeb.h index 7dd6b60f90ac..99567f5d58b4 100644 --- a/keyboards/fingerpunch/luakeeb/luakeeb.h +++ b/keyboards/fingerpunch/luakeeb/luakeeb.h @@ -22,3 +22,4 @@ #define LAYOUT LAYOUT_split_3x5_4 +#include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/fingerpunch/luakeeb/rules.mk b/keyboards/fingerpunch/luakeeb/rules.mk index ceaf7edec565..42ccb8d8256a 100644 --- a/keyboards/fingerpunch/luakeeb/rules.mk +++ b/keyboards/fingerpunch/luakeeb/rules.mk @@ -24,3 +24,10 @@ ENCODER_ENABLE = no SPLIT_KEYBOARD = yes LAYOUTS = split_3x5_4 + +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/pinkiesout/pinkiesout.h b/keyboards/fingerpunch/pinkiesout/pinkiesout.h index d8290145683f..812948fdaa79 100644 --- a/keyboards/fingerpunch/pinkiesout/pinkiesout.h +++ b/keyboards/fingerpunch/pinkiesout/pinkiesout.h @@ -45,3 +45,5 @@ { K61, ___, K63, K64, ___, K66, K67, K68, K69 }, \ { K71, K72, K73, ___, ___, K76, ___, K78, K79 } \ } + +#include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/fingerpunch/pinkiesout/rules.mk b/keyboards/fingerpunch/pinkiesout/rules.mk index 82a1ad6a170b..c3310b5ab482 100644 --- a/keyboards/fingerpunch/pinkiesout/rules.mk +++ b/keyboards/fingerpunch/pinkiesout/rules.mk @@ -47,3 +47,10 @@ ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) QUANTUM_LIB_SRC += i2c_master.c OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE endif + +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/rockon/rockon.h b/keyboards/fingerpunch/rockon/rockon.h index 7a10957266ff..a77fd85920fc 100644 --- a/keyboards/fingerpunch/rockon/rockon.h +++ b/keyboards/fingerpunch/rockon/rockon.h @@ -21,4 +21,6 @@ # include "v1.h" #elif defined(KEYBOARD_fingerpunch_rockon_v2) # include "v2.h" -#endif \ No newline at end of file +#endif + +#include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/fingerpunch/rockon/rules.mk b/keyboards/fingerpunch/rockon/rules.mk new file mode 100644 index 000000000000..9afc914efe61 --- /dev/null +++ b/keyboards/fingerpunch/rockon/rules.mk @@ -0,0 +1,6 @@ +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/rockon/v1/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/rockon/v1/keymaps/sadekbaroudi/keymap.c index 71e017fc2378..21dd52b34156 100644 --- a/keyboards/fingerpunch/rockon/v1/keymaps/sadekbaroudi/keymap.c +++ b/keyboards/fingerpunch/rockon/v1/keymaps/sadekbaroudi/keymap.c @@ -40,9 +40,9 @@ ) \ LAYOUT_wrapper( \ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, _______, TO(_KICAD), KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \ - KC_TAB, K01, K02, K03, LT(_FUNCTION, K04), K05, _______, TO(_NAVIGATION), K06, LT(_FUNCTION, K07), K08, K09, K0A, KC_BSLS, \ - KC_CAPS, LCTL_T(K11), LGUI_T(K12), LALT_T(K13), LSFT_T(K14), K15, _______, TO(_ALPHA), LT(_MOUSE, K16), RSFT_T(K17), RALT_T(K18), RGUI_T(K19), RCTL_T(K1A), KC_QUOT, \ - KC_LSFT, K21, K22, K23, K24, K25, _______, _______, K26, K27, K28, K29, K2A, KC_ENT, \ + KC_TAB, K01, K02, K03, LT(_FUNCTION, K04), K05, FP_SCROLL_TOG, TO(_NAVIGATION), K06, LT(_FUNCTION, K07), K08, K09, K0A, KC_BSLS, \ + KC_CAPS, LCTL_T(K11), LGUI_T(K12), LALT_T(K13), LSFT_T(K14), K15, KC_MS_BTN1, TO(_ALPHA), LT(_MOUSE, K16), RSFT_T(K17), RALT_T(K18), RGUI_T(K19), RCTL_T(K1A), KC_QUOT, \ + KC_LSFT, K21, K22, K23, K24, K25, FP_SNIPE_TOG, FP_SUPER_TAB, K26, K27, K28, K29, K2A, KC_ENT, \ KC_LCTL, KC_LGUI, K33, LT(_NAVIGATION,K34), LT(_FUNCTION,K35), LT(_MEDIA,K36), LT(_SYMBOLS,K37), K38, KC_RGUI, KC_RCTL \ ) @@ -96,12 +96,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, ___________________RGB_3___________________, _______, _______, _________________MACROS_3__________________, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - + [_MOUSE] = LAYOUT_wrapper( _______, _______, _______, _______, _______, _______, _______, TO(_MEDIA), _______, _______, _______, _______, _______, _______, - _______, __________________MOUSE_1__________________, _______, TO(_GAME), ___________________BLANK___________________, _______, - _______, __________________MOUSE_2__________________, _______, _______, ___________________BLANK___________________, _______, - _______, __________________MOUSE_3__________________, _______, _______, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_1________________, _______, TO(_GAME), ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_2________________, _______, _______, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_3________________, _______, _______, ___________________BLANK___________________, _______, _______, _______, _______, KC_MS_BTN1, KC_MS_BTN3, KC_MS_BTN3, KC_MS_BTN2, _______, _______, _______ ), @@ -127,74 +127,74 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { oled_rotation_t oled_init_user(oled_rotation_t rotation) { return OLED_ROTATION_180; -} +} static void render_logo(void) { // rockon logo, 128x64px static const char PROGMEM rockon_logo[] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xe0, 0xf8, 0xfc, 0x1e, 0x0e, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0e, 0x3e, 0xfc, 0xf8, 0xe0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, - 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xfe, 0xff, 0x7f, - 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xef, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f, 0x7f, 0x78, - 0x38, 0x38, 0x70, 0x70, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xff, 0xff, 0x1f, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf8, 0xfc, - 0x1c, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x1e, 0x1c, 0x1c, 0x38, 0x38, 0x78, 0x70, 0xf0, 0xe0, 0xe0, - 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x1f, 0x3f, - 0x78, 0x70, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x80, 0xf8, 0xff, 0x7f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1e, 0x1c, 0x7c, 0xf8, 0xf0, - 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, - 0xe0, 0xf8, 0x7e, 0x3f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, - 0x0f, 0x1f, 0x7e, 0xf8, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, - 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf8, 0x7f, 0x3f, - 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xe0, 0xf8, 0xfc, 0x1e, 0x0e, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0e, 0x3e, 0xfc, 0xf8, 0xe0, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, + 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xfe, 0xff, 0x7f, + 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xef, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f, 0x7f, 0x78, + 0x38, 0x38, 0x70, 0x70, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xff, 0xff, 0x1f, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf8, 0xfc, + 0x1c, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x1e, 0x1c, 0x1c, 0x38, 0x38, 0x78, 0x70, 0xf0, 0xe0, 0xe0, + 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x1f, 0x3f, + 0x78, 0x70, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, + 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0xf8, 0xff, 0x7f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1e, 0x1c, 0x7c, 0xf8, 0xf0, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, + 0xe0, 0xf8, 0x7e, 0x3f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, + 0x0f, 0x1f, 0x7e, 0xf8, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf8, 0x7f, 0x3f, + 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; @@ -247,53 +247,53 @@ void render_status(void) { // rockon logo, 128x48px static const char rockon_logo_small [] PROGMEM = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xf8, 0xfc, 0x0e, 0x07, 0x03, 0x03, 0x03, 0x07, 0x0e, 0xfc, 0xf8, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x70, 0x30, 0x30, 0x30, 0x30, 0x70, - 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x80, 0x80, 0x80, - 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x08, 0x08, 0xf8, 0x10, 0x08, 0x08, 0x08, 0x08, 0x10, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x10, 0xe0, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x08, 0x08, 0x08, 0x08, - 0x10, 0x38, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x80, 0xc0, 0x28, 0x18, 0x08, 0x08, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x01, 0x01, 0x01, - 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, - 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x08, 0x08, 0x0f, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x04, 0x03, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, 0x08, 0x08, 0x08, - 0x08, 0x04, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x01, 0x00, 0x00, 0x01, 0x02, 0x04, 0x08, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x60, 0xf8, 0xfc, 0x0e, 0x06, 0x06, 0x06, 0x06, 0x0e, 0x0c, 0x1c, 0x18, 0x18, - 0x38, 0x70, 0x7f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, - 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, - 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x1c, 0x18, 0x38, 0x30, 0x70, 0x60, 0xe0, - 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf8, 0x7f, 0x0f, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x41, 0x80, - 0x80, 0x80, 0x80, 0x80, 0x41, 0x3e, 0x00, 0x00, 0x00, 0x80, 0xff, 0x81, 0x00, 0x00, 0x00, 0x80, - 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x01, 0x07, 0x1f, 0x7c, 0xf0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xfc, 0x7e, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xf8, 0xfc, 0x0e, 0x07, 0x03, 0x03, 0x03, 0x07, 0x0e, 0xfc, 0xf8, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x70, 0x30, 0x30, 0x30, 0x30, 0x70, + 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x80, 0x80, 0x80, + 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x08, 0xf8, 0x10, 0x08, 0x08, 0x08, 0x08, 0x10, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x10, 0xe0, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x08, 0x08, 0x08, 0x08, + 0x10, 0x38, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x80, 0xc0, 0x28, 0x18, 0x08, 0x08, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, + 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x08, 0x0f, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x04, 0x03, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, 0x08, 0x08, 0x08, + 0x08, 0x04, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x01, 0x00, 0x00, 0x01, 0x02, 0x04, 0x08, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x60, 0xf8, 0xfc, 0x0e, 0x06, 0x06, 0x06, 0x06, 0x0e, 0x0c, 0x1c, 0x18, 0x18, + 0x38, 0x70, 0x7f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x1c, 0x18, 0x38, 0x30, 0x70, 0x60, 0xe0, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf8, 0x7f, 0x0f, 0x01, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x41, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x41, 0x3e, 0x00, 0x00, 0x00, 0x80, 0xff, 0x81, 0x00, 0x00, 0x00, 0x80, + 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x07, 0x1f, 0x7c, 0xf0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xfc, 0x7e, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; oled_write_raw_P(rockon_logo_small, sizeof(rockon_logo_small)); diff --git a/keyboards/fingerpunch/rockon/v2/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/rockon/v2/keymaps/sadekbaroudi/keymap.c index d89d7784fd9d..ead602efe896 100644 --- a/keyboards/fingerpunch/rockon/v2/keymaps/sadekbaroudi/keymap.c +++ b/keyboards/fingerpunch/rockon/v2/keymaps/sadekbaroudi/keymap.c @@ -40,9 +40,9 @@ ) \ LAYOUT_wrapper( \ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, _______, TO(_KICAD), KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \ - KC_TAB, K01, K02, K03, LT(_FUNCTION, K04), K05, KC_MS_BTN3, TO(_NAVIGATION), K06, LT(_FUNCTION, K07), K08, K09, K0A, KC_BSLS, \ + KC_TAB, K01, K02, K03, LT(_FUNCTION, K04), K05, FP_SCROLL_TOG, TO(_NAVIGATION), K06, LT(_FUNCTION, K07), K08, K09, K0A, KC_BSLS, \ KC_CAPS, LCTL_T(K11), LGUI_T(K12), LALT_T(K13), LSFT_T(K14), K15, KC_MS_BTN1, TO(_ALPHA), LT(_MOUSE, K16), RSFT_T(K17), RALT_T(K18), RGUI_T(K19), RCTL_T(K1A), KC_QUOT, \ - KC_LSFT, K21, K22, K23, K24, K25, KC_MS_BTN2, _______, K26, K27, K28, K29, K2A, KC_ENT, \ + KC_LSFT, K21, K22, K23, K24, K25, FP_SNIPE_TOG, FP_SUPER_TAB, K26, K27, K28, K29, K2A, KC_ENT, \ KC_LCTL, KC_LGUI, K33, LT(_NAVIGATION,K34), LT(_FUNCTION,K35), KC_MUTE, LCTL(KC_BSPC), LT(_MEDIA,K36), LT(_SYMBOLS,K37), K38, KC_RGUI, KC_RCTL \ ) @@ -96,12 +96,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, ___________________RGB_3___________________, _______, _______, _________________MACROS_3__________________, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - + [_MOUSE] = LAYOUT_wrapper( _______, _______, _______, _______, _______, _______, _______, TO(_MEDIA), _______, _______, _______, _______, _______, _______, - _______, __________________MOUSE_1__________________, _______, TO(_GAME), ___________________BLANK___________________, _______, - _______, __________________MOUSE_2__________________, _______, _______, ___________________BLANK___________________, _______, - _______, __________________MOUSE_3__________________, _______, _______, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_1________________, _______, TO(_GAME), ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_2________________, _______, _______, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_3________________, _______, _______, ___________________BLANK___________________, _______, _______, _______, _______, KC_MS_BTN1, KC_MS_BTN3, _______, _______, KC_MS_BTN3, KC_MS_BTN2, _______, _______, _______ ), @@ -127,74 +127,74 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { oled_rotation_t oled_init_user(oled_rotation_t rotation) { return OLED_ROTATION_180; -} +} static void render_logo(void) { // rockon logo, 128x64px static const char PROGMEM rockon_logo[] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xe0, 0xf8, 0xfc, 0x1e, 0x0e, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0e, 0x3e, 0xfc, 0xf8, 0xe0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, - 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xfe, 0xff, 0x7f, - 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xef, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f, 0x7f, 0x78, - 0x38, 0x38, 0x70, 0x70, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xff, 0xff, 0x1f, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf8, 0xfc, - 0x1c, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x1e, 0x1c, 0x1c, 0x38, 0x38, 0x78, 0x70, 0xf0, 0xe0, 0xe0, - 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x1f, 0x3f, - 0x78, 0x70, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x80, 0xf8, 0xff, 0x7f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1e, 0x1c, 0x7c, 0xf8, 0xf0, - 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, - 0xe0, 0xf8, 0x7e, 0x3f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, - 0x0f, 0x1f, 0x7e, 0xf8, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, - 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf8, 0x7f, 0x3f, - 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xe0, 0xf8, 0xfc, 0x1e, 0x0e, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0e, 0x3e, 0xfc, 0xf8, 0xe0, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, + 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xfe, 0xff, 0x7f, + 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xef, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f, 0x7f, 0x78, + 0x38, 0x38, 0x70, 0x70, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xff, 0xff, 0x1f, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf8, 0xfc, + 0x1c, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x1e, 0x1c, 0x1c, 0x38, 0x38, 0x78, 0x70, 0xf0, 0xe0, 0xe0, + 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x1f, 0x3f, + 0x78, 0x70, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, + 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0xf8, 0xff, 0x7f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1e, 0x1c, 0x7c, 0xf8, 0xf0, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, + 0xe0, 0xf8, 0x7e, 0x3f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, + 0x0f, 0x1f, 0x7e, 0xf8, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf8, 0x7f, 0x3f, + 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; @@ -247,53 +247,53 @@ void render_status(void) { // rockon logo, 128x48px static const char rockon_logo_small [] PROGMEM = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xf8, 0xfc, 0x0e, 0x07, 0x03, 0x03, 0x03, 0x07, 0x0e, 0xfc, 0xf8, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x70, 0x30, 0x30, 0x30, 0x30, 0x70, - 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x80, 0x80, 0x80, - 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x08, 0x08, 0xf8, 0x10, 0x08, 0x08, 0x08, 0x08, 0x10, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x10, 0xe0, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x08, 0x08, 0x08, 0x08, - 0x10, 0x38, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x80, 0xc0, 0x28, 0x18, 0x08, 0x08, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x01, 0x01, 0x01, - 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, - 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x08, 0x08, 0x0f, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x04, 0x03, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, 0x08, 0x08, 0x08, - 0x08, 0x04, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x01, 0x00, 0x00, 0x01, 0x02, 0x04, 0x08, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x60, 0xf8, 0xfc, 0x0e, 0x06, 0x06, 0x06, 0x06, 0x0e, 0x0c, 0x1c, 0x18, 0x18, - 0x38, 0x70, 0x7f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, - 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, - 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x1c, 0x18, 0x38, 0x30, 0x70, 0x60, 0xe0, - 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf8, 0x7f, 0x0f, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x41, 0x80, - 0x80, 0x80, 0x80, 0x80, 0x41, 0x3e, 0x00, 0x00, 0x00, 0x80, 0xff, 0x81, 0x00, 0x00, 0x00, 0x80, - 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x01, 0x07, 0x1f, 0x7c, 0xf0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xfc, 0x7e, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xf8, 0xfc, 0x0e, 0x07, 0x03, 0x03, 0x03, 0x07, 0x0e, 0xfc, 0xf8, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x70, 0x30, 0x30, 0x30, 0x30, 0x70, + 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x80, 0x80, 0x80, + 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x08, 0xf8, 0x10, 0x08, 0x08, 0x08, 0x08, 0x10, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x10, 0xe0, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x08, 0x08, 0x08, 0x08, + 0x10, 0x38, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x80, 0xc0, 0x28, 0x18, 0x08, 0x08, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, + 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x08, 0x0f, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x04, 0x03, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, 0x08, 0x08, 0x08, + 0x08, 0x04, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x01, 0x00, 0x00, 0x01, 0x02, 0x04, 0x08, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x60, 0xf8, 0xfc, 0x0e, 0x06, 0x06, 0x06, 0x06, 0x0e, 0x0c, 0x1c, 0x18, 0x18, + 0x38, 0x70, 0x7f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x1c, 0x18, 0x38, 0x30, 0x70, 0x60, 0xe0, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf8, 0x7f, 0x0f, 0x01, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x41, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x41, 0x3e, 0x00, 0x00, 0x00, 0x80, 0xff, 0x81, 0x00, 0x00, 0x00, 0x80, + 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x07, 0x1f, 0x7c, 0xf0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xfc, 0x7e, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; oled_write_raw_P(rockon_logo_small, sizeof(rockon_logo_small)); diff --git a/keyboards/fingerpunch/rockon_bp/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/rockon_bp/keymaps/sadekbaroudi/keymap.c index d89d7784fd9d..ead602efe896 100644 --- a/keyboards/fingerpunch/rockon_bp/keymaps/sadekbaroudi/keymap.c +++ b/keyboards/fingerpunch/rockon_bp/keymaps/sadekbaroudi/keymap.c @@ -40,9 +40,9 @@ ) \ LAYOUT_wrapper( \ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, _______, TO(_KICAD), KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \ - KC_TAB, K01, K02, K03, LT(_FUNCTION, K04), K05, KC_MS_BTN3, TO(_NAVIGATION), K06, LT(_FUNCTION, K07), K08, K09, K0A, KC_BSLS, \ + KC_TAB, K01, K02, K03, LT(_FUNCTION, K04), K05, FP_SCROLL_TOG, TO(_NAVIGATION), K06, LT(_FUNCTION, K07), K08, K09, K0A, KC_BSLS, \ KC_CAPS, LCTL_T(K11), LGUI_T(K12), LALT_T(K13), LSFT_T(K14), K15, KC_MS_BTN1, TO(_ALPHA), LT(_MOUSE, K16), RSFT_T(K17), RALT_T(K18), RGUI_T(K19), RCTL_T(K1A), KC_QUOT, \ - KC_LSFT, K21, K22, K23, K24, K25, KC_MS_BTN2, _______, K26, K27, K28, K29, K2A, KC_ENT, \ + KC_LSFT, K21, K22, K23, K24, K25, FP_SNIPE_TOG, FP_SUPER_TAB, K26, K27, K28, K29, K2A, KC_ENT, \ KC_LCTL, KC_LGUI, K33, LT(_NAVIGATION,K34), LT(_FUNCTION,K35), KC_MUTE, LCTL(KC_BSPC), LT(_MEDIA,K36), LT(_SYMBOLS,K37), K38, KC_RGUI, KC_RCTL \ ) @@ -96,12 +96,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, ___________________RGB_3___________________, _______, _______, _________________MACROS_3__________________, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - + [_MOUSE] = LAYOUT_wrapper( _______, _______, _______, _______, _______, _______, _______, TO(_MEDIA), _______, _______, _______, _______, _______, _______, - _______, __________________MOUSE_1__________________, _______, TO(_GAME), ___________________BLANK___________________, _______, - _______, __________________MOUSE_2__________________, _______, _______, ___________________BLANK___________________, _______, - _______, __________________MOUSE_3__________________, _______, _______, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_1________________, _______, TO(_GAME), ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_2________________, _______, _______, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_3________________, _______, _______, ___________________BLANK___________________, _______, _______, _______, _______, KC_MS_BTN1, KC_MS_BTN3, _______, _______, KC_MS_BTN3, KC_MS_BTN2, _______, _______, _______ ), @@ -127,74 +127,74 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { oled_rotation_t oled_init_user(oled_rotation_t rotation) { return OLED_ROTATION_180; -} +} static void render_logo(void) { // rockon logo, 128x64px static const char PROGMEM rockon_logo[] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xe0, 0xf8, 0xfc, 0x1e, 0x0e, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0e, 0x3e, 0xfc, 0xf8, 0xe0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, - 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xfe, 0xff, 0x7f, - 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xef, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f, 0x7f, 0x78, - 0x38, 0x38, 0x70, 0x70, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xff, 0xff, 0x1f, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf8, 0xfc, - 0x1c, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x1e, 0x1c, 0x1c, 0x38, 0x38, 0x78, 0x70, 0xf0, 0xe0, 0xe0, - 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x1f, 0x3f, - 0x78, 0x70, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x80, 0xf8, 0xff, 0x7f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1e, 0x1c, 0x7c, 0xf8, 0xf0, - 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, - 0xe0, 0xf8, 0x7e, 0x3f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, - 0x0f, 0x1f, 0x7e, 0xf8, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, - 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf8, 0x7f, 0x3f, - 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xe0, 0xf8, 0xfc, 0x1e, 0x0e, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0e, 0x3e, 0xfc, 0xf8, 0xe0, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, + 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xfe, 0xff, 0x7f, + 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xef, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f, 0x7f, 0x78, + 0x38, 0x38, 0x70, 0x70, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xff, 0xff, 0x1f, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf8, 0xfc, + 0x1c, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x1e, 0x1c, 0x1c, 0x38, 0x38, 0x78, 0x70, 0xf0, 0xe0, 0xe0, + 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x1f, 0x3f, + 0x78, 0x70, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, + 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0xf8, 0xff, 0x7f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1e, 0x1c, 0x7c, 0xf8, 0xf0, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, + 0xe0, 0xf8, 0x7e, 0x3f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, + 0x0f, 0x1f, 0x7e, 0xf8, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf8, 0x7f, 0x3f, + 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; @@ -247,53 +247,53 @@ void render_status(void) { // rockon logo, 128x48px static const char rockon_logo_small [] PROGMEM = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xf8, 0xfc, 0x0e, 0x07, 0x03, 0x03, 0x03, 0x07, 0x0e, 0xfc, 0xf8, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x70, 0x30, 0x30, 0x30, 0x30, 0x70, - 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x80, 0x80, 0x80, - 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x08, 0x08, 0xf8, 0x10, 0x08, 0x08, 0x08, 0x08, 0x10, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x10, 0xe0, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x08, 0x08, 0x08, 0x08, - 0x10, 0x38, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x80, 0xc0, 0x28, 0x18, 0x08, 0x08, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x01, 0x01, 0x01, - 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, - 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x08, 0x08, 0x0f, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, - 0x08, 0x08, 0x08, 0x08, 0x04, 0x03, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, 0x08, 0x08, 0x08, - 0x08, 0x04, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x01, 0x00, 0x00, 0x01, 0x02, 0x04, 0x08, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x60, 0xf8, 0xfc, 0x0e, 0x06, 0x06, 0x06, 0x06, 0x0e, 0x0c, 0x1c, 0x18, 0x18, - 0x38, 0x70, 0x7f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, - 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, - 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x1c, 0x18, 0x38, 0x30, 0x70, 0x60, 0xe0, - 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf8, 0x7f, 0x0f, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x41, 0x80, - 0x80, 0x80, 0x80, 0x80, 0x41, 0x3e, 0x00, 0x00, 0x00, 0x80, 0xff, 0x81, 0x00, 0x00, 0x00, 0x80, - 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x01, 0x07, 0x1f, 0x7c, 0xf0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xfc, 0x7e, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xf8, 0xfc, 0x0e, 0x07, 0x03, 0x03, 0x03, 0x07, 0x0e, 0xfc, 0xf8, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x70, 0x30, 0x30, 0x30, 0x30, 0x70, + 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x80, 0x80, 0x80, + 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x08, 0xf8, 0x10, 0x08, 0x08, 0x08, 0x08, 0x10, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x10, 0xe0, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x08, 0x08, 0x08, 0x08, + 0x10, 0x38, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x80, 0xc0, 0x28, 0x18, 0x08, 0x08, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, + 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x08, 0x0f, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x04, 0x03, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, 0x08, 0x08, 0x08, + 0x08, 0x04, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x01, 0x00, 0x00, 0x01, 0x02, 0x04, 0x08, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x60, 0xf8, 0xfc, 0x0e, 0x06, 0x06, 0x06, 0x06, 0x0e, 0x0c, 0x1c, 0x18, 0x18, + 0x38, 0x70, 0x7f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x1c, 0x18, 0x38, 0x30, 0x70, 0x60, 0xe0, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf8, 0x7f, 0x0f, 0x01, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x41, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x41, 0x3e, 0x00, 0x00, 0x00, 0x80, 0xff, 0x81, 0x00, 0x00, 0x00, 0x80, + 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x07, 0x1f, 0x7c, 0xf0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xfc, 0x7e, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; oled_write_raw_P(rockon_logo_small, sizeof(rockon_logo_small)); diff --git a/keyboards/fingerpunch/rockon_bp/rockon_bp.h b/keyboards/fingerpunch/rockon_bp/rockon_bp.h index 8db78cb272dc..33ff120a849c 100644 --- a/keyboards/fingerpunch/rockon_bp/rockon_bp.h +++ b/keyboards/fingerpunch/rockon_bp/rockon_bp.h @@ -45,3 +45,5 @@ { K61, ___, K63, K64, ___, K66, K67, K68, K69 }, \ { K71, K72, K73, K99, ___, K76, K98, K78, K79 } \ } + +#include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/fingerpunch/rockon_bp/rules.mk b/keyboards/fingerpunch/rockon_bp/rules.mk index a3c92d66f0fc..e70ee5d0bebd 100644 --- a/keyboards/fingerpunch/rockon_bp/rules.mk +++ b/keyboards/fingerpunch/rockon_bp/rules.mk @@ -57,4 +57,11 @@ ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) POINTING_DEVICE_ENABLE := yes POINTING_DEVICE_DRIVER := pimoroni_trackball OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif \ No newline at end of file +endif + +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/sweeeeep/rules.mk b/keyboards/fingerpunch/sweeeeep/rules.mk index 02666b30bd01..dd27e0f1129d 100644 --- a/keyboards/fingerpunch/sweeeeep/rules.mk +++ b/keyboards/fingerpunch/sweeeeep/rules.mk @@ -27,4 +27,11 @@ OLED_ENABLE = no # EXTRAFLAGS += -flto # macros disabled, if you need the extra space MOUSEKEY_ENABLE = no -SPLIT_KEYBOARD = yes # Use shared split_common code \ No newline at end of file +SPLIT_KEYBOARD = yes # Use shared split_common code + +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/sweeeeep/sweeeeep.h b/keyboards/fingerpunch/sweeeeep/sweeeeep.h index 2d4fc43f48c4..9f0a40ff3a41 100644 --- a/keyboards/fingerpunch/sweeeeep/sweeeeep.h +++ b/keyboards/fingerpunch/sweeeeep/sweeeeep.h @@ -44,3 +44,5 @@ { R15, R14, R13, R12, R11 }, \ { R16, R17, R18, ___, ___ } \ } + +#include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/fingerpunch/ximi/rules.mk b/keyboards/fingerpunch/ximi/rules.mk index e5b2d4edc236..5fdfc51feb5b 100644 --- a/keyboards/fingerpunch/ximi/rules.mk +++ b/keyboards/fingerpunch/ximi/rules.mk @@ -98,7 +98,13 @@ ifeq ($(strip $(PMW3360_ENABLE)), yes) OPT_DEFS += -DFP_TRACKBALL_ENABLE endif +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c SRC += matrix_74hc595_spi.c QUANTUM_LIB_SRC += spi_master.c -CUSTOM_MATRIX = lite \ No newline at end of file +CUSTOM_MATRIX = lite diff --git a/keyboards/fingerpunch/ximi/ximi.h b/keyboards/fingerpunch/ximi/ximi.h index 3ff110a8a9de..1cfa6b53daa3 100644 --- a/keyboards/fingerpunch/ximi/ximi.h +++ b/keyboards/fingerpunch/ximi/ximi.h @@ -19,3 +19,4 @@ void pointing_device_set_default_cpi(void); { K50, K51, K52, K53, K54, K55, K56, K57 } \ } +#include "keyboards/fingerpunch/fp.h" diff --git a/users/sadekbaroudi/config.h b/users/sadekbaroudi/config.h index 6cbb3671afe7..beaa349e5021 100755 --- a/users/sadekbaroudi/config.h +++ b/users/sadekbaroudi/config.h @@ -3,85 +3,6 @@ #define COMBO_COUNT 15 #define COMBO_TERM 75 -#ifdef RGBLIGHT_ENABLE -# undef RGBLIGHT_ANIMATIONS -// Comment the line below to save space and reduce the number of animations -//# define RGBLIGHT_ANIMATIONS -// If you comment the line above, uncomment the lines below until "HERE" -# define RGBLIGHT_SLEEP -# define RGBLIGHT_EFFECT_RAINBOW_SWIRL -# define RGBLIGHT_EFFECT_STATIC_GRADIENT -# define RGBLIGHT_EFFECT_TWINKLE -// "HERE" -# ifdef RGBLIGHT_HUE_STEP -# undef RGBLIGHT_HUE_STEP -# endif -# ifdef RGBLIGHT_SAT_STEP -# undef RGBLIGHT_SAT_STEP -# endif -# ifdef RGBLIGHT_VAL_STEP -# undef RGBLIGHT_VAL_STEP -# endif -# define RGBLIGHT_HUE_STEP 8 -# define RGBLIGHT_SAT_STEP 8 -# define RGBLIGHT_VAL_STEP 8 -# define RGBLIGHT_SLEEP -# define RGBLIGHT_LAYERS -# define RGBLIGHT_MAX_LAYERS 32 -//# define RGBLIGHT_STARTUP_ANIMATION true -#endif // RGBLIGHT_ENABLE - -#ifdef RGB_MATRIX_ENABLE -# define RGB_MATRIX_KEYPRESSES // reacts to keypresses (will slow down matrix scan by a lot) -// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (not recommened) -# define RGB_MATRIX_FRAMEBUFFER_EFFECTS -// # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects -# define RGB_DISABLE_WHEN_USB_SUSPENDED true // turn off effects when suspended -// # define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_CYCLE_UP_DOWN -// # define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255 -// # define EECONFIG_RGB_MATRIX (uint32_t *)16 - -# if defined(__AVR__) && !defined(__AVR_AT90USB1286__) && !defined(KEYBOARD_launchpad) -// Anything you disable here gets disabled globaly. -// # define DISABLE_RGB_MATRIX_ALPHAS_MODS -// # define DISABLE_RGB_MATRIX_GRADIENT_UP_DOWN -// # define DISABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT -// # define DISABLE_RGB_MATRIX_BREATHING -// # define DISABLE_RGB_MATRIX_BAND_SAT -// # define DISABLE_RGB_MATRIX_BAND_VAL -// # define DISABLE_RGB_MATRIX_BAND_PINWHEEL_SAT -// # define DISABLE_RGB_MATRIX_BAND_PINWHEEL_VAL -// # define DISABLE_RGB_MATRIX_BAND_SPIRAL_SAT -// # define DISABLE_RGB_MATRIX_BAND_SPIRAL_VAL -// # define DISABLE_RGB_MATRIX_CYCLE_ALL -// # define DISABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT -// # define DISABLE_RGB_MATRIX_CYCLE_UP_DOWN -// # define DISABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON -// # define DISABLE_RGB_MATRIX_DUAL_BEACON -// # define DISABLE_RGB_MATRIX_CYCLE_PINWHEEL -// # define DISABLE_RGB_MATRIX_CYCLE_SPIRAL -// # define DISABLE_RGB_MATRIX_RAINBOW_BEACON -// # define DISABLE_RGB_MATRIX_RAINBOW_PINWHEELS -// # define DISABLE_RGB_MATRIX_RAINDROPS -// # define DISABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS -// # define DISABLE_RGB_MATRIX_DIGITAL_RAIN -// # define DISABLE_RGB_MATRIX_SOLID_REACTIVE -// # define DISABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE -// # define DISABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE -// # define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE -// # define DISABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS -// # define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS -// # define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS -// # define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS -// # define DISABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS -// # define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS -// # define DISABLE_RGB_MATRIX_SPLASH -// # define DISABLE_RGB_MATRIX_MULTISPLASH -// # define DISABLE_RGB_MATRIX_SOLID_SPLASH -// # define DISABLE_RGB_MATRIX_SOLID_MULTISPLASH -# endif // AVR -#endif // RGB_MATRIX_ENABLE - #ifdef MOUSEKEY_ENABLE # define MOUSEKEY_INTERVAL 16 # define MOUSEKEY_DELAY 0 @@ -97,3 +18,24 @@ #define TAPPING_FORCE_HOLD #define IGNORE_MOD_TAP_INTERRUPT + +#ifdef AUTO_MOUSE_DEFAULT_LAYER + #undef AUTO_MOUSE_DEFAULT_LAYER +#endif +#define AUTO_MOUSE_DEFAULT_LAYER 6 + +#define POINTING_DEVICE_AUTO_MOUSE_ENABLE + +// Define only one of the two below, but not both. +// Read here for details: https://github.com/sadekbaroudi/qmk_firmware/tree/master/keyboards/fingerpunch#layer-lighting + +#define FP_LAYER_LIGHTING_ENABLE +//#define FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE + +#define FP_POINTING_SNIPING_LAYER_ENABLE +#define FP_POINTING_SCROLLING_LAYER_ENABLE + +#ifdef FP_POINTING_SCROLLING_LAYER + #undef FP_POINTING_SCROLLING_LAYER +#endif +#define FP_POINTING_SCROLLING_LAYER 4 diff --git a/users/sadekbaroudi/encoder_stuff.c b/users/sadekbaroudi/encoder_stuff.c index f86eb037878e..9ecf262a23e6 100644 --- a/users/sadekbaroudi/encoder_stuff.c +++ b/users/sadekbaroudi/encoder_stuff.c @@ -78,18 +78,18 @@ bool encoder_update_user(uint8_t index, bool clockwise) { } break; case _FUNCTION: - // super alt tab + // super alt tab if (clockwise) { #ifdef ENCODERS_B_REVERSE - press_super_alt_tab(true); + press_super_tab(true); #else - press_super_alt_tab(false); + press_super_tab(false); #endif } else { #ifdef ENCODERS_B_REVERSE - press_super_alt_tab(false); + press_super_tab(false); #else - press_super_alt_tab(true); + press_super_tab(true); #endif } break; diff --git a/users/sadekbaroudi/hid.c b/users/sadekbaroudi/hid.c index fca9b93b5d16..936e2cd36642 100644 --- a/users/sadekbaroudi/hid.c +++ b/users/sadekbaroudi/hid.c @@ -2,7 +2,7 @@ #include "raw_hid.h" #include #include -#ifdef RGBLIGHT_ENABLE +#ifdef USERSPACE_RGBLIGHT_ENABLE #include "rgblight.h" #endif @@ -11,7 +11,7 @@ __attribute__((weak)) bool raw_hid_receive_keymap(uint8_t *data, uint8_t length) { return false; } void raw_hid_receive(uint8_t *data, uint8_t length) { - #ifdef RGBLIGHT_ENABLE + #ifdef USERSPACE_RGBLIGHT_ENABLE if (raw_hid_receive_keymap(data, length)) { return; } @@ -27,4 +27,4 @@ void raw_hid_receive(uint8_t *data, uint8_t length) { } } #endif -} \ No newline at end of file +} diff --git a/users/sadekbaroudi/pointing_stuff.c b/users/sadekbaroudi/pointing_stuff.c index b376bd014906..542ad301d835 100644 --- a/users/sadekbaroudi/pointing_stuff.c +++ b/users/sadekbaroudi/pointing_stuff.c @@ -1,6 +1,9 @@ #include "sadekbaroudi.h" #include "pointing_stuff.h" +// all handled in keyboards/fingerpunch/fp_pointing.c now + +/* static bool scrolling_mode = false; report_mouse_t pointing_device_task_user(report_mouse_t mouse_report) { @@ -46,4 +49,13 @@ void pointing_device_set_cpi_combined_defaults(void) { pointing_device_set_cpi_on_side(true, 50); //Set cpi on left side to a low value for slower scrolling. pointing_device_set_cpi_on_side(false, 2000); //Set cpi on right side to a reasonable value for mousing. } -#endif \ No newline at end of file +#endif + +#ifdef POINTING_DEVICE_ENABLE +void pointing_device_init_user(void) { +# ifdef POINTING_DEVICE_AUTO_MOUSE_ENABLE + set_auto_mouse_enable(true); // always required before the auto mouse feature will work +# endif +} +#endif +*/ diff --git a/users/sadekbaroudi/pointing_stuff.h b/users/sadekbaroudi/pointing_stuff.h index f435f38994aa..38b804ed0f71 100644 --- a/users/sadekbaroudi/pointing_stuff.h +++ b/users/sadekbaroudi/pointing_stuff.h @@ -1,5 +1,9 @@ #pragma once #include QMK_KEYBOARD_H +// all handled in keyboards/fingerpunch/fp_pointing.h now + +/* layer_state_t layer_state_set_pointing(layer_state_t state); -void pointing_device_set_cpi_combined_defaults(void); \ No newline at end of file +void pointing_device_set_cpi_combined_defaults(void); +*/ diff --git a/users/sadekbaroudi/process_records.c b/users/sadekbaroudi/process_records.c index f6c8793ec2ca..12991b768654 100755 --- a/users/sadekbaroudi/process_records.c +++ b/users/sadekbaroudi/process_records.c @@ -1,6 +1,6 @@ #include "sadekbaroudi.h" #include "casemodes.h" -#if defined(RGBLIGHT_ENABLE) +#if defined(USERSPACE_RGBLIGHT_ENABLE) #include "rgb_stuff.h" #endif #ifdef HAPTIC_ENABLE @@ -33,7 +33,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { // #ifdef RGB_MATRIX_ENABLE // && process_record_user_rgb_matrix(keycode, record) // #endif -#ifdef RGBLIGHT_ENABLE +#ifdef USERSPACE_RGBLIGHT_ENABLE && process_record_user_rgb_light(keycode, record) #endif && true)) { @@ -41,15 +41,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } switch (keycode) { - case KC_CAPSLOCK: - if (record->event.pressed) { - if (is_caps_lock_on) { - is_caps_lock_on = false; - } else { - is_caps_lock_on = true; - } - } - break; // COMMENT TO DISABLE MACROS case KC_MAKE: // Compiles the firmware, and adds the flash command based on keyboard bootloader if (!record->event.pressed) { @@ -89,49 +80,49 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { break; case KC_RGB_T: // This allows me to use underglow as layer indication, or as normal -#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) +#if defined(USERSPACE_RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) if (record->event.pressed) { userspace_config.rgb_layer_change ^= 1; xprintf("rgblight layer change [EEPROM]: %u\n", userspace_config.rgb_layer_change); eeconfig_update_user(userspace_config.raw); if (userspace_config.rgb_layer_change) { -// # if defined(RGBLIGHT_ENABLE) && defined(RGB_MATRIX_ENABLE) -// rgblight_enable_noeeprom(); +// # if defined(USERSPACE_RGBLIGHT_ENABLE) && defined(RGB_MATRIX_ENABLE) +// USERSPACE_RGBLIGHT_ENABLE_noeeprom(); // # endif layer_state_set(layer_state); // This is needed to immediately set the layer color (looks better) } else { -// # if defined(RGBLIGHT_ENABLE) && defined(RGB_MATRIX_ENABLE) +// # if defined(USERSPACE_RGBLIGHT_ENABLE) && defined(RGB_MATRIX_ENABLE) // rgblight_disable_noeeprom(); // # endif -# if defined(RGBLIGHT_ENABLE) +# if defined(USERSPACE_RGBLIGHT_ENABLE) rgblight_set_hsv_and_mode(userspace_config.hue, userspace_config.sat, userspace_config.val, userspace_config.mode); # endif ; } } -#endif // RGBLIGHT_ENABLE +#endif // USERSPACE_RGBLIGHT_ENABLE break; case KC_RGB_BLT: // This enables the base layer as a static color, or allows you to override using RGB -#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) +#if defined(USERSPACE_RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) if (record->event.pressed) { userspace_config.rgb_base_layer_override ^= 1; xprintf("rgblight base layer override change [EEPROM]: %u\n", userspace_config.rgb_base_layer_override); eeconfig_update_user(userspace_config.raw); if (userspace_config.rgb_base_layer_override) { -// # if defined(RGBLIGHT_ENABLE) && defined(RGB_MATRIX_ENABLE) -// rgblight_enable_noeeprom(); +// # if defined(USERSPACE_RGBLIGHT_ENABLE) && defined(RGB_MATRIX_ENABLE) +// USERSPACE_RGBLIGHT_ENABLE_noeeprom(); // # endif layer_state_set(layer_state); // This is needed to immediately set the layer color (looks better) -// # if defined(RGBLIGHT_ENABLE) && defined(RGB_MATRIX_ENABLE) +// # if defined(USERSPACE_RGBLIGHT_ENABLE) && defined(RGB_MATRIX_ENABLE) // } else { // rgblight_disable_noeeprom(); // # endif } } -#endif // RGBLIGHT_ENABLE +#endif // USERSPACE_RGBLIGHT_ENABLE break; -#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) +#if defined(USERSPACE_RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) case RGB_TOG: // Split keyboards need to trigger on key-up for edge-case issue # ifndef SPLIT_KEYBOARD @@ -139,7 +130,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { # else if (!record->event.pressed) { # endif -# if defined(RGBLIGHT_ENABLE) && !defined(RGBLIGHT_DISABLE_KEYCODES) +# if defined(USERSPACE_RGBLIGHT_ENABLE) && !defined(RGBLIGHT_DISABLE_KEYCODES) rgblight_toggle(); # endif // # if defined(RGB_MATRIX_ENABLE) && !defined(RGB_MATRIX_DISABLE_KEYCODES) @@ -154,7 +145,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { bool is_eeprom_updated = false; if (userspace_config.rgb_layer_change) { -# if defined(RGBLIGHT_ENABLE) && !defined(RGBLIGHT_DISABLE_KEYCODES) +# if defined(USERSPACE_RGBLIGHT_ENABLE) && !defined(RGBLIGHT_DISABLE_KEYCODES) // For some reason, this breaks setting base layer colors on the draculad, need to comment this line out rgblight_set_hsv_and_mode(userspace_config.hue, userspace_config.sat, userspace_config.val, userspace_config.mode); # endif @@ -172,69 +163,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } } if (!record->event.pressed) { -# if defined(RGBLIGHT_ENABLE) && !defined(RGBLIGHT_DISABLE_KEYCODES) +# if defined(USERSPACE_RGBLIGHT_ENABLE) && !defined(RGBLIGHT_DISABLE_KEYCODES) rgb_set_user_config_from_current_values(); # endif } break; #endif - case KC_BTN1: - if (record->event.pressed) { -#ifdef HAPTIC_ENABLE - DRV_pulse(medium_click1); -#endif - } - break; - case KC_BTN2: - if (record->event.pressed) { -#ifdef HAPTIC_ENABLE - DRV_pulse(sh_dblclick_str); -#endif - } - break; - case KC_BTN3: - if (record->event.pressed) { -#ifdef HAPTIC_ENABLE - // DRV_pulse(lg_dblclick_med); -#endif - } - break; - case KC_C: // copy - if (record->event.pressed) { -#ifdef HAPTIC_ENABLE - if (get_mods() & MOD_MASK_CTRL) { - DRV_pulse(lg_dblclick_str); - } -#endif - } - break; - case KC_X: // cut - if (record->event.pressed) { -#ifdef HAPTIC_ENABLE - if (get_mods() & MOD_MASK_CTRL) { - DRV_pulse(lg_dblclick_str); - } -#endif - } - break; - case KC_V: // paste - if (record->event.pressed) { -#ifdef HAPTIC_ENABLE - if (get_mods() & MOD_MASK_CTRL) { - DRV_pulse(soft_bump); - } -#endif - } - break; - case KC_S: // save - if (record->event.pressed) { -#ifdef HAPTIC_ENABLE - if (get_mods() & MOD_MASK_CTRL) { - DRV_pulse(pulsing_strong); - } -#endif - } - break; case C_CAPSWORD: // NOTE: if you change this behavior, may want to update in keymap.c for COMBO behavior #ifdef CASEMODES_ENABLE @@ -256,7 +190,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { enable_xcase(); } #endif - break; + break; case C_UNDERSCORECASE: #ifdef CASEMODES_ENABLE if (record->event.pressed) { @@ -304,13 +238,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { unregister_code(KC_LSHIFT); } break; - case S_ALT_TAB: - if (record->event.pressed) { - press_super_alt_tab(false); - } else { - // when keycode is released - } - break; case P_ANGBRKT: if (record->event.pressed) { SEND_STRING("<>"SS_TAP(X_LEFT)); diff --git a/users/sadekbaroudi/process_records.h b/users/sadekbaroudi/process_records.h index 7e9cf46fe98e..7d617acce53f 100755 --- a/users/sadekbaroudi/process_records.h +++ b/users/sadekbaroudi/process_records.h @@ -1,7 +1,26 @@ #pragma once #include "sadekbaroudi.h" -#if defined(KEYMAP_SAFE_RANGE) +#if defined(KEYBOARD_fingerpunch_arachnophobe) \ + || defined(KEYBOARD_fingerpunch_barobord) \ + || defined(KEYBOARD_fingerpunch_barobord_byomcu) \ + || defined(KEYBOARD_fingerpunch_bgkeeb) \ + || defined(KEYBOARD_fingerpunch_bigbarobord) \ + || defined(KEYBOARD_fingerpunch_euclid36) \ + || defined(KEYBOARD_fingerpunch_euclid36_proto) \ + || defined(KEYBOARD_fingerpunch_ffkb) \ + || defined(KEYBOARD_fingerpunch_ffkb_byomcu_v1) \ + || defined(KEYBOARD_fingerpunch_ffkb_byomcu_v2) \ + || defined(KEYBOARD_fingerpunch_ffkb_byomcu_v3) \ + || defined(KEYBOARD_fingerpunch_luakeeb) \ + || defined(KEYBOARD_fingerpunch_pinkiesout) \ + || defined(KEYBOARD_fingerpunch_rockon_v1) \ + || defined(KEYBOARD_fingerpunch_rockon_v2) \ + || defined(KEYBOARD_fingerpunch_rockon_bp) \ + || defined(KEYBOARD_fingerpunch_sweeeeep) \ + || defined(KEYBOARD_fingerpunch_ximi) +# define PLACEHOLDER_SAFE_RANGE FP_SAFE_RANGE +#elif defined(KEYMAP_SAFE_RANGE) # define PLACEHOLDER_SAFE_RANGE KEYMAP_SAFE_RANGE #else # define PLACEHOLDER_SAFE_RANGE SAFE_RANGE @@ -12,7 +31,6 @@ enum userspace_custom_keycodes { KC_RGB_T, // Toggles RGB Layer Indication mode KC_RGB_BLT, // Toggles RGB Base Layer Override mode RGB_IDL, // RGB Idling animations - // COMMENT TO DISABLE MACROS KC_MAKE, // Run keyboard's customized make command L_GREP, L_FIND, @@ -35,7 +53,7 @@ enum userspace_custom_keycodes { G_GOD_OFF, G_PULLING, G_PUSH, - NEW_SAFE_RANGE // use "NEWPLACEHOLDER for keymap specific codes + NEW_SAFE_RANGE }; bool process_record_secrets(uint16_t keycode, keyrecord_t *record); diff --git a/users/sadekbaroudi/rgb_stuff.c b/users/sadekbaroudi/rgb_stuff.c index 8e30cb996591..708fccaf4262 100755 --- a/users/sadekbaroudi/rgb_stuff.c +++ b/users/sadekbaroudi/rgb_stuff.c @@ -2,6 +2,7 @@ #include "rgb_stuff.h" #include "eeprom.h" +/* NO USERSPACE RGB #ifdef PIMORONI_TRACKBALL_ENABLE #include "drivers/sensors/pimoroni_trackball.h" #include "pointing_device.h" @@ -35,7 +36,7 @@ void keyboard_post_init_rgb_light(void) { #if defined(RGBLIGHT_STARTUP_ANIMATION) is_enabled = rgblight_is_enabled(); if (userspace_config.rgb_layer_change) { - rgblight_enable_noeeprom(); + USERSPACE_RGBLIGHT_ENABLE_noeeprom(); } if (rgblight_is_enabled()) { layer_state_set_rgb_light(layer_state); @@ -76,7 +77,7 @@ void rgblight_set_hsv_and_mode(uint8_t hue, uint8_t sat, uint8_t val, uint8_t mo } void rgb_set_user_config_from_current_values() { -#ifdef RGBLIGHT_ENABLE +#ifdef USERSPACE_RGBLIGHT_ENABLE userspace_config.mode = rgblight_get_mode(); userspace_config.hue = rgblight_get_hue(); userspace_config.sat = rgblight_get_sat(); @@ -91,7 +92,7 @@ void rgb_set_user_config_from_current_values() { __attribute__((weak)) bool rgb_base_layer_keymap(layer_state_t state) { return false; } layer_state_t layer_state_set_rgb_light(layer_state_t state) { -#ifdef RGBLIGHT_ENABLE +#ifdef USER_USERSPACE_RGBLIGHT_ENABLE if (userspace_config.rgb_layer_change) { //uint8_t mode = layer_state_cmp(state,_MEDIA) ? RGBLIGHT_MODE_BREATHING : RGBLIGHT_MODE_STATIC_LIGHT; uint8_t mode = RGBLIGHT_MODE_STATIC_LIGHT; @@ -100,20 +101,7 @@ layer_state_t layer_state_set_rgb_light(layer_state_t state) { #endif switch (get_highest_layer(state|default_layer_state)) { case _ALPHA: - if (is_caps_lock_on) { // If caps lock is enabled, force this setting - uint8_t caps_lock_rgb_hue = 127; // CYAN - uint8_t caps_lock_rgb_mode = mode; - #ifdef CAPS_LOCK_RGB_HUE - caps_lock_rgb_hue = CAPS_LOCK_RGB_HUE; - #endif - #ifdef CAPS_LOCK_RGB_MODE - caps_lock_rgb_mode = CAPS_LOCK_RGB_MODE; - #endif - rgblight_set_hsv_and_mode(caps_lock_rgb_hue, 255, 255, caps_lock_rgb_mode); - #ifdef PIMORONI_TRACKBALL_ENABLE - trackball_set_rgbw(RGB_RED, 0x00); - #endif - } else if (userspace_config.rgb_base_layer_override) { // If the base layer override is enabled, use that + if (userspace_config.rgb_base_layer_override) { // If the base layer override is enabled, use that rgblight_set_hsv_and_mode(userspace_config.hue, userspace_config.sat, userspace_config.val, userspace_config.mode); #ifdef PIMORONI_TRACKBALL_ENABLE trackball_set_rgbw(RGB_BLUE, 0x00); @@ -192,7 +180,8 @@ layer_state_t layer_state_set_rgb_light(layer_state_t state) { break; } } -#endif // RGBLIGHT_ENABLE +#endif // USERSPACE_RGBLIGHT_ENABLE return state; } +*/ diff --git a/users/sadekbaroudi/rgb_stuff.h b/users/sadekbaroudi/rgb_stuff.h index e0465f09accd..df69b35b7d89 100755 --- a/users/sadekbaroudi/rgb_stuff.h +++ b/users/sadekbaroudi/rgb_stuff.h @@ -1,6 +1,7 @@ #pragma once #include "quantum.h" +/* NO USERSPACE RGB bool process_record_user_rgb_light(uint16_t keycode, keyrecord_t *record); void keyboard_post_init_rgb_light(void); void matrix_scan_rgb_light(void); @@ -14,3 +15,4 @@ void rgb_set_user_config_from_current_values(void); #if defined(RGBLIGHT_TWINKLE) void scan_rgblight_fadeout(void); #endif +*/ diff --git a/users/sadekbaroudi/rules.mk b/users/sadekbaroudi/rules.mk index c7f6751513c0..82744424b7aa 100755 --- a/users/sadekbaroudi/rules.mk +++ b/users/sadekbaroudi/rules.mk @@ -28,11 +28,9 @@ ifneq ($(strip $(NO_SECRETS)), yes) endif endif -ifeq ($(strip $(RGBLIGHT_ENABLE)), yes) +ifeq ($(strip $(USERSPACE_RGBLIGHT_ENABLE)), yes) SRC += rgb_stuff.c - ifeq ($(strip $(RGBLIGHT_NOEEPROM)), yes) - OPT_DEFS += -DRGBLIGHT_NOEEPROM - endif + OPT_DEFS += -DUSERSPACE_RGBLIGHT_ENABLE endif # RGB_MATRIX_ENABLE ?= no @@ -75,4 +73,4 @@ endif ifeq ($(strip $(POINTING_DEVICE_ENABLE)), yes) SRC += pointing_stuff.c -endif \ No newline at end of file +endif diff --git a/users/sadekbaroudi/sadekbaroudi.c b/users/sadekbaroudi/sadekbaroudi.c index 77219cbdefbc..0599bfed8299 100755 --- a/users/sadekbaroudi/sadekbaroudi.c +++ b/users/sadekbaroudi/sadekbaroudi.c @@ -1,7 +1,5 @@ #include "sadekbaroudi.h" -#define USER_SUPER_ALT_TAB_TIMEOUT 500 - #ifdef PIMORONI_TRACKBALL_ENABLE #include "drivers/sensors/pimoroni_trackball.h" #include "pointing_device.h" @@ -13,15 +11,6 @@ #endif userspace_config_t userspace_config; -bool is_caps_lock_on; -bool is_alt_tab_active = false; -uint16_t alt_tab_timer = 0; - -void handle_caps_lock_change(void) { -#if defined(RGBLIGHT_ENABLE) // We only do this because we want the layer color to change - layer_state_set_rgb_light(layer_state); -#endif // RGBLIGHT_ENABLE -} // Leader key combos - TODO move into another file? #if defined(LEADER_ENABLE) @@ -116,7 +105,7 @@ void keyboard_pre_init_user(void) { // hack for a weird issue where userspace_config.val gets set to 0 on keyboard restart userspace_config.val = 255; - + keyboard_pre_init_keymap(); } // Add reconfigurable functions here, for keymap customization @@ -134,11 +123,10 @@ void matrix_init_user(void) { __attribute__((weak)) void keyboard_post_init_keymap(void) {} void keyboard_post_init_user(void) { - is_caps_lock_on = false; - #if defined(PIMORONI_TRACKBALL_ENABLE) && !defined(RGBLIGHT_ENABLE) + #if defined(PIMORONI_TRACKBALL_ENABLE) && !defined(USERSPACE_RGBLIGHT_ENABLE) pimoroni_trackball_set_rgbw(RGB_BLUE, 0x00); #endif -#if defined(RGBLIGHT_ENABLE) +#if defined(USERSPACE_RGBLIGHT_ENABLE) keyboard_post_init_rgb_light(); #endif // #if defined(RGB_MATRIX_ENABLE) @@ -155,8 +143,8 @@ __attribute__((weak)) void shutdown_keymap(void) {} void rgb_matrix_update_pwm_buffers(void); void shutdown_user(void) { -#ifdef RGBLIGHT_ENABLE - rgblight_enable_noeeprom(); +#ifdef USERSPACE_RGBLIGHT_ENABLE + USERSPACE_RGBLIGHT_ENABLE_noeeprom(); rgblight_mode_noeeprom(1); rgblight_setrgb_red(); #endif @@ -186,17 +174,9 @@ void matrix_scan_user(void) { startup_user(); } -#if defined(RGBLIGHT_ENABLE) +#if defined(USERSPACE_RGBLIGHT_ENABLE) matrix_scan_rgb_light(); -#endif // RGBLIGHT_ENABLE - - // We do this in matrix scan in case there are two keyboards connected and we - // need to make sure this keyboard is aware - led_t led_state = host_keyboard_led_state(); - if (led_state.caps_lock != is_caps_lock_on) { - is_caps_lock_on = led_state.caps_lock; - handle_caps_lock_change(); - } +#endif // USERSPACE_RGBLIGHT_ENABLE // #if defined(RGB_MATRIX_ENABLE) // matrix_scan_rgb_matrix(); @@ -206,44 +186,23 @@ void matrix_scan_user(void) { matrix_scan_leader_key(); #endif - if (is_alt_tab_active) { - if (timer_elapsed(alt_tab_timer) > USER_SUPER_ALT_TAB_TIMEOUT) { - unregister_code(KC_LALT); - is_alt_tab_active = false; - } - } - matrix_scan_keymap(); } -void press_super_alt_tab(bool shift) { - if (shift) { - register_code(KC_LSHIFT); - } - if (!is_alt_tab_active) { - is_alt_tab_active = true; - register_code(KC_LALT); - } - alt_tab_timer = timer_read(); - tap_code(KC_TAB); - if (shift) { - unregister_code(KC_LSHIFT); - } -} - __attribute__((weak)) layer_state_t layer_state_set_keymap(layer_state_t state) { return state; } // on layer change, no matter where the change was initiated // Then runs keymap's layer change check layer_state_t layer_state_set_user(layer_state_t state) { -#if defined(RGBLIGHT_ENABLE) +#if defined(USERSPACE_RGBLIGHT_ENABLE) state = layer_state_set_rgb_light(state); -#endif // RGBLIGHT_ENABLE +#endif // USERSPACE_RGBLIGHT_ENABLE #if defined(HAPTIC_ENABLE) state = layer_state_set_haptic(state); #endif // HAPTIC_ENABLE #if defined(POINTING_DEVICE_ENABLE) - state = layer_state_set_pointing(state); +// all handled in keyboards/fingerpunch/fp_pointing.c now +// state = layer_state_set_pointing(state); #endif // HAPTIC_ENABLE return layer_state_set_keymap(state); } @@ -269,7 +228,7 @@ void eeconfig_init_user(void) { userspace_config.raw = 0; userspace_config.rgb_base_layer_override = false; userspace_config.rgb_layer_change = true; - #ifdef RGBLIGHT_ENABLE + #ifdef USERSPACE_RGBLIGHT_ENABLE userspace_config.mode = RGBLIGHT_MODE_STATIC_LIGHT; #endif userspace_config.hue = 167; // BLUE @@ -311,4 +270,4 @@ void housekeeping_task_user(void) { layer_state_set_user(layer_state); } } -#endif \ No newline at end of file +#endif diff --git a/users/sadekbaroudi/sadekbaroudi.h b/users/sadekbaroudi/sadekbaroudi.h index 3cacac1c39f1..e3a63aee3f31 100755 --- a/users/sadekbaroudi/sadekbaroudi.h +++ b/users/sadekbaroudi/sadekbaroudi.h @@ -21,7 +21,7 @@ #include "eeprom.h" #include "wrappers.h" #include "process_records.h" -#if defined(RGBLIGHT_ENABLE) +#if defined(USERSPACE_RGBLIGHT_ENABLE) # include "rgb_stuff.h" #endif #if defined(HAPTIC_ENABLE) @@ -75,4 +75,4 @@ typedef union { // clang-format on extern userspace_config_t userspace_config; -extern bool is_caps_lock_on; + diff --git a/users/sadekbaroudi/template.c b/users/sadekbaroudi/template.c index 833447daac4f..fce18c36b3ec 100755 --- a/users/sadekbaroudi/template.c +++ b/users/sadekbaroudi/template.c @@ -71,9 +71,9 @@ void suspend_wakeup_init_user(void) { __attribute__((weak)) void startup_keymap(void) {} void startup_user(void) { -#ifdef RGBLIGHT_ENABLE +#ifdef USERSPACE_RGBLIGHT_ENABLE matrix_init_rgb(); -#endif // RGBLIGHT_ENABLE +#endif // USERSPACE_RGBLIGHT_ENABLE startup_keymap(); } diff --git a/users/sadekbaroudi/wrappers.h b/users/sadekbaroudi/wrappers.h index 4796a9759ce1..68d25f575284 100755 --- a/users/sadekbaroudi/wrappers.h +++ b/users/sadekbaroudi/wrappers.h @@ -334,11 +334,11 @@ NOTE: These are all the same length. If you do a search/replace // SHIFT NAVIGATION LAYER -#define __SHIFTNAV_1_K1__ _______ +#define __SHIFTNAV_1_K1__ QK_BOOT #define __SHIFTNAV_1_K2__ LSFT(KC_PGUP) #define __SHIFTNAV_1_K3__ LSFT(KC_UP) #define __SHIFTNAV_1_K4__ LSFT(KC_PGDN) -#define __SHIFTNAV_1_K5__ _______ +#define __SHIFTNAV_1_K5__ EEP_RST #define __SHIFTNAV_2_K1__ LSFT(KC_HOME) #define __SHIFTNAV_2_K2__ LSFT(KC_LEFT) @@ -432,7 +432,7 @@ NOTE: These are all the same length. If you do a search/replace // MOUSE LAYER -#define __MOUSE_1_K1__ QK_BOOT +#define __MOUSE_1_K1__ _______ #define __MOUSE_1_K2__ KC_MS_WH_UP #define __MOUSE_1_K3__ KC_MS_UP #define __MOUSE_1_K4__ KC_MS_WH_DOWN @@ -444,7 +444,7 @@ NOTE: These are all the same length. If you do a search/replace #define __MOUSE_2_K4__ KC_MS_RIGHT #define __MOUSE_2_K5__ KC_MS_WH_RIGHT -#define __MOUSE_3_K1__ EEP_RST +#define __MOUSE_3_K1__ _______ #define __MOUSE_3_K2__ KC_MS_WH_UP #define __MOUSE_3_K3__ KC_MS_WH_DOWN #define __MOUSE_3_K4__ KC_MS_ACCEL1 @@ -454,6 +454,28 @@ NOTE: These are all the same length. If you do a search/replace #define __________________MOUSE_2__________________ __MOUSE_2_K1__, __MOUSE_2_K2__, __MOUSE_2_K3__, __MOUSE_2_K4__, __MOUSE_2_K5__ #define __________________MOUSE_3__________________ __MOUSE_3_K1__, __MOUSE_3_K2__, __MOUSE_3_K3__, __MOUSE_3_K4__, __MOUSE_3_K5__ +#define __AMOUSE_1_K1_ _______ +#define __AMOUSE_1_K2_ KC_MS_WH_UP +#define __AMOUSE_1_K3_ KC_MS_UP +#define __AMOUSE_1_K4_ KC_MS_WH_DOWN +#define __AMOUSE_1_K5_ _______ + +#define __AMOUSE_2_K1_ KC_MS_WH_LEFT +#define __AMOUSE_2_K2_ KC_BTN3 +#define __AMOUSE_2_K3_ KC_BTN2 +#define __AMOUSE_2_K4_ KC_BTN1 +#define __AMOUSE_2_K5_ KC_MS_WH_RIGHT + +#define __AMOUSE_3_K1_ EEP_RST +#define __AMOUSE_3_K2_ KC_MS_WH_UP +#define __AMOUSE_3_K3_ KC_MS_WH_DOWN +#define __AMOUSE_3_K4_ KC_MS_ACCEL1 +#define __AMOUSE_3_K5_ KC_MS_ACCEL2 + +#define _______________AUTO_MOUSE_1________________ __AMOUSE_1_K1_, __AMOUSE_1_K2_, __AMOUSE_1_K3_, __AMOUSE_1_K4_, __AMOUSE_1_K5_ +#define _______________AUTO_MOUSE_2________________ __AMOUSE_2_K1_, __AMOUSE_2_K2_, __AMOUSE_2_K3_, __AMOUSE_2_K4_, __AMOUSE_2_K5_ +#define _______________AUTO_MOUSE_3________________ __AMOUSE_3_K1_, __AMOUSE_3_K2_, __AMOUSE_3_K3_, __AMOUSE_3_K4_, __AMOUSE_3_K5_ + // Zoom Home Add Line Add Arc Add Polygon Add Circle #define ___________________KICAD_0_________________ KC_HOME, LCTL(LSFT(KC_L)), LCTL(LSFT(KC_A)), LCTL(LSFT(KC_P)), LCTL(LSFT(KC_C)) // Drag 45 degree Move Dialog Flip Pos Relative Select Net From eda041f13b91131a34277103478a355e9fb39c25 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Sun, 2 Oct 2022 23:50:34 -0700 Subject: [PATCH 07/51] rock on v3 firmware support --- keyboards/fingerpunch/rockon/config.h | 19 +-- keyboards/fingerpunch/rockon/rockon.h | 2 + keyboards/fingerpunch/rockon/v1/config.h | 15 ++ keyboards/fingerpunch/rockon/v2/config.h | 16 ++ keyboards/fingerpunch/rockon/v3/config.h | 83 ++++++++++ keyboards/fingerpunch/rockon/v3/fp_build.json | 22 +++ keyboards/fingerpunch/rockon/v3/halconf.h | 30 ++++ .../rockon/v3/keymaps/default/keymap.c | 107 +++++++++++++ .../rockon/v3/keymaps/sadekbaroudi/config.h | 2 + .../rockon/v3/keymaps/sadekbaroudi/keymap.c | 120 ++++++++++++++ .../rockon/v3/matrix_74hc595_spi.c | 150 ++++++++++++++++++ keyboards/fingerpunch/rockon/v3/mcuconf.h | 46 ++++++ keyboards/fingerpunch/rockon/v3/readme.md | 28 ++++ keyboards/fingerpunch/rockon/v3/rules.mk | 59 +++++++ keyboards/fingerpunch/rockon/v3/v3.h | 62 ++++++++ users/sadekbaroudi/config.h | 4 +- users/sadekbaroudi/process_records.h | 1 + users/sadekbaroudi/sadekbaroudi.h | 4 +- 18 files changed, 748 insertions(+), 22 deletions(-) create mode 100644 keyboards/fingerpunch/rockon/v3/config.h create mode 100644 keyboards/fingerpunch/rockon/v3/fp_build.json create mode 100644 keyboards/fingerpunch/rockon/v3/halconf.h create mode 100644 keyboards/fingerpunch/rockon/v3/keymaps/default/keymap.c create mode 100644 keyboards/fingerpunch/rockon/v3/keymaps/sadekbaroudi/config.h create mode 100644 keyboards/fingerpunch/rockon/v3/keymaps/sadekbaroudi/keymap.c create mode 100644 keyboards/fingerpunch/rockon/v3/matrix_74hc595_spi.c create mode 100644 keyboards/fingerpunch/rockon/v3/mcuconf.h create mode 100644 keyboards/fingerpunch/rockon/v3/readme.md create mode 100644 keyboards/fingerpunch/rockon/v3/rules.mk create mode 100644 keyboards/fingerpunch/rockon/v3/v3.h diff --git a/keyboards/fingerpunch/rockon/config.h b/keyboards/fingerpunch/rockon/config.h index 640073edae4d..1cac5cc20d33 100644 --- a/keyboards/fingerpunch/rockon/config.h +++ b/keyboards/fingerpunch/rockon/config.h @@ -26,17 +26,6 @@ along with this program. If not, see . #define MANUFACTURER sadekbaroudi #define PRODUCT sadekbaroudi rockon -/* key matrix size */ -/* Rows are doubled up */ -#define MATRIX_ROWS 8 -#define MATRIX_COLS 9 - -// wiring -#define MATRIX_ROW_PINS \ - { B6, F4, B5, B4, B2, B3, B7, D5 } -#define MATRIX_COL_PINS \ - { D2, D4, C6, D7, E6, F5, F6, F7, B1 } - /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 @@ -49,7 +38,7 @@ along with this program. If not, see . #define RGBLIGHT_HUE_STEP 16 #define RGBLIGHT_SAT_STEP 16 #define RGBLIGHT_VAL_STEP 16 - #define RGBLIGHT_LIMIT_VAL 60 /* The maximum brightness level for RGBLIGHT_ENABLE */ + #define RGBLIGHT_LIMIT_VAL 120 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ #define RGBLIGHT_EFFECT_ALTERNATING #define RGBLIGHT_EFFECT_BREATHING @@ -110,9 +99,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -//#define DYNAMIC_KEYMAP_LAYER_COUNT 5 - -#ifdef OLED_ENABLE -#define OLED_DISPLAY_128X64 -#endif diff --git a/keyboards/fingerpunch/rockon/rockon.h b/keyboards/fingerpunch/rockon/rockon.h index a77fd85920fc..c3ae1d13a69d 100644 --- a/keyboards/fingerpunch/rockon/rockon.h +++ b/keyboards/fingerpunch/rockon/rockon.h @@ -21,6 +21,8 @@ # include "v1.h" #elif defined(KEYBOARD_fingerpunch_rockon_v2) # include "v2.h" +#elif defined(KEYBOARD_fingerpunch_rockon_v3) +# include "v3.h" #endif #include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/fingerpunch/rockon/v1/config.h b/keyboards/fingerpunch/rockon/v1/config.h index 2010ec3c7df2..20bc4b9d31e7 100644 --- a/keyboards/fingerpunch/rockon/v1/config.h +++ b/keyboards/fingerpunch/rockon/v1/config.h @@ -18,3 +18,18 @@ along with this program. If not, see . #pragma once #define DEVICE_VER 0x0001 + +/* key matrix size */ +/* Rows are doubled up */ +#define MATRIX_ROWS 8 +#define MATRIX_COLS 9 + +// wiring +#define MATRIX_ROW_PINS \ + { B6, F4, B5, B4, B2, B3, B7, D5 } +#define MATRIX_COL_PINS \ + { D2, D4, C6, D7, E6, F5, F6, F7, B1 } + +#ifdef OLED_ENABLE +#define OLED_DISPLAY_128X64 +#endif diff --git a/keyboards/fingerpunch/rockon/v2/config.h b/keyboards/fingerpunch/rockon/v2/config.h index aca730ccbdd3..fbc189f33c47 100644 --- a/keyboards/fingerpunch/rockon/v2/config.h +++ b/keyboards/fingerpunch/rockon/v2/config.h @@ -19,6 +19,18 @@ along with this program. If not, see . #define DEVICE_VER 0x0002 +/* key matrix size */ +/* Rows are doubled up */ +#define MATRIX_ROWS 8 +#define MATRIX_COLS 9 + +// wiring +#define MATRIX_ROW_PINS \ + { B6, F4, B5, B4, B2, B3, B7, D5 } +#define MATRIX_COL_PINS \ + { D2, D4, C6, D7, E6, F5, F6, F7, B1 } + + /* encoder config */ #define ENCODERS_PAD_A {F0, C7} #define ENCODERS_PAD_B {F1, F1} @@ -45,3 +57,7 @@ along with this program. If not, see . #define I2C1_CLOCK_SPEED 400000 #define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 + +#ifdef OLED_ENABLE +#define OLED_DISPLAY_128X64 +#endif diff --git a/keyboards/fingerpunch/rockon/v3/config.h b/keyboards/fingerpunch/rockon/v3/config.h new file mode 100644 index 000000000000..f21118658e39 --- /dev/null +++ b/keyboards/fingerpunch/rockon/v3/config.h @@ -0,0 +1,83 @@ +/* +Copyright 2021 Sadek Baroudi + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once + +#define DEVICE_VER 0x0003 + + +/* key matrix size */ +/* Rows are doubled up */ +#define MATRIX_ROWS 9 +#define MATRIX_COLS 8 + +// SHIFT REGISTER +// Only needed for matrix_74hc595_spi.c +#define SHIFTREG_MATRIX_COL_CS B6 +#define SHIFTREG_DIVISOR 8 // needs to be the same as the PMW33XX_CS_DIVISOR below +#define MATRIX_ROW_PINS_SR { D4, C6, D7, E6, B4, F4, F5, F6, F7 } + +#define RGB_DI_PIN D3 +#ifdef RGBLIGHT_ENABLE + #ifdef RGBLED_NUM + #undef RGBLED_NUM + #endif + #define RGBLED_NUM 69 +#endif + +#ifdef RGB_MATRIX_ENABLE + #ifdef DRIVER_LED_TOTAL + #undef DRIVER_LED_TOTAL + #endif + #define DRIVER_LED_TOTAL 69 +#endif + +// SPI config for shift register (and trackball if enabled) +#define SPI_DRIVER SPID1 +#define SPI_SCK_PIN B1 +#define SPI_SCK_PAL_MODE 5 +#define SPI_MOSI_PIN B2 +#define SPI_MOSI_PAL_MODE 5 +#define SPI_MISO_PIN B3 +#define SPI_MISO_PAL_MODE 5 + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +#define ENCODERS_PAD_A {C7, D5, F1} +#define ENCODERS_PAD_B {D2, B7, F0} + +#ifdef CIRQUE_ENABLE + // cirque trackpad config + #define CIRQUE_PINNACLE_ADDR 0x2A + #define POINTING_DEVICE_ROTATION_90 + #define CIRQUE_PINNACLE_TAP_ENABLE + #define POINTING_DEVICE_TASK_THROTTLE_MS 5 + #define I2C1_CLOCK_SPEED 400000 + #define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 +#endif + +#ifdef FP_TRACKBALL_ENABLE + // Trackball config + #define FP_POINTING_DEFAULT_DPI 800 + #define PMW33XX_CS_PIN B5 + #define PMW33XX_CPI FP_POINTING_DEFAULT_DPI + #define PMW33XX_CS_DIVISOR 8 // needs to be the same as the SHIFTREG_DIVISOR above + #define POINTING_DEVICE_INVERT_Y +#endif + +#define DYNAMIC_KEYMAP_LAYER_COUNT 5 diff --git a/keyboards/fingerpunch/rockon/v3/fp_build.json b/keyboards/fingerpunch/rockon/v3/fp_build.json new file mode 100644 index 000000000000..867f56d42da5 --- /dev/null +++ b/keyboards/fingerpunch/rockon/v3/fp_build.json @@ -0,0 +1,22 @@ +[ + { + "type" : "single", + "name" : "CIRQUE_ENABLE", + "user_input": "Do you have a cirque?" + }, + { + "type" : "single", + "name" : "FP_TRACKBALL_ENABLE", + "user_input": "Do you have a trackball?" + }, + { + "type" : "one-of", + "names" : [ "RGBLIGHT_ENABLE", "RGB_MATRIX_ENABLE" ], + "user_input": "No RGB, RGB light, RGB matrix?" + }, + { + "type" : "single", + "name" : "ENCODER_ENABLE", + "user_input": "Do you have one or more rotary encoders?" + } +] diff --git a/keyboards/fingerpunch/rockon/v3/halconf.h b/keyboards/fingerpunch/rockon/v3/halconf.h new file mode 100644 index 000000000000..ad85b85967ff --- /dev/null +++ b/keyboards/fingerpunch/rockon/v3/halconf.h @@ -0,0 +1,30 @@ +// BEGIN SADEK PWM LED testing +/* Copyright 2020 QMK + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confupdate -i keyboards/tkw/grandiceps/halconf.h -r platforms/chibios/BLACKPILL_STM32_F411/configs/halconf.h` + */ + +#pragma once + +#define HAL_USE_SERIAL TRUE +#define HAL_USE_SPI TRUE +#define SPI_USE_WAIT TRUE +#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD + +#include_next diff --git a/keyboards/fingerpunch/rockon/v3/keymaps/default/keymap.c b/keyboards/fingerpunch/rockon/v3/keymaps/default/keymap.c new file mode 100644 index 000000000000..ddafd6a4eefe --- /dev/null +++ b/keyboards/fingerpunch/rockon/v3/keymaps/default/keymap.c @@ -0,0 +1,107 @@ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _QWERTY, + _COLEMAK, + _LOWER, + _RAISE, + _ADJUST +}; + +enum custom_keycodes { + QWERTY = SAFE_RANGE, + LOWER, + RAISE, + ADJUST +}; + +// All the KC_MUTE keycodes below represent the encoders. If you aren't using encoders, you can ignore these: +// --> KC_MUTE, KC_LCTL, KC_LGUI, LOWER, KC_SPC, KC_LALT, KC_MS_BTN1, KC_MS_BTN2, KC_MS_BTN3, KC_RALT, KC_SPC, RAISE, KC_RGUI, KC_RCTL, KC_MUTE, <-- +// --> KC_MUTE <-- +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[_QWERTY] = LAYOUT_rockon( + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LPRN, KC_RPRN, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LCBR, KC_RCBR, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, ADJUST, ADJUST, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + KC_MUTE, KC_LCTL, KC_LGUI, LOWER, KC_SPC, KC_LALT, KC_MS_BTN1, KC_MS_BTN2, KC_MS_BTN3, KC_RALT, KC_SPC, RAISE, KC_RGUI, KC_RCTL, KC_MUTE, + KC_MUTE +), + + +[_COLEMAK] = LAYOUT_rockon( + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LPRN, KC_RPRN, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_LBRC, KC_RBRC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS, + KC_CAPS, KC_A, KC_R, KC_S, KC_T, KC_G, KC_LCBR, KC_RCBR, KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, ADJUST, ADJUST, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + KC_MUTE, KC_LCTL, KC_LGUI, LOWER, KC_SPC, KC_LALT, KC_MS_BTN1, KC_MS_BTN2, KC_MS_BTN3, KC_RALT, KC_SPC, RAISE, KC_RGUI, KC_RCTL, KC_MUTE, + KC_MUTE +), + + +[_LOWER] = LAYOUT_rockon( + KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______ +), + +[_RAISE] = LAYOUT_rockon( + KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, _______, + _______, KC_PGUP, KC_UP, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______ +), + +[_ADJUST] = LAYOUT_rockon( + RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, + _______, RGB_TOG, RGB_RMOD, RGB_MOD, _______, TG(_QWERTY), _______, _______, _______, _______, _______, KC_F11, KC_F12, _______, + _______, RGB_SPI, RGB_HUI, RGB_SAI, RGB_VAI, TG(_COLEMAK), _______, _______, _______, _______, _______, _______, _______, _______, + _______, RGB_SPD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______ +) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case LOWER: + if (record->event.pressed) { + layer_on(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; + case RAISE: + if (record->event.pressed) { + layer_on(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; + case ADJUST: + if (record->event.pressed) { + layer_on(_ADJUST); + } else { + layer_off(_ADJUST); + } + return false; + break; + default: + break; + } + + return true; +} diff --git a/keyboards/fingerpunch/rockon/v3/keymaps/sadekbaroudi/config.h b/keyboards/fingerpunch/rockon/v3/keymaps/sadekbaroudi/config.h new file mode 100644 index 000000000000..88f6e06237fc --- /dev/null +++ b/keyboards/fingerpunch/rockon/v3/keymaps/sadekbaroudi/config.h @@ -0,0 +1,2 @@ +// #define FP_LAYER_LIGHTING_HUE_0 HSV_YELLOW +// #define FP_LAYER_LIGHTING_HUE_4 HSV_BLUE diff --git a/keyboards/fingerpunch/rockon/v3/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/rockon/v3/keymaps/sadekbaroudi/keymap.c new file mode 100644 index 000000000000..2da0c901d019 --- /dev/null +++ b/keyboards/fingerpunch/rockon/v3/keymaps/sadekbaroudi/keymap.c @@ -0,0 +1,120 @@ +/* Copyright 2021 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "sadekbaroudi.h" +#include QMK_KEYBOARD_H + +// Uncomment to set up WPM +//char wpm_as_str[8]; + +/* + * The `LAYOUT_rockon_bp_base` macro is a template to allow the use of identical + * modifiers for the default layouts (eg ALPHA_ALT, Alpha, Dvorak, etc), so + * that there is no need to set them up for each layout, and modify all of + * them if I want to change them. This helps to keep consistency and ease + * of use. K## is a placeholder to pass through the individual keycodes + */ + +// clang-format off +#define LAYOUT_rockon_bp_base( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \ + K33, K34, K35, K36, K37, K38 \ + ) \ + LAYOUT_wrapper( \ + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, _______, TO(_GAME), KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \ + KC_TAB, K01, K02, K03, LT(_FUNCTION, K04), K05, FP_SCROLL_TOG, TO(_NAVIGATION), K06, LT(_FUNCTION, K07), K08, K09, K0A, KC_BSLS, \ + KC_CAPS, LCTL_T(K11), LGUI_T(K12), LALT_T(K13), LSFT_T(K14), K15, KC_MS_BTN1, TO(_ALPHA), LT(_MOUSE, K16), RSFT_T(K17), RALT_T(K18), RGUI_T(K19), RCTL_T(K1A), KC_QUOT, \ + KC_LSFT, K21, K22, K23, K24, K25, FP_SNIPE_TOG, FP_SUPER_TAB, K26, K27, K28, K29, K2A, KC_ENT, \ + KC_MUTE, KC_LCTL, KC_LGUI, K33, LT(_NAVIGATION,K34), LT(_FUNCTION,K35), KC_MS_BTN3, KC_MS_BTN1, KC_MS_BTN2, LT(_MEDIA,K36), LT(_SYMBOLS,K37), K38, KC_RGUI, KC_RCTL, KC_MUTE, \ + KC_MUTE \ + ) + +/* Re-pass though to allow templates to be used */ +#define LAYOUT_rockon_bp_base_wrapper(...) LAYOUT_rockon_bp_base(__VA_ARGS__) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_ALPHA_ALT] = LAYOUT_rockon_bp_base_wrapper( + _________________ALPHA_ALT_L1_________________, _________________ALPHA_ALT_R1_________________, + _________________ALPHA_ALT_L2_________________, _________________ALPHA_ALT_R2_________________, + _________________ALPHA_ALT_L3_________________, _________________ALPHA_ALT_R3_________________, + __ALPHA_ALT_THUMBS_6__ + ), + + [_ALPHA] = LAYOUT_rockon_bp_base_wrapper( + __________________ALPHA_L1____________________, __________________ALPHA_R1____________________, + __________________ALPHA_L2____________________, __________________ALPHA_R2____________________, + __________________ALPHA_L3____________________, __________________ALPHA_R3____________________, + __ALPHA_THUMBS_6__ + ), + + [_NAVIGATION] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _______, TO(_ALPHA), _______, _______, _______, _______, _______, _______, + _______, ________________NAVIGATION_1_______________, _______, TO(_SYMBOLS), _________________NUMPAD_1__________________, _______, + _______, ________________NAVIGATION_2_______________, _______, _______, _________________NUMPAD_2__________________, _______, + _______, ________________NAVIGATION_3_______________, _______, _______, _________________NUMPAD_3__________________, _______, + _______, _______, _______, _______, _______, KC_TAB, _______, _______, _______, KC_BSPC, KC_SPACE, KC_DOT, _______, _______, _______, + _______ + ), + + [_SYMBOLS] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _______, TO(_NAVIGATION), _______, _______, _______, _______, _______, _______, + _______, ________________SYMBOLS_L1_________________, _______, TO(_FUNCTION), ________________SYMBOLS_R1_________________, _______, + _______, ________________SYMBOLS_L2_________________, _______, _______, ________________SYMBOLS_R2_________________, _______, + _______, ________________SYMBOLS_L3_________________, _______, _______, ________________SYMBOLS_R3_________________, _______, + _______, _______, _______, _______, KC_ENT, KC_DEL, _______, _______, _______, KC_BSPC, _______, _______, _______, _______, _______, + _______ + ), + + [_FUNCTION] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _______, TO(_SYMBOLS), _______, _______, _______, _______, _______, _______, + _______, ________________SHIFTNAV_1_________________, KC_MS_WH_UP, TO(_MEDIA), ________________FUNCTION_1_________________, _______, + _______, ________________SHIFTNAV_2_________________, KC_MS_WH_DOWN, _______, ________________FUNCTION_2_________________, _______, + _______, ________________SHIFTNAV_3_________________, _______, _______, ________________FUNCTION_3_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, N_DEL_LINE, KC_SPACE, _______, _______, _______, _______, + _______ + ), + + [_MEDIA] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _______, TO(_FUNCTION), _______, _______, _______, _______, _______, _______, + _______, ___________________RGB_1___________________, _______, TO(_GAME), _________________MACROS_1__________________, _______, + _______, ___________________RGB_2___________________, _______, _______, _________________MACROS_2__________________, _______, + _______, ___________________RGB_3___________________, _______, _______, _________________MACROS_3__________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______ + ), + + [_MOUSE] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _______, KC_NO, _______, _______, _______, _______, _______, _______, + _______, _______________AUTO_MOUSE_1________________, _______, KC_NO, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_2________________, _______, _______, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_3________________, _______, _______, ___________________BLANK___________________, _______, + _______, _______, _______, _______, KC_MS_BTN1, KC_MS_BTN3, _______, _______, _______, KC_MS_BTN3, KC_MS_BTN2, _______, _______, _______, _______, + _______ + ), + + [_GAME] = LAYOUT_wrapper( + __GAMES_R0_L__, ___________________GAMES_0_________________, __GAMES_R0_R__, TO(_MEDIA), _______, _______, _______, _______, _______, _______, + __GAMES_R1_L__, ___________________GAMES_1_________________, __GAMES_R1_R__, TO(_ALPHA), ___________________BLANK___________________, _______, + __GAMES_R2_L__, ___________________GAMES_2_________________, __GAMES_R2_R__, _______, ___________________BLANK___________________, _______, + __GAMES_R3_L__, ___________________GAMES_3_________________, __GAMES_R3_R__, _______, ___________________BLANK___________________, _______, + _______, __GAMES_R4_1__, __GAMES_R4_3__, __GAMES_TH_L__, __GAMES_TH_C__, __GAMES_TH_R__, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______ + ) +}; + diff --git a/keyboards/fingerpunch/rockon/v3/matrix_74hc595_spi.c b/keyboards/fingerpunch/rockon/v3/matrix_74hc595_spi.c new file mode 100644 index 000000000000..ac743545c3e9 --- /dev/null +++ b/keyboards/fingerpunch/rockon/v3/matrix_74hc595_spi.c @@ -0,0 +1,150 @@ +// Copyright 2022 @sadekbaroudi (Sadek Baroudi) +// SPDX-License-Identifier: GPL-3.0-or-later +#include "quantum.h" +#include "spi_master.h" +#include /* memset */ +#include /* close */ +#include "quantum.h" +#include "matrix.h" +// added for testing with SR_DEBUG_RATIO, remove when done +#include +#include +// end testing + +#define SR_DEBUG_RATIO 10000 + +#if (!defined(SHIFTREG_MATRIX_COL_CS)) +# error Missing shift register I/O pin definitions +#endif + +int matrixArraySize = MATRIX_ROWS * sizeof(matrix_row_t); +matrix_row_t oldMatrix[MATRIX_ROWS]; + +#define SHIFTREG_OUTPUT_BITS 8 +pin_t rowPinsSR[MATRIX_ROWS] = MATRIX_ROW_PINS_SR; + +// semaphore to make sure SPI doesn't get called multiple times +static bool shiftRegisterSPILocked = false; + +void semaphore_lock(bool value) { + shiftRegisterSPILocked = value; +} + +bool semaphore_is_locked(void) { + return shiftRegisterSPILocked; +} + +void sr_74hc595_spi_stop(void) { + spi_stop(); + semaphore_lock(false); +} + +bool sr_74hc595_spi_start(void) { + if (!spi_start(SHIFTREG_MATRIX_COL_CS, false, 0, SHIFTREG_DIVISOR)) { + xprintf("74hc595 matrix: failed to start spi\n"); + sr_74hc595_spi_stop(); + return false; + } + + semaphore_lock(true); + wait_us(1); // not sure if I need this + return true; +} + +bool sr_74hc595_spi_send_byte(uint8_t data) { + sr_74hc595_spi_start(); + writePinLow(SHIFTREG_MATRIX_COL_CS); + matrix_io_delay(); + // spi_status_t spiResponse = spi_write(data); + spi_write(data); + // Status is irrelevant as we don't have a MISO pin to check if it succeeded + // if (spiResponse != SPI_STATUS_SUCCESS) { + // xprintf("74hc595 matrix: failed to send data over SPI: response %d\n", spiResponse); + // writePinHigh(SHIFTREG_MATRIX_COL_CS); + // sr_74hc595_spi_stop(); + // return false; + // } + matrix_io_delay(); + writePinHigh(SHIFTREG_MATRIX_COL_CS); + sr_74hc595_spi_stop(); + return true; +} + +/** + * Set the entire shift register to be full of inactive bits + */ +void clearColumns(void) { + uint8_t value = 0b00000000; + sr_74hc595_spi_send_byte(value); +} + +void setColumn(int columnShift, bool test_run) { + uint8_t columnShiftByte = ((uint8_t)1 << columnShift); + if(test_run) { + xprintf("byte sent: %d\n", columnShiftByte); + } + sr_74hc595_spi_send_byte(columnShiftByte); +} + +/* + * override of the qmk intialization function + */ +void matrix_init_custom(void) { + wait_ms(300); + spi_init(); + // Set up the initial states for all the row pins + for (int r = 0; r < MATRIX_ROWS; r++) { + // Note: This needs to use the internal pull down resistors, and atmegas do *not* support that + setPinInputLow(rowPinsSR[r]); + } + + // Set the CS to low by default, and specify as an output pin + writePinHigh(SHIFTREG_MATRIX_COL_CS); // should be high when using SPI? + setPinOutput(SHIFTREG_MATRIX_COL_CS); + + // Since it's the init, deactivate all the columns. We'll activate once we get to the matrix scan + clearColumns(); +} + +bool matrix_scan_custom(matrix_row_t current_matrix[]) { + // respect the semaphore + if (semaphore_is_locked()) { + return false; + } + + // Keep track of if something was modified + bool matrix_has_changed = false; + + // reset the current matrix, as we'll be updating and comparing to the old matrix + memset(current_matrix, 0, matrixArraySize); + + bool debug_output = ((rand() % SR_DEBUG_RATIO) == 1); + // Loop through the columns, activating one at a time, and read the rows, and place in the new current_matrix + for (int c = 0; c < MATRIX_COLS; c++) { + if (debug_output) { + xprintf("column iteration: %d\n", c); + } + setColumn(c, debug_output); + matrix_io_delay(); + + for (int r = 0; r < MATRIX_ROWS; r++) { + current_matrix[r] |= ((readPin(rowPinsSR[r]) ? 1 : 0) << c); + } + } + + matrix_has_changed = memcmp(current_matrix, oldMatrix, matrixArraySize) != 0; + memcpy(oldMatrix, current_matrix, matrixArraySize); + + if (matrix_has_changed) { + matrix_print(); + } + // matrix_print(); + // xprintf("matrix_has_changed: %d\n", matrix_has_changed); + + // Deactivate all the columns for the next run. + clearColumns(); + matrix_io_delay(); + + return matrix_has_changed; +} + diff --git a/keyboards/fingerpunch/rockon/v3/mcuconf.h b/keyboards/fingerpunch/rockon/v3/mcuconf.h new file mode 100644 index 000000000000..b83dc6104256 --- /dev/null +++ b/keyboards/fingerpunch/rockon/v3/mcuconf.h @@ -0,0 +1,46 @@ +/* Copyright 2020 QMK + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confupdate -i keyboards/tkw/grandiceps/mcuconf.h -r platforms/chibios/BLACKPILL_STM32_F411/configs/mcuconf.h` + */ + +#pragma once + +#include_next "mcuconf.h" + +#undef STM32_SPI_USE_SPI0 +#define STM32_SPI_USE_SPI0 TRUE + +// Added because of this error at compile time +/* +Compiling: keyboards/fingerpunch/ffkb_byomcu/v3/matrix_74hc595_spi.c In file included from ./lib/chibios/os/hal/include/hal_spi_v2.h:146:0, + from ./lib/chibios/os/hal/include/hal_spi.h:31, + from ./lib/chibios/os/hal/include/hal.h:315, + from platforms/chibios/platform_deps.h:18, + from quantum/quantum.h:18, + from keyboards/fingerpunch/ffkb_byomcu/v3/matrix_74hc595_spi.c:3: +./lib/chibios/os/hal/ports/STM32/LLD/SPIv1/hal_spi_v2_lld.h:282:2: error: #error "SPI driver activated but no SPI peripheral assigned" + #error "SPI driver activated but no SPI peripheral assigned" + ^~~~~ + [ERRORS] +*/ +#undef STM32_SPI_USE_SPI1 +#define STM32_SPI_USE_SPI1 TRUE + +#undef STM32_ST_USE_TIMER +#define STM32_ST_USE_TIMER 5 diff --git a/keyboards/fingerpunch/rockon/v3/readme.md b/keyboards/fingerpunch/rockon/v3/readme.md new file mode 100644 index 000000000000..c29a4df1be22 --- /dev/null +++ b/keyboards/fingerpunch/rockon/v3/readme.md @@ -0,0 +1,28 @@ +# rockon + +An ergonomic 70% keyboard + +* Keyboard Maintainer: [sadekbaroudi](https://github.com/sadekbaroudi) + +To build the firmware for this keyboard (after setting up your build environment), select from one of the following, depending on what features you have on your board: +``` + make fingerpunch/rockon/v3:default RGBLIGHT_ENABLE=yes ENCODER_ENABLE=yes CIRQUE_ENABLE=yes +``` + +Don't forget to add ```CONVERT_TO=stemcell``` if using a stemcell controller. + +Options are: +``` + CIRQUE_ENABLE=yes + FP_TRACKBALL_ENABLE=yes + RGBLIGHT_ENABLE=yes + RGB_MATRIX_ENABLE=yes + ENCODER_ENABLE=yes +``` + +Example of flashing this keyboard: +``` + make fingerpunch/rockon/v3:default:flash RGBLIGHT_ENABLE=yes ENCODER_ENABLE=yes CIRQUE_ENABLE=yes +``` + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/fingerpunch/rockon/v3/rules.mk b/keyboards/fingerpunch/rockon/v3/rules.mk new file mode 100644 index 000000000000..e0f87b63fe13 --- /dev/null +++ b/keyboards/fingerpunch/rockon/v3/rules.mk @@ -0,0 +1,59 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +# Teensy halfkay +# Pro Micro caterina +# Atmel DFU atmel-dfu +# LUFA DFU lufa-dfu +# QMK DFU qmk-dfu +# ATmega32A bootloadHID +# ATmega328P USBasp +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE = no # USB Nkey Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +MOUSEKEY_ENABLE = yes + +# Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = no +RGB_MATRIX_DRIVER = WS2812 + +MIDI_ENABLE = no # MIDI support +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +AUDIO_ENABLE = no # Audio output on port C6 +FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches +ENCODER_ENABLE = no +# EXTRAFLAGS += -flto # macros disabled, if you need the extra space +MOUSEKEY_ENABLE = no + +SRC += matrix_74hc595_spi.c +QUANTUM_LIB_SRC += spi_master.c +CUSTOM_MATRIX = lite + +ifeq ($(strip $(CIRQUE_ENABLE)), yes) + MOUSEKEY_ENABLE := yes # not required, but enabling for mouse button keys + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := cirque_pinnacle_i2c + OPT_DEFS += -DCIRQUE_ENABLE +endif + +ifeq ($(strip $(FP_TRACKBALL_ENABLE)), yes) + MOUSEKEY_ENABLE := yes # not required, but enabling for mouse button keys + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := pmw3360 + QUANTUM_LIB_SRC += spi_master.c + OPT_DEFS += -DFP_TRACKBALL_ENABLE +endif diff --git a/keyboards/fingerpunch/rockon/v3/v3.h b/keyboards/fingerpunch/rockon/v3/v3.h new file mode 100644 index 000000000000..953a9f155ba3 --- /dev/null +++ b/keyboards/fingerpunch/rockon/v3/v3.h @@ -0,0 +1,62 @@ +/* Copyright 2021 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#pragma once + +#include "quantum.h" + +/* This a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ + +#define ___ KC_NO + +#define LAYOUT_rockon( \ + K50, K00, K01, K02, K03, K04, K62, K65, K05, K06, K07, K80, K53, K86, \ + K60, K10, K11, K12, K13, K14, K72, K75, K15, K16, K17, K81, K55, K87, \ + K70, K20, K21, K22, K23, K24, K63, K66, K25, K26, K27, K82, K56, K67, \ + K71, K30, K31, K32, K33, K34, K51, K52, K35, K36, K37, K83, K57, K77, \ + K76, K40, K41, K42, K43, K44, K61, K54, K64, K45, K46, K47, K84, K85, K73, \ + K74 \ +) \ +{ \ + { K07, K02, K04, K05, K06, K03, K01, K00 }, \ + { K17, K12, K14, K15, K16, K13, K11, K10 }, \ + { K27, K22, K24, K25, K26, K23, K21, K20 }, \ + { K37, K32, K34, K35, K36, K33, K31, K30 }, \ + { K47, K42, K44, K45, K46, K43, K41, K40 }, \ + { K57, K52, K54, K55, K56, K53, K51, K50 }, \ + { K67, K62, K64, K65, K66, K63, K61, K60 }, \ + { K77, K72, K74, K75, K76, K73, K71, K70 }, \ + { K87, K82, K84, K85, K86, K83, K81, K80 } \ +} +/* +{ \ + { K00, K01, K02, K03, K04, K05, K06, K07 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37 }, \ + { K40, K41, K42, K43, K44, K45, K46, K47 }, \ + { K50, K51, K52, K53, K54, K55, K56, K57 }, \ + { K60, K61, K62, K63, K64, K65, K66, K67 }, \ + { K70, K71, K72, K73, K74, K75, K76, K77 }, \ + { K80, K81, K82, K83, K84, K85, K86, K87 } \ +} +*/ diff --git a/users/sadekbaroudi/config.h b/users/sadekbaroudi/config.h index beaa349e5021..138b3a61dcf6 100755 --- a/users/sadekbaroudi/config.h +++ b/users/sadekbaroudi/config.h @@ -24,13 +24,13 @@ #endif #define AUTO_MOUSE_DEFAULT_LAYER 6 -#define POINTING_DEVICE_AUTO_MOUSE_ENABLE +// #define POINTING_DEVICE_AUTO_MOUSE_ENABLE // Define only one of the two below, but not both. // Read here for details: https://github.com/sadekbaroudi/qmk_firmware/tree/master/keyboards/fingerpunch#layer-lighting #define FP_LAYER_LIGHTING_ENABLE -//#define FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE +// #define FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE #define FP_POINTING_SNIPING_LAYER_ENABLE #define FP_POINTING_SCROLLING_LAYER_ENABLE diff --git a/users/sadekbaroudi/process_records.h b/users/sadekbaroudi/process_records.h index 7d617acce53f..a1e2a8c1699d 100755 --- a/users/sadekbaroudi/process_records.h +++ b/users/sadekbaroudi/process_records.h @@ -16,6 +16,7 @@ || defined(KEYBOARD_fingerpunch_pinkiesout) \ || defined(KEYBOARD_fingerpunch_rockon_v1) \ || defined(KEYBOARD_fingerpunch_rockon_v2) \ + || defined(KEYBOARD_fingerpunch_rockon_v3) \ || defined(KEYBOARD_fingerpunch_rockon_bp) \ || defined(KEYBOARD_fingerpunch_sweeeeep) \ || defined(KEYBOARD_fingerpunch_ximi) diff --git a/users/sadekbaroudi/sadekbaroudi.h b/users/sadekbaroudi/sadekbaroudi.h index e3a63aee3f31..1a5f895549e2 100755 --- a/users/sadekbaroudi/sadekbaroudi.h +++ b/users/sadekbaroudi/sadekbaroudi.h @@ -41,8 +41,8 @@ enum userspace_layers { _FUNCTION, _MEDIA, _MOUSE, - _KICAD, - _GAME + _GAME, + _KICAD }; void press_super_alt_tab(bool shift); From 13643c3f83ec0c7cadd3c091553a7f91bd9f5b4f Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Thu, 6 Oct 2022 00:16:16 -0700 Subject: [PATCH 08/51] added support for rgb matrix as well for everything that's currently supported in rgblight --- keyboards/fingerpunch/README.md | 6 +- keyboards/fingerpunch/arachnophobe/rules.mk | 1 + keyboards/fingerpunch/barobord/rules.mk | 1 + .../fingerpunch/barobord_byomcu/rules.mk | 1 + keyboards/fingerpunch/bgkeeb/rules.mk | 1 + keyboards/fingerpunch/bigbarobord/rules.mk | 1 + keyboards/fingerpunch/ffkb/rules.mk | 1 + .../fingerpunch/ffkb_byomcu/ffkb_byomcu.c | 45 ----- keyboards/fingerpunch/ffkb_byomcu/rules.mk | 1 + keyboards/fingerpunch/ffkb_byomcu/v1/v1.c | 60 ++++++ keyboards/fingerpunch/ffkb_byomcu/v2/v2.c | 60 ++++++ keyboards/fingerpunch/ffkb_byomcu/v3/v3.c | 38 ++++ keyboards/fingerpunch/fp.c | 3 + keyboards/fingerpunch/fp.h | 3 + keyboards/fingerpunch/fp_rgb_common.c | 171 ++++++++++++++++++ keyboards/fingerpunch/fp_rgb_common.h | 22 +++ keyboards/fingerpunch/fp_rgb_matrix.c | 23 +++ keyboards/fingerpunch/fp_rgb_matrix.h | 6 + keyboards/fingerpunch/fp_rgblight.c | 122 +------------ keyboards/fingerpunch/fp_rgblight.h | 6 + keyboards/fingerpunch/luakeeb/rules.mk | 1 + keyboards/fingerpunch/pinkiesout/rules.mk | 1 + keyboards/fingerpunch/rockon/rockon.c | 35 +--- keyboards/fingerpunch/rockon/rules.mk | 1 + keyboards/fingerpunch/rockon/v1/v1.c | 52 ++++++ keyboards/fingerpunch/rockon/v2/v2.c | 52 ++++++ keyboards/fingerpunch/rockon/v3/v3.c | 55 ++++++ keyboards/fingerpunch/rockon_bp/rules.mk | 1 + keyboards/fingerpunch/sweeeeep/rules.mk | 1 + keyboards/fingerpunch/ximi/rules.mk | 2 + 30 files changed, 572 insertions(+), 201 deletions(-) create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v1/v1.c create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v2/v2.c create mode 100644 keyboards/fingerpunch/ffkb_byomcu/v3/v3.c create mode 100644 keyboards/fingerpunch/fp_rgb_common.c create mode 100644 keyboards/fingerpunch/fp_rgb_common.h create mode 100644 keyboards/fingerpunch/rockon/v1/v1.c create mode 100644 keyboards/fingerpunch/rockon/v2/v2.c create mode 100644 keyboards/fingerpunch/rockon/v3/v3.c diff --git a/keyboards/fingerpunch/README.md b/keyboards/fingerpunch/README.md index 034dbf2d7832..488d8e57a9e6 100644 --- a/keyboards/fingerpunch/README.md +++ b/keyboards/fingerpunch/README.md @@ -115,6 +115,10 @@ void pointing_device_init_user(void) { ## RGB Lighting +Note that unless otherwise specified, features for rgb are supported on both rgblight ( https://github.com/qmk/qmk_firmware/blob/master/docs/feature_rgblight.md ) and rgb matrix ( https://github.com/qmk/qmk_firmware/blob/master/docs/feature_rgb_matrix.md ). + +Some config parameters will depend on which you're using, like `FP_LAYER_LIGHTING_MODE`. + ### Layer lighting If using this feature (`FP_LAYER_LIGHTING_ENABLE`), please note that the `FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE` will be automatically disabled. Given that this feature will handle the auto mouse layer as well, you don't need to activate the layer lighting twice. Just set the mouse layer lighting to the color you prefer using the `FP_LAYER_LIGHTING_HUE_X` below. @@ -122,7 +126,7 @@ If using this feature (`FP_LAYER_LIGHTING_ENABLE`), please note that the `FP_LAY | Setting | Description | Default | | --------------------------------------- | ------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | | `FP_LAYER_LIGHTING_ENABLE` | (Optional) Define this to enable layer lighting | `undefined` | -| `FP_LAYER_LIGHTING_MODE` | (Required) Set the layer lighting default mode | `RGBLIGHT_MODE_STATIC_LIGHT` | +| `FP_LAYER_LIGHTING_MODE` | (Required) Set the layer lighting default mode | `RGBLIGHT_MODE_STATIC_LIGHT` or `RGB_MATRIX_SOLID_COLOR` | | `FP_LAYER_LIGHTING_HUE_0` | (Required) Set the layer lighting hue for layer 0 | `HSV_BLUE` | | `FP_LAYER_LIGHTING_HUE_1` | (Required) Set the layer lighting hue for layer 1 | `HSV_WHITE` | | `FP_LAYER_LIGHTING_HUE_2` | (Required) Set the layer lighting hue for layer 2 | `HSV_GREEN` | diff --git a/keyboards/fingerpunch/arachnophobe/rules.mk b/keyboards/fingerpunch/arachnophobe/rules.mk index 99dcdaf885ec..aefd3a70d0bf 100644 --- a/keyboards/fingerpunch/arachnophobe/rules.mk +++ b/keyboards/fingerpunch/arachnophobe/rules.mk @@ -34,5 +34,6 @@ SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgb_common.c \ keyboards/fingerpunch/fp_rgblight.c \ keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/barobord/rules.mk b/keyboards/fingerpunch/barobord/rules.mk index 3e1b3d807a9c..29a90d5dfaff 100644 --- a/keyboards/fingerpunch/barobord/rules.mk +++ b/keyboards/fingerpunch/barobord/rules.mk @@ -52,5 +52,6 @@ SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgb_common.c \ keyboards/fingerpunch/fp_rgblight.c \ keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/barobord_byomcu/rules.mk b/keyboards/fingerpunch/barobord_byomcu/rules.mk index b0afee954a02..eaccd4576a15 100644 --- a/keyboards/fingerpunch/barobord_byomcu/rules.mk +++ b/keyboards/fingerpunch/barobord_byomcu/rules.mk @@ -59,5 +59,6 @@ SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgb_common.c \ keyboards/fingerpunch/fp_rgblight.c \ keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/bgkeeb/rules.mk b/keyboards/fingerpunch/bgkeeb/rules.mk index ba24f50069b7..5cae15777305 100644 --- a/keyboards/fingerpunch/bgkeeb/rules.mk +++ b/keyboards/fingerpunch/bgkeeb/rules.mk @@ -29,5 +29,6 @@ SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgb_common.c \ keyboards/fingerpunch/fp_rgblight.c \ keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/bigbarobord/rules.mk b/keyboards/fingerpunch/bigbarobord/rules.mk index 392fcfc250bb..ca0749ef395e 100644 --- a/keyboards/fingerpunch/bigbarobord/rules.mk +++ b/keyboards/fingerpunch/bigbarobord/rules.mk @@ -52,5 +52,6 @@ SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgb_common.c \ keyboards/fingerpunch/fp_rgblight.c \ keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/ffkb/rules.mk b/keyboards/fingerpunch/ffkb/rules.mk index 84ea85c761e6..7edc4d9beb69 100644 --- a/keyboards/fingerpunch/ffkb/rules.mk +++ b/keyboards/fingerpunch/ffkb/rules.mk @@ -67,5 +67,6 @@ SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgb_common.c \ keyboards/fingerpunch/fp_rgblight.c \ keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.c b/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.c index 4a8fc7d7f09c..dd3986164c10 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.c +++ b/keyboards/fingerpunch/ffkb_byomcu/ffkb_byomcu.c @@ -14,48 +14,3 @@ * along with this program. If not, see . */ #include "ffkb_byomcu.h" -#ifdef RGB_MATRIX_ENABLE - -// 6 column config -led_config_t g_led_config = { { - {2, 3, 8, 9, 14, 15, 26, 27}, - {1, 4, 7, 10, 13, 16, 25, 28}, - {0, 5, 6, 11, 12, 17, 24, 29}, - {NO_LED, NO_LED, 31, 35, 33, 37, 36, 39}, - {NO_LED, NO_LED, 30, 32, 34, 38, 41, 40}, - {NO_LED, NO_LED, 23, 18, 19, 20, 21, 22} -}, { - {0,32},{3,19},{7,5},{25,4},{21,18},{17,31},{35,26},{39,12},{43,0},{60,0},{56,12},{52,26}, - {66,33},{70,20},{74,6},{89,12},{85,25},{81,38},{61,50},{77,55},{93,63},{129,63},{145,55},{161,50}, - {141,38},{137,25},{133,12},{148,6},{152,20},{156,33},{170,26},{166,12},{162,0},{179,0},{183,12},{187,26}, - {205,31},{201,18},{197,4},{215,5},{219,19},{223,32} -}, { - 1, 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 1, 1, 1 -} }; - -// 5 column config -/* -led_config_t g_led_config = { { - {NO_LED, 0, 5, 6, 11, 12, 23, 24}, - {NO_LED, 1, 4, 7, 10, 13, 22, 25}, - {NO_LED, 2, 3, 8, 9, 14, 21, 26}, - {NO_LED, NO_LED, 28, 32, 30, 34, 33, NO_LED}, - {NO_LED, NO_LED, 27, 29, 31, 35, NO_LED, NO_LED}, - {NO_LED, NO_LED, 20, 15, 16, 17, 18, 19} -}, { - {25,4},{21,18},{17,31},{35,26},{39,12},{43,0},{60,0},{56,12},{52,26}, - {66,33},{70,20},{74,6},{89,12},{85,25},{81,38},{61,50},{77,55},{93,63},{129,63},{145,55},{161,50}, - {141,38},{137,25},{133,12},{148,6},{152,20},{156,33},{170,26},{166,12},{162,0},{179,0},{183,12},{187,26}, - {205,31},{201,18},{197,4} -}, { - 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 1, 1, 1, - 1, 1, 1, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4 -} }; -*/ - -#endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rules.mk index 9afc914efe61..253c2a80ba02 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/rules.mk +++ b/keyboards/fingerpunch/ffkb_byomcu/rules.mk @@ -2,5 +2,6 @@ SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgb_common.c \ keyboards/fingerpunch/fp_rgblight.c \ keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/ffkb_byomcu/v1/v1.c b/keyboards/fingerpunch/ffkb_byomcu/v1/v1.c new file mode 100644 index 000000000000..1813ae7c6cfe --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v1/v1.c @@ -0,0 +1,60 @@ +/* Copyright 2021 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include "v1.h" + +#ifdef RGB_MATRIX_ENABLE +// 6 column config +led_config_t g_led_config = { { + {2, 3, 8, 9, 14, 15, 26, 27}, + {1, 4, 7, 10, 13, 16, 25, 28}, + {0, 5, 6, 11, 12, 17, 24, 29}, + {NO_LED, NO_LED, 31, 35, 33, 37, 36, 39}, + {NO_LED, NO_LED, 30, 32, 34, 38, 41, 40}, + {NO_LED, NO_LED, 23, 18, 19, 20, 21, 22} +}, { + {0,32},{3,19},{7,5},{25,4},{21,18},{17,31},{35,26},{39,12},{43,0},{60,0},{56,12},{52,26}, + {66,33},{70,20},{74,6},{89,12},{85,25},{81,38},{61,50},{77,55},{93,63},{129,63},{145,55},{161,50}, + {141,38},{137,25},{133,12},{148,6},{152,20},{156,33},{170,26},{166,12},{162,0},{179,0},{183,12},{187,26}, + {205,31},{201,18},{197,4},{215,5},{219,19},{223,32} +}, { + 1, 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 1, 1, 1 +} }; + +// 5 column config +/* +led_config_t g_led_config = { { + {NO_LED, 0, 5, 6, 11, 12, 23, 24}, + {NO_LED, 1, 4, 7, 10, 13, 22, 25}, + {NO_LED, 2, 3, 8, 9, 14, 21, 26}, + {NO_LED, NO_LED, 28, 32, 30, 34, 33, NO_LED}, + {NO_LED, NO_LED, 27, 29, 31, 35, NO_LED, NO_LED}, + {NO_LED, NO_LED, 20, 15, 16, 17, 18, 19} +}, { + {25,4},{21,18},{17,31},{35,26},{39,12},{43,0},{60,0},{56,12},{52,26}, + {66,33},{70,20},{74,6},{89,12},{85,25},{81,38},{61,50},{77,55},{93,63},{129,63},{145,55},{161,50}, + {141,38},{137,25},{133,12},{148,6},{152,20},{156,33},{170,26},{166,12},{162,0},{179,0},{183,12},{187,26}, + {205,31},{201,18},{197,4} +}, { + 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 1, 1, 1, + 1, 1, 1, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4 +} }; +*/ +#endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/v2.c b/keyboards/fingerpunch/ffkb_byomcu/v2/v2.c new file mode 100644 index 000000000000..132ca5e61ec2 --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/v2.c @@ -0,0 +1,60 @@ +/* Copyright 2021 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include "v2.h" + +#ifdef RGB_MATRIX_ENABLE +// 6 column config +led_config_t g_led_config = { { + {2, 3, 8, 9, 14, 15, 26, 27}, + {1, 4, 7, 10, 13, 16, 25, 28}, + {0, 5, 6, 11, 12, 17, 24, 29}, + {NO_LED, NO_LED, 31, 35, 33, 37, 36, 39}, + {NO_LED, NO_LED, 30, 32, 34, 38, 41, 40}, + {NO_LED, NO_LED, 23, 18, 19, 20, 21, 22} +}, { + {0,32},{3,19},{7,5},{25,4},{21,18},{17,31},{35,26},{39,12},{43,0},{60,0},{56,12},{52,26}, + {66,33},{70,20},{74,6},{89,12},{85,25},{81,38},{61,50},{77,55},{93,63},{129,63},{145,55},{161,50}, + {141,38},{137,25},{133,12},{148,6},{152,20},{156,33},{170,26},{166,12},{162,0},{179,0},{183,12},{187,26}, + {205,31},{201,18},{197,4},{215,5},{219,19},{223,32} +}, { + 1, 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 1, 1, 1 +} }; + +// 5 column config +/* +led_config_t g_led_config = { { + {NO_LED, 0, 5, 6, 11, 12, 23, 24}, + {NO_LED, 1, 4, 7, 10, 13, 22, 25}, + {NO_LED, 2, 3, 8, 9, 14, 21, 26}, + {NO_LED, NO_LED, 28, 32, 30, 34, 33, NO_LED}, + {NO_LED, NO_LED, 27, 29, 31, 35, NO_LED, NO_LED}, + {NO_LED, NO_LED, 20, 15, 16, 17, 18, 19} +}, { + {25,4},{21,18},{17,31},{35,26},{39,12},{43,0},{60,0},{56,12},{52,26}, + {66,33},{70,20},{74,6},{89,12},{85,25},{81,38},{61,50},{77,55},{93,63},{129,63},{145,55},{161,50}, + {141,38},{137,25},{133,12},{148,6},{152,20},{156,33},{170,26},{166,12},{162,0},{179,0},{183,12},{187,26}, + {205,31},{201,18},{197,4} +}, { + 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 1, 1, 1, + 1, 1, 1, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4 +} }; +*/ +#endif diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/v3.c b/keyboards/fingerpunch/ffkb_byomcu/v3/v3.c new file mode 100644 index 000000000000..b6347646b53c --- /dev/null +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/v3.c @@ -0,0 +1,38 @@ +/* Copyright 2021 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include "v3.h" + +#ifdef RGB_MATRIX_ENABLE +led_config_t g_led_config = { { + { 3, 9, 15, 10, 16, 27, 28, 4 }, + { 2, 8, 14, 11, 17, 26, 29, 5 }, + { 1, 7, 13, 12, 18, 25, 30, 6 }, + { NO_LED, 32, 34, 36, 38, 37, 40, NO_LED }, + { NO_LED, 31, 35, 33, 39, 42, 41, NO_LED }, + { NO_LED, 24, 20, 19, 21, 22, 23, NO_LED } +}, { + {0,32},{3,19},{7,5},{25,4},{21,18},{17,31},{35,26},{39,12},{43,0},{60,0},{56,12},{52,26}, + {66,33},{70,20},{74,6},{89,12},{85,25},{81,38},{61,50},{77,55},{93,63},{129,63},{145,55},{161,50}, + {141,38},{137,25},{133,12},{148,6},{152,20},{156,33},{170,26},{166,12},{162,0},{179,0},{183,12},{187,26}, + {205,31},{201,18},{197,4},{215,5},{219,19},{223,32} +}, { + 1, 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 1, 1, 1 +} }; + +#endif diff --git a/keyboards/fingerpunch/fp.c b/keyboards/fingerpunch/fp.c index 245b094eafc2..bddad4f7194e 100644 --- a/keyboards/fingerpunch/fp.c +++ b/keyboards/fingerpunch/fp.c @@ -100,6 +100,9 @@ void keyboard_post_init_kb(void) { } layer_state_t layer_state_set_kb(layer_state_t state) { +#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) + state = fp_layer_state_set_rgb(state); +#endif #ifdef RGBLIGHT_ENABLE state = fp_layer_state_set_rgblight(state); #endif // RGBLIGHT_ENABLE diff --git a/keyboards/fingerpunch/fp.h b/keyboards/fingerpunch/fp.h index 65e885ed410e..4f41e104c036 100644 --- a/keyboards/fingerpunch/fp.h +++ b/keyboards/fingerpunch/fp.h @@ -28,6 +28,9 @@ void press_super_tab(bool shift); // #include "keyboards/fingerpunch/fp.h" #include "keyboards/fingerpunch/fp_keyhandler.h" +#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) +# include "keyboards/fingerpunch/fp_rgb_common.h" +#endif #ifdef RGBLIGHT_ENABLE # include "keyboards/fingerpunch/fp_rgblight.h" #endif diff --git a/keyboards/fingerpunch/fp_rgb_common.c b/keyboards/fingerpunch/fp_rgb_common.c new file mode 100644 index 000000000000..7320102359c7 --- /dev/null +++ b/keyboards/fingerpunch/fp_rgb_common.c @@ -0,0 +1,171 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + + +#include "keyboards/fingerpunch/fp_rgb_common.h" + +// We must make sure that fp_rgb_matrix.h or fp_rgblight.h are included before this, since it depends on FP_LAYER_LIGHTING_MODE +#ifdef RGBLIGHT_ENABLE +#include "keyboards/fingerpunch/fp_rgblight.h" +#endif + +#ifdef RGB_MATRIX_ENABLE +#include "keyboards/fingerpunch/fp_rgb_matrix.h" +#endif + +#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) +# ifndef FP_LAYER_LIGHTING_HUE_0 +# define FP_LAYER_LIGHTING_HUE_0 HSV_BLUE +# endif // FP_LAYER_LIGHTING_HUE_0 + +# ifndef FP_LAYER_LIGHTING_HUE_1 +# define FP_LAYER_LIGHTING_HUE_1 HSV_WHITE +# endif // FP_LAYER_LIGHTING_HUE_1 + +# ifndef FP_LAYER_LIGHTING_HUE_2 +# define FP_LAYER_LIGHTING_HUE_2 HSV_GREEN +# endif // FP_LAYER_LIGHTING_HUE_2 + +# ifndef FP_LAYER_LIGHTING_HUE_3 +# define FP_LAYER_LIGHTING_HUE_3 HSV_PURPLE +# endif // FP_LAYER_LIGHTING_HUE_3 + +# ifndef FP_LAYER_LIGHTING_HUE_4 +# define FP_LAYER_LIGHTING_HUE_4 HSV_YELLOW +# endif // FP_LAYER_LIGHTING_HUE_4 + +# ifndef FP_LAYER_LIGHTING_HUE_5 +# define FP_LAYER_LIGHTING_HUE_5 HSV_MAGENTA +# endif // FP_LAYER_LIGHTING_HUE_5 + +# ifndef FP_LAYER_LIGHTING_HUE_6 +# define FP_LAYER_LIGHTING_HUE_6 HSV_CYAN +# endif // FP_LAYER_LIGHTING_HUE_6 + +# ifndef FP_LAYER_LIGHTING_HUE_7 +# define FP_LAYER_LIGHTING_HUE_7 HSV_SPRINGGREEN +# endif // FP_LAYER_LIGHTING_HUE_7 + +# ifndef FP_LAYER_LIGHTING_MODE_0 +# define FP_LAYER_LIGHTING_MODE_0 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_0 + +# ifndef FP_LAYER_LIGHTING_MODE_1 +# define FP_LAYER_LIGHTING_MODE_1 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_1 + +# ifndef FP_LAYER_LIGHTING_MODE_2 +# define FP_LAYER_LIGHTING_MODE_2 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_2 + +# ifndef FP_LAYER_LIGHTING_MODE_3 +# define FP_LAYER_LIGHTING_MODE_3 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_3 + +# ifndef FP_LAYER_LIGHTING_MODE_4 +# define FP_LAYER_LIGHTING_MODE_4 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_4 + +# ifndef FP_LAYER_LIGHTING_MODE_5 +# define FP_LAYER_LIGHTING_MODE_5 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_5 + +# ifndef FP_LAYER_LIGHTING_MODE_6 +# define FP_LAYER_LIGHTING_MODE_6 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_6 + +# ifndef FP_LAYER_LIGHTING_MODE_7 +# define FP_LAYER_LIGHTING_MODE_7 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_7 + +# ifndef FP_LAYER_LIGHTING_AUTO_MOUSE_HUE +# define FP_LAYER_LIGHTING_AUTO_MOUSE_HUE HSV_ORANGE +# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE + +# ifndef FP_LAYER_LIGHTING_AUTO_MOUSE_MODE +# define FP_LAYER_LIGHTING_AUTO_MOUSE_MODE FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE + +# ifndef FP_LAYER_LIGHTING_CAPS_LOCK_HUE +# define FP_LAYER_LIGHTING_CAPS_LOCK_HUE HSV_RED +# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE + +# ifndef FP_LAYER_LIGHTING_CAPS_LOCK_MODE +# define FP_LAYER_LIGHTING_CAPS_LOCK_MODE FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE + +layer_state_t fp_layer_state_set_rgb(layer_state_t state) { + switch (get_highest_layer(state)) { + // TODO: This logic is clearly flawed, decide what to do with this +# if defined(FP_LAYER_LIGHTING_ENABLE) && defined(AUTO_MOUSE_DEFAULT_LAYER) && !defined(FP_LAYER_LIGHTING_ENABLE) + case AUTO_MOUSE_DEFAULT_LAYER: + fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_AUTO_MOUSE_HUE, FP_LAYER_LIGHTING_AUTO_MOUSE_MODE); + break; +# endif + case 0: +# ifdef FP_LAYER_LIGHTING_ENABLE + if (fp_caps_lock_get()) { + fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_CAPS_LOCK_HUE, FP_LAYER_LIGHTING_CAPS_LOCK_MODE); + } else { + fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_0, FP_LAYER_LIGHTING_MODE_0); + } +# endif + break; + case 1: +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_1, FP_LAYER_LIGHTING_MODE_1); +# endif + break; + case 2: +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_2, FP_LAYER_LIGHTING_MODE_2); +# endif + break; + case 3: +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_3, FP_LAYER_LIGHTING_MODE_3); +# endif + break; + case 4: +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_4, FP_LAYER_LIGHTING_MODE_4); +# endif + break; + case 5: +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_5, FP_LAYER_LIGHTING_MODE_5); +# endif + break; + case 6: +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_6, FP_LAYER_LIGHTING_MODE_6); +# endif + break; + case 7: +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_7, FP_LAYER_LIGHTING_MODE_7); +# endif + break; + default: + // default to layer 0 behavior +# ifdef FP_LAYER_LIGHTING_ENABLE + fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_0, FP_LAYER_LIGHTING_MODE_0); +# endif + break; + } + return state; +} +#endif diff --git a/keyboards/fingerpunch/fp_rgb_common.h b/keyboards/fingerpunch/fp_rgb_common.h new file mode 100644 index 000000000000..d855dd859898 --- /dev/null +++ b/keyboards/fingerpunch/fp_rgb_common.h @@ -0,0 +1,22 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once +#include QMK_KEYBOARD_H +#include "keyboards/fingerpunch/fp.h" + +layer_state_t fp_layer_state_set_rgb(layer_state_t state); +void fp_rgb_set_hsv_and_mode(uint8_t hue, uint8_t sat, uint8_t val, uint8_t mode); diff --git a/keyboards/fingerpunch/fp_rgb_matrix.c b/keyboards/fingerpunch/fp_rgb_matrix.c index 0018c8d60b9b..a5f0d08dfed0 100644 --- a/keyboards/fingerpunch/fp_rgb_matrix.c +++ b/keyboards/fingerpunch/fp_rgb_matrix.c @@ -17,9 +17,32 @@ #include "keyboards/fingerpunch/fp_rgb_matrix.h" #ifdef RGB_MATRIX_ENABLE + +void fp_rgb_set_hsv_and_mode(uint8_t hue, uint8_t sat, uint8_t val, uint8_t mode) { + rgb_matrix_sethsv_noeeprom(hue, sat, val); + rgb_matrix_mode_noeeprom(mode); +} + layer_state_t fp_layer_state_set_rgb_matrix(layer_state_t state) { switch (get_highest_layer(state)) { + case 0: + break; + case 1: + break; + case 2: + break; + case 3: + break; + case 4: + break; + case 5: + break; + case 6: + break; + case 7: + break; default: + // default to layer 0 behavior break; } return state; diff --git a/keyboards/fingerpunch/fp_rgb_matrix.h b/keyboards/fingerpunch/fp_rgb_matrix.h index c7791a25a325..e1d289a1cc81 100644 --- a/keyboards/fingerpunch/fp_rgb_matrix.h +++ b/keyboards/fingerpunch/fp_rgb_matrix.h @@ -18,5 +18,11 @@ #include QMK_KEYBOARD_H #include "keyboards/fingerpunch/fp.h" +#ifdef RGB_MATRIX_ENABLE +# ifndef FP_LAYER_LIGHTING_MODE +# define FP_LAYER_LIGHTING_MODE RGB_MATRIX_SOLID_COLOR +# endif +#endif + layer_state_t fp_layer_state_set_rgb_matrix(layer_state_t state); bool fp_process_record_rgb_matrix(uint16_t keycode, keyrecord_t *record); diff --git a/keyboards/fingerpunch/fp_rgblight.c b/keyboards/fingerpunch/fp_rgblight.c index 0be65254b4a4..f711ad8a060c 100644 --- a/keyboards/fingerpunch/fp_rgblight.c +++ b/keyboards/fingerpunch/fp_rgblight.c @@ -18,152 +18,32 @@ #include "keyboards/fingerpunch/fp_rgblight.h" #ifdef RGBLIGHT_ENABLE -# ifndef FP_LAYER_LIGHTING_MODE -# define FP_LAYER_LIGHTING_MODE RGBLIGHT_MODE_STATIC_LIGHT -# endif -# ifndef FP_LAYER_LIGHTING_HUE_0 -# define FP_LAYER_LIGHTING_HUE_0 HSV_BLUE -# endif // FP_LAYER_LIGHTING_HUE_0 - -# ifndef FP_LAYER_LIGHTING_HUE_1 -# define FP_LAYER_LIGHTING_HUE_1 HSV_WHITE -# endif // FP_LAYER_LIGHTING_HUE_1 - -# ifndef FP_LAYER_LIGHTING_HUE_2 -# define FP_LAYER_LIGHTING_HUE_2 HSV_GREEN -# endif // FP_LAYER_LIGHTING_HUE_2 - -# ifndef FP_LAYER_LIGHTING_HUE_3 -# define FP_LAYER_LIGHTING_HUE_3 HSV_PURPLE -# endif // FP_LAYER_LIGHTING_HUE_3 - -# ifndef FP_LAYER_LIGHTING_HUE_4 -# define FP_LAYER_LIGHTING_HUE_4 HSV_YELLOW -# endif // FP_LAYER_LIGHTING_HUE_4 - -# ifndef FP_LAYER_LIGHTING_HUE_5 -# define FP_LAYER_LIGHTING_HUE_5 HSV_MAGENTA -# endif // FP_LAYER_LIGHTING_HUE_5 - -# ifndef FP_LAYER_LIGHTING_HUE_6 -# define FP_LAYER_LIGHTING_HUE_6 HSV_CYAN -# endif // FP_LAYER_LIGHTING_HUE_6 - -# ifndef FP_LAYER_LIGHTING_HUE_7 -# define FP_LAYER_LIGHTING_HUE_7 HSV_SPRINGGREEN -# endif // FP_LAYER_LIGHTING_HUE_7 - -# ifndef FP_LAYER_LIGHTING_MODE_0 -# define FP_LAYER_LIGHTING_MODE_0 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_0 - -# ifndef FP_LAYER_LIGHTING_MODE_1 -# define FP_LAYER_LIGHTING_MODE_1 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_1 - -# ifndef FP_LAYER_LIGHTING_MODE_2 -# define FP_LAYER_LIGHTING_MODE_2 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_2 - -# ifndef FP_LAYER_LIGHTING_MODE_3 -# define FP_LAYER_LIGHTING_MODE_3 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_3 - -# ifndef FP_LAYER_LIGHTING_MODE_4 -# define FP_LAYER_LIGHTING_MODE_4 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_4 - -# ifndef FP_LAYER_LIGHTING_MODE_5 -# define FP_LAYER_LIGHTING_MODE_5 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_5 - -# ifndef FP_LAYER_LIGHTING_MODE_6 -# define FP_LAYER_LIGHTING_MODE_6 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_6 - -# ifndef FP_LAYER_LIGHTING_MODE_7 -# define FP_LAYER_LIGHTING_MODE_7 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_7 - -# ifndef FP_LAYER_LIGHTING_AUTO_MOUSE_HUE -# define FP_LAYER_LIGHTING_AUTO_MOUSE_HUE HSV_ORANGE -# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE - -# ifndef FP_LAYER_LIGHTING_AUTO_MOUSE_MODE -# define FP_LAYER_LIGHTING_AUTO_MOUSE_MODE FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE - -# ifndef FP_LAYER_LIGHTING_CAPS_LOCK_HUE -# define FP_LAYER_LIGHTING_CAPS_LOCK_HUE HSV_RED -# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE - -# ifndef FP_LAYER_LIGHTING_CAPS_LOCK_MODE -# define FP_LAYER_LIGHTING_CAPS_LOCK_MODE FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE - -void fp_rgblight_set_hsv_and_mode(uint8_t hue, uint8_t sat, uint8_t val, uint8_t mode) { +void fp_rgb_set_hsv_and_mode(uint8_t hue, uint8_t sat, uint8_t val, uint8_t mode) { rgblight_sethsv_noeeprom(hue, sat, val); rgblight_mode_noeeprom(mode); } layer_state_t fp_layer_state_set_rgblight(layer_state_t state) { switch (get_highest_layer(state)) { - // TODO: This logic is clearly flawed, decide what to do with this -# if defined(FP_LAYER_LIGHTING_ENABLE) && defined(AUTO_MOUSE_DEFAULT_LAYER) && !defined(FP_LAYER_LIGHTING_ENABLE) - case AUTO_MOUSE_DEFAULT_LAYER: - fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_AUTO_MOUSE_HUE, FP_LAYER_LIGHTING_AUTO_MOUSE_MODE); - break; -# endif case 0: -# ifdef FP_LAYER_LIGHTING_ENABLE - if (fp_caps_lock_get()) { - fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_CAPS_LOCK_HUE, FP_LAYER_LIGHTING_CAPS_LOCK_MODE); - } else { - fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_0, FP_LAYER_LIGHTING_MODE_0); - } -# endif break; case 1: -# ifdef FP_LAYER_LIGHTING_ENABLE - fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_1, FP_LAYER_LIGHTING_MODE_1); -# endif break; case 2: -# ifdef FP_LAYER_LIGHTING_ENABLE - fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_2, FP_LAYER_LIGHTING_MODE_2); -# endif break; case 3: -# ifdef FP_LAYER_LIGHTING_ENABLE - fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_3, FP_LAYER_LIGHTING_MODE_3); -# endif break; case 4: -# ifdef FP_LAYER_LIGHTING_ENABLE - fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_4, FP_LAYER_LIGHTING_MODE_4); -# endif break; case 5: -# ifdef FP_LAYER_LIGHTING_ENABLE - fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_5, FP_LAYER_LIGHTING_MODE_5); -# endif break; case 6: -# ifdef FP_LAYER_LIGHTING_ENABLE - fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_6, FP_LAYER_LIGHTING_MODE_6); -# endif break; case 7: -# ifdef FP_LAYER_LIGHTING_ENABLE - fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_7, FP_LAYER_LIGHTING_MODE_7); -# endif break; default: // default to layer 0 behavior -# ifdef FP_LAYER_LIGHTING_ENABLE - fp_rgblight_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_0, FP_LAYER_LIGHTING_MODE_0); -# endif break; } return state; diff --git a/keyboards/fingerpunch/fp_rgblight.h b/keyboards/fingerpunch/fp_rgblight.h index 109fb117a9c3..d0c4e7152325 100644 --- a/keyboards/fingerpunch/fp_rgblight.h +++ b/keyboards/fingerpunch/fp_rgblight.h @@ -18,5 +18,11 @@ #include QMK_KEYBOARD_H #include "keyboards/fingerpunch/fp.h" +#ifdef RGBLIGHT_ENABLE +# ifndef FP_LAYER_LIGHTING_MODE +# define FP_LAYER_LIGHTING_MODE RGBLIGHT_MODE_STATIC_LIGHT +# endif +#endif + layer_state_t fp_layer_state_set_rgblight(layer_state_t state); bool fp_process_record_rgblight(uint16_t keycode, keyrecord_t *record); diff --git a/keyboards/fingerpunch/luakeeb/rules.mk b/keyboards/fingerpunch/luakeeb/rules.mk index 42ccb8d8256a..021870b4edf4 100644 --- a/keyboards/fingerpunch/luakeeb/rules.mk +++ b/keyboards/fingerpunch/luakeeb/rules.mk @@ -29,5 +29,6 @@ SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgb_common.c \ keyboards/fingerpunch/fp_rgblight.c \ keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/pinkiesout/rules.mk b/keyboards/fingerpunch/pinkiesout/rules.mk index c3310b5ab482..a49bc62d8352 100644 --- a/keyboards/fingerpunch/pinkiesout/rules.mk +++ b/keyboards/fingerpunch/pinkiesout/rules.mk @@ -52,5 +52,6 @@ SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgb_common.c \ keyboards/fingerpunch/fp_rgblight.c \ keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/rockon/rockon.c b/keyboards/fingerpunch/rockon/rockon.c index 27200bb45f6e..92af913b1c1f 100644 --- a/keyboards/fingerpunch/rockon/rockon.c +++ b/keyboards/fingerpunch/rockon/rockon.c @@ -14,37 +14,4 @@ * along with this program. If not, see . */ #include "rockon.h" -#ifdef RGB_MATRIX_ENABLE -led_config_t g_led_config = { { - { 1, 2, 3, 4, 5, 60, 61, 62, 63 }, - { 12, 11, 10, 9, 8, 57, 56, 55, 54 }, - { 15, 16, 17, 18, 19, 46, 47, 48, 49 }, - { 26, 25, 24, 23, 22, 43, 42, 41, 40 }, - { 28, 29, 30, 31, 32, 33, 34, 35, 36 }, - { 0, 21, 44, 64, NO_LED, 53, 50, 39, 37 }, - { 13, NO_LED, 6, 20, NO_LED, 59, 45, 51, 65 }, - { 14, 27, 7, NO_LED, NO_LED, 58, NO_LED, 38, 52 } -}, { - {7,1}, {21,1}, {36,2}, {51,1}, {65,5}, {79,10}, {93,14}, - {90,21}, {76,20}, {62,16}, {48,12}, {33,12}, {19,12}, {4,10}, - {2,20}, {16,22}, {31,23}, {46,23}, {60,27}, {74,31}, {88,35}, - {87,50}, {71,42}, {57,38}, {43,33}, {28,34}, {14,33}, {0,31}, - {25,46}, {40,48}, {56,51}, {70,56}, {84,63}, - {138,63}, {152,56}, {166,51}, {182,48}, {197,46}, {223,31}, {209,33}, - {200,34}, {179,33}, {165,38}, {151,42}, {135,50}, {134,35}, {148,31}, - {162,27}, {176,23}, {191,23}, {206,22}, {220,20}, {218,9}, {203,12}, - {189,12}, {174,12}, {160,16}, {146,20}, {132,24}, {129,14}, {143,10}, - {157,5}, {171,1}, {186,2}, {201,1}, {215,0} -}, { - 1, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 1, - 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, - 1, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 1, - 1, 4, 4, 4, 4, 4, 1 -} }; -#endif + diff --git a/keyboards/fingerpunch/rockon/rules.mk b/keyboards/fingerpunch/rockon/rules.mk index 9afc914efe61..253c2a80ba02 100644 --- a/keyboards/fingerpunch/rockon/rules.mk +++ b/keyboards/fingerpunch/rockon/rules.mk @@ -2,5 +2,6 @@ SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgb_common.c \ keyboards/fingerpunch/fp_rgblight.c \ keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/rockon/v1/v1.c b/keyboards/fingerpunch/rockon/v1/v1.c new file mode 100644 index 000000000000..33fd0488dc10 --- /dev/null +++ b/keyboards/fingerpunch/rockon/v1/v1.c @@ -0,0 +1,52 @@ +/* Copyright 2021 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "v1.h" + +#ifdef RGB_MATRIX_ENABLE +led_config_t g_led_config = { { + { 1, 2, 3, 4, 5, 60, 61, 62, 63 }, + { 12, 11, 10, 9, 8, 57, 56, 55, 54 }, + { 15, 16, 17, 18, 19, 46, 47, 48, 49 }, + { 26, 25, 24, 23, 22, 43, 42, 41, 40 }, + { 28, 29, 30, 31, 32, 33, 34, 35, 36 }, + { 0, 21, 44, 64, NO_LED, 53, 50, 39, 37 }, + { 13, NO_LED, 6, 20, NO_LED, 59, 45, 51, 65 }, + { 14, 27, 7, NO_LED, NO_LED, 58, NO_LED, 38, 52 } +}, { + {7,1}, {21,1}, {36,2}, {51,1}, {65,5}, {79,10}, {93,14}, + {90,21}, {76,20}, {62,16}, {48,12}, {33,12}, {19,12}, {4,10}, + {2,20}, {16,22}, {31,23}, {46,23}, {60,27}, {74,31}, {88,35}, + {87,50}, {71,42}, {57,38}, {43,33}, {28,34}, {14,33}, {0,31}, + {25,46}, {40,48}, {56,51}, {70,56}, {84,63}, + {138,63}, {152,56}, {166,51}, {182,48}, {197,46}, {223,31}, {209,33}, + {200,34}, {179,33}, {165,38}, {151,42}, {135,50}, {134,35}, {148,31}, + {162,27}, {176,23}, {191,23}, {206,22}, {220,20}, {218,9}, {203,12}, + {189,12}, {174,12}, {160,16}, {146,20}, {132,24}, {129,14}, {143,10}, + {157,5}, {171,1}, {186,2}, {201,1}, {215,0} +}, { + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1 +} }; +#endif diff --git a/keyboards/fingerpunch/rockon/v2/v2.c b/keyboards/fingerpunch/rockon/v2/v2.c new file mode 100644 index 000000000000..5c9aa441a9b4 --- /dev/null +++ b/keyboards/fingerpunch/rockon/v2/v2.c @@ -0,0 +1,52 @@ +/* Copyright 2021 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "v2.h" + +#ifdef RGB_MATRIX_ENABLE +led_config_t g_led_config = { { + { 1, 2, 3, 4, 5, 60, 61, 62, 63 }, + { 12, 11, 10, 9, 8, 57, 56, 55, 54 }, + { 15, 16, 17, 18, 19, 46, 47, 48, 49 }, + { 26, 25, 24, 23, 22, 43, 42, 41, 40 }, + { 28, 29, 30, 31, 32, 33, 34, 35, 36 }, + { 0, 21, 44, 64, NO_LED, 53, 50, 39, 37 }, + { 13, NO_LED, 6, 20, NO_LED, 59, 45, 51, 65 }, + { 14, 27, 7, NO_LED, NO_LED, 58, NO_LED, 38, 52 } +}, { + {7,1}, {21,1}, {36,2}, {51,1}, {65,5}, {79,10}, {93,14}, + {90,21}, {76,20}, {62,16}, {48,12}, {33,12}, {19,12}, {4,10}, + {2,20}, {16,22}, {31,23}, {46,23}, {60,27}, {74,31}, {88,35}, + {87,50}, {71,42}, {57,38}, {43,33}, {28,34}, {14,33}, {0,31}, + {25,46}, {40,48}, {56,51}, {70,56}, {84,63}, + {138,63}, {152,56}, {166,51}, {182,48}, {197,46}, {223,31}, {209,33}, + {200,34}, {179,33}, {165,38}, {151,42}, {135,50}, {134,35}, {148,31}, + {162,27}, {176,23}, {191,23}, {206,22}, {220,20}, {218,9}, {203,12}, + {189,12}, {174,12}, {160,16}, {146,20}, {132,24}, {129,14}, {143,10}, + {157,5}, {171,1}, {186,2}, {201,1}, {215,0} +}, { + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1 +} }; +#endif diff --git a/keyboards/fingerpunch/rockon/v3/v3.c b/keyboards/fingerpunch/rockon/v3/v3.c new file mode 100644 index 000000000000..42daf6c2c89b --- /dev/null +++ b/keyboards/fingerpunch/rockon/v3/v3.c @@ -0,0 +1,55 @@ +/* Copyright 2021 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "v3.h" + +#ifdef RGB_MATRIX_ENABLE +led_config_t g_led_config = { { + { 66, 4, 6, 64, 65, 5, 3, 2 }, + { 59, 11, 9, 61, 60, 10, 12, 13 }, + { 52, 18, 20, 50, 51, 19, 17, 16 }, + { 45, 25, 23, 47, 46, 24, 26, 27 }, + { 39, 31, 33, 37, 38, 32, 30, 29 }, + { 43, 48, 35, 57, 54, 68, 22, 1 }, + { 55, 7, 36, 63, 49, 21, 34, 14 }, + { 42, 8, NO_LED, 62, NO_LED, NO_LED, 28, 15 }, + { 56, 53, 40, 41, 69, 44, 58, 67 } +}, { + {7,1}, {21,1}, {36,2}, {51,1}, {65,5}, {79,10}, {93,14}, + {90,21}, {76,20}, {62,16}, {48,12}, {33,12}, {19,12}, {4,10}, + {2,20}, {16,22}, {31,23}, {46,23}, {60,27}, {74,31}, {88,35}, + {87,50}, {71,42}, {57,38}, {43,33}, {28,34}, {14,33}, {0,31}, + {25,46}, {40,48}, {56,51}, {70,56}, {84,63}, + {99,64}, {112,64}, {125,64}, + {138,63}, {152,56}, {166,51}, {182,48}, {197,46}, {223,31}, {209,33}, + {200,34}, {179,33}, {165,38}, {151,42}, {135,50}, {134,35}, {148,31}, + {162,27}, {176,23}, {191,23}, {206,22}, {220,20}, {218,9}, {203,12}, + {189,12}, {174,12}, {160,16}, {146,20}, {132,24}, {129,14}, {143,10}, + {157,5}, {171,1}, {186,2}, {201,1}, {215,0} +}, { + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 1, 1, 1, 1, + 1, 1, 1, + 1, 1, 1, 1, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 1 +} }; +#endif diff --git a/keyboards/fingerpunch/rockon_bp/rules.mk b/keyboards/fingerpunch/rockon_bp/rules.mk index e70ee5d0bebd..cfc85e9e1dc8 100644 --- a/keyboards/fingerpunch/rockon_bp/rules.mk +++ b/keyboards/fingerpunch/rockon_bp/rules.mk @@ -63,5 +63,6 @@ SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgb_common.c \ keyboards/fingerpunch/fp_rgblight.c \ keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/sweeeeep/rules.mk b/keyboards/fingerpunch/sweeeeep/rules.mk index dd27e0f1129d..52b0a5baf155 100644 --- a/keyboards/fingerpunch/sweeeeep/rules.mk +++ b/keyboards/fingerpunch/sweeeeep/rules.mk @@ -33,5 +33,6 @@ SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgb_common.c \ keyboards/fingerpunch/fp_rgblight.c \ keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/keyboards/fingerpunch/ximi/rules.mk b/keyboards/fingerpunch/ximi/rules.mk index 5fdfc51feb5b..33a92d730cc0 100644 --- a/keyboards/fingerpunch/ximi/rules.mk +++ b/keyboards/fingerpunch/ximi/rules.mk @@ -102,9 +102,11 @@ SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgb_common.c \ keyboards/fingerpunch/fp_rgblight.c \ keyboards/fingerpunch/fp_rgb_matrix.c + SRC += matrix_74hc595_spi.c QUANTUM_LIB_SRC += spi_master.c CUSTOM_MATRIX = lite From 253ae53ee55be23b84bd96be832f710a7afc5efe Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Thu, 6 Oct 2022 15:24:37 -0700 Subject: [PATCH 09/51] added dynamic base layer support for rgblight and rgb matrix, along with updates to rock on v3 and ffkb v3 for rgb matrix config --- keyboards/fingerpunch/FP_LIBRARY_SUPPORT.md | 1 + keyboards/fingerpunch/README.md | 71 ++++--- keyboards/fingerpunch/arachnophobe/rules.mk | 1 + keyboards/fingerpunch/barobord/config.h | 4 +- keyboards/fingerpunch/barobord/rules.mk | 1 + .../fingerpunch/barobord_byomcu/config.h | 4 +- .../fingerpunch/barobord_byomcu/rules.mk | 1 + keyboards/fingerpunch/bgkeeb/config.h | 29 +-- keyboards/fingerpunch/bgkeeb/rules.mk | 1 + keyboards/fingerpunch/bigbarobord/config.h | 4 +- keyboards/fingerpunch/bigbarobord/rules.mk | 1 + keyboards/fingerpunch/ffkb/rules.mk | 1 + keyboards/fingerpunch/ffkb_byomcu/config.h | 4 +- keyboards/fingerpunch/ffkb_byomcu/rules.mk | 1 + keyboards/fingerpunch/fp.c | 36 ++++ keyboards/fingerpunch/fp.h | 7 +- keyboards/fingerpunch/fp_keyhandler.c | 7 +- keyboards/fingerpunch/fp_pointing.h | 34 ++++ keyboards/fingerpunch/fp_rgb_common.c | 189 ++++++++++-------- keyboards/fingerpunch/fp_rgb_common.h | 86 ++++++++ keyboards/fingerpunch/fp_rgb_matrix.c | 4 + keyboards/fingerpunch/fp_rgb_matrix.h | 1 + keyboards/fingerpunch/fp_rgblight.c | 5 + keyboards/fingerpunch/fp_rgblight.h | 1 + keyboards/fingerpunch/luakeeb/config.h | 2 +- keyboards/fingerpunch/luakeeb/rules.mk | 1 + keyboards/fingerpunch/pinkiesout/config.h | 4 +- keyboards/fingerpunch/pinkiesout/rules.mk | 1 + keyboards/fingerpunch/rockon/config.h | 5 +- keyboards/fingerpunch/rockon/rules.mk | 1 + keyboards/fingerpunch/rockon_bp/rules.mk | 1 + keyboards/fingerpunch/sweeeeep/rules.mk | 1 + keyboards/fingerpunch/ximi/config.h | 12 +- keyboards/fingerpunch/ximi/rules.mk | 1 + quantum/process_keycode/process_rgb.c | 10 - users/sadekbaroudi/config.h | 1 + users/sadekbaroudi/rules.mk | 2 +- 37 files changed, 373 insertions(+), 163 deletions(-) diff --git a/keyboards/fingerpunch/FP_LIBRARY_SUPPORT.md b/keyboards/fingerpunch/FP_LIBRARY_SUPPORT.md index 18c556b2f713..b0336a677031 100644 --- a/keyboards/fingerpunch/FP_LIBRARY_SUPPORT.md +++ b/keyboards/fingerpunch/FP_LIBRARY_SUPPORT.md @@ -15,6 +15,7 @@ That said, if you are looking to leverage the features, you may be able to follo Note that below is an example. You should check for the latest version of this code block as found in `keyboards/fingerpunch/ffkb_byomcu/rules.mk` ```make +DEFERRED_EXEC_ENABLE = yes SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ diff --git a/keyboards/fingerpunch/README.md b/keyboards/fingerpunch/README.md index 488d8e57a9e6..56470c21faf7 100644 --- a/keyboards/fingerpunch/README.md +++ b/keyboards/fingerpunch/README.md @@ -1,10 +1,9 @@ # fingerpunch keyboards - ## Operating system -| Setting | Description | Default | -| --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | -------------------------------- | -| `FP_MAC_PREFERRED` | (Optional) If you are primarily using a Mac, enable to use Mac specific keycode logic for fingerpunch features | `undefined` | +| Setting | Description | Default | +| --------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -------------------------------- | +| `FP_MAC_PREFERRED` | (Optional) If you are primarily using a Mac, enable to use Mac specific logic for fingerpunch features (mostly for keycodes) | `undefined` | ## Keycodes and settings @@ -46,6 +45,7 @@ Note: if you are using a userspace, and you have custom keycodes, you will need || defined(KEYBOARD_fingerpunch_pinkiesout) \ || defined(KEYBOARD_fingerpunch_rockon_v1) \ || defined(KEYBOARD_fingerpunch_rockon_v2) \ + || defined(KEYBOARD_fingerpunch_rockon_v3) \ || defined(KEYBOARD_fingerpunch_rockon_bp) \ || defined(KEYBOARD_fingerpunch_sweeeeep) \ || defined(KEYBOARD_fingerpunch_ximi) @@ -115,7 +115,9 @@ void pointing_device_init_user(void) { ## RGB Lighting -Note that unless otherwise specified, features for rgb are supported on both rgblight ( https://github.com/qmk/qmk_firmware/blob/master/docs/feature_rgblight.md ) and rgb matrix ( https://github.com/qmk/qmk_firmware/blob/master/docs/feature_rgb_matrix.md ). +Notes: +* unless otherwise specified, features for rgb are supported on both rgblight ( https://github.com/qmk/qmk_firmware/blob/master/docs/feature_rgblight.md ) and rgb matrix ( https://github.com/qmk/qmk_firmware/blob/master/docs/feature_rgb_matrix.md ). +* the base layer is still configurable using the QMK rgb keycodes ( https://github.com/qmk/qmk_firmware/blob/master/docs/feature_rgblight.md#keycodes ), but you will need to enable the `FP_LAYER_LIGHTING_DYNAMIC_BASE_LAYER` Some config parameters will depend on which you're using, like `FP_LAYER_LIGHTING_MODE`. @@ -123,31 +125,33 @@ Some config parameters will depend on which you're using, like `FP_LAYER_LIGHTIN If using this feature (`FP_LAYER_LIGHTING_ENABLE`), please note that the `FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE` will be automatically disabled. Given that this feature will handle the auto mouse layer as well, you don't need to activate the layer lighting twice. Just set the mouse layer lighting to the color you prefer using the `FP_LAYER_LIGHTING_HUE_X` below. -| Setting | Description | Default | -| --------------------------------------- | ------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | -| `FP_LAYER_LIGHTING_ENABLE` | (Optional) Define this to enable layer lighting | `undefined` | -| `FP_LAYER_LIGHTING_MODE` | (Required) Set the layer lighting default mode | `RGBLIGHT_MODE_STATIC_LIGHT` or `RGB_MATRIX_SOLID_COLOR` | -| `FP_LAYER_LIGHTING_HUE_0` | (Required) Set the layer lighting hue for layer 0 | `HSV_BLUE` | -| `FP_LAYER_LIGHTING_HUE_1` | (Required) Set the layer lighting hue for layer 1 | `HSV_WHITE` | -| `FP_LAYER_LIGHTING_HUE_2` | (Required) Set the layer lighting hue for layer 2 | `HSV_GREEN` | -| `FP_LAYER_LIGHTING_HUE_3` | (Required) Set the layer lighting hue for layer 3 | `HSV_PURPLE` | -| `FP_LAYER_LIGHTING_HUE_4` | (Required) Set the layer lighting hue for layer 4 | `HSV_YELLOW` | -| `FP_LAYER_LIGHTING_HUE_5` | (Required) Set the layer lighting hue for layer 5 | `HSV_MAGENTA` | -| `FP_LAYER_LIGHTING_HUE_6` | (Required) Set the layer lighting hue for layer 6 | `HSV_CYAN` | -| `FP_LAYER_LIGHTING_HUE_7` | (Required) Set the layer lighting hue for layer 7 | `HSV_SPRINGGREEN` | -| `FP_LAYER_LIGHTING_MODE_0` | (Required) Set the layer lighting mode for layer 0 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_MODE_1` | (Required) Set the layer lighting mode for layer 1 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_MODE_2` | (Required) Set the layer lighting mode for layer 2 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_MODE_3` | (Required) Set the layer lighting mode for layer 3 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_MODE_4` | (Required) Set the layer lighting mode for layer 4 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_MODE_5` | (Required) Set the layer lighting mode for layer 5 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_MODE_6` | (Required) Set the layer lighting mode for layer 6 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_MODE_7` | (Required) Set the layer lighting mode for layer 7 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_CAPS_LOCK_HUE` | (Required) Set the layer lighting hue when caps lock is enabled | `HSV_RED` | -| `FP_LAYER_LIGHTING_CAPS_LOCK_MODE` | (Required) Set the layer lighting mode when caps lock is enabled | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE` | (Optional) If using RGB, set the layer lighting when auto mouse is triggered | `undefined` | -| `FP_LAYER_LIGHTING_AUTO_MOUSE_HUE` | (Required) This is the hue that is used for the auto mouse layer lighting | `HSV_ORANGE` | -| `FP_LAYER_LIGHTING_AUTO_MOUSE_MODE` | (Required) This is the mode that is used for the auto mouse layer lighting | `FP_LAYER_LIGHTING_MODE` | +| Setting | Description | Default | +| --------------------------------------- | --------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | +| `FP_STARTUP_ANIMATION_DISABLE` | (Optional) Define this to disable startup animation | `undefined` | +| `FP_LAYER_LIGHTING_ENABLE` | (Optional) Define this to enable layer lighting | `undefined` | +| `FP_LAYER_LIGHTING_DYNAMIC_BASE_LAYER` | (Optional) While using layer lighting, enable dynamically changing the base layer | `undefined` | +| `FP_LAYER_LIGHTING_MODE` | (Required) Set the layer lighting default mode | `RGBLIGHT_MODE_STATIC_LIGHT` or `RGB_MATRIX_SOLID_COLOR` | +| `FP_LAYER_LIGHTING_HUE_0` | (Required) Set the layer lighting hue for layer 0 | `HSV_BLUE` | +| `FP_LAYER_LIGHTING_HUE_1` | (Required) Set the layer lighting hue for layer 1 | `HSV_WHITE` | +| `FP_LAYER_LIGHTING_HUE_2` | (Required) Set the layer lighting hue for layer 2 | `HSV_GREEN` | +| `FP_LAYER_LIGHTING_HUE_3` | (Required) Set the layer lighting hue for layer 3 | `HSV_PURPLE` | +| `FP_LAYER_LIGHTING_HUE_4` | (Required) Set the layer lighting hue for layer 4 | `HSV_YELLOW` | +| `FP_LAYER_LIGHTING_HUE_5` | (Required) Set the layer lighting hue for layer 5 | `HSV_MAGENTA` | +| `FP_LAYER_LIGHTING_HUE_6` | (Required) Set the layer lighting hue for layer 6 | `HSV_CYAN` | +| `FP_LAYER_LIGHTING_HUE_7` | (Required) Set the layer lighting hue for layer 7 | `HSV_SPRINGGREEN` | +| `FP_LAYER_LIGHTING_MODE_0` | (Required) Set the layer lighting mode for layer 0 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_1` | (Required) Set the layer lighting mode for layer 1 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_2` | (Required) Set the layer lighting mode for layer 2 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_3` | (Required) Set the layer lighting mode for layer 3 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_4` | (Required) Set the layer lighting mode for layer 4 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_5` | (Required) Set the layer lighting mode for layer 5 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_6` | (Required) Set the layer lighting mode for layer 6 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_7` | (Required) Set the layer lighting mode for layer 7 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_CAPS_LOCK_HUE` | (Required) Set the layer lighting hue when caps lock is enabled | `HSV_RED` | +| `FP_LAYER_LIGHTING_CAPS_LOCK_MODE` | (Required) Set the layer lighting mode when caps lock is enabled | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE` | (Optional) If using RGB, set the layer lighting when auto mouse is triggered | `undefined` | +| `FP_LAYER_LIGHTING_AUTO_MOUSE_HUE` | (Required) This is the hue that is used for the auto mouse layer lighting | `HSV_ORANGE` | +| `FP_LAYER_LIGHTING_AUTO_MOUSE_MODE` | (Required) This is the mode that is used for the auto mouse layer lighting | `FP_LAYER_LIGHTING_MODE` | ## Haptic Feedback @@ -165,3 +169,10 @@ Note that the ctrl-X haptic feedback responses will use control as the modifier, ## Keymap If you are looking to use process_record_kb() or process_record + + +## Appreciation + +Thank you: +* Drashna - for the great examples in their userspace implementation. +* Wilbatech - for the example of keyboard agnostic code in QMK. diff --git a/keyboards/fingerpunch/arachnophobe/rules.mk b/keyboards/fingerpunch/arachnophobe/rules.mk index aefd3a70d0bf..bc80a0871246 100644 --- a/keyboards/fingerpunch/arachnophobe/rules.mk +++ b/keyboards/fingerpunch/arachnophobe/rules.mk @@ -30,6 +30,7 @@ OLED_ENABLE = no # this can be yes or no depending on if you have an EXTRAFLAGS += -flto # macros enable or disable MOUSEKEY_ENABLE = yes +DEFERRED_EXEC_ENABLE = yes SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ diff --git a/keyboards/fingerpunch/barobord/config.h b/keyboards/fingerpunch/barobord/config.h index e8e04c033c5c..4d0e09508b67 100644 --- a/keyboards/fingerpunch/barobord/config.h +++ b/keyboards/fingerpunch/barobord/config.h @@ -50,7 +50,7 @@ along with this program. If not, see . #define RGBLIGHT_HUE_STEP 16 #define RGBLIGHT_SAT_STEP 16 #define RGBLIGHT_VAL_STEP 16 - #define RGBLIGHT_LIMIT_VAL 60 /* The maximum brightness level for RGBLIGHT_ENABLE */ + #define RGBLIGHT_LIMIT_VAL 150 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ #define RGBLIGHT_EFFECT_ALTERNATING #define RGBLIGHT_EFFECT_BREATHING @@ -66,7 +66,7 @@ along with this program. If not, see . #ifdef RGB_MATRIX_ENABLE #define DRIVER_LED_TOTAL 40 #define RGB_MATRIX_CENTER {100, 32} - #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 60 /* The maximum brightness level for RGB_MATRIX */ + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 /* The maximum brightness level for RGB_MATRIX */ #define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS // Sets the default brightness value, if none has been set #define RGB_MATRIX_KEYPRESSES #define RGB_MATRIX_FRAMEBUFFER_EFFECTS diff --git a/keyboards/fingerpunch/barobord/rules.mk b/keyboards/fingerpunch/barobord/rules.mk index 29a90d5dfaff..e349f59501e2 100644 --- a/keyboards/fingerpunch/barobord/rules.mk +++ b/keyboards/fingerpunch/barobord/rules.mk @@ -48,6 +48,7 @@ ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE endif +DEFERRED_EXEC_ENABLE = yes SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ diff --git a/keyboards/fingerpunch/barobord_byomcu/config.h b/keyboards/fingerpunch/barobord_byomcu/config.h index c8b72194be00..e73dde16f923 100644 --- a/keyboards/fingerpunch/barobord_byomcu/config.h +++ b/keyboards/fingerpunch/barobord_byomcu/config.h @@ -50,7 +50,7 @@ along with this program. If not, see . #define RGBLIGHT_HUE_STEP 16 #define RGBLIGHT_SAT_STEP 16 #define RGBLIGHT_VAL_STEP 16 - #define RGBLIGHT_LIMIT_VAL 60 /* The maximum brightness level for RGBLIGHT_ENABLE */ + #define RGBLIGHT_LIMIT_VAL 150 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ #define RGBLIGHT_EFFECT_ALTERNATING #define RGBLIGHT_EFFECT_BREATHING @@ -66,7 +66,7 @@ along with this program. If not, see . #ifdef RGB_MATRIX_ENABLE #define DRIVER_LED_TOTAL 40 #define RGB_MATRIX_CENTER {100, 32} - #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 60 /* The maximum brightness level for RGB_MATRIX */ + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 /* The maximum brightness level for RGB_MATRIX */ #define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS // Sets the default brightness value, if none has been set #define RGB_MATRIX_KEYPRESSES #define RGB_MATRIX_FRAMEBUFFER_EFFECTS diff --git a/keyboards/fingerpunch/barobord_byomcu/rules.mk b/keyboards/fingerpunch/barobord_byomcu/rules.mk index eaccd4576a15..78dab5289af9 100644 --- a/keyboards/fingerpunch/barobord_byomcu/rules.mk +++ b/keyboards/fingerpunch/barobord_byomcu/rules.mk @@ -55,6 +55,7 @@ ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE endif +DEFERRED_EXEC_ENABLE = yes SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ diff --git a/keyboards/fingerpunch/bgkeeb/config.h b/keyboards/fingerpunch/bgkeeb/config.h index 975bb153bbc4..4284e851f4bf 100644 --- a/keyboards/fingerpunch/bgkeeb/config.h +++ b/keyboards/fingerpunch/bgkeeb/config.h @@ -54,26 +54,17 @@ along with this program. If not, see . #define RGBLIGHT_HUE_STEP 16 #define RGBLIGHT_SAT_STEP 16 #define RGBLIGHT_VAL_STEP 16 - #define RGBLIGHT_LIMIT_VAL 60 /* The maximum brightness level for RGBLIGHT_ENABLE */ + #define RGBLIGHT_LIMIT_VAL 150 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ -// #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD - #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -// /*== customize breathing effect ==*/ -// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -// /*==== use exp() and sin() ====*/ -// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_TWINKLE #endif #define ENCODERS_PAD_A {B5} diff --git a/keyboards/fingerpunch/bgkeeb/rules.mk b/keyboards/fingerpunch/bgkeeb/rules.mk index 5cae15777305..a87b3c91c5c4 100644 --- a/keyboards/fingerpunch/bgkeeb/rules.mk +++ b/keyboards/fingerpunch/bgkeeb/rules.mk @@ -25,6 +25,7 @@ SPLIT_KEYBOARD = yes LAYOUTS = split_3x5_3 +DEFERRED_EXEC_ENABLE = yes SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ diff --git a/keyboards/fingerpunch/bigbarobord/config.h b/keyboards/fingerpunch/bigbarobord/config.h index 72a176aaaa09..5b88e4b4381d 100644 --- a/keyboards/fingerpunch/bigbarobord/config.h +++ b/keyboards/fingerpunch/bigbarobord/config.h @@ -51,7 +51,7 @@ along with this program. If not, see . #define RGBLIGHT_HUE_STEP 16 #define RGBLIGHT_SAT_STEP 16 #define RGBLIGHT_VAL_STEP 16 - #define RGBLIGHT_LIMIT_VAL 112 /* The maximum brightness level for RGBLIGHT_ENABLE */ + #define RGBLIGHT_LIMIT_VAL 150 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ #define RGBLIGHT_EFFECT_ALTERNATING #define RGBLIGHT_EFFECT_BREATHING @@ -67,7 +67,7 @@ along with this program. If not, see . #ifdef RGB_MATRIX_ENABLE #define DRIVER_LED_TOTAL 52 #define RGB_MATRIX_CENTER {100, 32} - #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 112 /* The maximum brightness level for RGB_MATRIX */ + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 /* The maximum brightness level for RGB_MATRIX */ #define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS // Sets the default brightness value, if none has been set #define RGB_MATRIX_KEYPRESSES #define RGB_MATRIX_FRAMEBUFFER_EFFECTS diff --git a/keyboards/fingerpunch/bigbarobord/rules.mk b/keyboards/fingerpunch/bigbarobord/rules.mk index ca0749ef395e..e7905d121274 100644 --- a/keyboards/fingerpunch/bigbarobord/rules.mk +++ b/keyboards/fingerpunch/bigbarobord/rules.mk @@ -48,6 +48,7 @@ ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE endif +DEFERRED_EXEC_ENABLE = yes SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ diff --git a/keyboards/fingerpunch/ffkb/rules.mk b/keyboards/fingerpunch/ffkb/rules.mk index 7edc4d9beb69..0afc7c11bb5a 100644 --- a/keyboards/fingerpunch/ffkb/rules.mk +++ b/keyboards/fingerpunch/ffkb/rules.mk @@ -63,6 +63,7 @@ ifeq ($(strip $(FP_EVQ_UNDER_PALMS)), yes) OPT_DEFS += -DFP_EVQ_UNDER_PALMS endif +DEFERRED_EXEC_ENABLE = yes SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ diff --git a/keyboards/fingerpunch/ffkb_byomcu/config.h b/keyboards/fingerpunch/ffkb_byomcu/config.h index 390573943efc..fd4f6fc31482 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/config.h +++ b/keyboards/fingerpunch/ffkb_byomcu/config.h @@ -40,7 +40,7 @@ along with this program. If not, see . #define RGBLIGHT_HUE_STEP 16 #define RGBLIGHT_SAT_STEP 16 #define RGBLIGHT_VAL_STEP 16 - #define RGBLIGHT_LIMIT_VAL 112 /* The maximum brightness level for RGBLIGHT_ENABLE */ + #define RGBLIGHT_LIMIT_VAL 150 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ #define RGBLIGHT_EFFECT_ALTERNATING #define RGBLIGHT_EFFECT_BREATHING @@ -56,7 +56,7 @@ along with this program. If not, see . #ifdef RGB_MATRIX_ENABLE #define DRIVER_LED_TOTAL 42 #define RGB_MATRIX_CENTER {100, 32} - #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 112 /* The maximum brightness level for RGB_MATRIX */ + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 /* The maximum brightness level for RGB_MATRIX */ #define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS // Sets the default brightness value, if none has been set #define RGB_MATRIX_KEYPRESSES #define RGB_MATRIX_FRAMEBUFFER_EFFECTS diff --git a/keyboards/fingerpunch/ffkb_byomcu/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/rules.mk index 253c2a80ba02..a55d4b419b85 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/rules.mk +++ b/keyboards/fingerpunch/ffkb_byomcu/rules.mk @@ -1,3 +1,4 @@ +DEFERRED_EXEC_ENABLE = yes SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ diff --git a/keyboards/fingerpunch/fp.c b/keyboards/fingerpunch/fp.c index bddad4f7194e..312f09aa399b 100644 --- a/keyboards/fingerpunch/fp.c +++ b/keyboards/fingerpunch/fp.c @@ -16,6 +16,12 @@ #include "keyboards/fingerpunch/fp.h" +#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) +#include "keyboards/fingerpunch/fp_rgb_common.h" +#endif + +fp_config_t fp_config; + #ifndef FP_SUPER_TAB_TIMEOUT # define FP_SUPER_TAB_TIMEOUT 500 #endif @@ -87,6 +93,11 @@ void matrix_scan_kb(void) { matrix_scan_user(); } +void keyboard_pre_init_kb(void) { + fp_config.raw = eeconfig_read_user(); + keyboard_pre_init_user(); +} + void keyboard_post_init_kb(void) { #if defined(PIMORONI_TRACKBALL_ENABLE) && !defined(RGBLIGHT_ENABLE) pimoroni_trackball_set_rgbw(RGB_BLUE, 0x00); @@ -96,6 +107,18 @@ void keyboard_post_init_kb(void) { fp_pointing_device_set_cpi_combined_defaults(); #endif + #if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) + fp_post_init_rgb_common(); + #endif + + #if defined(RGBLIGHT_ENABLE) + fp_post_init_rgblight(); + #endif + + #if defined(RGB_MATRIX_ENABLE) + fp_post_init_rgb_matrix(); + #endif + keyboard_post_init_user(); } @@ -118,3 +141,16 @@ layer_state_t layer_state_set_kb(layer_state_t state) { return layer_state_set_user(state); } + +void eeconfig_init_kb(void) { + fp_config.raw = 0; + #if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) + fp_config.rgb_mode = FP_LAYER_LIGHTING_MODE_0; + fp_config.rgb_hue = fp_rgb_get_element_from_hsv(FP_LAYER_LIGHTING_HUE_0, 0); + #endif + fp_config.rgb_sat = 255; + fp_config.rgb_val = 255; + fp_config.rgb_speed = 1; + eeconfig_update_kb(fp_config.raw); + eeconfig_init_user(); +} diff --git a/keyboards/fingerpunch/fp.h b/keyboards/fingerpunch/fp.h index 4f41e104c036..48660aa2fd0b 100644 --- a/keyboards/fingerpunch/fp.h +++ b/keyboards/fingerpunch/fp.h @@ -15,6 +15,7 @@ */ #pragma once + #include QMK_KEYBOARD_H #include "eeprom.h" @@ -48,7 +49,11 @@ void press_super_tab(bool shift); typedef union { uint32_t raw; struct { - bool rgb_layer_change :1; + uint8_t rgb_mode; + uint8_t rgb_hue; + uint8_t rgb_sat; + uint8_t rgb_val; + uint8_t rgb_speed; }; } fp_config_t; // clang-format on diff --git a/keyboards/fingerpunch/fp_keyhandler.c b/keyboards/fingerpunch/fp_keyhandler.c index 8764fb8356b5..a8be24c95a64 100644 --- a/keyboards/fingerpunch/fp_keyhandler.c +++ b/keyboards/fingerpunch/fp_keyhandler.c @@ -23,12 +23,15 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { #endif // KEYLOGGER_ENABLE if (!(process_record_user(keycode, record) -#ifdef RGB_MATRIX_ENABLE - && fp_process_record_rgb_matrix(keycode, record) +#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) + && fp_process_record_rgb_common(keycode, record) #endif #ifdef RGBLIGHT_ENABLE && fp_process_record_rgblight(keycode, record) #endif +#ifdef RGB_MATRIX_ENABLE + && fp_process_record_rgb_matrix(keycode, record) +#endif #ifdef FP_UNICODE_ENABLE && fp_process_record_unicode(keycode, record) #endif diff --git a/keyboards/fingerpunch/fp_pointing.h b/keyboards/fingerpunch/fp_pointing.h index 4817eecc09b9..98ca6ba0ad2d 100644 --- a/keyboards/fingerpunch/fp_pointing.h +++ b/keyboards/fingerpunch/fp_pointing.h @@ -29,3 +29,37 @@ void fp_snipe_set(bool snipe_value); bool fp_snipe_get(void); void fp_snipe_toggle(void); void fp_snipe_apply_dpi(void); + +#ifdef POINTING_DEVICE_ENABLE +# ifndef FP_POINTING_DEFAULT_DPI +# define FP_POINTING_DEFAULT_DPI 1000 +# endif + +# ifndef FP_POINTING_SNIPING_DPI +# define FP_POINTING_SNIPING_DPI 50 +# endif + +# ifndef FP_POINTING_SNIPING_LAYER +# define FP_POINTING_SNIPING_LAYER 2 +# endif + +# ifndef FP_POINTING_SCROLLING_DPI +# define FP_POINTING_SCROLLING_DPI 50 +# endif + +# ifndef FP_POINTING_SCROLLING_LAYER +# define FP_POINTING_SCROLLING_LAYER 3 +# endif + +# ifndef FP_POINTING_COMBINED_SCROLLING_LEFT +# define FP_POINTING_COMBINED_SCROLLING_LEFT true +# endif + +# ifndef FP_POINTING_COMBINED_SCROLLING_RIGHT +# define FP_POINTING_COMBINED_SCROLLING_RIGHT false +# endif + +# ifndef FP_AUTO_MOUSE_TRACKBALL_SENSITIVITY +# define FP_AUTO_MOUSE_TRACKBALL_SENSITIVITY 3 +# endif +#endif diff --git a/keyboards/fingerpunch/fp_rgb_common.c b/keyboards/fingerpunch/fp_rgb_common.c index 7320102359c7..37c52fa7c387 100644 --- a/keyboards/fingerpunch/fp_rgb_common.c +++ b/keyboards/fingerpunch/fp_rgb_common.c @@ -14,7 +14,6 @@ * along with this program. If not, see . */ - #include "keyboards/fingerpunch/fp_rgb_common.h" // We must make sure that fp_rgb_matrix.h or fp_rgblight.h are included before this, since it depends on FP_LAYER_LIGHTING_MODE @@ -27,90 +26,50 @@ #endif #if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) -# ifndef FP_LAYER_LIGHTING_HUE_0 -# define FP_LAYER_LIGHTING_HUE_0 HSV_BLUE -# endif // FP_LAYER_LIGHTING_HUE_0 - -# ifndef FP_LAYER_LIGHTING_HUE_1 -# define FP_LAYER_LIGHTING_HUE_1 HSV_WHITE -# endif // FP_LAYER_LIGHTING_HUE_1 - -# ifndef FP_LAYER_LIGHTING_HUE_2 -# define FP_LAYER_LIGHTING_HUE_2 HSV_GREEN -# endif // FP_LAYER_LIGHTING_HUE_2 - -# ifndef FP_LAYER_LIGHTING_HUE_3 -# define FP_LAYER_LIGHTING_HUE_3 HSV_PURPLE -# endif // FP_LAYER_LIGHTING_HUE_3 - -# ifndef FP_LAYER_LIGHTING_HUE_4 -# define FP_LAYER_LIGHTING_HUE_4 HSV_YELLOW -# endif // FP_LAYER_LIGHTING_HUE_4 - -# ifndef FP_LAYER_LIGHTING_HUE_5 -# define FP_LAYER_LIGHTING_HUE_5 HSV_MAGENTA -# endif // FP_LAYER_LIGHTING_HUE_5 - -# ifndef FP_LAYER_LIGHTING_HUE_6 -# define FP_LAYER_LIGHTING_HUE_6 HSV_CYAN -# endif // FP_LAYER_LIGHTING_HUE_6 - -# ifndef FP_LAYER_LIGHTING_HUE_7 -# define FP_LAYER_LIGHTING_HUE_7 HSV_SPRINGGREEN -# endif // FP_LAYER_LIGHTING_HUE_7 - -# ifndef FP_LAYER_LIGHTING_MODE_0 -# define FP_LAYER_LIGHTING_MODE_0 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_0 - -# ifndef FP_LAYER_LIGHTING_MODE_1 -# define FP_LAYER_LIGHTING_MODE_1 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_1 - -# ifndef FP_LAYER_LIGHTING_MODE_2 -# define FP_LAYER_LIGHTING_MODE_2 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_2 - -# ifndef FP_LAYER_LIGHTING_MODE_3 -# define FP_LAYER_LIGHTING_MODE_3 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_3 - -# ifndef FP_LAYER_LIGHTING_MODE_4 -# define FP_LAYER_LIGHTING_MODE_4 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_4 -# ifndef FP_LAYER_LIGHTING_MODE_5 -# define FP_LAYER_LIGHTING_MODE_5 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_5 - -# ifndef FP_LAYER_LIGHTING_MODE_6 -# define FP_LAYER_LIGHTING_MODE_6 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_6 - -# ifndef FP_LAYER_LIGHTING_MODE_7 -# define FP_LAYER_LIGHTING_MODE_7 FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_MODE_7 - -# ifndef FP_LAYER_LIGHTING_AUTO_MOUSE_HUE -# define FP_LAYER_LIGHTING_AUTO_MOUSE_HUE HSV_ORANGE -# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE - -# ifndef FP_LAYER_LIGHTING_AUTO_MOUSE_MODE -# define FP_LAYER_LIGHTING_AUTO_MOUSE_MODE FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE - -# ifndef FP_LAYER_LIGHTING_CAPS_LOCK_HUE -# define FP_LAYER_LIGHTING_CAPS_LOCK_HUE HSV_RED -# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE +#if !defined(FP_STARTUP_ANIMATION_DISABLE) +static bool is_enabled; +static bool is_rgb_startup; +static HSV old_hsv; +static uint8_t old_mode; +deferred_token rgb_startup_token; + +uint32_t fp_rgb_startup_animation(uint32_t triger_time, void *cb_arg) { + if (is_rgb_startup && is_keyboard_master()) { + static uint8_t counter = 0; + counter++; + rgblight_sethsv_noeeprom((counter + old_hsv.h) % 255, 255, 255); + if (counter >= 255) { + is_rgb_startup = false; + fp_rgb_set_hsv_and_mode(old_hsv.h, old_hsv.s, old_hsv.v, old_mode); + if (!is_enabled) { + rgblight_disable_noeeprom(); + } + } + } + return is_rgb_startup ? 10 : 0; +} +#endif -# ifndef FP_LAYER_LIGHTING_CAPS_LOCK_MODE -# define FP_LAYER_LIGHTING_CAPS_LOCK_MODE FP_LAYER_LIGHTING_MODE -# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE +void fp_post_init_rgb_common(void) { +#if !defined(FP_STARTUP_ANIMATION_DISABLE) + is_enabled = rgblight_is_enabled(); + old_hsv = rgblight_get_hsv(); + old_mode = rgblight_get_mode(); +#if defined(RGBLIGHT_ENABLE) + rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT); +#endif +#if defined(RGB_MATRIX_ENABLE) + rgb_matrix_mode_noeeprom(RGB_MATRIX_SOLID_COLOR); +#endif + is_rgb_startup = true; + rgb_startup_token = defer_exec(300, fp_rgb_startup_animation, NULL); +#endif +} layer_state_t fp_layer_state_set_rgb(layer_state_t state) { switch (get_highest_layer(state)) { - // TODO: This logic is clearly flawed, decide what to do with this -# if defined(FP_LAYER_LIGHTING_ENABLE) && defined(AUTO_MOUSE_DEFAULT_LAYER) && !defined(FP_LAYER_LIGHTING_ENABLE) +# if defined(FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE) && defined(AUTO_MOUSE_DEFAULT_LAYER) && !defined(FP_LAYER_LIGHTING_ENABLE) case AUTO_MOUSE_DEFAULT_LAYER: fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_AUTO_MOUSE_HUE, FP_LAYER_LIGHTING_AUTO_MOUSE_MODE); break; @@ -119,8 +78,14 @@ layer_state_t fp_layer_state_set_rgb(layer_state_t state) { # ifdef FP_LAYER_LIGHTING_ENABLE if (fp_caps_lock_get()) { fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_CAPS_LOCK_HUE, FP_LAYER_LIGHTING_CAPS_LOCK_MODE); + xprintf("caps lock /n"); } else { +# ifdef FP_LAYER_LIGHTING_DYNAMIC_BASE_LAYER + fp_rgb_set_hsv_and_mode(fp_config.rgb_hue, fp_config.rgb_sat, fp_config.rgb_val, fp_config.rgb_mode); +# else fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_0, FP_LAYER_LIGHTING_MODE_0); +# endif + xprintf("base layer /n"); } # endif break; @@ -128,44 +93,108 @@ layer_state_t fp_layer_state_set_rgb(layer_state_t state) { # ifdef FP_LAYER_LIGHTING_ENABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_1, FP_LAYER_LIGHTING_MODE_1); # endif + xprintf("layer 1: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_1, FP_LAYER_LIGHTING_MODE_1); break; case 2: # ifdef FP_LAYER_LIGHTING_ENABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_2, FP_LAYER_LIGHTING_MODE_2); # endif + xprintf("layer 2: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_2, FP_LAYER_LIGHTING_MODE_2); break; case 3: # ifdef FP_LAYER_LIGHTING_ENABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_3, FP_LAYER_LIGHTING_MODE_3); # endif + xprintf("layer 3: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_3, FP_LAYER_LIGHTING_MODE_3); break; case 4: # ifdef FP_LAYER_LIGHTING_ENABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_4, FP_LAYER_LIGHTING_MODE_4); # endif + xprintf("layer 4: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_4, FP_LAYER_LIGHTING_MODE_4); break; case 5: # ifdef FP_LAYER_LIGHTING_ENABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_5, FP_LAYER_LIGHTING_MODE_5); # endif + xprintf("layer 5: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_5, FP_LAYER_LIGHTING_MODE_5); break; case 6: # ifdef FP_LAYER_LIGHTING_ENABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_6, FP_LAYER_LIGHTING_MODE_6); # endif + xprintf("layer 6: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_6, FP_LAYER_LIGHTING_MODE_6); break; case 7: # ifdef FP_LAYER_LIGHTING_ENABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_7, FP_LAYER_LIGHTING_MODE_7); # endif + xprintf("layer 7: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_7, FP_LAYER_LIGHTING_MODE_7); break; default: // default to layer 0 behavior # ifdef FP_LAYER_LIGHTING_ENABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_0, FP_LAYER_LIGHTING_MODE_0); # endif + xprintf("layer default: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_0, FP_LAYER_LIGHTING_MODE_0); break; } return state; } + +// Deferred exec function +uint32_t fp_rgb_set_config_from_current_values(uint32_t triger_time, void *cb_arg) { + fp_config.rgb_mode = rgblight_get_mode(); + fp_config.rgb_hue = rgblight_get_hue(); + fp_config.rgb_sat = rgblight_get_sat(); + fp_config.rgb_val = rgblight_get_val(); + fp_config.rgb_speed = rgblight_get_speed(); + eeconfig_update_user(fp_config.raw); + xprintf("RGB: mode: %u, hue: %u, sat: %u, val: %u, speed: %u\n", fp_config.rgb_mode, fp_config.rgb_hue, fp_config.rgb_sat, fp_config.rgb_val, fp_config.rgb_speed); + + return 0; +} + +bool fp_process_record_rgb_common(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case RGB_MODE_FORWARD ... RGB_MODE_GRADIENT: // quantum_keycodes.h L400 for definitions + if (record->event.pressed) { + fp_rgb_set_hsv_and_mode(fp_config.rgb_hue, fp_config.rgb_sat, fp_config.rgb_val, fp_config.rgb_mode); + } + if (!record->event.pressed) { + // in fp_keyhandler.c, because process_record() gets called before fp_process_record_rgb_common, and because + // the rgb light change happens on the key release (!record->event.pressed), that means that this code gets called + // before the process_record key release + // Sooooo, need a defered exec event to handle this + defer_exec(20, fp_rgb_set_config_from_current_values, NULL); + } + break; +# ifndef FP_DISABLE_CUSTOM_KEYCODES +# endif // FP_DISABLE_CUSTOM_KEYCODES + default: + break; + } + + return true; +} + +// Returns hue, sat, or val, depending on the value of whichOne (0 for hue, 1 for sat, 2 for val) +uint8_t fp_rgb_get_element_from_hsv(uint8_t hue, uint8_t sat, uint8_t val, uint8_t whichOne) { + switch (whichOne) { + case 0: + return hue; + xprintf("fp_rgb_get_element_from_hsv: returning hue value: %d", hue); + break; + case 1: + return sat; + break; + case 2: + return val; + break; + default: + break; + } + + return 0; +} #endif diff --git a/keyboards/fingerpunch/fp_rgb_common.h b/keyboards/fingerpunch/fp_rgb_common.h index d855dd859898..7dd40c9226ed 100644 --- a/keyboards/fingerpunch/fp_rgb_common.h +++ b/keyboards/fingerpunch/fp_rgb_common.h @@ -20,3 +20,89 @@ layer_state_t fp_layer_state_set_rgb(layer_state_t state); void fp_rgb_set_hsv_and_mode(uint8_t hue, uint8_t sat, uint8_t val, uint8_t mode); +void fp_post_init_rgb_common(void); +bool fp_process_record_rgb_common(uint16_t keycode, keyrecord_t *record); +uint32_t fp_rgb_set_config_from_current_values(uint32_t triger_time, void *cb_arg); +uint8_t fp_rgb_get_element_from_hsv(uint8_t hue, uint8_t sat, uint8_t val, uint8_t whichOne); + +#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) +# ifndef FP_LAYER_LIGHTING_HUE_0 +# define FP_LAYER_LIGHTING_HUE_0 HSV_BLUE +# endif // FP_LAYER_LIGHTING_HUE_0 + +# ifndef FP_LAYER_LIGHTING_HUE_1 +# define FP_LAYER_LIGHTING_HUE_1 HSV_WHITE +# endif // FP_LAYER_LIGHTING_HUE_1 + +# ifndef FP_LAYER_LIGHTING_HUE_2 +# define FP_LAYER_LIGHTING_HUE_2 HSV_GREEN +# endif // FP_LAYER_LIGHTING_HUE_2 + +# ifndef FP_LAYER_LIGHTING_HUE_3 +# define FP_LAYER_LIGHTING_HUE_3 HSV_PURPLE +# endif // FP_LAYER_LIGHTING_HUE_3 + +# ifndef FP_LAYER_LIGHTING_HUE_4 +# define FP_LAYER_LIGHTING_HUE_4 HSV_YELLOW +# endif // FP_LAYER_LIGHTING_HUE_4 + +# ifndef FP_LAYER_LIGHTING_HUE_5 +# define FP_LAYER_LIGHTING_HUE_5 HSV_MAGENTA +# endif // FP_LAYER_LIGHTING_HUE_5 + +# ifndef FP_LAYER_LIGHTING_HUE_6 +# define FP_LAYER_LIGHTING_HUE_6 HSV_CYAN +# endif // FP_LAYER_LIGHTING_HUE_6 + +# ifndef FP_LAYER_LIGHTING_HUE_7 +# define FP_LAYER_LIGHTING_HUE_7 HSV_SPRINGGREEN +# endif // FP_LAYER_LIGHTING_HUE_7 + +# ifndef FP_LAYER_LIGHTING_MODE_0 +# define FP_LAYER_LIGHTING_MODE_0 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_0 + +# ifndef FP_LAYER_LIGHTING_MODE_1 +# define FP_LAYER_LIGHTING_MODE_1 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_1 + +# ifndef FP_LAYER_LIGHTING_MODE_2 +# define FP_LAYER_LIGHTING_MODE_2 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_2 + +# ifndef FP_LAYER_LIGHTING_MODE_3 +# define FP_LAYER_LIGHTING_MODE_3 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_3 + +# ifndef FP_LAYER_LIGHTING_MODE_4 +# define FP_LAYER_LIGHTING_MODE_4 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_4 + +# ifndef FP_LAYER_LIGHTING_MODE_5 +# define FP_LAYER_LIGHTING_MODE_5 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_5 + +# ifndef FP_LAYER_LIGHTING_MODE_6 +# define FP_LAYER_LIGHTING_MODE_6 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_6 + +# ifndef FP_LAYER_LIGHTING_MODE_7 +# define FP_LAYER_LIGHTING_MODE_7 FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_MODE_7 + +# ifndef FP_LAYER_LIGHTING_AUTO_MOUSE_HUE +# define FP_LAYER_LIGHTING_AUTO_MOUSE_HUE HSV_ORANGE +# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE + +# ifndef FP_LAYER_LIGHTING_AUTO_MOUSE_MODE +# define FP_LAYER_LIGHTING_AUTO_MOUSE_MODE FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE + +# ifndef FP_LAYER_LIGHTING_CAPS_LOCK_HUE +# define FP_LAYER_LIGHTING_CAPS_LOCK_HUE HSV_RED +# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE + +# ifndef FP_LAYER_LIGHTING_CAPS_LOCK_MODE +# define FP_LAYER_LIGHTING_CAPS_LOCK_MODE FP_LAYER_LIGHTING_MODE +# endif // FP_LAYER_LIGHTING_AUTO_MOUSE_HUE +#endif diff --git a/keyboards/fingerpunch/fp_rgb_matrix.c b/keyboards/fingerpunch/fp_rgb_matrix.c index a5f0d08dfed0..50909653217f 100644 --- a/keyboards/fingerpunch/fp_rgb_matrix.c +++ b/keyboards/fingerpunch/fp_rgb_matrix.c @@ -23,6 +23,10 @@ void fp_rgb_set_hsv_and_mode(uint8_t hue, uint8_t sat, uint8_t val, uint8_t mode rgb_matrix_mode_noeeprom(mode); } +void fp_post_init_rgb_matrix(void) { + +} + layer_state_t fp_layer_state_set_rgb_matrix(layer_state_t state) { switch (get_highest_layer(state)) { case 0: diff --git a/keyboards/fingerpunch/fp_rgb_matrix.h b/keyboards/fingerpunch/fp_rgb_matrix.h index e1d289a1cc81..8ddb41bcdf51 100644 --- a/keyboards/fingerpunch/fp_rgb_matrix.h +++ b/keyboards/fingerpunch/fp_rgb_matrix.h @@ -26,3 +26,4 @@ layer_state_t fp_layer_state_set_rgb_matrix(layer_state_t state); bool fp_process_record_rgb_matrix(uint16_t keycode, keyrecord_t *record); +void fp_post_init_rgb_matrix(void); diff --git a/keyboards/fingerpunch/fp_rgblight.c b/keyboards/fingerpunch/fp_rgblight.c index f711ad8a060c..3034dcf2d70c 100644 --- a/keyboards/fingerpunch/fp_rgblight.c +++ b/keyboards/fingerpunch/fp_rgblight.c @@ -20,10 +20,15 @@ #ifdef RGBLIGHT_ENABLE void fp_rgb_set_hsv_and_mode(uint8_t hue, uint8_t sat, uint8_t val, uint8_t mode) { + xprintf("fp_rgb_set_hsv_and_mode: hue: %d, sat: %d, val: %d, mode: %d\n", hue, sat, val, mode); rgblight_sethsv_noeeprom(hue, sat, val); rgblight_mode_noeeprom(mode); } +void fp_post_init_rgblight(void) { + +} + layer_state_t fp_layer_state_set_rgblight(layer_state_t state) { switch (get_highest_layer(state)) { case 0: diff --git a/keyboards/fingerpunch/fp_rgblight.h b/keyboards/fingerpunch/fp_rgblight.h index d0c4e7152325..12f537d2e168 100644 --- a/keyboards/fingerpunch/fp_rgblight.h +++ b/keyboards/fingerpunch/fp_rgblight.h @@ -26,3 +26,4 @@ layer_state_t fp_layer_state_set_rgblight(layer_state_t state); bool fp_process_record_rgblight(uint16_t keycode, keyrecord_t *record); +void fp_post_init_rgblight(void); diff --git a/keyboards/fingerpunch/luakeeb/config.h b/keyboards/fingerpunch/luakeeb/config.h index 58f79216a8d1..34a74383d5be 100644 --- a/keyboards/fingerpunch/luakeeb/config.h +++ b/keyboards/fingerpunch/luakeeb/config.h @@ -50,7 +50,7 @@ along with this program. If not, see . #define RGBLIGHT_HUE_STEP 16 #define RGBLIGHT_SAT_STEP 16 #define RGBLIGHT_VAL_STEP 16 - #define RGBLIGHT_LIMIT_VAL 120 /* The maximum brightness level for RGBLIGHT_ENABLE */ + #define RGBLIGHT_LIMIT_VAL 150 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ #define RGBLIGHT_EFFECT_ALTERNATING #define RGBLIGHT_EFFECT_BREATHING diff --git a/keyboards/fingerpunch/luakeeb/rules.mk b/keyboards/fingerpunch/luakeeb/rules.mk index 021870b4edf4..603a6ee88e26 100644 --- a/keyboards/fingerpunch/luakeeb/rules.mk +++ b/keyboards/fingerpunch/luakeeb/rules.mk @@ -25,6 +25,7 @@ SPLIT_KEYBOARD = yes LAYOUTS = split_3x5_4 +DEFERRED_EXEC_ENABLE = yes SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ diff --git a/keyboards/fingerpunch/pinkiesout/config.h b/keyboards/fingerpunch/pinkiesout/config.h index f5d83033bdd5..2dcc179be6f2 100644 --- a/keyboards/fingerpunch/pinkiesout/config.h +++ b/keyboards/fingerpunch/pinkiesout/config.h @@ -50,7 +50,7 @@ along with this program. If not, see . #define RGBLIGHT_HUE_STEP 16 #define RGBLIGHT_SAT_STEP 16 #define RGBLIGHT_VAL_STEP 16 - #define RGBLIGHT_LIMIT_VAL 60 /* The maximum brightness level for RGBLIGHT_ENABLE */ + #define RGBLIGHT_LIMIT_VAL 150 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ #define RGBLIGHT_EFFECT_ALTERNATING #define RGBLIGHT_EFFECT_BREATHING @@ -66,7 +66,7 @@ along with this program. If not, see . #ifdef RGB_MATRIX_ENABLE #define DRIVER_LED_TOTAL 66 #define RGB_MATRIX_CENTER {100, 32} - #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 60 /* The maximum brightness level for RGB_MATRIX */ + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 /* The maximum brightness level for RGB_MATRIX */ #define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS // Sets the default brightness value, if none has been set #define RGB_MATRIX_KEYPRESSES #define RGB_MATRIX_FRAMEBUFFER_EFFECTS diff --git a/keyboards/fingerpunch/pinkiesout/rules.mk b/keyboards/fingerpunch/pinkiesout/rules.mk index a49bc62d8352..14e64579456d 100644 --- a/keyboards/fingerpunch/pinkiesout/rules.mk +++ b/keyboards/fingerpunch/pinkiesout/rules.mk @@ -48,6 +48,7 @@ ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE endif +DEFERRED_EXEC_ENABLE = yes SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ diff --git a/keyboards/fingerpunch/rockon/config.h b/keyboards/fingerpunch/rockon/config.h index 1cac5cc20d33..d98f23db0164 100644 --- a/keyboards/fingerpunch/rockon/config.h +++ b/keyboards/fingerpunch/rockon/config.h @@ -18,7 +18,6 @@ along with this program. If not, see . #pragma once #include "config_common.h" - /* USB Device descriptor parameter */ #define VENDOR_ID 0xFEFE #define PRODUCT_ID 0x1200 @@ -38,7 +37,7 @@ along with this program. If not, see . #define RGBLIGHT_HUE_STEP 16 #define RGBLIGHT_SAT_STEP 16 #define RGBLIGHT_VAL_STEP 16 - #define RGBLIGHT_LIMIT_VAL 120 /* The maximum brightness level for RGBLIGHT_ENABLE */ + #define RGBLIGHT_LIMIT_VAL 150 /* The maximum brightness level for RGBLIGHT_ENABLE */ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ #define RGBLIGHT_EFFECT_ALTERNATING #define RGBLIGHT_EFFECT_BREATHING @@ -54,7 +53,7 @@ along with this program. If not, see . #ifdef RGB_MATRIX_ENABLE #define DRIVER_LED_TOTAL 66 #define RGB_MATRIX_CENTER {100, 32} - #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 60 /* The maximum brightness level for RGB_MATRIX */ + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 /* The maximum brightness level for RGB_MATRIX */ #define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS // Sets the default brightness value, if none has been set #define RGB_MATRIX_KEYPRESSES #define RGB_MATRIX_FRAMEBUFFER_EFFECTS diff --git a/keyboards/fingerpunch/rockon/rules.mk b/keyboards/fingerpunch/rockon/rules.mk index 253c2a80ba02..a55d4b419b85 100644 --- a/keyboards/fingerpunch/rockon/rules.mk +++ b/keyboards/fingerpunch/rockon/rules.mk @@ -1,3 +1,4 @@ +DEFERRED_EXEC_ENABLE = yes SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ diff --git a/keyboards/fingerpunch/rockon_bp/rules.mk b/keyboards/fingerpunch/rockon_bp/rules.mk index cfc85e9e1dc8..d69495c979f3 100644 --- a/keyboards/fingerpunch/rockon_bp/rules.mk +++ b/keyboards/fingerpunch/rockon_bp/rules.mk @@ -59,6 +59,7 @@ ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE endif +DEFERRED_EXEC_ENABLE = yes SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ diff --git a/keyboards/fingerpunch/sweeeeep/rules.mk b/keyboards/fingerpunch/sweeeeep/rules.mk index 52b0a5baf155..9486c60f7325 100644 --- a/keyboards/fingerpunch/sweeeeep/rules.mk +++ b/keyboards/fingerpunch/sweeeeep/rules.mk @@ -29,6 +29,7 @@ MOUSEKEY_ENABLE = no SPLIT_KEYBOARD = yes # Use shared split_common code +DEFERRED_EXEC_ENABLE = yes SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ diff --git a/keyboards/fingerpunch/ximi/config.h b/keyboards/fingerpunch/ximi/config.h index 2434f88d8028..8ca49731d4c8 100644 --- a/keyboards/fingerpunch/ximi/config.h +++ b/keyboards/fingerpunch/ximi/config.h @@ -137,16 +137,16 @@ along with this program. If not, see . #define STARTUP_SONG SONG(PREONIC_SOUND) #define DEFAULT_LAYER_SONGS \ { SONG(QWERTY_SOUND), SONG(COLEMAK_SOUND) } -#endif +#endif #ifdef HAPTIC_ENABLE #define FB_ERM_LRA 1 - #define FB_BRAKEFACTOR 3 // For 1x:0, 2x:1, 3x:2, 4x:3, 6x:4, 8x:5, 16x:6, Disable Braking:7 - #define FB_LOOPGAIN 1 // For Low:0, Medium:1, High:2, Very High:3 + #define FB_BRAKEFACTOR 3 // For 1x:0, 2x:1, 3x:2, 4x:3, 6x:4, 8x:5, 16x:6, Disable Braking:7 + #define FB_LOOPGAIN 1 // For Low:0, Medium:1, High:2, Very High:3 #define RATED_VOLTAGE 2 #define V_PEAK 2.8 #define V_RMS 2.0 - #define F_LRA 150 // resonance freq + #define F_LRA 150 // resonance freq #define DRV_GREETING alert_750ms #define NO_HAPTIC_ALPHA #define NO_HAPTIC_LOCKKEYS @@ -195,7 +195,7 @@ along with this program. If not, see . #define PMW33XX_CPI 800 #define PMW33XX_CS_DIVISOR 8 // needs to be the same as the SHIFTREG_DIVISOR above #define POINTING_DEVICE_INVERT_X // move to trackball specific config - + /* SPI config for pmw3360 sensor. */ #define SPI_DRIVER SPID0 // #define SPI_SCK_PAL_MODE 5 // already defined in chibios @@ -211,4 +211,4 @@ along with this program. If not, see . #ifdef FP_TRACKBALL_RIGHT #define POINTING_DEVICE_RIGHT #endif -#endif \ No newline at end of file +#endif diff --git a/keyboards/fingerpunch/ximi/rules.mk b/keyboards/fingerpunch/ximi/rules.mk index 33a92d730cc0..e56e1ef84bd0 100644 --- a/keyboards/fingerpunch/ximi/rules.mk +++ b/keyboards/fingerpunch/ximi/rules.mk @@ -98,6 +98,7 @@ ifeq ($(strip $(PMW3360_ENABLE)), yes) OPT_DEFS += -DFP_TRACKBALL_ENABLE endif +DEFERRED_EXEC_ENABLE = yes SRC += keyboards/fingerpunch/fp.c \ keyboards/fingerpunch/fp_haptic.c \ keyboards/fingerpunch/fp_keyhandler.c \ diff --git a/quantum/process_keycode/process_rgb.c b/quantum/process_keycode/process_rgb.c index f94834530edd..d43835be989b 100644 --- a/quantum/process_keycode/process_rgb.c +++ b/quantum/process_keycode/process_rgb.c @@ -149,15 +149,6 @@ bool process_rgb(const uint16_t keycode, const keyrecord_t *record) { handleKeycodeRGB(shifted, rgb_matrix_decrease_speed, rgb_matrix_increase_speed); #endif return false; -/* error I'm seeing: -+Linking: .build/xoiviox_barobord_rgblight_pimoroni_ec11_sadekbaroudi.elf [ERRORS] -+ | -+ | /tmp/ccBHLnbF.ltrans0.ltrans.o: In function `process_rgb': -+ | /home/sadek/vial-qmk/quantum/process_keycode/process_rgb.c:63:(.text.process_record+0xe50): relocation truncated to fit: R_AVR_7_PCREL against `no symbol' -+ | collect2: error: ld returned 1 exit status -+ | -+ */ -/* SADEK: Commenting out to reduce the number of items in this switch statement: case RGB_MODE_PLAIN: #if defined(RGBLIGHT_ENABLE) && !defined(RGBLIGHT_DISABLE_KEYCODES) rgblight_mode(RGBLIGHT_MODE_STATIC_LIGHT); @@ -220,7 +211,6 @@ bool process_rgb(const uint16_t keycode, const keyrecord_t *record) { handleKeycodeRGBMode(RGBLIGHT_MODE_TWINKLE, RGBLIGHT_MODE_TWINKLE_end); #endif return false; -*/ } } diff --git a/users/sadekbaroudi/config.h b/users/sadekbaroudi/config.h index 138b3a61dcf6..ec1b53654dcf 100755 --- a/users/sadekbaroudi/config.h +++ b/users/sadekbaroudi/config.h @@ -30,6 +30,7 @@ // Read here for details: https://github.com/sadekbaroudi/qmk_firmware/tree/master/keyboards/fingerpunch#layer-lighting #define FP_LAYER_LIGHTING_ENABLE +#define FP_LAYER_LIGHTING_DYNAMIC_BASE_LAYER // #define FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE #define FP_POINTING_SNIPING_LAYER_ENABLE diff --git a/users/sadekbaroudi/rules.mk b/users/sadekbaroudi/rules.mk index 82744424b7aa..b7cd85ef2a97 100755 --- a/users/sadekbaroudi/rules.mk +++ b/users/sadekbaroudi/rules.mk @@ -2,7 +2,7 @@ SRC += sadekbaroudi.c \ process_records.c COMMAND_ENABLE = no # Commands for debug and configuration -CONSOLE_ENABLE = no # Console for debug +CONSOLE_ENABLE = yes # Console for debug UNICODE_ENABLE = no # Unicode SWAP_HANDS_ENABLE= no # Allow swapping hands of keyboard BACKLIGHT_ENABLE = no From 9d03cb6b1471607b9f8694e777117451958e61c4 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Thu, 6 Oct 2022 16:01:31 -0700 Subject: [PATCH 10/51] rgb matrix leds were off by one for ffkb v3 and rock on v3 --- keyboards/fingerpunch/ffkb_byomcu/v3/v3.c | 12 ++++++------ keyboards/fingerpunch/rockon/v3/v3.c | 18 +++++++++--------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/v3.c b/keyboards/fingerpunch/ffkb_byomcu/v3/v3.c index b6347646b53c..45f05ec7ba6c 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v3/v3.c +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/v3.c @@ -17,12 +17,12 @@ #ifdef RGB_MATRIX_ENABLE led_config_t g_led_config = { { - { 3, 9, 15, 10, 16, 27, 28, 4 }, - { 2, 8, 14, 11, 17, 26, 29, 5 }, - { 1, 7, 13, 12, 18, 25, 30, 6 }, - { NO_LED, 32, 34, 36, 38, 37, 40, NO_LED }, - { NO_LED, 31, 35, 33, 39, 42, 41, NO_LED }, - { NO_LED, 24, 20, 19, 21, 22, 23, NO_LED } + { 2, 8, 14, 9, 15, 26, 27, 3 }, + { 1, 7, 13, 10, 16, 25, 28, 4 }, + { 0, 6, 12, 11, 17, 24, 29, 5 }, + { NO_LED, 31, 33, 35, 37, 36, 39, NO_LED }, + { NO_LED, 30, 34, 32, 38, 41, 40, NO_LED }, + { NO_LED, 23, 19, 18, 20, 21, 22, NO_LED } }, { {0,32},{3,19},{7,5},{25,4},{21,18},{17,31},{35,26},{39,12},{43,0},{60,0},{56,12},{52,26}, {66,33},{70,20},{74,6},{89,12},{85,25},{81,38},{61,50},{77,55},{93,63},{129,63},{145,55},{161,50}, diff --git a/keyboards/fingerpunch/rockon/v3/v3.c b/keyboards/fingerpunch/rockon/v3/v3.c index 42daf6c2c89b..05d2d2df4b30 100644 --- a/keyboards/fingerpunch/rockon/v3/v3.c +++ b/keyboards/fingerpunch/rockon/v3/v3.c @@ -18,15 +18,15 @@ #ifdef RGB_MATRIX_ENABLE led_config_t g_led_config = { { - { 66, 4, 6, 64, 65, 5, 3, 2 }, - { 59, 11, 9, 61, 60, 10, 12, 13 }, - { 52, 18, 20, 50, 51, 19, 17, 16 }, - { 45, 25, 23, 47, 46, 24, 26, 27 }, - { 39, 31, 33, 37, 38, 32, 30, 29 }, - { 43, 48, 35, 57, 54, 68, 22, 1 }, - { 55, 7, 36, 63, 49, 21, 34, 14 }, - { 42, 8, NO_LED, 62, NO_LED, NO_LED, 28, 15 }, - { 56, 53, 40, 41, 69, 44, 58, 67 } + { 65, 3, 5, 63, 64, 4, 2, 1 }, + { 58, 10, 8, 60, 59, 9, 11, 12 }, + { 51, 17, 19, 49, 50, 18, 16, 15 }, + { 44, 24, 22, 46, 45, 23, 25, 26 }, + { 38, 30, 32, 36, 37, 31, 29, 28 }, + { 42, 47, 34, 56, 53, 67, 21, 0 }, + { 54, 6, 35, 62, 48, 20, 33, 13 }, + { 41, 7, NO_LED, 61, NO_LED, NO_LED, 27, 14 }, + { 55, 52, 39, 40, 68, 43, 57, 66 } }, { {7,1}, {21,1}, {36,2}, {51,1}, {65,5}, {79,10}, {93,14}, {90,21}, {76,20}, {62,16}, {48,12}, {33,12}, {19,12}, {4,10}, From 0279ea5c775d422479a2691cf7d6944a3aa9060b Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Thu, 6 Oct 2022 20:10:35 -0700 Subject: [PATCH 11/51] enable auto mouse for cirque only --- users/sadekbaroudi/config.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/users/sadekbaroudi/config.h b/users/sadekbaroudi/config.h index ec1b53654dcf..3c73a53f2872 100755 --- a/users/sadekbaroudi/config.h +++ b/users/sadekbaroudi/config.h @@ -24,7 +24,9 @@ #endif #define AUTO_MOUSE_DEFAULT_LAYER 6 -// #define POINTING_DEVICE_AUTO_MOUSE_ENABLE +#ifdef CIRQUE_ENABLE + #define POINTING_DEVICE_AUTO_MOUSE_ENABLE +#endif // Define only one of the two below, but not both. // Read here for details: https://github.com/sadekbaroudi/qmk_firmware/tree/master/keyboards/fingerpunch#layer-lighting From 0ce8e8da311877607c3ccc8f0d0cf2435443478c Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Thu, 6 Oct 2022 21:59:58 -0700 Subject: [PATCH 12/51] added new fingerpunch HSV colors and applied FP_HSV_MELON to one of the layers --- keyboards/fingerpunch/README.md | 13 ++++++++++++- keyboards/fingerpunch/fp.h | 5 ++--- keyboards/fingerpunch/fp_color.h | 21 +++++++++++++++++++++ keyboards/fingerpunch/fp_rgb_common.h | 2 +- users/sadekbaroudi/config.h | 5 +++++ 5 files changed, 41 insertions(+), 5 deletions(-) create mode 100644 keyboards/fingerpunch/fp_color.h diff --git a/keyboards/fingerpunch/README.md b/keyboards/fingerpunch/README.md index 56470c21faf7..b382d01d8c2c 100644 --- a/keyboards/fingerpunch/README.md +++ b/keyboards/fingerpunch/README.md @@ -136,7 +136,7 @@ If using this feature (`FP_LAYER_LIGHTING_ENABLE`), please note that the `FP_LAY | `FP_LAYER_LIGHTING_HUE_2` | (Required) Set the layer lighting hue for layer 2 | `HSV_GREEN` | | `FP_LAYER_LIGHTING_HUE_3` | (Required) Set the layer lighting hue for layer 3 | `HSV_PURPLE` | | `FP_LAYER_LIGHTING_HUE_4` | (Required) Set the layer lighting hue for layer 4 | `HSV_YELLOW` | -| `FP_LAYER_LIGHTING_HUE_5` | (Required) Set the layer lighting hue for layer 5 | `HSV_MAGENTA` | +| `FP_LAYER_LIGHTING_HUE_5` | (Required) Set the layer lighting hue for layer 5 | `FP_HSV_MELON` | | `FP_LAYER_LIGHTING_HUE_6` | (Required) Set the layer lighting hue for layer 6 | `HSV_CYAN` | | `FP_LAYER_LIGHTING_HUE_7` | (Required) Set the layer lighting hue for layer 7 | `HSV_SPRINGGREEN` | | `FP_LAYER_LIGHTING_MODE_0` | (Required) Set the layer lighting mode for layer 0 | `FP_LAYER_LIGHTING_MODE` | @@ -153,6 +153,17 @@ If using this feature (`FP_LAYER_LIGHTING_ENABLE`), please note that the `FP_LAY | `FP_LAYER_LIGHTING_AUTO_MOUSE_HUE` | (Required) This is the hue that is used for the auto mouse layer lighting | `HSV_ORANGE` | | `FP_LAYER_LIGHTING_AUTO_MOUSE_MODE` | (Required) This is the mode that is used for the auto mouse layer lighting | `FP_LAYER_LIGHTING_MODE` | +### Additional colors + +| Define | HSV | Reference | +| --------------------- | ----------------- | ----------------------------------------------------- | +| `FP_HSV_LAVENDER` | `184, 200, 255` | https://encycolorpedia.com/ccb3ff | +| `FP_HSV_LEMON` | `43, 200, 255` | https://encycolorpedia.com/ffff9f | +| `FP_HSV_LIME` | `63, 225, 255` | https://encycolorpedia.com/9efd38 | +| `FP_HSV_MELON` | `0, 180, 255` | https://encycolorpedia.com/febaad | +| `FP_HSV_MINT` | `84, 185, 255` | https://encycolorpedia.com/98ff98 | + + ## Haptic Feedback Enable special haptic feedback features. diff --git a/keyboards/fingerpunch/fp.h b/keyboards/fingerpunch/fp.h index 48660aa2fd0b..3c084f482dbe 100644 --- a/keyboards/fingerpunch/fp.h +++ b/keyboards/fingerpunch/fp.h @@ -25,10 +25,9 @@ void fp_caps_lock_toggle(void); void handle_caps_lock_change(void); void press_super_tab(bool shift); -// IMPORTANT NOTE: Don't forget to add the following line to every fingerpunch keyboard's .h file (e.g. ffkb_byomcu.h) -// #include "keyboards/fingerpunch/fp.h" - +#include "keyboards/fingerpunch/fp_color.h" #include "keyboards/fingerpunch/fp_keyhandler.h" + #if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) # include "keyboards/fingerpunch/fp_rgb_common.h" #endif diff --git a/keyboards/fingerpunch/fp_color.h b/keyboards/fingerpunch/fp_color.h new file mode 100644 index 000000000000..cfa524e2821f --- /dev/null +++ b/keyboards/fingerpunch/fp_color.h @@ -0,0 +1,21 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#define FP_HSV_LAVENDER 184, 200, 255 +#define FP_HSV_LEMON 43, 200, 255 +#define FP_HSV_LIME 63, 225, 255 +#define FP_HSV_MELON 0, 180, 255 +#define FP_HSV_MINT 84, 185, 255 diff --git a/keyboards/fingerpunch/fp_rgb_common.h b/keyboards/fingerpunch/fp_rgb_common.h index 7dd40c9226ed..052d38d50f35 100644 --- a/keyboards/fingerpunch/fp_rgb_common.h +++ b/keyboards/fingerpunch/fp_rgb_common.h @@ -47,7 +47,7 @@ uint8_t fp_rgb_get_element_from_hsv(uint8_t hue, uint8_t sat, uint8_t val, uint8 # endif // FP_LAYER_LIGHTING_HUE_4 # ifndef FP_LAYER_LIGHTING_HUE_5 -# define FP_LAYER_LIGHTING_HUE_5 HSV_MAGENTA +# define FP_LAYER_LIGHTING_HUE_5 FP_HSV_MELON # endif // FP_LAYER_LIGHTING_HUE_5 # ifndef FP_LAYER_LIGHTING_HUE_6 diff --git a/users/sadekbaroudi/config.h b/users/sadekbaroudi/config.h index 3c73a53f2872..8ff9fe357d7c 100755 --- a/users/sadekbaroudi/config.h +++ b/users/sadekbaroudi/config.h @@ -35,6 +35,11 @@ #define FP_LAYER_LIGHTING_DYNAMIC_BASE_LAYER // #define FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE +#define FP_LAYER_LIGHTING_HUE_2 FP_HSV_MINT +#define FP_LAYER_LIGHTING_HUE_3 FP_HSV_LAVENDER +#define FP_LAYER_LIGHTING_HUE_4 FP_HSV_LEMON +#define FP_LAYER_LIGHTING_HUE_5 FP_HSV_MELON + #define FP_POINTING_SNIPING_LAYER_ENABLE #define FP_POINTING_SCROLLING_LAYER_ENABLE From 49093a89e034e53a912c3578fa3436bfc3f73c33 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Fri, 7 Oct 2022 17:41:47 -0700 Subject: [PATCH 13/51] mouse keys was disabled by default, fixed such that mouse keys is now enabled when the cirque or pimoroni are enabled --- keyboards/fingerpunch/rockon/v2/rules.mk | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/keyboards/fingerpunch/rockon/v2/rules.mk b/keyboards/fingerpunch/rockon/v2/rules.mk index d2a24126762d..64367c983fad 100644 --- a/keyboards/fingerpunch/rockon/v2/rules.mk +++ b/keyboards/fingerpunch/rockon/v2/rules.mk @@ -23,7 +23,6 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend # if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work NKRO_ENABLE = no # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -MOUSEKEY_ENABLE = yes # Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER RGBLIGHT_ENABLE = no @@ -42,10 +41,9 @@ FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches ENCODER_ENABLE = no OLED_ENABLE = no # EXTRAFLAGS += -flto # macros disabled, if you need the extra space -MOUSEKEY_ENABLE = no -CIRQUE_ENABLE = no ifeq ($(strip $(CIRQUE_ENABLE)), yes) + MOUSEKEY_ENABLE := yes # not required, but enabling for mouse button keys POINTING_DEVICE_ENABLE := yes POINTING_DEVICE_DRIVER := cirque_pinnacle_i2c OPT_DEFS += -DCIRQUE_ENABLE @@ -53,7 +51,8 @@ endif PIMORONI_TRACKBALL_ENABLE = no ifeq ($(strip $(PIMORONI_TRACKBALL_ENABLE)), yes) + MOUSEKEY_ENABLE := yes # not required, but enabling for mouse button keys POINTING_DEVICE_ENABLE := yes POINTING_DEVICE_DRIVER := pimoroni_trackball OPT_DEFS += -DPIMORONI_TRACKBALL_ENABLE -endif \ No newline at end of file +endif From 3d512efabc8b8c52edc918f958ddb56cdcd1b56a Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Mon, 10 Oct 2022 15:39:11 -0700 Subject: [PATCH 14/51] was calling the wrong rgb layer function for for caps lock toggle in matrix scan --- keyboards/fingerpunch/fp.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/keyboards/fingerpunch/fp.c b/keyboards/fingerpunch/fp.c index 312f09aa399b..13085f79fe4b 100644 --- a/keyboards/fingerpunch/fp.c +++ b/keyboards/fingerpunch/fp.c @@ -41,7 +41,7 @@ void fp_caps_lock_toggle(void) { void handle_caps_lock_change(void) { #if defined(RGBLIGHT_ENABLE) // We only do this because we want the layer color to change - fp_layer_state_set_rgblight(layer_state); + fp_layer_state_set_rgb(layer_state); #endif // RGBLIGHT_ENABLE } @@ -84,8 +84,7 @@ void matrix_scan_kb(void) { // need to make sure this keyboard is aware led_t led_state = host_keyboard_led_state(); if (led_state.caps_lock != is_caps_lock_on) { - is_caps_lock_on = led_state.caps_lock; - handle_caps_lock_change(); + fp_caps_lock_toggle(); } unregister_super_tab(); From a502ad25b850a6a0a81c1f29d5f6e9e4253e3548 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Mon, 10 Oct 2022 15:39:56 -0700 Subject: [PATCH 15/51] abstracted shift register matrix code so it's shared between keyboards, added todo list --- keyboards/fingerpunch/TODO.md | 5 + keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk | 2 +- ..._74hc595_spi.c => fp_matrix_74hc595_spi.c} | 17 +- .../rockon/v3/matrix_74hc595_spi.c | 150 ------------------ keyboards/fingerpunch/rockon/v3/rules.mk | 2 +- .../fingerpunch/ximi/matrix_74hc595_spi.c | 17 +- 6 files changed, 19 insertions(+), 174 deletions(-) create mode 100644 keyboards/fingerpunch/TODO.md rename keyboards/fingerpunch/{ffkb_byomcu/v3/matrix_74hc595_spi.c => fp_matrix_74hc595_spi.c} (89%) delete mode 100644 keyboards/fingerpunch/rockon/v3/matrix_74hc595_spi.c diff --git a/keyboards/fingerpunch/TODO.md b/keyboards/fingerpunch/TODO.md new file mode 100644 index 000000000000..66cd30bbd485 --- /dev/null +++ b/keyboards/fingerpunch/TODO.md @@ -0,0 +1,5 @@ +- [] Add audio features (Ex: sound when capslock or capsword are enabled and disabled) +- [] More haptic features (Ex: capslock/capsword feedback) +- [] (personal item) migrate my capsword to core qmk +- [] add xcase features to fingerpunch +- [] move ximi matrix_74hc595_spi.c logic into the fp_matrix_74hc595_spi.c diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk index f977133738fa..770a3cdd41ec 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk @@ -39,7 +39,7 @@ OLED_ENABLE = no # this can be yes or no depending on if you have an EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed # for instance, if you build "no_features", it's very unlikely you'll need to disable macros -SRC += matrix_74hc595_spi.c +SRC += keyboards/fingerpunch/fp_matrix_74hc595_spi.c QUANTUM_LIB_SRC += spi_master.c CUSTOM_MATRIX = lite diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/matrix_74hc595_spi.c b/keyboards/fingerpunch/fp_matrix_74hc595_spi.c similarity index 89% rename from keyboards/fingerpunch/ffkb_byomcu/v3/matrix_74hc595_spi.c rename to keyboards/fingerpunch/fp_matrix_74hc595_spi.c index ac743545c3e9..3e8dec7e00e9 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v3/matrix_74hc595_spi.c +++ b/keyboards/fingerpunch/fp_matrix_74hc595_spi.c @@ -6,12 +6,11 @@ #include /* close */ #include "quantum.h" #include "matrix.h" -// added for testing with SR_DEBUG_RATIO, remove when done +#ifdef FP_SR595_MATRIX_DEBUG #include #include -// end testing - #define SR_DEBUG_RATIO 10000 +#endif #if (!defined(SHIFTREG_MATRIX_COL_CS)) # error Missing shift register I/O pin definitions @@ -55,15 +54,7 @@ bool sr_74hc595_spi_send_byte(uint8_t data) { sr_74hc595_spi_start(); writePinLow(SHIFTREG_MATRIX_COL_CS); matrix_io_delay(); - // spi_status_t spiResponse = spi_write(data); spi_write(data); - // Status is irrelevant as we don't have a MISO pin to check if it succeeded - // if (spiResponse != SPI_STATUS_SUCCESS) { - // xprintf("74hc595 matrix: failed to send data over SPI: response %d\n", spiResponse); - // writePinHigh(SHIFTREG_MATRIX_COL_CS); - // sr_74hc595_spi_stop(); - // return false; - // } matrix_io_delay(); writePinHigh(SHIFTREG_MATRIX_COL_CS); sr_74hc595_spi_stop(); @@ -118,7 +109,11 @@ bool matrix_scan_custom(matrix_row_t current_matrix[]) { // reset the current matrix, as we'll be updating and comparing to the old matrix memset(current_matrix, 0, matrixArraySize); +#ifdef FP_SR595_MATRIX_DEBUG bool debug_output = ((rand() % SR_DEBUG_RATIO) == 1); +#else + bool debug_output = false; +#endif // Loop through the columns, activating one at a time, and read the rows, and place in the new current_matrix for (int c = 0; c < MATRIX_COLS; c++) { if (debug_output) { diff --git a/keyboards/fingerpunch/rockon/v3/matrix_74hc595_spi.c b/keyboards/fingerpunch/rockon/v3/matrix_74hc595_spi.c deleted file mode 100644 index ac743545c3e9..000000000000 --- a/keyboards/fingerpunch/rockon/v3/matrix_74hc595_spi.c +++ /dev/null @@ -1,150 +0,0 @@ -// Copyright 2022 @sadekbaroudi (Sadek Baroudi) -// SPDX-License-Identifier: GPL-3.0-or-later -#include "quantum.h" -#include "spi_master.h" -#include /* memset */ -#include /* close */ -#include "quantum.h" -#include "matrix.h" -// added for testing with SR_DEBUG_RATIO, remove when done -#include -#include -// end testing - -#define SR_DEBUG_RATIO 10000 - -#if (!defined(SHIFTREG_MATRIX_COL_CS)) -# error Missing shift register I/O pin definitions -#endif - -int matrixArraySize = MATRIX_ROWS * sizeof(matrix_row_t); -matrix_row_t oldMatrix[MATRIX_ROWS]; - -#define SHIFTREG_OUTPUT_BITS 8 -pin_t rowPinsSR[MATRIX_ROWS] = MATRIX_ROW_PINS_SR; - -// semaphore to make sure SPI doesn't get called multiple times -static bool shiftRegisterSPILocked = false; - -void semaphore_lock(bool value) { - shiftRegisterSPILocked = value; -} - -bool semaphore_is_locked(void) { - return shiftRegisterSPILocked; -} - -void sr_74hc595_spi_stop(void) { - spi_stop(); - semaphore_lock(false); -} - -bool sr_74hc595_spi_start(void) { - if (!spi_start(SHIFTREG_MATRIX_COL_CS, false, 0, SHIFTREG_DIVISOR)) { - xprintf("74hc595 matrix: failed to start spi\n"); - sr_74hc595_spi_stop(); - return false; - } - - semaphore_lock(true); - wait_us(1); // not sure if I need this - return true; -} - -bool sr_74hc595_spi_send_byte(uint8_t data) { - sr_74hc595_spi_start(); - writePinLow(SHIFTREG_MATRIX_COL_CS); - matrix_io_delay(); - // spi_status_t spiResponse = spi_write(data); - spi_write(data); - // Status is irrelevant as we don't have a MISO pin to check if it succeeded - // if (spiResponse != SPI_STATUS_SUCCESS) { - // xprintf("74hc595 matrix: failed to send data over SPI: response %d\n", spiResponse); - // writePinHigh(SHIFTREG_MATRIX_COL_CS); - // sr_74hc595_spi_stop(); - // return false; - // } - matrix_io_delay(); - writePinHigh(SHIFTREG_MATRIX_COL_CS); - sr_74hc595_spi_stop(); - return true; -} - -/** - * Set the entire shift register to be full of inactive bits - */ -void clearColumns(void) { - uint8_t value = 0b00000000; - sr_74hc595_spi_send_byte(value); -} - -void setColumn(int columnShift, bool test_run) { - uint8_t columnShiftByte = ((uint8_t)1 << columnShift); - if(test_run) { - xprintf("byte sent: %d\n", columnShiftByte); - } - sr_74hc595_spi_send_byte(columnShiftByte); -} - -/* - * override of the qmk intialization function - */ -void matrix_init_custom(void) { - wait_ms(300); - spi_init(); - // Set up the initial states for all the row pins - for (int r = 0; r < MATRIX_ROWS; r++) { - // Note: This needs to use the internal pull down resistors, and atmegas do *not* support that - setPinInputLow(rowPinsSR[r]); - } - - // Set the CS to low by default, and specify as an output pin - writePinHigh(SHIFTREG_MATRIX_COL_CS); // should be high when using SPI? - setPinOutput(SHIFTREG_MATRIX_COL_CS); - - // Since it's the init, deactivate all the columns. We'll activate once we get to the matrix scan - clearColumns(); -} - -bool matrix_scan_custom(matrix_row_t current_matrix[]) { - // respect the semaphore - if (semaphore_is_locked()) { - return false; - } - - // Keep track of if something was modified - bool matrix_has_changed = false; - - // reset the current matrix, as we'll be updating and comparing to the old matrix - memset(current_matrix, 0, matrixArraySize); - - bool debug_output = ((rand() % SR_DEBUG_RATIO) == 1); - // Loop through the columns, activating one at a time, and read the rows, and place in the new current_matrix - for (int c = 0; c < MATRIX_COLS; c++) { - if (debug_output) { - xprintf("column iteration: %d\n", c); - } - setColumn(c, debug_output); - matrix_io_delay(); - - for (int r = 0; r < MATRIX_ROWS; r++) { - current_matrix[r] |= ((readPin(rowPinsSR[r]) ? 1 : 0) << c); - } - } - - matrix_has_changed = memcmp(current_matrix, oldMatrix, matrixArraySize) != 0; - memcpy(oldMatrix, current_matrix, matrixArraySize); - - if (matrix_has_changed) { - matrix_print(); - } - // matrix_print(); - // xprintf("matrix_has_changed: %d\n", matrix_has_changed); - - // Deactivate all the columns for the next run. - clearColumns(); - matrix_io_delay(); - - return matrix_has_changed; -} - diff --git a/keyboards/fingerpunch/rockon/v3/rules.mk b/keyboards/fingerpunch/rockon/v3/rules.mk index e0f87b63fe13..4165e3c1b140 100644 --- a/keyboards/fingerpunch/rockon/v3/rules.mk +++ b/keyboards/fingerpunch/rockon/v3/rules.mk @@ -39,7 +39,7 @@ ENCODER_ENABLE = no # EXTRAFLAGS += -flto # macros disabled, if you need the extra space MOUSEKEY_ENABLE = no -SRC += matrix_74hc595_spi.c +SRC += keyboards/fingerpunch/fp_matrix_74hc595_spi.c QUANTUM_LIB_SRC += spi_master.c CUSTOM_MATRIX = lite diff --git a/keyboards/fingerpunch/ximi/matrix_74hc595_spi.c b/keyboards/fingerpunch/ximi/matrix_74hc595_spi.c index 485bec8093e2..4b356df46796 100644 --- a/keyboards/fingerpunch/ximi/matrix_74hc595_spi.c +++ b/keyboards/fingerpunch/ximi/matrix_74hc595_spi.c @@ -6,12 +6,11 @@ #include /* close */ #include "quantum.h" #include "matrix.h" -// added for testing with SR_DEBUG_RATIO, remove when done +#ifdef FP_SR595_MATRIX_DEBUG #include #include -// end testing - #define SR_DEBUG_RATIO 10000 +#endif #if (!defined(SHIFTREG_MATRIX_COL_CS)) # error Missing shift register I/O pin definitions @@ -55,15 +54,7 @@ bool sr_74hc595_spi_send_byte(uint8_t data) { sr_74hc595_spi_start(); writePinLow(SHIFTREG_MATRIX_COL_CS); matrix_io_delay(); - // spi_status_t spiResponse = spi_write(data); spi_write(data); - // Status is irrelevant as we don't have a MISO pin to check if it succeeded - // if (spiResponse != SPI_STATUS_SUCCESS) { - // xprintf("74hc595 matrix: failed to send data over SPI: response %d\n", spiResponse); - // writePinHigh(SHIFTREG_MATRIX_COL_CS); - // sr_74hc595_spi_stop(); - // return false; - // } matrix_io_delay(); writePinHigh(SHIFTREG_MATRIX_COL_CS); sr_74hc595_spi_stop(); @@ -118,7 +109,11 @@ bool matrix_scan_custom(matrix_row_t current_matrix[]) { // reset the current matrix, as we'll be updating and comparing to the old matrix memset(current_matrix, 0, matrixArraySize); +#ifdef FP_SR595_MATRIX_DEBUG bool debug_output = ((rand() % SR_DEBUG_RATIO) == 1); +#else + bool debug_output = false; +#endif // Loop through the columns, activating one at a time, and read the rows, and place in the new current_matrix for (int c = 0; c < SHIFTREG_COLS; c++) { if (debug_output) { From e8842f52ec6accba22c71a8fe7c65574b67e67d4 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Mon, 10 Oct 2022 15:58:19 -0700 Subject: [PATCH 16/51] added shift register debug parameters into the readme --- keyboards/fingerpunch/README.md | 8 ++++++++ keyboards/fingerpunch/fp_matrix_74hc595_spi.c | 4 ++-- keyboards/fingerpunch/ximi/matrix_74hc595_spi.c | 4 ++-- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/keyboards/fingerpunch/README.md b/keyboards/fingerpunch/README.md index b382d01d8c2c..d6150329d708 100644 --- a/keyboards/fingerpunch/README.md +++ b/keyboards/fingerpunch/README.md @@ -182,6 +182,14 @@ Note that the ctrl-X haptic feedback responses will use control as the modifier, If you are looking to use process_record_kb() or process_record +## Debugging + +| Setting | Description | Default | +| --------------------------------------- | -------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | +| `FP_SR595_MATRIX_DEBUG` | (Optional) Enable debugging the 74hc595 shift register code | `undefined` | +| `FP_SR595_MATRIX_DEBUG_RATIO` | (Optional) Frequency for outputting matrix scan information for the shift register (1 in X scans) | `10000` | + + ## Appreciation Thank you: diff --git a/keyboards/fingerpunch/fp_matrix_74hc595_spi.c b/keyboards/fingerpunch/fp_matrix_74hc595_spi.c index 3e8dec7e00e9..5c6816ab4617 100644 --- a/keyboards/fingerpunch/fp_matrix_74hc595_spi.c +++ b/keyboards/fingerpunch/fp_matrix_74hc595_spi.c @@ -9,7 +9,7 @@ #ifdef FP_SR595_MATRIX_DEBUG #include #include -#define SR_DEBUG_RATIO 10000 +#define FP_SR595_MATRIX_DEBUG_RATIO 10000 #endif #if (!defined(SHIFTREG_MATRIX_COL_CS)) @@ -110,7 +110,7 @@ bool matrix_scan_custom(matrix_row_t current_matrix[]) { memset(current_matrix, 0, matrixArraySize); #ifdef FP_SR595_MATRIX_DEBUG - bool debug_output = ((rand() % SR_DEBUG_RATIO) == 1); + bool debug_output = ((rand() % FP_SR595_MATRIX_DEBUG_RATIO) == 1); #else bool debug_output = false; #endif diff --git a/keyboards/fingerpunch/ximi/matrix_74hc595_spi.c b/keyboards/fingerpunch/ximi/matrix_74hc595_spi.c index 4b356df46796..27f6689d3ce0 100644 --- a/keyboards/fingerpunch/ximi/matrix_74hc595_spi.c +++ b/keyboards/fingerpunch/ximi/matrix_74hc595_spi.c @@ -9,7 +9,7 @@ #ifdef FP_SR595_MATRIX_DEBUG #include #include -#define SR_DEBUG_RATIO 10000 +#define FP_SR595_MATRIX_DEBUG_RATIO 10000 #endif #if (!defined(SHIFTREG_MATRIX_COL_CS)) @@ -110,7 +110,7 @@ bool matrix_scan_custom(matrix_row_t current_matrix[]) { memset(current_matrix, 0, matrixArraySize); #ifdef FP_SR595_MATRIX_DEBUG - bool debug_output = ((rand() % SR_DEBUG_RATIO) == 1); + bool debug_output = ((rand() % FP_SR595_MATRIX_DEBUG_RATIO) == 1); #else bool debug_output = false; #endif From 74c28527306897f382f678343bf7f1cabd59a25e Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Mon, 10 Oct 2022 17:32:35 -0700 Subject: [PATCH 17/51] no longer using the pointing devices code in my userspace --- users/sadekbaroudi/sadekbaroudi.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/users/sadekbaroudi/sadekbaroudi.c b/users/sadekbaroudi/sadekbaroudi.c index 0599bfed8299..39edc41e254f 100755 --- a/users/sadekbaroudi/sadekbaroudi.c +++ b/users/sadekbaroudi/sadekbaroudi.c @@ -132,9 +132,9 @@ void keyboard_post_init_user(void) { // #if defined(RGB_MATRIX_ENABLE) // keyboard_post_init_rgb_matrix(); // #endif -#if defined(POINTING_DEVICE_ENABLE) && defined(POINTING_DEVICE_COMBINED) - pointing_device_set_cpi_combined_defaults(); -#endif +// #if defined(POINTING_DEVICE_ENABLE) && defined(POINTING_DEVICE_COMBINED) +// pointing_device_set_cpi_combined_defaults(); +// #endif keyboard_post_init_keymap(); } From 2c5bfa6e29ec1b3f64210e19ff5e548642b314cb Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Mon, 10 Oct 2022 22:54:26 -0700 Subject: [PATCH 18/51] make todo an actual checklist --- keyboards/fingerpunch/TODO.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/keyboards/fingerpunch/TODO.md b/keyboards/fingerpunch/TODO.md index 66cd30bbd485..102649efd289 100644 --- a/keyboards/fingerpunch/TODO.md +++ b/keyboards/fingerpunch/TODO.md @@ -1,5 +1,5 @@ -- [] Add audio features (Ex: sound when capslock or capsword are enabled and disabled) -- [] More haptic features (Ex: capslock/capsword feedback) -- [] (personal item) migrate my capsword to core qmk -- [] add xcase features to fingerpunch -- [] move ximi matrix_74hc595_spi.c logic into the fp_matrix_74hc595_spi.c +- [ ] Add audio features (Ex: sound when capslock or capsword are enabled and disabled) +- [ ] More haptic features (Ex: capslock/capsword feedback) +- [ ] (personal item) migrate my capsword to core qmk +- [ ] add xcase features to fingerpunch +- [ ] move ximi matrix_74hc595_spi.c logic into the fp_matrix_74hc595_spi.c From 2ae9f3c6987b8fa5bf2026dc93872292c1cf9cb7 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Wed, 12 Oct 2022 14:13:13 -0700 Subject: [PATCH 19/51] Removed all references to DYNAMIC_KEYMAP_LAYER_COUNT, as this is now in the vial repo in the vial specific keymaps --- keyboards/fingerpunch/barobord/config.h | 1 - keyboards/fingerpunch/barobord_byomcu/config.h | 1 - keyboards/fingerpunch/bigbarobord/config.h | 1 - keyboards/fingerpunch/ffkb/config.h | 1 - keyboards/fingerpunch/ffkb_byomcu/config.h | 2 -- keyboards/fingerpunch/ffkb_byomcu/v3/config.h | 1 - keyboards/fingerpunch/pinkiesout/config.h | 1 - keyboards/fingerpunch/rockon/v3/config.h | 1 - 8 files changed, 9 deletions(-) diff --git a/keyboards/fingerpunch/barobord/config.h b/keyboards/fingerpunch/barobord/config.h index 4d0e09508b67..28bf1b366adc 100644 --- a/keyboards/fingerpunch/barobord/config.h +++ b/keyboards/fingerpunch/barobord/config.h @@ -124,4 +124,3 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -#define DYNAMIC_KEYMAP_LAYER_COUNT 5 diff --git a/keyboards/fingerpunch/barobord_byomcu/config.h b/keyboards/fingerpunch/barobord_byomcu/config.h index e73dde16f923..97baaa4e5b10 100644 --- a/keyboards/fingerpunch/barobord_byomcu/config.h +++ b/keyboards/fingerpunch/barobord_byomcu/config.h @@ -124,4 +124,3 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -#define DYNAMIC_KEYMAP_LAYER_COUNT 5 diff --git a/keyboards/fingerpunch/bigbarobord/config.h b/keyboards/fingerpunch/bigbarobord/config.h index 5b88e4b4381d..0c28384d4ed3 100644 --- a/keyboards/fingerpunch/bigbarobord/config.h +++ b/keyboards/fingerpunch/bigbarobord/config.h @@ -128,4 +128,3 @@ along with this program. If not, see . // If using encoder type 2, uncomment this // #define ENCODERS_B_REVERSE -#define DYNAMIC_KEYMAP_LAYER_COUNT 5 diff --git a/keyboards/fingerpunch/ffkb/config.h b/keyboards/fingerpunch/ffkb/config.h index 0658e4af78c6..f5bf7e9949b9 100644 --- a/keyboards/fingerpunch/ffkb/config.h +++ b/keyboards/fingerpunch/ffkb/config.h @@ -147,4 +147,3 @@ along with this program. If not, see . // If using encoder type 2, uncomment this // #define ENCODERS_B_REVERSE -#define DYNAMIC_KEYMAP_LAYER_COUNT 5 diff --git a/keyboards/fingerpunch/ffkb_byomcu/config.h b/keyboards/fingerpunch/ffkb_byomcu/config.h index fd4f6fc31482..eed50c84d86f 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/config.h +++ b/keyboards/fingerpunch/ffkb_byomcu/config.h @@ -102,5 +102,3 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -// For via/vial only -#define DYNAMIC_KEYMAP_LAYER_COUNT 5 diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/config.h b/keyboards/fingerpunch/ffkb_byomcu/v3/config.h index a72fc1628f96..98041e41ca47 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v3/config.h +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/config.h @@ -79,4 +79,3 @@ along with this program. If not, see . #define POINTING_DEVICE_INVERT_Y #endif -#define DYNAMIC_KEYMAP_LAYER_COUNT 5 diff --git a/keyboards/fingerpunch/pinkiesout/config.h b/keyboards/fingerpunch/pinkiesout/config.h index 2dcc179be6f2..e1d0cb5a3f8f 100644 --- a/keyboards/fingerpunch/pinkiesout/config.h +++ b/keyboards/fingerpunch/pinkiesout/config.h @@ -112,7 +112,6 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -//#define DYNAMIC_KEYMAP_LAYER_COUNT 5 #ifdef OLED_ENABLE #define OLED_DISPLAY_128X64 diff --git a/keyboards/fingerpunch/rockon/v3/config.h b/keyboards/fingerpunch/rockon/v3/config.h index f21118658e39..9b07b8470e30 100644 --- a/keyboards/fingerpunch/rockon/v3/config.h +++ b/keyboards/fingerpunch/rockon/v3/config.h @@ -80,4 +80,3 @@ along with this program. If not, see . #define POINTING_DEVICE_INVERT_Y #endif -#define DYNAMIC_KEYMAP_LAYER_COUNT 5 From d7a6eae09e1fb50f6aafbb06e768c098d5a9b29d Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Wed, 12 Oct 2022 14:15:26 -0700 Subject: [PATCH 20/51] cleaned up rock on bp readme --- keyboards/fingerpunch/rockon_bp/readme.md | 22 ---------------------- 1 file changed, 22 deletions(-) diff --git a/keyboards/fingerpunch/rockon_bp/readme.md b/keyboards/fingerpunch/rockon_bp/readme.md index b0eaa5a213e9..1d5503853348 100644 --- a/keyboards/fingerpunch/rockon_bp/readme.md +++ b/keyboards/fingerpunch/rockon_bp/readme.md @@ -21,26 +21,4 @@ Options are: PIMORONI_TRACKBALL_ENABLE=yes ``` -(As of April 2022, Vial not supported for this board yet) If using the vial repository, use these: - make fingerpunch/rockon_bp/no-features:vial - make fingerpunch/rockon_bp/oled:vial - make fingerpunch/rockon_bp/rgblight:vial - make fingerpunch/rockon_bp/rgblight-oled:vial - make fingerpunch/rockon_bp/rgbmatrix:vial - make fingerpunch/rockon_bp/rgbmatrix-oled:vial - make fingerpunch/rockon_bp/ec11:vial - make fingerpunch/rockon_bp/oled_ec11:vial - make fingerpunch/rockon_bp/rgblight_ec11:vial - make fingerpunch/rockon_bp/rgblight_oled_ec11:vial - make fingerpunch/rockon_bp/rgbmatrix_ec11:vial - make fingerpunch/rockon_bp/rgbmatrix_oled_ec11:vial - -Example of flashing this keyboard: - - make fingerpunch/rockon_bp/no-features:default:flash - -Or in the vial repository: - - make fingerpunch/rockon_bp/no-features:vial:flash - See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). From b711047fd8eb8e0cadd6f452461e08c103deb5eb Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Fri, 14 Oct 2022 22:02:47 -0700 Subject: [PATCH 21/51] fixed rock on bp on latest qmk --- keyboards/fingerpunch/rockon_bp/rules.mk | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/keyboards/fingerpunch/rockon_bp/rules.mk b/keyboards/fingerpunch/rockon_bp/rules.mk index d69495c979f3..063b1fe8b277 100644 --- a/keyboards/fingerpunch/rockon_bp/rules.mk +++ b/keyboards/fingerpunch/rockon_bp/rules.mk @@ -1,5 +1,6 @@ # MCU name -MCU = STM32F401 +MCU = STM32F411 +BOARD = BLACKPILL_STM32_F411 # Bootloader selection BOOTLOADER = stm32-dfu From 2fdfe151e28724fd8cae2db75ca1a62b7e009baf Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Fri, 14 Oct 2022 23:23:10 -0700 Subject: [PATCH 22/51] rock on bp encoder pads were in the wrong order, so the left encoder was reversed --- keyboards/fingerpunch/rockon_bp/config.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/fingerpunch/rockon_bp/config.h b/keyboards/fingerpunch/rockon_bp/config.h index 854584fb175e..87d2d2b9be5b 100644 --- a/keyboards/fingerpunch/rockon_bp/config.h +++ b/keyboards/fingerpunch/rockon_bp/config.h @@ -142,8 +142,8 @@ along with this program. If not, see . // #define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 /* encoder config */ -#define ENCODERS_PAD_A {A8, B14} -#define ENCODERS_PAD_B {B15, B13} +#define ENCODERS_PAD_A {B15, B14} +#define ENCODERS_PAD_B {A8, B13} #define ENCODER_RESOLUTION 2 // disable testing From 6050707d7328ccc2f643d6d7ce41a4071989dcd3 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Sat, 15 Oct 2022 22:45:12 -0700 Subject: [PATCH 23/51] switched FP_LAYER_LIGHTING_ENABLE and FP_LAYER_LIGHTING_DYNAMIC_BASE_LAYER to DISABLE options and enabled the features by default --- keyboards/fingerpunch/README.md | 62 +++++++++---------- .../ffkb_byomcu/v3/keymaps/default/config.h | 1 - keyboards/fingerpunch/fp_rgb_common.c | 26 ++++---- users/sadekbaroudi/config.h | 2 - 4 files changed, 44 insertions(+), 47 deletions(-) diff --git a/keyboards/fingerpunch/README.md b/keyboards/fingerpunch/README.md index d6150329d708..83d6759b1167 100644 --- a/keyboards/fingerpunch/README.md +++ b/keyboards/fingerpunch/README.md @@ -116,42 +116,42 @@ void pointing_device_init_user(void) { ## RGB Lighting Notes: -* unless otherwise specified, features for rgb are supported on both rgblight ( https://github.com/qmk/qmk_firmware/blob/master/docs/feature_rgblight.md ) and rgb matrix ( https://github.com/qmk/qmk_firmware/blob/master/docs/feature_rgb_matrix.md ). -* the base layer is still configurable using the QMK rgb keycodes ( https://github.com/qmk/qmk_firmware/blob/master/docs/feature_rgblight.md#keycodes ), but you will need to enable the `FP_LAYER_LIGHTING_DYNAMIC_BASE_LAYER` +* Unless otherwise specified, features for rgb are supported on both rgblight ( https://github.com/qmk/qmk_firmware/blob/master/docs/feature_rgblight.md ) and rgb matrix ( https://github.com/qmk/qmk_firmware/blob/master/docs/feature_rgb_matrix.md ). +* The base layer is still configurable using the QMK rgb keycodes ( https://github.com/qmk/qmk_firmware/blob/master/docs/feature_rgblight.md#keycodes ). If you want the base layer to be static, you will need to define the `FP_LAYER_LIGHTING_DYNAMIC_BASE_LAYER_DISABLE` config. Some config parameters will depend on which you're using, like `FP_LAYER_LIGHTING_MODE`. ### Layer lighting -If using this feature (`FP_LAYER_LIGHTING_ENABLE`), please note that the `FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE` will be automatically disabled. Given that this feature will handle the auto mouse layer as well, you don't need to activate the layer lighting twice. Just set the mouse layer lighting to the color you prefer using the `FP_LAYER_LIGHTING_HUE_X` below. - -| Setting | Description | Default | -| --------------------------------------- | --------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | -| `FP_STARTUP_ANIMATION_DISABLE` | (Optional) Define this to disable startup animation | `undefined` | -| `FP_LAYER_LIGHTING_ENABLE` | (Optional) Define this to enable layer lighting | `undefined` | -| `FP_LAYER_LIGHTING_DYNAMIC_BASE_LAYER` | (Optional) While using layer lighting, enable dynamically changing the base layer | `undefined` | -| `FP_LAYER_LIGHTING_MODE` | (Required) Set the layer lighting default mode | `RGBLIGHT_MODE_STATIC_LIGHT` or `RGB_MATRIX_SOLID_COLOR` | -| `FP_LAYER_LIGHTING_HUE_0` | (Required) Set the layer lighting hue for layer 0 | `HSV_BLUE` | -| `FP_LAYER_LIGHTING_HUE_1` | (Required) Set the layer lighting hue for layer 1 | `HSV_WHITE` | -| `FP_LAYER_LIGHTING_HUE_2` | (Required) Set the layer lighting hue for layer 2 | `HSV_GREEN` | -| `FP_LAYER_LIGHTING_HUE_3` | (Required) Set the layer lighting hue for layer 3 | `HSV_PURPLE` | -| `FP_LAYER_LIGHTING_HUE_4` | (Required) Set the layer lighting hue for layer 4 | `HSV_YELLOW` | -| `FP_LAYER_LIGHTING_HUE_5` | (Required) Set the layer lighting hue for layer 5 | `FP_HSV_MELON` | -| `FP_LAYER_LIGHTING_HUE_6` | (Required) Set the layer lighting hue for layer 6 | `HSV_CYAN` | -| `FP_LAYER_LIGHTING_HUE_7` | (Required) Set the layer lighting hue for layer 7 | `HSV_SPRINGGREEN` | -| `FP_LAYER_LIGHTING_MODE_0` | (Required) Set the layer lighting mode for layer 0 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_MODE_1` | (Required) Set the layer lighting mode for layer 1 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_MODE_2` | (Required) Set the layer lighting mode for layer 2 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_MODE_3` | (Required) Set the layer lighting mode for layer 3 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_MODE_4` | (Required) Set the layer lighting mode for layer 4 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_MODE_5` | (Required) Set the layer lighting mode for layer 5 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_MODE_6` | (Required) Set the layer lighting mode for layer 6 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_MODE_7` | (Required) Set the layer lighting mode for layer 7 | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_CAPS_LOCK_HUE` | (Required) Set the layer lighting hue when caps lock is enabled | `HSV_RED` | -| `FP_LAYER_LIGHTING_CAPS_LOCK_MODE` | (Required) Set the layer lighting mode when caps lock is enabled | `FP_LAYER_LIGHTING_MODE` | -| `FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE` | (Optional) If using RGB, set the layer lighting when auto mouse is triggered | `undefined` | -| `FP_LAYER_LIGHTING_AUTO_MOUSE_HUE` | (Required) This is the hue that is used for the auto mouse layer lighting | `HSV_ORANGE` | -| `FP_LAYER_LIGHTING_AUTO_MOUSE_MODE` | (Required) This is the mode that is used for the auto mouse layer lighting | `FP_LAYER_LIGHTING_MODE` | +Please note that the `FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE` will be automatically disabled unless you define `FP_LAYER_LIGHTING_DISABLE`. Given that this fingerpunch layer lighting will handle the auto mouse layer as well, you don't need to activate the layer lighting twice. Just set the mouse layer lighting to the color you prefer using the `FP_LAYER_LIGHTING_HUE_X` below. + +| Setting | Description | Default | +| ----------------------------------------------- | ---------------------------------------------------------------------------------- | ------------------------------------------------------------ | +| `FP_STARTUP_ANIMATION_DISABLE` | (Optional) Define this to disable startup animation | | +| `FP_LAYER_LIGHTING_DISABLE` | (Optional) Define this to disable layer lighting | `undefined` | +| `FP_LAYER_LIGHTING_DYNAMIC_BASE_LAYER_DISABLE` | (Optional) While using layer lighting, disable dynamically changing the base layer | `undefined` | +| `FP_LAYER_LIGHTING_MODE` | (Required) Set the layer lighting default mode | `RGBLIGHT_MODE_STATIC_LIGHT` or `RGB_MATRIX_SOLID_COLOR` | +| `FP_LAYER_LIGHTING_HUE_0` | (Required) Set the layer lighting hue for layer 0 | `HSV_BLUE` | +| `FP_LAYER_LIGHTING_HUE_1` | (Required) Set the layer lighting hue for layer 1 | `HSV_WHITE` | +| `FP_LAYER_LIGHTING_HUE_2` | (Required) Set the layer lighting hue for layer 2 | `HSV_GREEN` | +| `FP_LAYER_LIGHTING_HUE_3` | (Required) Set the layer lighting hue for layer 3 | `HSV_PURPLE` | +| `FP_LAYER_LIGHTING_HUE_4` | (Required) Set the layer lighting hue for layer 4 | `HSV_YELLOW` | +| `FP_LAYER_LIGHTING_HUE_5` | (Required) Set the layer lighting hue for layer 5 | `FP_HSV_MELON` | +| `FP_LAYER_LIGHTING_HUE_6` | (Required) Set the layer lighting hue for layer 6 | `HSV_CYAN` | +| `FP_LAYER_LIGHTING_HUE_7` | (Required) Set the layer lighting hue for layer 7 | `HSV_SPRINGGREEN` | +| `FP_LAYER_LIGHTING_MODE_0` | (Required) Set the layer lighting mode for layer 0 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_1` | (Required) Set the layer lighting mode for layer 1 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_2` | (Required) Set the layer lighting mode for layer 2 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_3` | (Required) Set the layer lighting mode for layer 3 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_4` | (Required) Set the layer lighting mode for layer 4 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_5` | (Required) Set the layer lighting mode for layer 5 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_6` | (Required) Set the layer lighting mode for layer 6 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_MODE_7` | (Required) Set the layer lighting mode for layer 7 | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_CAPS_LOCK_HUE` | (Required) Set the layer lighting hue when caps lock is enabled | `HSV_RED` | +| `FP_LAYER_LIGHTING_CAPS_LOCK_MODE` | (Required) Set the layer lighting mode when caps lock is enabled | `FP_LAYER_LIGHTING_MODE` | +| `FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE` | (Optional) If using RGB, set the layer lighting when auto mouse is triggered | `undefined` | +| `FP_LAYER_LIGHTING_AUTO_MOUSE_HUE` | (Required) This is the hue that is used for the auto mouse layer lighting | `HSV_ORANGE` | +| `FP_LAYER_LIGHTING_AUTO_MOUSE_MODE` | (Required) This is the mode that is used for the auto mouse layer lighting | `FP_LAYER_LIGHTING_MODE` | ### Additional colors diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/config.h b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/config.h index 4aa17a121f7a..665a398996a2 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/config.h +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/config.h @@ -4,5 +4,4 @@ // Define only one of the two below, but not both. // Read here for details: https://github.com/sadekbaroudi/qmk_firmware/tree/master/keyboards/fingerpunch#layer-lighting -#define FP_LAYER_LIGHTING_ENABLE //#define FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE diff --git a/keyboards/fingerpunch/fp_rgb_common.c b/keyboards/fingerpunch/fp_rgb_common.c index 37c52fa7c387..f26a264d3bca 100644 --- a/keyboards/fingerpunch/fp_rgb_common.c +++ b/keyboards/fingerpunch/fp_rgb_common.c @@ -69,71 +69,71 @@ void fp_post_init_rgb_common(void) { layer_state_t fp_layer_state_set_rgb(layer_state_t state) { switch (get_highest_layer(state)) { -# if defined(FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE) && defined(AUTO_MOUSE_DEFAULT_LAYER) && !defined(FP_LAYER_LIGHTING_ENABLE) +# if defined(FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE) && defined(AUTO_MOUSE_DEFAULT_LAYER) && defined(FP_LAYER_LIGHTING_DISABLE) case AUTO_MOUSE_DEFAULT_LAYER: fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_AUTO_MOUSE_HUE, FP_LAYER_LIGHTING_AUTO_MOUSE_MODE); break; # endif case 0: -# ifdef FP_LAYER_LIGHTING_ENABLE +# ifndef FP_LAYER_LIGHTING_DISABLE if (fp_caps_lock_get()) { fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_CAPS_LOCK_HUE, FP_LAYER_LIGHTING_CAPS_LOCK_MODE); xprintf("caps lock /n"); } else { -# ifdef FP_LAYER_LIGHTING_DYNAMIC_BASE_LAYER - fp_rgb_set_hsv_and_mode(fp_config.rgb_hue, fp_config.rgb_sat, fp_config.rgb_val, fp_config.rgb_mode); -# else +# ifdef FP_LAYER_LIGHTING_DYNAMIC_BASE_LAYER_DISABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_0, FP_LAYER_LIGHTING_MODE_0); +# else + fp_rgb_set_hsv_and_mode(fp_config.rgb_hue, fp_config.rgb_sat, fp_config.rgb_val, fp_config.rgb_mode); # endif xprintf("base layer /n"); } # endif break; case 1: -# ifdef FP_LAYER_LIGHTING_ENABLE +# ifndef FP_LAYER_LIGHTING_DISABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_1, FP_LAYER_LIGHTING_MODE_1); # endif xprintf("layer 1: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_1, FP_LAYER_LIGHTING_MODE_1); break; case 2: -# ifdef FP_LAYER_LIGHTING_ENABLE +# ifndef FP_LAYER_LIGHTING_DISABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_2, FP_LAYER_LIGHTING_MODE_2); # endif xprintf("layer 2: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_2, FP_LAYER_LIGHTING_MODE_2); break; case 3: -# ifdef FP_LAYER_LIGHTING_ENABLE +# ifndef FP_LAYER_LIGHTING_DISABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_3, FP_LAYER_LIGHTING_MODE_3); # endif xprintf("layer 3: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_3, FP_LAYER_LIGHTING_MODE_3); break; case 4: -# ifdef FP_LAYER_LIGHTING_ENABLE +# ifndef FP_LAYER_LIGHTING_DISABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_4, FP_LAYER_LIGHTING_MODE_4); # endif xprintf("layer 4: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_4, FP_LAYER_LIGHTING_MODE_4); break; case 5: -# ifdef FP_LAYER_LIGHTING_ENABLE +# ifndef FP_LAYER_LIGHTING_DISABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_5, FP_LAYER_LIGHTING_MODE_5); # endif xprintf("layer 5: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_5, FP_LAYER_LIGHTING_MODE_5); break; case 6: -# ifdef FP_LAYER_LIGHTING_ENABLE +# ifndef FP_LAYER_LIGHTING_DISABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_6, FP_LAYER_LIGHTING_MODE_6); # endif xprintf("layer 6: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_6, FP_LAYER_LIGHTING_MODE_6); break; case 7: -# ifdef FP_LAYER_LIGHTING_ENABLE +# ifndef FP_LAYER_LIGHTING_DISABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_7, FP_LAYER_LIGHTING_MODE_7); # endif xprintf("layer 7: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_7, FP_LAYER_LIGHTING_MODE_7); break; default: // default to layer 0 behavior -# ifdef FP_LAYER_LIGHTING_ENABLE +# ifndef FP_LAYER_LIGHTING_DISABLE fp_rgb_set_hsv_and_mode(FP_LAYER_LIGHTING_HUE_0, FP_LAYER_LIGHTING_MODE_0); # endif xprintf("layer default: hue: {%d, %d, %d}, mode: %d\n", FP_LAYER_LIGHTING_HUE_0, FP_LAYER_LIGHTING_MODE_0); diff --git a/users/sadekbaroudi/config.h b/users/sadekbaroudi/config.h index 8ff9fe357d7c..3635b078385e 100755 --- a/users/sadekbaroudi/config.h +++ b/users/sadekbaroudi/config.h @@ -31,8 +31,6 @@ // Define only one of the two below, but not both. // Read here for details: https://github.com/sadekbaroudi/qmk_firmware/tree/master/keyboards/fingerpunch#layer-lighting -#define FP_LAYER_LIGHTING_ENABLE -#define FP_LAYER_LIGHTING_DYNAMIC_BASE_LAYER // #define FP_LAYER_LIGHTING_AUTO_MOUSE_ENABLE #define FP_LAYER_LIGHTING_HUE_2 FP_HSV_MINT From 5b9014de452cb94450eb5a008e1a3cc47203b1ea Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Sat, 15 Oct 2022 23:10:37 -0700 Subject: [PATCH 24/51] fixed encoder direction --- keyboards/fingerpunch/rockon_bp/config.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/fingerpunch/rockon_bp/config.h b/keyboards/fingerpunch/rockon_bp/config.h index 87d2d2b9be5b..854584fb175e 100644 --- a/keyboards/fingerpunch/rockon_bp/config.h +++ b/keyboards/fingerpunch/rockon_bp/config.h @@ -142,8 +142,8 @@ along with this program. If not, see . // #define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 /* encoder config */ -#define ENCODERS_PAD_A {B15, B14} -#define ENCODERS_PAD_B {A8, B13} +#define ENCODERS_PAD_A {A8, B14} +#define ENCODERS_PAD_B {B15, B13} #define ENCODER_RESOLUTION 2 // disable testing From 08723f5060ae1d0a84195889ec2a25ea19afc375 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Sun, 16 Oct 2022 20:49:41 -0700 Subject: [PATCH 25/51] fixed orientation for combined trackball --- keyboards/fingerpunch/ximi/config.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/keyboards/fingerpunch/ximi/config.h b/keyboards/fingerpunch/ximi/config.h index 8ca49731d4c8..ae02db6edda6 100644 --- a/keyboards/fingerpunch/ximi/config.h +++ b/keyboards/fingerpunch/ximi/config.h @@ -194,7 +194,6 @@ along with this program. If not, see . #define PMW33XX_CS_PIN GP26 #define PMW33XX_CPI 800 #define PMW33XX_CS_DIVISOR 8 // needs to be the same as the SHIFTREG_DIVISOR above - #define POINTING_DEVICE_INVERT_X // move to trackball specific config /* SPI config for pmw3360 sensor. */ #define SPI_DRIVER SPID0 @@ -204,6 +203,8 @@ along with this program. If not, see . // #define SPI_MISO_PAL_MODE 5 // already defined in chibios #ifdef FP_TRACKBALL_BOTH #define POINTING_DEVICE_COMBINED + #define POINTING_DEVICE_INVERT_Y // This inverts the Y on the left side only + #define POINTING_DEVICE_INVERT_X_RIGHT #endif #ifdef FP_TRACKBALL_LEFT #define POINTING_DEVICE_LEFT From 38867c900e7726d7b39f835462d7c1a49a8fa65e Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Fri, 21 Oct 2022 23:25:20 -0700 Subject: [PATCH 26/51] moved my personal boards into their own folder --- keyboards/fingerpunch/{ => personal}/euclid36proto/config.h | 0 .../fingerpunch/{ => personal}/euclid36proto/euclid36proto.c | 0 .../fingerpunch/{ => personal}/euclid36proto/euclid36proto.h | 0 .../{ => personal}/euclid36proto/keymaps/default/keymap.c | 0 .../{ => personal}/euclid36proto/keymaps/sadekbaroudi/keymap.c | 0 keyboards/fingerpunch/{ => personal}/euclid36proto/readme.md | 0 keyboards/fingerpunch/{ => personal}/euclid36proto/rules.mk | 0 keyboards/fingerpunch/{ => personal}/halfdash/.noci | 0 keyboards/fingerpunch/{ => personal}/halfdash/config.h | 0 keyboards/fingerpunch/{ => personal}/halfdash/halfdash.c | 0 keyboards/fingerpunch/{ => personal}/halfdash/halfdash.h | 0 .../{ => personal}/halfdash/keymaps/sadekbaroudi/keymap.c | 0 keyboards/fingerpunch/{ => personal}/halfdash/readme.md | 0 keyboards/fingerpunch/{ => personal}/halfdash/rules.mk | 0 .../fingerpunch/{ => personal}/handwired/barobordhw/barobordhw.c | 0 .../fingerpunch/{ => personal}/handwired/barobordhw/barobordhw.h | 0 .../fingerpunch/{ => personal}/handwired/barobordhw/config.h | 0 .../{ => personal}/handwired/barobordhw/keymaps/default/keymap.c | 0 .../handwired/barobordhw/keymaps/sadekbaroudi/keymap.c | 0 .../fingerpunch/{ => personal}/handwired/barobordhw/readme.md | 0 .../{ => personal}/handwired/barobordhw/rules-rgb-matrix.mk | 0 .../fingerpunch/{ => personal}/handwired/barobordhw/rules-rgb.mk | 0 .../fingerpunch/{ => personal}/handwired/enigma36/config-v1.h | 0 .../fingerpunch/{ => personal}/handwired/enigma36/config-v2.h | 0 .../fingerpunch/{ => personal}/handwired/enigma36/enigma36.c | 0 .../fingerpunch/{ => personal}/handwired/enigma36/enigma36.h | 0 .../{ => personal}/handwired/enigma36/keymaps/default/keymap.c | 0 .../handwired/enigma36/keymaps/sadekbaroudi/keymap.c | 0 keyboards/fingerpunch/{ => personal}/handwired/enigma36/readme.md | 0 .../fingerpunch/{ => personal}/handwired/enigma36/rules-v1.mk | 0 .../fingerpunch/{ => personal}/handwired/enigma36/rules-v2.mk | 0 .../fingerpunch/{ => personal}/handwired/enigma36/thumbstick.c | 0 .../fingerpunch/{ => personal}/handwired/enigma36/thumbstick.h | 0 keyboards/fingerpunch/{ => personal}/handwired/ffkbhw/config.h | 0 keyboards/fingerpunch/{ => personal}/handwired/ffkbhw/ffkbhw.c | 0 keyboards/fingerpunch/{ => personal}/handwired/ffkbhw/ffkbhw.h | 0 keyboards/fingerpunch/{ => personal}/handwired/ffkbhw/info.json | 0 .../{ => personal}/handwired/ffkbhw/keymaps/default/keymap.c | 0 .../{ => personal}/handwired/ffkbhw/keymaps/sadekbaroudi/keymap.c | 0 keyboards/fingerpunch/{ => personal}/handwired/ffkbhw/readme.md | 0 keyboards/fingerpunch/{ => personal}/handwired/ffkbhw/rules.mk | 0 keyboards/fingerpunch/{ => personal}/handwired/pteron38/config.h | 0 keyboards/fingerpunch/{ => personal}/handwired/pteron38/info.json | 0 .../{ => personal}/handwired/pteron38/keymaps/default/keymap.c | 0 .../handwired/pteron38/keymaps/sadekbaroudi/keymap.c | 0 .../fingerpunch/{ => personal}/handwired/pteron38/pteron38.c | 0 .../fingerpunch/{ => personal}/handwired/pteron38/pteron38.h | 0 keyboards/fingerpunch/{ => personal}/handwired/pteron38/readme.md | 0 keyboards/fingerpunch/{ => personal}/handwired/pteron38/rules.mk | 0 keyboards/fingerpunch/{ => personal}/osprette/config.h | 0 .../fingerpunch/{ => personal}/osprette/keymaps/default/config.h | 0 .../fingerpunch/{ => personal}/osprette/keymaps/default/keymap.c | 0 .../fingerpunch/{ => personal}/osprette/keymaps/default/rules.mk | 0 .../{ => personal}/osprette/keymaps/sadekbaroudi/keymap.c | 0 .../fingerpunch/{ => personal}/osprette/keymaps/smores56/config.h | 0 .../fingerpunch/{ => personal}/osprette/keymaps/smores56/keymap.c | 0 .../fingerpunch/{ => personal}/osprette/keymaps/smores56/rules.mk | 0 keyboards/fingerpunch/{ => personal}/osprette/osprette.c | 0 keyboards/fingerpunch/{ => personal}/osprette/osprette.h | 0 keyboards/fingerpunch/{ => personal}/osprette/rules.mk | 0 60 files changed, 0 insertions(+), 0 deletions(-) rename keyboards/fingerpunch/{ => personal}/euclid36proto/config.h (100%) rename keyboards/fingerpunch/{ => personal}/euclid36proto/euclid36proto.c (100%) rename keyboards/fingerpunch/{ => personal}/euclid36proto/euclid36proto.h (100%) rename keyboards/fingerpunch/{ => personal}/euclid36proto/keymaps/default/keymap.c (100%) rename keyboards/fingerpunch/{ => personal}/euclid36proto/keymaps/sadekbaroudi/keymap.c (100%) rename keyboards/fingerpunch/{ => personal}/euclid36proto/readme.md (100%) rename keyboards/fingerpunch/{ => personal}/euclid36proto/rules.mk (100%) rename keyboards/fingerpunch/{ => personal}/halfdash/.noci (100%) rename keyboards/fingerpunch/{ => personal}/halfdash/config.h (100%) rename keyboards/fingerpunch/{ => personal}/halfdash/halfdash.c (100%) rename keyboards/fingerpunch/{ => personal}/halfdash/halfdash.h (100%) rename keyboards/fingerpunch/{ => personal}/halfdash/keymaps/sadekbaroudi/keymap.c (100%) rename keyboards/fingerpunch/{ => personal}/halfdash/readme.md (100%) rename keyboards/fingerpunch/{ => personal}/halfdash/rules.mk (100%) rename keyboards/fingerpunch/{ => personal}/handwired/barobordhw/barobordhw.c (100%) rename keyboards/fingerpunch/{ => personal}/handwired/barobordhw/barobordhw.h (100%) rename keyboards/fingerpunch/{ => personal}/handwired/barobordhw/config.h (100%) rename keyboards/fingerpunch/{ => personal}/handwired/barobordhw/keymaps/default/keymap.c (100%) rename keyboards/fingerpunch/{ => personal}/handwired/barobordhw/keymaps/sadekbaroudi/keymap.c (100%) rename keyboards/fingerpunch/{ => personal}/handwired/barobordhw/readme.md (100%) rename keyboards/fingerpunch/{ => personal}/handwired/barobordhw/rules-rgb-matrix.mk (100%) rename keyboards/fingerpunch/{ => personal}/handwired/barobordhw/rules-rgb.mk (100%) rename keyboards/fingerpunch/{ => personal}/handwired/enigma36/config-v1.h (100%) rename keyboards/fingerpunch/{ => personal}/handwired/enigma36/config-v2.h (100%) rename keyboards/fingerpunch/{ => personal}/handwired/enigma36/enigma36.c (100%) rename keyboards/fingerpunch/{ => personal}/handwired/enigma36/enigma36.h (100%) rename keyboards/fingerpunch/{ => personal}/handwired/enigma36/keymaps/default/keymap.c (100%) rename keyboards/fingerpunch/{ => personal}/handwired/enigma36/keymaps/sadekbaroudi/keymap.c (100%) rename keyboards/fingerpunch/{ => personal}/handwired/enigma36/readme.md (100%) rename keyboards/fingerpunch/{ => personal}/handwired/enigma36/rules-v1.mk (100%) rename keyboards/fingerpunch/{ => personal}/handwired/enigma36/rules-v2.mk (100%) rename keyboards/fingerpunch/{ => personal}/handwired/enigma36/thumbstick.c (100%) rename keyboards/fingerpunch/{ => personal}/handwired/enigma36/thumbstick.h (100%) rename keyboards/fingerpunch/{ => personal}/handwired/ffkbhw/config.h (100%) rename keyboards/fingerpunch/{ => personal}/handwired/ffkbhw/ffkbhw.c (100%) rename keyboards/fingerpunch/{ => personal}/handwired/ffkbhw/ffkbhw.h (100%) rename keyboards/fingerpunch/{ => personal}/handwired/ffkbhw/info.json (100%) rename keyboards/fingerpunch/{ => personal}/handwired/ffkbhw/keymaps/default/keymap.c (100%) rename keyboards/fingerpunch/{ => personal}/handwired/ffkbhw/keymaps/sadekbaroudi/keymap.c (100%) rename keyboards/fingerpunch/{ => personal}/handwired/ffkbhw/readme.md (100%) rename keyboards/fingerpunch/{ => personal}/handwired/ffkbhw/rules.mk (100%) rename keyboards/fingerpunch/{ => personal}/handwired/pteron38/config.h (100%) rename keyboards/fingerpunch/{ => personal}/handwired/pteron38/info.json (100%) rename keyboards/fingerpunch/{ => personal}/handwired/pteron38/keymaps/default/keymap.c (100%) rename keyboards/fingerpunch/{ => personal}/handwired/pteron38/keymaps/sadekbaroudi/keymap.c (100%) rename keyboards/fingerpunch/{ => personal}/handwired/pteron38/pteron38.c (100%) rename keyboards/fingerpunch/{ => personal}/handwired/pteron38/pteron38.h (100%) rename keyboards/fingerpunch/{ => personal}/handwired/pteron38/readme.md (100%) rename keyboards/fingerpunch/{ => personal}/handwired/pteron38/rules.mk (100%) rename keyboards/fingerpunch/{ => personal}/osprette/config.h (100%) rename keyboards/fingerpunch/{ => personal}/osprette/keymaps/default/config.h (100%) rename keyboards/fingerpunch/{ => personal}/osprette/keymaps/default/keymap.c (100%) rename keyboards/fingerpunch/{ => personal}/osprette/keymaps/default/rules.mk (100%) rename keyboards/fingerpunch/{ => personal}/osprette/keymaps/sadekbaroudi/keymap.c (100%) rename keyboards/fingerpunch/{ => personal}/osprette/keymaps/smores56/config.h (100%) rename keyboards/fingerpunch/{ => personal}/osprette/keymaps/smores56/keymap.c (100%) rename keyboards/fingerpunch/{ => personal}/osprette/keymaps/smores56/rules.mk (100%) rename keyboards/fingerpunch/{ => personal}/osprette/osprette.c (100%) rename keyboards/fingerpunch/{ => personal}/osprette/osprette.h (100%) rename keyboards/fingerpunch/{ => personal}/osprette/rules.mk (100%) diff --git a/keyboards/fingerpunch/euclid36proto/config.h b/keyboards/fingerpunch/personal/euclid36proto/config.h similarity index 100% rename from keyboards/fingerpunch/euclid36proto/config.h rename to keyboards/fingerpunch/personal/euclid36proto/config.h diff --git a/keyboards/fingerpunch/euclid36proto/euclid36proto.c b/keyboards/fingerpunch/personal/euclid36proto/euclid36proto.c similarity index 100% rename from keyboards/fingerpunch/euclid36proto/euclid36proto.c rename to keyboards/fingerpunch/personal/euclid36proto/euclid36proto.c diff --git a/keyboards/fingerpunch/euclid36proto/euclid36proto.h b/keyboards/fingerpunch/personal/euclid36proto/euclid36proto.h similarity index 100% rename from keyboards/fingerpunch/euclid36proto/euclid36proto.h rename to keyboards/fingerpunch/personal/euclid36proto/euclid36proto.h diff --git a/keyboards/fingerpunch/euclid36proto/keymaps/default/keymap.c b/keyboards/fingerpunch/personal/euclid36proto/keymaps/default/keymap.c similarity index 100% rename from keyboards/fingerpunch/euclid36proto/keymaps/default/keymap.c rename to keyboards/fingerpunch/personal/euclid36proto/keymaps/default/keymap.c diff --git a/keyboards/fingerpunch/euclid36proto/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/personal/euclid36proto/keymaps/sadekbaroudi/keymap.c similarity index 100% rename from keyboards/fingerpunch/euclid36proto/keymaps/sadekbaroudi/keymap.c rename to keyboards/fingerpunch/personal/euclid36proto/keymaps/sadekbaroudi/keymap.c diff --git a/keyboards/fingerpunch/euclid36proto/readme.md b/keyboards/fingerpunch/personal/euclid36proto/readme.md similarity index 100% rename from keyboards/fingerpunch/euclid36proto/readme.md rename to keyboards/fingerpunch/personal/euclid36proto/readme.md diff --git a/keyboards/fingerpunch/euclid36proto/rules.mk b/keyboards/fingerpunch/personal/euclid36proto/rules.mk similarity index 100% rename from keyboards/fingerpunch/euclid36proto/rules.mk rename to keyboards/fingerpunch/personal/euclid36proto/rules.mk diff --git a/keyboards/fingerpunch/halfdash/.noci b/keyboards/fingerpunch/personal/halfdash/.noci similarity index 100% rename from keyboards/fingerpunch/halfdash/.noci rename to keyboards/fingerpunch/personal/halfdash/.noci diff --git a/keyboards/fingerpunch/halfdash/config.h b/keyboards/fingerpunch/personal/halfdash/config.h similarity index 100% rename from keyboards/fingerpunch/halfdash/config.h rename to keyboards/fingerpunch/personal/halfdash/config.h diff --git a/keyboards/fingerpunch/halfdash/halfdash.c b/keyboards/fingerpunch/personal/halfdash/halfdash.c similarity index 100% rename from keyboards/fingerpunch/halfdash/halfdash.c rename to keyboards/fingerpunch/personal/halfdash/halfdash.c diff --git a/keyboards/fingerpunch/halfdash/halfdash.h b/keyboards/fingerpunch/personal/halfdash/halfdash.h similarity index 100% rename from keyboards/fingerpunch/halfdash/halfdash.h rename to keyboards/fingerpunch/personal/halfdash/halfdash.h diff --git a/keyboards/fingerpunch/halfdash/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/personal/halfdash/keymaps/sadekbaroudi/keymap.c similarity index 100% rename from keyboards/fingerpunch/halfdash/keymaps/sadekbaroudi/keymap.c rename to keyboards/fingerpunch/personal/halfdash/keymaps/sadekbaroudi/keymap.c diff --git a/keyboards/fingerpunch/halfdash/readme.md b/keyboards/fingerpunch/personal/halfdash/readme.md similarity index 100% rename from keyboards/fingerpunch/halfdash/readme.md rename to keyboards/fingerpunch/personal/halfdash/readme.md diff --git a/keyboards/fingerpunch/halfdash/rules.mk b/keyboards/fingerpunch/personal/halfdash/rules.mk similarity index 100% rename from keyboards/fingerpunch/halfdash/rules.mk rename to keyboards/fingerpunch/personal/halfdash/rules.mk diff --git a/keyboards/fingerpunch/handwired/barobordhw/barobordhw.c b/keyboards/fingerpunch/personal/handwired/barobordhw/barobordhw.c similarity index 100% rename from keyboards/fingerpunch/handwired/barobordhw/barobordhw.c rename to keyboards/fingerpunch/personal/handwired/barobordhw/barobordhw.c diff --git a/keyboards/fingerpunch/handwired/barobordhw/barobordhw.h b/keyboards/fingerpunch/personal/handwired/barobordhw/barobordhw.h similarity index 100% rename from keyboards/fingerpunch/handwired/barobordhw/barobordhw.h rename to keyboards/fingerpunch/personal/handwired/barobordhw/barobordhw.h diff --git a/keyboards/fingerpunch/handwired/barobordhw/config.h b/keyboards/fingerpunch/personal/handwired/barobordhw/config.h similarity index 100% rename from keyboards/fingerpunch/handwired/barobordhw/config.h rename to keyboards/fingerpunch/personal/handwired/barobordhw/config.h diff --git a/keyboards/fingerpunch/handwired/barobordhw/keymaps/default/keymap.c b/keyboards/fingerpunch/personal/handwired/barobordhw/keymaps/default/keymap.c similarity index 100% rename from keyboards/fingerpunch/handwired/barobordhw/keymaps/default/keymap.c rename to keyboards/fingerpunch/personal/handwired/barobordhw/keymaps/default/keymap.c diff --git a/keyboards/fingerpunch/handwired/barobordhw/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/personal/handwired/barobordhw/keymaps/sadekbaroudi/keymap.c similarity index 100% rename from keyboards/fingerpunch/handwired/barobordhw/keymaps/sadekbaroudi/keymap.c rename to keyboards/fingerpunch/personal/handwired/barobordhw/keymaps/sadekbaroudi/keymap.c diff --git a/keyboards/fingerpunch/handwired/barobordhw/readme.md b/keyboards/fingerpunch/personal/handwired/barobordhw/readme.md similarity index 100% rename from keyboards/fingerpunch/handwired/barobordhw/readme.md rename to keyboards/fingerpunch/personal/handwired/barobordhw/readme.md diff --git a/keyboards/fingerpunch/handwired/barobordhw/rules-rgb-matrix.mk b/keyboards/fingerpunch/personal/handwired/barobordhw/rules-rgb-matrix.mk similarity index 100% rename from keyboards/fingerpunch/handwired/barobordhw/rules-rgb-matrix.mk rename to keyboards/fingerpunch/personal/handwired/barobordhw/rules-rgb-matrix.mk diff --git a/keyboards/fingerpunch/handwired/barobordhw/rules-rgb.mk b/keyboards/fingerpunch/personal/handwired/barobordhw/rules-rgb.mk similarity index 100% rename from keyboards/fingerpunch/handwired/barobordhw/rules-rgb.mk rename to keyboards/fingerpunch/personal/handwired/barobordhw/rules-rgb.mk diff --git a/keyboards/fingerpunch/handwired/enigma36/config-v1.h b/keyboards/fingerpunch/personal/handwired/enigma36/config-v1.h similarity index 100% rename from keyboards/fingerpunch/handwired/enigma36/config-v1.h rename to keyboards/fingerpunch/personal/handwired/enigma36/config-v1.h diff --git a/keyboards/fingerpunch/handwired/enigma36/config-v2.h b/keyboards/fingerpunch/personal/handwired/enigma36/config-v2.h similarity index 100% rename from keyboards/fingerpunch/handwired/enigma36/config-v2.h rename to keyboards/fingerpunch/personal/handwired/enigma36/config-v2.h diff --git a/keyboards/fingerpunch/handwired/enigma36/enigma36.c b/keyboards/fingerpunch/personal/handwired/enigma36/enigma36.c similarity index 100% rename from keyboards/fingerpunch/handwired/enigma36/enigma36.c rename to keyboards/fingerpunch/personal/handwired/enigma36/enigma36.c diff --git a/keyboards/fingerpunch/handwired/enigma36/enigma36.h b/keyboards/fingerpunch/personal/handwired/enigma36/enigma36.h similarity index 100% rename from keyboards/fingerpunch/handwired/enigma36/enigma36.h rename to keyboards/fingerpunch/personal/handwired/enigma36/enigma36.h diff --git a/keyboards/fingerpunch/handwired/enigma36/keymaps/default/keymap.c b/keyboards/fingerpunch/personal/handwired/enigma36/keymaps/default/keymap.c similarity index 100% rename from keyboards/fingerpunch/handwired/enigma36/keymaps/default/keymap.c rename to keyboards/fingerpunch/personal/handwired/enigma36/keymaps/default/keymap.c diff --git a/keyboards/fingerpunch/handwired/enigma36/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/personal/handwired/enigma36/keymaps/sadekbaroudi/keymap.c similarity index 100% rename from keyboards/fingerpunch/handwired/enigma36/keymaps/sadekbaroudi/keymap.c rename to keyboards/fingerpunch/personal/handwired/enigma36/keymaps/sadekbaroudi/keymap.c diff --git a/keyboards/fingerpunch/handwired/enigma36/readme.md b/keyboards/fingerpunch/personal/handwired/enigma36/readme.md similarity index 100% rename from keyboards/fingerpunch/handwired/enigma36/readme.md rename to keyboards/fingerpunch/personal/handwired/enigma36/readme.md diff --git a/keyboards/fingerpunch/handwired/enigma36/rules-v1.mk b/keyboards/fingerpunch/personal/handwired/enigma36/rules-v1.mk similarity index 100% rename from keyboards/fingerpunch/handwired/enigma36/rules-v1.mk rename to keyboards/fingerpunch/personal/handwired/enigma36/rules-v1.mk diff --git a/keyboards/fingerpunch/handwired/enigma36/rules-v2.mk b/keyboards/fingerpunch/personal/handwired/enigma36/rules-v2.mk similarity index 100% rename from keyboards/fingerpunch/handwired/enigma36/rules-v2.mk rename to keyboards/fingerpunch/personal/handwired/enigma36/rules-v2.mk diff --git a/keyboards/fingerpunch/handwired/enigma36/thumbstick.c b/keyboards/fingerpunch/personal/handwired/enigma36/thumbstick.c similarity index 100% rename from keyboards/fingerpunch/handwired/enigma36/thumbstick.c rename to keyboards/fingerpunch/personal/handwired/enigma36/thumbstick.c diff --git a/keyboards/fingerpunch/handwired/enigma36/thumbstick.h b/keyboards/fingerpunch/personal/handwired/enigma36/thumbstick.h similarity index 100% rename from keyboards/fingerpunch/handwired/enigma36/thumbstick.h rename to keyboards/fingerpunch/personal/handwired/enigma36/thumbstick.h diff --git a/keyboards/fingerpunch/handwired/ffkbhw/config.h b/keyboards/fingerpunch/personal/handwired/ffkbhw/config.h similarity index 100% rename from keyboards/fingerpunch/handwired/ffkbhw/config.h rename to keyboards/fingerpunch/personal/handwired/ffkbhw/config.h diff --git a/keyboards/fingerpunch/handwired/ffkbhw/ffkbhw.c b/keyboards/fingerpunch/personal/handwired/ffkbhw/ffkbhw.c similarity index 100% rename from keyboards/fingerpunch/handwired/ffkbhw/ffkbhw.c rename to keyboards/fingerpunch/personal/handwired/ffkbhw/ffkbhw.c diff --git a/keyboards/fingerpunch/handwired/ffkbhw/ffkbhw.h b/keyboards/fingerpunch/personal/handwired/ffkbhw/ffkbhw.h similarity index 100% rename from keyboards/fingerpunch/handwired/ffkbhw/ffkbhw.h rename to keyboards/fingerpunch/personal/handwired/ffkbhw/ffkbhw.h diff --git a/keyboards/fingerpunch/handwired/ffkbhw/info.json b/keyboards/fingerpunch/personal/handwired/ffkbhw/info.json similarity index 100% rename from keyboards/fingerpunch/handwired/ffkbhw/info.json rename to keyboards/fingerpunch/personal/handwired/ffkbhw/info.json diff --git a/keyboards/fingerpunch/handwired/ffkbhw/keymaps/default/keymap.c b/keyboards/fingerpunch/personal/handwired/ffkbhw/keymaps/default/keymap.c similarity index 100% rename from keyboards/fingerpunch/handwired/ffkbhw/keymaps/default/keymap.c rename to keyboards/fingerpunch/personal/handwired/ffkbhw/keymaps/default/keymap.c diff --git a/keyboards/fingerpunch/handwired/ffkbhw/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/personal/handwired/ffkbhw/keymaps/sadekbaroudi/keymap.c similarity index 100% rename from keyboards/fingerpunch/handwired/ffkbhw/keymaps/sadekbaroudi/keymap.c rename to keyboards/fingerpunch/personal/handwired/ffkbhw/keymaps/sadekbaroudi/keymap.c diff --git a/keyboards/fingerpunch/handwired/ffkbhw/readme.md b/keyboards/fingerpunch/personal/handwired/ffkbhw/readme.md similarity index 100% rename from keyboards/fingerpunch/handwired/ffkbhw/readme.md rename to keyboards/fingerpunch/personal/handwired/ffkbhw/readme.md diff --git a/keyboards/fingerpunch/handwired/ffkbhw/rules.mk b/keyboards/fingerpunch/personal/handwired/ffkbhw/rules.mk similarity index 100% rename from keyboards/fingerpunch/handwired/ffkbhw/rules.mk rename to keyboards/fingerpunch/personal/handwired/ffkbhw/rules.mk diff --git a/keyboards/fingerpunch/handwired/pteron38/config.h b/keyboards/fingerpunch/personal/handwired/pteron38/config.h similarity index 100% rename from keyboards/fingerpunch/handwired/pteron38/config.h rename to keyboards/fingerpunch/personal/handwired/pteron38/config.h diff --git a/keyboards/fingerpunch/handwired/pteron38/info.json b/keyboards/fingerpunch/personal/handwired/pteron38/info.json similarity index 100% rename from keyboards/fingerpunch/handwired/pteron38/info.json rename to keyboards/fingerpunch/personal/handwired/pteron38/info.json diff --git a/keyboards/fingerpunch/handwired/pteron38/keymaps/default/keymap.c b/keyboards/fingerpunch/personal/handwired/pteron38/keymaps/default/keymap.c similarity index 100% rename from keyboards/fingerpunch/handwired/pteron38/keymaps/default/keymap.c rename to keyboards/fingerpunch/personal/handwired/pteron38/keymaps/default/keymap.c diff --git a/keyboards/fingerpunch/handwired/pteron38/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/personal/handwired/pteron38/keymaps/sadekbaroudi/keymap.c similarity index 100% rename from keyboards/fingerpunch/handwired/pteron38/keymaps/sadekbaroudi/keymap.c rename to keyboards/fingerpunch/personal/handwired/pteron38/keymaps/sadekbaroudi/keymap.c diff --git a/keyboards/fingerpunch/handwired/pteron38/pteron38.c b/keyboards/fingerpunch/personal/handwired/pteron38/pteron38.c similarity index 100% rename from keyboards/fingerpunch/handwired/pteron38/pteron38.c rename to keyboards/fingerpunch/personal/handwired/pteron38/pteron38.c diff --git a/keyboards/fingerpunch/handwired/pteron38/pteron38.h b/keyboards/fingerpunch/personal/handwired/pteron38/pteron38.h similarity index 100% rename from keyboards/fingerpunch/handwired/pteron38/pteron38.h rename to keyboards/fingerpunch/personal/handwired/pteron38/pteron38.h diff --git a/keyboards/fingerpunch/handwired/pteron38/readme.md b/keyboards/fingerpunch/personal/handwired/pteron38/readme.md similarity index 100% rename from keyboards/fingerpunch/handwired/pteron38/readme.md rename to keyboards/fingerpunch/personal/handwired/pteron38/readme.md diff --git a/keyboards/fingerpunch/handwired/pteron38/rules.mk b/keyboards/fingerpunch/personal/handwired/pteron38/rules.mk similarity index 100% rename from keyboards/fingerpunch/handwired/pteron38/rules.mk rename to keyboards/fingerpunch/personal/handwired/pteron38/rules.mk diff --git a/keyboards/fingerpunch/osprette/config.h b/keyboards/fingerpunch/personal/osprette/config.h similarity index 100% rename from keyboards/fingerpunch/osprette/config.h rename to keyboards/fingerpunch/personal/osprette/config.h diff --git a/keyboards/fingerpunch/osprette/keymaps/default/config.h b/keyboards/fingerpunch/personal/osprette/keymaps/default/config.h similarity index 100% rename from keyboards/fingerpunch/osprette/keymaps/default/config.h rename to keyboards/fingerpunch/personal/osprette/keymaps/default/config.h diff --git a/keyboards/fingerpunch/osprette/keymaps/default/keymap.c b/keyboards/fingerpunch/personal/osprette/keymaps/default/keymap.c similarity index 100% rename from keyboards/fingerpunch/osprette/keymaps/default/keymap.c rename to keyboards/fingerpunch/personal/osprette/keymaps/default/keymap.c diff --git a/keyboards/fingerpunch/osprette/keymaps/default/rules.mk b/keyboards/fingerpunch/personal/osprette/keymaps/default/rules.mk similarity index 100% rename from keyboards/fingerpunch/osprette/keymaps/default/rules.mk rename to keyboards/fingerpunch/personal/osprette/keymaps/default/rules.mk diff --git a/keyboards/fingerpunch/osprette/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/personal/osprette/keymaps/sadekbaroudi/keymap.c similarity index 100% rename from keyboards/fingerpunch/osprette/keymaps/sadekbaroudi/keymap.c rename to keyboards/fingerpunch/personal/osprette/keymaps/sadekbaroudi/keymap.c diff --git a/keyboards/fingerpunch/osprette/keymaps/smores56/config.h b/keyboards/fingerpunch/personal/osprette/keymaps/smores56/config.h similarity index 100% rename from keyboards/fingerpunch/osprette/keymaps/smores56/config.h rename to keyboards/fingerpunch/personal/osprette/keymaps/smores56/config.h diff --git a/keyboards/fingerpunch/osprette/keymaps/smores56/keymap.c b/keyboards/fingerpunch/personal/osprette/keymaps/smores56/keymap.c similarity index 100% rename from keyboards/fingerpunch/osprette/keymaps/smores56/keymap.c rename to keyboards/fingerpunch/personal/osprette/keymaps/smores56/keymap.c diff --git a/keyboards/fingerpunch/osprette/keymaps/smores56/rules.mk b/keyboards/fingerpunch/personal/osprette/keymaps/smores56/rules.mk similarity index 100% rename from keyboards/fingerpunch/osprette/keymaps/smores56/rules.mk rename to keyboards/fingerpunch/personal/osprette/keymaps/smores56/rules.mk diff --git a/keyboards/fingerpunch/osprette/osprette.c b/keyboards/fingerpunch/personal/osprette/osprette.c similarity index 100% rename from keyboards/fingerpunch/osprette/osprette.c rename to keyboards/fingerpunch/personal/osprette/osprette.c diff --git a/keyboards/fingerpunch/osprette/osprette.h b/keyboards/fingerpunch/personal/osprette/osprette.h similarity index 100% rename from keyboards/fingerpunch/osprette/osprette.h rename to keyboards/fingerpunch/personal/osprette/osprette.h diff --git a/keyboards/fingerpunch/osprette/rules.mk b/keyboards/fingerpunch/personal/osprette/rules.mk similarity index 100% rename from keyboards/fingerpunch/osprette/rules.mk rename to keyboards/fingerpunch/personal/osprette/rules.mk From 0b6498cbacc72921b283adc696dafddceacd7acd Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Sun, 23 Oct 2022 12:25:47 -0700 Subject: [PATCH 27/51] add bad wings to fingerpunch repo in my personal boards --- .../fingerpunch/personal/badwings/badwings.c | 1 + .../fingerpunch/personal/badwings/badwings.h | 34 ++++++ .../fingerpunch/personal/badwings/config.h | 36 ++++++ .../fingerpunch/personal/badwings/halconf.h | 28 +++++ .../badwings/keymaps/default/config.h | 27 ++++ .../badwings/keymaps/default/keymap.c | 115 ++++++++++++++++++ .../badwings/keymaps/default/rules.mk | 9 ++ .../badwings/keymaps/sadekbaroudi/keymap.c | 95 +++++++++++++++ .../fingerpunch/personal/badwings/mcuconf.c | 8 ++ .../fingerpunch/personal/badwings/rules.mk | 36 ++++++ users/sadekbaroudi/process_records.h | 3 +- users/sadekbaroudi/wrappers.h | 5 + 12 files changed, 396 insertions(+), 1 deletion(-) create mode 100644 keyboards/fingerpunch/personal/badwings/badwings.c create mode 100644 keyboards/fingerpunch/personal/badwings/badwings.h create mode 100644 keyboards/fingerpunch/personal/badwings/config.h create mode 100644 keyboards/fingerpunch/personal/badwings/halconf.h create mode 100644 keyboards/fingerpunch/personal/badwings/keymaps/default/config.h create mode 100644 keyboards/fingerpunch/personal/badwings/keymaps/default/keymap.c create mode 100644 keyboards/fingerpunch/personal/badwings/keymaps/default/rules.mk create mode 100644 keyboards/fingerpunch/personal/badwings/keymaps/sadekbaroudi/keymap.c create mode 100644 keyboards/fingerpunch/personal/badwings/mcuconf.c create mode 100644 keyboards/fingerpunch/personal/badwings/rules.mk diff --git a/keyboards/fingerpunch/personal/badwings/badwings.c b/keyboards/fingerpunch/personal/badwings/badwings.c new file mode 100644 index 000000000000..6eb3208beb12 --- /dev/null +++ b/keyboards/fingerpunch/personal/badwings/badwings.c @@ -0,0 +1 @@ +#include "badwings.h" diff --git a/keyboards/fingerpunch/personal/badwings/badwings.h b/keyboards/fingerpunch/personal/badwings/badwings.h new file mode 100644 index 000000000000..562a5cf2d280 --- /dev/null +++ b/keyboards/fingerpunch/personal/badwings/badwings.h @@ -0,0 +1,34 @@ +#pragma once +#include "quantum.h" + +#define ___ KC_NO + +/* + * ,---------------------------------------. ,---------------------------------------. + * | L00 | L01 | L02 | L03 | L04 | | R00 | R01 | R02 | R03 | R04 | + * |-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------| + * | L10 | L11 | L12 | L13 | L14 | | R10 | R11 | R12 | R13 | R14 | + * |-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------| + * | L20 | L21 | L22 | L23 | L24 | | R20 | R21 | R22 | R23 | R24 | + * |-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------| + * | | L32 | L33 | L34 | | R30 | R31 | R32 | | + * `---------------------------------------' `---------------------------------------' + */ + + +#define LAYOUT_3x5_3( \ + K00, K10, K20, K30, K40, K44, K34, K24, K14, K04, \ + K01, K11, K21, K31, K41, K45, K35, K25, K15, K05, \ + K02, K12, K22, K32, K42, K46, K36, K26, K16, K06, \ + K23, K33, K43, K47, K37, K27 \ +) { \ + { K00, K01, K02, ___, K04, K05, K06, ___ }, \ + { K10, K11, K12, ___, K14, K15, K16, ___ }, \ + { K20, K21, K22, K23, K24, K25, K26, K27 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37 }, \ + { K40, K41, K42, K43, K44, K45, K46, K47 } \ +} + +#define LAYOUT LAYOUT_3x5_3 + +#include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/fingerpunch/personal/badwings/config.h b/keyboards/fingerpunch/personal/badwings/config.h new file mode 100644 index 000000000000..d343477f5aac --- /dev/null +++ b/keyboards/fingerpunch/personal/badwings/config.h @@ -0,0 +1,36 @@ +#pragma once + +#include "config_common.h" + +#define DEVICE_VER 0x0001 +#define VENDOR_ID 0x4A48 // JH +#define PRODUCT_ID 0x4257 // BW + +#define MANUFACTURER jasonhazel +#define PRODUCT Bad Wings + +#define MATRIX_COLS 8 +#define MATRIX_ROWS 5 + +#define SPI_SCK_PIN GP2 +#define SPI_MOSI_PIN GP3 +#define SPI_MISO_PIN GP4 + +#define SHIFTREG_MATRIX_COL_CS GP0 +#define SHIFTREG_DIVISOR 8 + +#define DIODE_DIRECTION COL2ROW + +#define MATRIX_ROW_PINS_SR { GP26, GP27, GP28, GP29, GP6 } + +#define POINTING_DEVICE_CS_PIN GP1 + +#define BOOTMAGIC_LITE_ROW 0 +#define BOOTMAGIC_LITE_COLUMN 0 + +#ifdef CIRQUE_ENABLE + #define POINTING_DEVICE_ROTATION_90 + #define CIRQUE_PINNACLE_TAP_ENABLE + #define POINTING_DEVICE_TASK_THROTTLE_MS 5 + #define CIRQUE_PINNACLE_DIAMETER_MM 35 +#endif diff --git a/keyboards/fingerpunch/personal/badwings/halconf.h b/keyboards/fingerpunch/personal/badwings/halconf.h new file mode 100644 index 000000000000..10bbcb5a41a8 --- /dev/null +++ b/keyboards/fingerpunch/personal/badwings/halconf.h @@ -0,0 +1,28 @@ +/* + * Copyright 2022 Charly Delay (@0xcharly) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once + +#define HAL_USE_SERIAL FALSE +#define HAL_USE_SPI TRUE +#define HAL_USE_I2C TRUE +// #define HAL_USE_I2C FALSE +#define HAL_USE_PWM TRUE +#define SPI_USE_WAIT TRUE +#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD + +#include_next "halconf.h" \ No newline at end of file diff --git a/keyboards/fingerpunch/personal/badwings/keymaps/default/config.h b/keyboards/fingerpunch/personal/badwings/keymaps/default/config.h new file mode 100644 index 000000000000..d8c34b8691ae --- /dev/null +++ b/keyboards/fingerpunch/personal/badwings/keymaps/default/config.h @@ -0,0 +1,27 @@ +#pragma once +#include "config_common.h" + +#define TAPPING_TERM 200 +#define PERMISSIVE_HOLD +#define IGNORE_MOD_TAP_INTERRUPT +#define TAPPING_FORCE_HOLD +#define TAPPING_TERM_PER_KEY + +#define ONESHOT_TAP_TOGGLE 10 +#define ONESHOT_TIMEOUT 500 +#define COMBO_TERM 100 +#define COMBO_TERM_PER_COMBO + +#define DOUBLE_TAP_SHIFT_TURNS_ON_CAPS_WORD + +// disable shit +#define NO_MUSIC_MODE + +#undef LOCKING_SUPPORT_ENABLE +#undef LOCKING_RESYNC_ENABLE + +#define POINTING_DEVICE_ROTATION_90 +#define CIRQUE_PINNACLE_DIAMETER_MM 35 +#define CIRQUE_PINNACLE_TAP_ENABLE +#define CIRQUE_PINNACLE_POSITION_MODE CIRQUE_PINNACLE_ABSOLUTE_MODE +#define CIRQUE_DEVICE_GESTURES_SCROLL_ENABLE diff --git a/keyboards/fingerpunch/personal/badwings/keymaps/default/keymap.c b/keyboards/fingerpunch/personal/badwings/keymaps/default/keymap.c new file mode 100644 index 000000000000..0dfbcb798037 --- /dev/null +++ b/keyboards/fingerpunch/personal/badwings/keymaps/default/keymap.c @@ -0,0 +1,115 @@ +#include QMK_KEYBOARD_H + +enum layers { + _ALPHA, + _SYMBOL, + _NUMBER, + _NAVIGATION, + LAYER_LENGTH +}; + + +enum tapdances { + TD_QESC, + TD_SBKT, + TD_CBKT, + TD_PARN, + TD_LTGT, + TD_ATAB, + TAPDANCE_LENGTH +}; + +enum combos { + COMBO_NAVIGATION, + COMBO_LENGTH +}; + + +// begin tapdances +#define KC_QESC TD(TD_QESC) +#define KC_SBKT TD(TD_SBKT) +#define KC_CBKT TD(TD_CBKT) +#define KC_PARN TD(TD_PARN) +#define KC_LTGT TD(TD_LTGT) +#define KC_ATAB TD(TD_ATAB) + +#define KC_GUIX LGUI_T(KC_X) +#define KC_ALTC LALT_T(KC_C) + +// oneshots +#define KC_OSFT OSM(MOD_LSFT) +#define KC_OALT OSM(MOD_LALT) + +// layer changing +#define KC_OSYM OSL(_SYMBOL) +#define KC_ONUM LT(_NUMBER, KC_BSPC) + +uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { + switch(keycode) { + case KC_GUIX: + case KC_ALTC: + return TAPPING_TERM * 2; + default: + return TAPPING_TERM; + } +} + +// tapdances +qk_tap_dance_action_t tap_dance_actions[] = { + [TD_QESC] = ACTION_TAP_DANCE_DOUBLE(KC_Q, KC_ESC), + [TD_SBKT] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_RBRC), + [TD_CBKT] = ACTION_TAP_DANCE_DOUBLE(KC_LCBR, KC_RCBR), + [TD_PARN] = ACTION_TAP_DANCE_DOUBLE(KC_LPRN, KC_RPRN), + [TD_LTGT] = ACTION_TAP_DANCE_DOUBLE(KC_LABK, KC_RABK), + [TD_ATAB] = ACTION_TAP_DANCE_DOUBLE(KC_A, KC_TAB) +}; +// end tapdances + +uint16_t COMBO_LEN = COMBO_LENGTH; + +const uint16_t PROGMEM combo_navigation[] = { KC_OSYM, KC_ONUM, COMBO_END }; +combo_t key_combos[] = { + [COMBO_NAVIGATION] = COMBO(combo_navigation, OSL(_NAVIGATION)), +}; + +uint16_t get_combo_term(uint16_t index, combo_t *combo) { + switch(index) { + case COMBO_NAVIGATION: // extending the combo term here helps reduce sticky layers some more. + return 250; + default: + return COMBO_TERM; + } +} +// end combos + + +// begin layers +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_ALPHA] = LAYOUT( + KC_QESC, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, \ + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, \ + KC_Z, KC_GUIX, KC_ALTC, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, \ + KC_LCTL, KC_OSYM, KC_OSFT, KC_SPC, KC_ONUM, KC_ENT + ), + [_SYMBOL] = LAYOUT( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_PIPE, KC_NO, \ + KC_GRV, KC_TILD, KC_UNDS, KC_EQL, KC_NO, KC_SBKT, KC_CBKT, KC_PARN, KC_LTGT, KC_BSLASH, \ + KC_NO, KC_NO, KC_PLUS, KC_MINS, KC_NO, KC_NO, KC_NO, KC_COLN, KC_DOT, KC_SCLN, \ + KC_LCTL, KC_OSYM, KC_OSFT, KC_SPC, KC_ONUM, KC_ENT + ), + [_NUMBER] = LAYOUT( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \ + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, \ + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DOT, KC_NO, \ + KC_LCTL, KC_OSYM, KC_OSFT, KC_SPC, KC_ONUM, KC_ENT + ), + [_NAVIGATION] = LAYOUT( + KC_NO, KC_F2, KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME, KC_UP, KC_END, KC_BSPC, \ + KC_TAB, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RIGHT, KC_ENT, \ + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_MPRV, KC_MPLY, KC_MNXT, KC_DEL, \ + KC_LCTL, KC_OSYM, KC_OSFT, KC_SPC, KC_ONUM, KC_ENT + ) +}; + + + diff --git a/keyboards/fingerpunch/personal/badwings/keymaps/default/rules.mk b/keyboards/fingerpunch/personal/badwings/keymaps/default/rules.mk new file mode 100644 index 000000000000..43fb4527f8fc --- /dev/null +++ b/keyboards/fingerpunch/personal/badwings/keymaps/default/rules.mk @@ -0,0 +1,9 @@ +GRAVE_ESC_ENABLE = no +SPACE_CADET_ENABLE = no + +CAPS_WORD_ENABLE = yes +KEY_OVERRIDE_ENABLE = yes +COMBO_ENABLE = yes +TAP_DANCE_ENABLE = yes + +POINTING_DEVICE_ENABLE = yes \ No newline at end of file diff --git a/keyboards/fingerpunch/personal/badwings/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/personal/badwings/keymaps/sadekbaroudi/keymap.c new file mode 100644 index 000000000000..554a42a7ffd4 --- /dev/null +++ b/keyboards/fingerpunch/personal/badwings/keymaps/sadekbaroudi/keymap.c @@ -0,0 +1,95 @@ +/* Copyright 2021 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * The `LAYOUT_badwings_base` macro is a template to allow the use of identical + * modifiers for the default layouts (eg ALPHA_ALT, Colemak, Dvorak, etc), so + * that there is no need to set them up for each layout, and modify all of + * them if I want to change them. This helps to keep consistency and ease + * of use. K## is a placeholder to pass through the individual keycodes + */ + +#include "sadekbaroudi.h" +#include QMK_KEYBOARD_H + +// clang-format off +#define LAYOUT_badwings_base( \ + K00, K10, K20, K30, K40, K44, K34, K24, K14, K04, \ + K01, K11, K21, K31, K41, K45, K35, K25, K15, K05, \ + K02, K12, K22, K32, K42, K46, K36, K26, K16, K06, \ + K23, K33, K43, K47, K37, K27 \ + ) \ + LAYOUT_wrapper( \ + K00, K10, K20, LT(_FUNCTION, K30), K40, K44, LT(_FUNCTION, K34), K24, K14, K04, \ + LCTL_T(K01), LGUI_T(K11), LALT_T(K21), LSFT_T(K31), K41, LT(_MOUSE, K45), RSFT_T(K35), RALT_T(K25), RGUI_T(K15), RCTL_T(K05), \ + K02, K12, K22, K32, K42, K46, K36, K26, K16, K06, \ + K23, LT(_NAVIGATION,K33), LT(_FUNCTION,K43), LT(_MEDIA,K47), LT(_SYMBOLS,K37), K27 \ + ) + +/* Re-pass though to allow templates to be used */ +#define LAYOUT_badwings_base_wrapper(...) LAYOUT_badwings_base(__VA_ARGS__) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_ALPHA_ALT] = LAYOUT_badwings_base_wrapper( + _________________ALPHA_ALT_L1_________________, _________________ALPHA_ALT_R1_________________, + _________________ALPHA_ALT_L2_________________, _________________ALPHA_ALT_R2_________________, + _________________ALPHA_ALT_L3_________________, _________________ALPHA_ALT_R3_________________, + __ALPHA_ALT_THUMBS_6__ + ), + + [_ALPHA] = LAYOUT_badwings_base_wrapper( + __________________ALPHA_L1____________________, __________________ALPHA_R1____________________, + __________________ALPHA_L2____________________, __________________ALPHA_R2____________________, + __________________ALPHA_L3____________________, __________________ALPHA_R3____________________, + __ALPHA_THUMBS_6__ + ), + + [_NAVIGATION] = LAYOUT_wrapper( + ________________NAVIGATION_1_______________, _________________NUMPAD_1__________________, + ________________NAVIGATION_2_______________, _________________NUMPAD_2__________________, + ________________NAVIGATION_3_______________, _________________NUMPAD_3__________________, + _______, _______, KC_TAB, KC_BSPC, KC_SPACE, KC_DOT + ), + + [_SYMBOLS] = LAYOUT_wrapper( + ________________SYMBOLS_L1_________________, ________________SYMBOLS_R1_________________, + ________________SYMBOLS_L2_________________, ________________SYMBOLS_R2_________________, + ________________SYMBOLS_L3_________________, ________________SYMBOLS_R3_________________, + _______, KC_ENT, KC_DEL, KC_BSPC, _______, _______ + ), + + [_FUNCTION] = LAYOUT_wrapper( + ________________SHIFTNAV_1_________________, ________________FUNCTION_1_________________, + ________________SHIFTNAV_2_________________, ________________FUNCTION_2_________________, + ________________SHIFTNAV_3_________________, ________________FUNCTION_3_________________, + _______, _______, _______, N_DEL_LINE, KC_SPACE, _______ + ), + + [_MEDIA] = LAYOUT_wrapper( + ___________________RGB_1___________________, _________________MACROS_1__________________, + ___________________RGB_2___________________, _________________MACROS_2__________________, + ___________________RGB_3___________________, _________________MACROS_3__________________, + _______, _______, _______, _______, _______, _______ + ), + + [_MOUSE] = LAYOUT_wrapper( + _______________AUTO_MOUSE_1________________, ___________________BLANK___________________, + _______________AUTO_MOUSE_2________________, ___________________BLANK___________________, + _______________AUTO_MOUSE_3________________, ___________________BLANK___________________, + _______, KC_MS_BTN1, KC_MS_BTN3, KC_MS_BTN3, KC_MS_BTN2, _______ + ) +}; diff --git a/keyboards/fingerpunch/personal/badwings/mcuconf.c b/keyboards/fingerpunch/personal/badwings/mcuconf.c new file mode 100644 index 000000000000..5854b8999ea1 --- /dev/null +++ b/keyboards/fingerpunch/personal/badwings/mcuconf.c @@ -0,0 +1,8 @@ +#pragma once + +#include_next "mcuconf.h" + +#undef RP_SPI_USE_SPI0 +#define RP_SPI_USE_SPI0 TRUE +#undef RP_I2C_USE_I2C1 +#define RP_I2C_USE_I2C1 TRUE \ No newline at end of file diff --git a/keyboards/fingerpunch/personal/badwings/rules.mk b/keyboards/fingerpunch/personal/badwings/rules.mk new file mode 100644 index 000000000000..97d8416ffdf9 --- /dev/null +++ b/keyboards/fingerpunch/personal/badwings/rules.mk @@ -0,0 +1,36 @@ +MCU = RP2040 +BOOTLOADER = rp2040 + +# LTO_ENABLE = yes + +CONSOLE_ENABLE = no +COMMAND_ENABLE = no +NKRO_ENABLE = no +BACKLIGHT_ENABLE = no +RGBLIGHT_ENABLE = no +AUDIO_ENABLE = no +UNICODE_ENABLE = no +MAGIC_ENABLE = no + +BOOTMAGIC_ENABLE = yes +MOUSEKEY_ENABLE = yes +EXTRAKEY_ENABLE = yes + +SRC += keyboards/fingerpunch/fp_matrix_74hc595_spi.c +QUANTUM_LIB_SRC += spi_master.c +CUSTOM_MATRIX = lite + +ifeq ($(strip $(CIRQUE_ENABLE)), yes) + MOUSEKEY_ENABLE := yes # not required, but enabling for mouse button keys + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER = cirque_pinnacle_spi + OPT_DEFS += -DCIRQUE_ENABLE +endif + +DEFERRED_EXEC_ENABLE = yes +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/users/sadekbaroudi/process_records.h b/users/sadekbaroudi/process_records.h index a1e2a8c1699d..11b577ae97a8 100755 --- a/users/sadekbaroudi/process_records.h +++ b/users/sadekbaroudi/process_records.h @@ -19,7 +19,8 @@ || defined(KEYBOARD_fingerpunch_rockon_v3) \ || defined(KEYBOARD_fingerpunch_rockon_bp) \ || defined(KEYBOARD_fingerpunch_sweeeeep) \ - || defined(KEYBOARD_fingerpunch_ximi) + || defined(KEYBOARD_fingerpunch_ximi) \ + || defined(KEYBOARD_fingerpunch_personal_badwings) # define PLACEHOLDER_SAFE_RANGE FP_SAFE_RANGE #elif defined(KEYMAP_SAFE_RANGE) # define PLACEHOLDER_SAFE_RANGE KEYMAP_SAFE_RANGE diff --git a/users/sadekbaroudi/wrappers.h b/users/sadekbaroudi/wrappers.h index 68d25f575284..f37cc1ddd5d7 100755 --- a/users/sadekbaroudi/wrappers.h +++ b/users/sadekbaroudi/wrappers.h @@ -121,6 +121,11 @@ expanded before being used as arguments to the LAYOUT_xxx macro. # define LAYOUT LAYOUT_ximi #endif +// Since badwings uses the name LAYOUT_badwings instead of LAYOUT +#if (!defined(LAYOUT) && defined(LAYOUT_badwings)) +# define LAYOUT LAYOUT_badwings +#endif + // clang-format off #define LAYOUT_ergodox_wrapper(...) LAYOUT_ergodox(__VA_ARGS__) From c76c1faac464f20bb2b8158639a169941ad5eac8 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Tue, 25 Oct 2022 09:22:39 -0700 Subject: [PATCH 28/51] cleaned up legacy super alt tab to fingerpunch library --- .../bigbarobord/keymaps/default/keymap.c | 192 ++++++++---------- .../fingerpunch/ffkb/keymaps/default/keymap.c | 131 +++++------- .../ffkb_byomcu/v1/keymaps/default/keymap.c | 24 +-- .../ffkb_byomcu/v2/keymaps/default/keymap.c | 24 +-- .../ffkb_byomcu/v3/keymaps/default/keymap.c | 24 +-- 5 files changed, 148 insertions(+), 247 deletions(-) diff --git a/keyboards/fingerpunch/bigbarobord/keymaps/default/keymap.c b/keyboards/fingerpunch/bigbarobord/keymaps/default/keymap.c index fadb31802d3a..51934c1531af 100644 --- a/keyboards/fingerpunch/bigbarobord/keymaps/default/keymap.c +++ b/keyboards/fingerpunch/bigbarobord/keymaps/default/keymap.c @@ -1,10 +1,5 @@ #include QMK_KEYBOARD_H -#ifdef ENCODER_ENABLE -bool is_alt_tab_active = false; -uint16_t alt_tab_timer = 0; -#endif - // Defines names for use in layer keycodes and the keymap enum layer_names { _QWERTY, @@ -83,21 +78,6 @@ layer_state_t layer_state_set_user(layer_state_t state) { #ifdef ENCODER_ENABLE -void press_super_alt_tab(bool shift) { - if (shift) { - register_code(KC_LSHIFT); - } - if (!is_alt_tab_active) { - is_alt_tab_active = true; - register_code(KC_LALT); - } - alt_tab_timer = timer_read(); - tap_code(KC_TAB); - if (shift) { - unregister_code(KC_LSHIFT); - } -} - bool encoder_update_user(uint8_t index, bool clockwise) { // default behavior if undefined if (index == 0) { @@ -131,69 +111,69 @@ oled_rotation_t oled_init_user(oled_rotation_t rotation) { static void render_logo(void) { // bigbarobord logo, 128x64px static const char PROGMEM bigbarobord_logo[] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xe0, 0xc0, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x80, 0xc0, 0xe0, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, - 0xfe, 0x02, 0x02, 0x02, 0x82, 0x06, 0x0e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0x0f, 0x07, 0x0f, 0x1f, - 0x3e, 0x7c, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, - 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, - 0x1f, 0x0f, 0x07, 0x0f, 0xff, 0xff, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x02, 0x82, - 0x82, 0xc2, 0xe2, 0xde, 0x0e, 0x0e, 0x06, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0x02, 0x02, 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xe0, 0xf8, 0xfc, 0x7e, - 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, - 0x7e, 0xfc, 0xf8, 0xe0, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x1f, - 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, - 0x07, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xff, 0x7f, 0x1f, 0x87, 0x83, 0x80, 0x80, - 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, - 0x80, 0x80, 0x83, 0x87, 0x1f, 0x7f, 0xff, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x04, 0x04, - 0x04, 0x05, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, - 0xe0, 0x20, 0x20, 0x20, 0x20, 0x60, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x08, 0x18, 0x3c, 0x3e, 0x7f, 0xff, 0xff, 0xff, 0xef, 0xcf, 0x8f, 0x87, 0x07, 0x07, 0x07, 0x07, - 0x07, 0xe7, 0xe7, 0xe7, 0xc7, 0x07, 0x07, 0x0f, 0x3f, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0x3f, 0x0f, 0x07, 0x07, 0xc7, 0xe7, 0xe7, 0xe7, 0x07, - 0x07, 0x07, 0x07, 0x07, 0x87, 0x8f, 0xcf, 0xef, 0xef, 0xff, 0xff, 0x7f, 0x3e, 0x3c, 0x18, 0x08, - 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x20, 0x20, - 0x60, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0x20, 0x20, 0x70, 0xf8, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1e, 0x3e, 0x7c, - 0xf8, 0xf1, 0xf1, 0xe1, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, - 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe1, 0xf1, 0xf1, 0xf8, - 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x20, 0x20, - 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, - 0x7f, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7e, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x3c, - 0x3c, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, - 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0e, - 0x0e, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xe0, 0xc0, 0x80, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x80, 0xc0, 0xe0, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, + 0xfe, 0x02, 0x02, 0x02, 0x82, 0x06, 0x0e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0x0f, 0x07, 0x0f, 0x1f, + 0x3e, 0x7c, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, + 0x1f, 0x0f, 0x07, 0x0f, 0xff, 0xff, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x02, 0x82, + 0x82, 0xc2, 0xe2, 0xde, 0x0e, 0x0e, 0x06, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x02, 0x02, 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xe0, 0xf8, 0xfc, 0x7e, + 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, + 0x7e, 0xfc, 0xf8, 0xe0, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x1f, + 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, + 0x07, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xff, 0x7f, 0x1f, 0x87, 0x83, 0x80, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, + 0x80, 0x80, 0x83, 0x87, 0x1f, 0x7f, 0xff, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x04, 0x04, + 0x04, 0x05, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0xe0, 0x20, 0x20, 0x20, 0x20, 0x60, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x18, 0x3c, 0x3e, 0x7f, 0xff, 0xff, 0xff, 0xef, 0xcf, 0x8f, 0x87, 0x07, 0x07, 0x07, 0x07, + 0x07, 0xe7, 0xe7, 0xe7, 0xc7, 0x07, 0x07, 0x0f, 0x3f, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0x3f, 0x0f, 0x07, 0x07, 0xc7, 0xe7, 0xe7, 0xe7, 0x07, + 0x07, 0x07, 0x07, 0x07, 0x87, 0x8f, 0xcf, 0xef, 0xef, 0xff, 0xff, 0x7f, 0x3e, 0x3c, 0x18, 0x08, + 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x20, 0x20, + 0x60, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x20, 0x20, 0x70, 0xf8, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1e, 0x3e, 0x7c, + 0xf8, 0xf1, 0xf1, 0xe1, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, + 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe1, 0xf1, 0xf1, 0xf8, + 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x20, 0x20, + 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, + 0x7f, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7e, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x3c, + 0x3c, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, + 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0e, + 0x0e, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; @@ -239,29 +219,29 @@ static void render_status(void) { // bigbarobord logo, 128x48px static const char bigbarobord_logo_small [] PROGMEM = { - 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, - 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0x40, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xf8, 0xfe, 0x8e, 0xdc, 0xf0, 0x70, 0x60, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, - 0x30, 0x70, 0xf0, 0xd8, 0x9c, 0x9e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, - 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x10, - 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0x10, 0x10, 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x78, 0x7c, - 0xff, 0xd7, 0x9b, 0x18, 0x78, 0x78, 0x18, 0x30, 0x70, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, - 0x18, 0x58, 0x78, 0x18, 0x99, 0x9b, 0xf7, 0xfc, 0x78, 0x30, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x78, 0xfc, 0xfc, 0xfe, 0xff, 0xf8, 0xf0, - 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0x10, 0x10, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, - 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x01, 0x01, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x18, 0x3f, 0x7f, 0x68, 0x68, 0x3f, 0x3f, 0x0c, - 0x0c, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, - 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, 0x01, 0x0b, 0x0f, 0x0f, 0x0f, 0x0f, - 0x0f, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, + 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0x40, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xf8, 0xfe, 0x8e, 0xdc, 0xf0, 0x70, 0x60, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x70, 0xf0, 0xd8, 0x9c, 0x9e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x10, + 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x10, 0x10, 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x78, 0x7c, + 0xff, 0xd7, 0x9b, 0x18, 0x78, 0x78, 0x18, 0x30, 0x70, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, + 0x18, 0x58, 0x78, 0x18, 0x99, 0x9b, 0xf7, 0xfc, 0x78, 0x30, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x78, 0xfc, 0xfc, 0xfe, 0xff, 0xf8, 0xf0, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x10, 0x10, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x01, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x18, 0x3f, 0x7f, 0x68, 0x68, 0x3f, 0x3f, 0x0c, + 0x0c, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, + 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, 0x01, 0x0b, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x08, 0x0c, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 }; oled_write_raw_P(bigbarobord_logo_small, sizeof(bigbarobord_logo_small)); diff --git a/keyboards/fingerpunch/ffkb/keymaps/default/keymap.c b/keyboards/fingerpunch/ffkb/keymaps/default/keymap.c index 0a997681cfec..451b3b60cde3 100644 --- a/keyboards/fingerpunch/ffkb/keymaps/default/keymap.c +++ b/keyboards/fingerpunch/ffkb/keymaps/default/keymap.c @@ -1,10 +1,5 @@ #include QMK_KEYBOARD_H -#ifdef ENCODER_ENABLE -bool is_alt_tab_active = false; -uint16_t alt_tab_timer = 0; -#endif - // Defines names for use in layer keycodes and the keymap enum layer_names { _QWERTY, @@ -160,20 +155,6 @@ layer_state_t layer_state_set_user(layer_state_t state) { } #ifdef ENCODER_ENABLE -void press_super_alt_tab(bool shift) { - if (shift) { - register_code(KC_LSHIFT); - } - if (!is_alt_tab_active) { - is_alt_tab_active = true; - register_code(KC_LALT); - } - alt_tab_timer = timer_read(); - tap_code(KC_TAB); - if (shift) { - unregister_code(KC_LSHIFT); - } -} bool encoder_update_user(uint8_t index, bool clockwise) { // default behavior if undefined @@ -210,9 +191,9 @@ bool encoder_update_user(uint8_t index, bool clockwise) { #else if (clockwise) { #endif - press_super_alt_tab(true); + press_super_tab(true); } else { - press_super_alt_tab(false); + press_super_tab(false); } } @@ -232,37 +213,37 @@ oled_rotation_t oled_init_user(oled_rotation_t rotation) { static void render_logo(void) { // ffkb logo, 128x32px static const char PROGMEM ffkb_logo[] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, - 0xf0, 0x10, 0x10, 0x10, 0x90, 0x30, 0x30, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfc, 0x3c, 0x3c, 0x38, 0x70, - 0x70, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0x70, - 0x70, 0x38, 0x3c, 0x3c, 0xfc, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x10, 0x00, - 0x80, 0x90, 0xd0, 0xf0, 0x30, 0x30, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, - 0x3f, 0x21, 0x01, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe7, 0xff, 0x7f, 0x7f, 0xbc, 0x9e, 0x8e, 0x8f, - 0x87, 0x87, 0x83, 0x83, 0x81, 0x81, 0x81, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x81, 0x81, 0x81, 0x83, 0x83, 0x87, 0x87, - 0x8f, 0x8e, 0x9e, 0xbc, 0x7f, 0x7f, 0xff, 0xe7, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x23, 0x07, - 0x0f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, - 0xfc, 0x44, 0x44, 0x44, 0xe4, 0x0c, 0x0c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x02, 0x06, 0x06, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1b, 0x3b, 0x3b, 0x73, 0x73, 0x73, 0xe3, - 0xe3, 0xdf, 0xdf, 0xdf, 0x8b, 0x83, 0x03, 0x03, 0x07, 0x1f, 0xfe, 0xfc, 0xf8, 0xe0, 0x00, 0x00, - 0x00, 0x00, 0xe0, 0xf8, 0xfc, 0xfe, 0x1f, 0x07, 0x03, 0x03, 0x83, 0x8b, 0xdf, 0xdf, 0xdf, 0xe3, - 0xe3, 0x73, 0x73, 0x73, 0x3b, 0x3b, 0x1b, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x06, 0x06, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0x44, 0x44, - 0x44, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xb8, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, - 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0e, 0x1f, 0x3f, 0x3f, 0x3f, 0x36, 0x36, - 0x36, 0x36, 0x3f, 0x3f, 0x3f, 0x1f, 0x0e, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x08, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + 0xf0, 0x10, 0x10, 0x10, 0x90, 0x30, 0x30, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfc, 0x3c, 0x3c, 0x38, 0x70, + 0x70, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0x70, + 0x70, 0x38, 0x3c, 0x3c, 0xfc, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x10, 0x00, + 0x80, 0x90, 0xd0, 0xf0, 0x30, 0x30, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, + 0x3f, 0x21, 0x01, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe7, 0xff, 0x7f, 0x7f, 0xbc, 0x9e, 0x8e, 0x8f, + 0x87, 0x87, 0x83, 0x83, 0x81, 0x81, 0x81, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x81, 0x81, 0x81, 0x83, 0x83, 0x87, 0x87, + 0x8f, 0x8e, 0x9e, 0xbc, 0x7f, 0x7f, 0xff, 0xe7, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x23, 0x07, + 0x0f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, + 0xfc, 0x44, 0x44, 0x44, 0xe4, 0x0c, 0x0c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x02, 0x06, 0x06, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1b, 0x3b, 0x3b, 0x73, 0x73, 0x73, 0xe3, + 0xe3, 0xdf, 0xdf, 0xdf, 0x8b, 0x83, 0x03, 0x03, 0x07, 0x1f, 0xfe, 0xfc, 0xf8, 0xe0, 0x00, 0x00, + 0x00, 0x00, 0xe0, 0xf8, 0xfc, 0xfe, 0x1f, 0x07, 0x03, 0x03, 0x83, 0x8b, 0xdf, 0xdf, 0xdf, 0xe3, + 0xe3, 0x73, 0x73, 0x73, 0x3b, 0x3b, 0x1b, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x06, 0x06, 0x02, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0x44, 0x44, + 0x44, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xb8, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0e, 0x1f, 0x3f, 0x3f, 0x3f, 0x36, 0x36, + 0x36, 0x36, 0x3f, 0x3f, 0x3f, 0x1f, 0x0e, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x08, 0x08, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; oled_write_raw_P(ffkb_logo, sizeof(ffkb_logo)); @@ -307,29 +288,29 @@ static void render_status(void) { // ffkb logo, 128x48px static const char ffkb_logo_small [] PROGMEM = { - 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, - 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0xc0, 0x40, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xf8, 0xfe, 0x8e, 0xdc, 0xf0, 0x70, 0x60, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, - 0x30, 0x70, 0xf0, 0xd8, 0x9c, 0x9e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, - 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, - 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, - 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x10, - 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0x10, 0x10, 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x78, 0x7c, - 0xff, 0xd7, 0x9b, 0x18, 0x78, 0x78, 0x18, 0x30, 0x70, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, - 0x18, 0x58, 0x78, 0x18, 0x99, 0x9b, 0xf7, 0xfc, 0x78, 0x30, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x78, 0xfc, 0xfc, 0xfe, 0xff, 0xf8, 0xf0, - 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0x10, 0x10, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, - 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x01, 0x01, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x18, 0x3f, 0x7f, 0x68, 0x68, 0x3f, 0x3f, 0x0c, - 0x0c, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, - 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, 0x01, 0x0b, 0x0f, 0x0f, 0x0f, 0x0f, - 0x0f, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, + 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0x40, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xf8, 0xfe, 0x8e, 0xdc, 0xf0, 0x70, 0x60, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x70, 0xf0, 0xd8, 0x9c, 0x9e, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x40, 0x40, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0x40, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x10, + 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x10, 0x10, 0x18, 0x3c, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x78, 0x7c, + 0xff, 0xd7, 0x9b, 0x18, 0x78, 0x78, 0x18, 0x30, 0x70, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, + 0x18, 0x58, 0x78, 0x18, 0x99, 0x9b, 0xf7, 0xfc, 0x78, 0x30, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x78, 0xfc, 0xfc, 0xfe, 0xff, 0xf8, 0xf0, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x10, 0x10, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x01, 0x01, 0x03, 0x07, 0x0e, 0x0c, 0x18, 0x3f, 0x7f, 0x68, 0x68, 0x3f, 0x3f, 0x0c, + 0x0c, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, + 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x00, 0x01, 0x0b, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x08, 0x08, 0x0c, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 }; oled_write_raw_P(ffkb_logo_small, sizeof(ffkb_logo_small)); diff --git a/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/default/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/default/keymap.c index 15925359fa23..479f5282b689 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/default/keymap.c +++ b/keyboards/fingerpunch/ffkb_byomcu/v1/keymaps/default/keymap.c @@ -1,10 +1,5 @@ #include QMK_KEYBOARD_H -#ifdef ENCODER_ENABLE -bool is_alt_tab_active = false; -uint16_t alt_tab_timer = 0; -#endif - // Defines names for use in layer keycodes and the keymap enum layer_names { _QWERTY, @@ -161,21 +156,6 @@ layer_state_t layer_state_set_user(layer_state_t state) { #ifdef ENCODER_ENABLE -void press_super_alt_tab(bool shift) { - if (shift) { - register_code(KC_LSHIFT); - } - if (!is_alt_tab_active) { - is_alt_tab_active = true; - register_code(KC_LALT); - } - alt_tab_timer = timer_read(); - tap_code(KC_TAB); - if (shift) { - unregister_code(KC_LSHIFT); - } -} - bool encoder_update_user(uint8_t index, bool clockwise) { // default behavior if undefined if (index == 0) { @@ -211,9 +191,9 @@ bool encoder_update_user(uint8_t index, bool clockwise) { #else if (clockwise) { #endif - press_super_alt_tab(true); + press_super_tab(true); } else { - press_super_alt_tab(false); + press_super_tab(false); } } diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/default/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/default/keymap.c index 2e47108a0b88..27f7e9ca0603 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/default/keymap.c +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/keymaps/default/keymap.c @@ -1,10 +1,5 @@ #include QMK_KEYBOARD_H -#ifdef ENCODER_ENABLE -bool is_alt_tab_active = false; -uint16_t alt_tab_timer = 0; -#endif - // Defines names for use in layer keycodes and the keymap enum layer_names { _QWERTY, @@ -158,21 +153,6 @@ layer_state_t layer_state_set_user(layer_state_t state) { #ifdef ENCODER_ENABLE -void press_super_alt_tab(bool shift) { - if (shift) { - register_code(KC_LSHIFT); - } - if (!is_alt_tab_active) { - is_alt_tab_active = true; - register_code(KC_LALT); - } - alt_tab_timer = timer_read(); - tap_code(KC_TAB); - if (shift) { - unregister_code(KC_LSHIFT); - } -} - bool encoder_update_user(uint8_t index, bool clockwise) { // default behavior if undefined if (index == 0) { @@ -208,9 +188,9 @@ bool encoder_update_user(uint8_t index, bool clockwise) { #else if (clockwise) { #endif - press_super_alt_tab(true); + press_super_tab(true); } else { - press_super_alt_tab(false); + press_super_tab(false); } } diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/keymap.c b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/keymap.c index 5db75f2d4358..0c72231afaec 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/keymap.c +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/default/keymap.c @@ -1,10 +1,5 @@ #include QMK_KEYBOARD_H -#ifdef ENCODER_ENABLE -bool is_alt_tab_active = false; -uint16_t alt_tab_timer = 0; -#endif - // Defines names for use in layer keycodes and the keymap enum layer_names { _QWERTY, @@ -154,21 +149,6 @@ layer_state_t layer_state_set_user(layer_state_t state) { #ifdef ENCODER_ENABLE -void press_super_alt_tab(bool shift) { - if (shift) { - register_code(KC_LSHIFT); - } - if (!is_alt_tab_active) { - is_alt_tab_active = true; - register_code(KC_LALT); - } - alt_tab_timer = timer_read(); - tap_code(KC_TAB); - if (shift) { - unregister_code(KC_LSHIFT); - } -} - bool encoder_update_user(uint8_t index, bool clockwise) { // default behavior if undefined if (index == 0) { @@ -192,10 +172,10 @@ bool encoder_update_user(uint8_t index, bool clockwise) { #else if (clockwise) { #endif - press_super_alt_tab(true); + press_super_tab(true); } else{ - press_super_alt_tab(false); + press_super_tab(false); } } From d122fb34013594b568426d660fea8090c4e17f99 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Fri, 14 Oct 2022 19:52:44 -0700 Subject: [PATCH 29/51] updating fp_build to have the option to generate all possible combinations of keyboard configs --- bin/fp_build.sh | 138 ++++++++++++++++++++++++++++++++++++------------ 1 file changed, 104 insertions(+), 34 deletions(-) diff --git a/bin/fp_build.sh b/bin/fp_build.sh index ba63fdb52f46..5626dbac2aa8 100755 --- a/bin/fp_build.sh +++ b/bin/fp_build.sh @@ -11,16 +11,18 @@ Help() { echo "Usage: $0 -k -m -c -r -h" echo "" + echo " -l list valid keyboards (optional, overrides all other options)" echo " -k keyboard directory (optional, default is all fingerpunch keyboards)" echo " -m keymap (optional, defaults to the 'default' keymap)" echo " -c add CONVERT_TO parameter for a controller (eg -c stemcell)" - echo " -r (optional, run the build command(s), defaults to outputting the build string)" + echo " -i (interactive mode, take feature selection user input to generate build command)" + echo " -r (run the build command(s), defaults to outputting the build string)" echo " -h (show this dialog)" echo "" echo "Examples: " echo "--------" - echo "fp_build.sh -k \"rockon/v2\" -m sadekbaroudi -r" - echo "fp_build.sh -m sadekbaroudi" + echo "fp_build.sh -i -k \"rockon/v2\" -m sadekbaroudi -r" + echo "fp_build.sh -i -m sadekbaroudi" echo "fp_build.sh -k \"barobord\"" } @@ -40,34 +42,25 @@ get_valid_keyboards() { done } -build_keyboard() { - if [[ -z "${1}" ]]; then - echo "build_keyboard: no first argument" - fi - if [[ -z "${2}" ]]; then - echo "build_keyboard: no second argument" - fi - if [[ -z "${3}" ]]; then - echo "build_keyboard: no third argument" - fi - if [[ -z "${4}" ]]; then - echo "build_keyboard: no fourth argument" - fi - if [[ -z "${5}" ]]; then - echo "build_keyboard: no fifth argument" - fi - - build_json="${1}/fp_build.json" - keyboard_base_dir="${1}" - keyboard_name="${1#${2}/}" +build_keyboard_user_input() { + local build_json="${1}/fp_build.json" + local keyboard_base_dir="${1}" + local keyboard_name="${1#${2}/}" + local run_build="${4}" - build_string="make ${keyboard_base_dir#keyboards\/}:${3}" + local build_string="make ${keyboard_base_dir#keyboards\/}:${3}" echo "${build_string}" # get the total number of paramters top_level_element_count=$(cat "${build_json}" | jq 'length') + # loop through each parameter for ((param_iter = 0 ; param_iter < top_level_element_count ; param_iter++)); do + # get the parameter type to decide how to handle it param_type=$(cat "${build_json}" | jq -r ".[${param_iter}].type") + + # get the string to present to the user for their input user_input_string=$(cat "${build_json}" | jq -r ".[${param_iter}].user_input") + + # if it's a "one-of"... in other words, pick an option from a list if [[ "${param_type}" == "one-of" ]]; then options_count=$(cat "${build_json}" | jq ".[${param_iter}].names | length") user_input_string+=" (0-${options_count}): " @@ -89,18 +82,26 @@ build_keyboard() { fi ((param_names_counter+=1)) done + # if it's a single value choice for a parmeter, or "yes or no" question elif [[ "${param_type}" == "single" ]]; then user_input_string+=" (yes/no): " echo -n "${user_input_string}" read user_choice - while [[ $user_choice != "yes" && $user_choice != "no" ]]; do + while [[ $user_choice != "yes" && $user_choice != "no" && $user_choice != "y" && $user_choice != "n" ]]; do echo "Invalid choice: ${user_choice}" echo -n "${user_input_string}" read user_choice done + if [[ "${user_choice}" == "y" ]]; then + user_choice="yes" + fi + if [[ "${user_choice}" == "n" ]]; then + user_choice="no" + fi + param_name=$(cat "${build_json}" | jq -r ".[${param_iter}].name") build_string+=" ${param_name}=${user_choice}" else @@ -113,11 +114,66 @@ build_keyboard() { build_string+=" CONVERT_TO=${5}" fi - echo "" + process_build_string "${build_string}" "${run_build}" +} + + +build_keyboard_all_combinations() { + local build_json="${1}/fp_build.json" + local keyboard_base_dir="${1}" + local keyboard_name="${1#${2}/}" + local run_build="${4}" + + local build_string_base="make ${keyboard_base_dir#keyboards\/}:${3}" + + if [[ -n "${5}" && "${5}" != "no" ]]; then + build_string_base+=" CONVERT_TO=${5}" + fi + + make_build_string_recursive "${build_json}" "${run_build}" 0 "${build_string_base}" +} + +# make_build_string_recursive "${build_json}" "${run_build}" "${param_number}" "${build_string_base}" +make_build_string_recursive() { + local build_json="${1}" + local run_build="${2}" + local param_number=$3 + local build_string_base="${4}" + local top_level_element_count=$(cat "${build_json}" | jq 'length') + + if [[ $((param_number)) -ge $((top_level_element_count)) ]]; then + process_build_string "${build_string_base}" "${run_build}" + return; + fi + + local param_type=$(cat "${build_json}" | jq -r ".[${param_number}].type") + local next_param_number=$((param_number + 1)) + + # if it's a "one-of"... in other words, pick an option from a list + if [[ "${param_type}" == "one-of" ]]; then + param_names=$(cat "${build_json}" | jq -r ".[${param_number}].names | @sh" | tr -d \') + for param_name in $param_names; do + make_build_string_recursive "${build_json}" "${run_build}" $next_param_number "${build_string_base} ${param_name}=yes" + done + # if it's a single value choice for a parmeter, or "yes or no" question + elif [[ "${param_type}" == "single" ]]; then + param_name=$(cat "${build_json}" | jq -r ".[${param_number}].name") + make_build_string_recursive "${build_json}" "${run_build}" $next_param_number "${build_string_base} ${param_name}=yes" + make_build_string_recursive "${build_json}" "${run_build}" $next_param_number "${build_string_base} ${param_name}=no" + else + echo "invalid type in json file: ${param_type}" + exit + fi +} + +# process_build_string $build_string $run_build +process_build_string() { + build_string="$1" + run_build="$2" + echo "${build_string}" - echo "" - if [[ "${4}" == "yes" ]]; then + if [[ "${run_build}" == "yes" ]]; then echo "fp_build.sh: Running QMK Build...." echo "" eval "${build_string}" @@ -128,11 +184,15 @@ Keyboard="" Keymap="default" RunBuild="no" ConvertTo="no" -while getopts "k:m:c:rh" option; do +Interactive="no" +ListKeyboards="no" +while getopts "k:m:c:rhil" option; do case $option in + l) ListKeyboards="yes";; k) Keyboard=${OPTARG};; m) Keymap=${OPTARG};; c) ConvertTo=${OPTARG};; + i) Interactive="yes";; r) RunBuild="yes";; h) Help exit;; @@ -144,7 +204,7 @@ done # set up variables FP_KB_DIR="keyboards/fingerpunch" FP_KB=("${Keyboard}") -if [[ -z "${Keyboard}" ]]; then +if [[ -z "${Keyboard}" || "${ListKeyboards}" == "yes" ]]; then FP_KB=$(get_valid_keyboards "${FP_KB_DIR}") else FP_KB=("${FP_KB_DIR}/${FP_KB}") @@ -154,7 +214,17 @@ else fi fi; -for filename in $FP_KB; do - echo "Running for ${filename}" - build_keyboard "${filename}" "${FP_KB_DIR}" "${Keymap}" "${RunBuild}" "${ConvertTo}" -done \ No newline at end of file +if [[ "${ListKeyboards}" == "yes" ]]; then + # remove last space from FP_KB and convert spaces to newlines + echo "${FP_KB%?}" | tr " " "\n" +else + for filename in $FP_KB; do + if [[ "${Interactive}" == "yes" ]]; then + echo "Running for ${filename}" + build_keyboard_user_input "${filename}" "${FP_KB_DIR}" "${Keymap}" "${RunBuild}" "${ConvertTo}" + else + # build_keyboard_all_combinations "${filename}" "${FP_KB_DIR}" "${Keymap}" "${RunBuild}" "${ConvertTo}" "build string" "current param" + build_keyboard_all_combinations "${filename}" "${FP_KB_DIR}" "${Keymap}" "${RunBuild}" "${ConvertTo}" "" + fi + done +fi From 44d2577aa1a1ca9a8ca4f3344179ede262a9a1ff Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Fri, 28 Oct 2022 10:41:34 -0700 Subject: [PATCH 30/51] fixed fp_build.sh, as bash exposes function variables in child functions unless you use local, these were being overridden --- bin/fp_build.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/fp_build.sh b/bin/fp_build.sh index 5626dbac2aa8..d77bf2ebc6e9 100755 --- a/bin/fp_build.sh +++ b/bin/fp_build.sh @@ -151,13 +151,13 @@ make_build_string_recursive() { # if it's a "one-of"... in other words, pick an option from a list if [[ "${param_type}" == "one-of" ]]; then - param_names=$(cat "${build_json}" | jq -r ".[${param_number}].names | @sh" | tr -d \') + local param_names=$(cat "${build_json}" | jq -r ".[${param_number}].names | @sh" | tr -d \') for param_name in $param_names; do make_build_string_recursive "${build_json}" "${run_build}" $next_param_number "${build_string_base} ${param_name}=yes" done # if it's a single value choice for a parmeter, or "yes or no" question elif [[ "${param_type}" == "single" ]]; then - param_name=$(cat "${build_json}" | jq -r ".[${param_number}].name") + local param_name=$(cat "${build_json}" | jq -r ".[${param_number}].name") make_build_string_recursive "${build_json}" "${run_build}" $next_param_number "${build_string_base} ${param_name}=yes" make_build_string_recursive "${build_json}" "${run_build}" $next_param_number "${build_string_base} ${param_name}=no" else From 137418551b0a29069588dc9e0f8e604ec2703b4e Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Fri, 28 Oct 2022 10:45:46 -0700 Subject: [PATCH 31/51] added keyboard build workflow --- .github/workflows/firmware_build.yml | 79 ++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100755 .github/workflows/firmware_build.yml diff --git a/.github/workflows/firmware_build.yml b/.github/workflows/firmware_build.yml new file mode 100755 index 000000000000..f6ef17455fe6 --- /dev/null +++ b/.github/workflows/firmware_build.yml @@ -0,0 +1,79 @@ +name: Build QMK firmware +on: + push: + branches: + - main + - master + - 'develop**' + - github-actions-build +jobs: + gather-keyboards: + runs-on: ubuntu-latest + outputs: + matrix: ${{ steps.set-matrix.outputs.matrix }} + steps: + - uses: actions/checkout@v3 + with: + repository: ${{ github.repository}} + ref: ${{ github.ref }} + - id: set-matrix + run: | + content=$(bash bin/fp_build.sh -l | sed s~keyboards/fingerpunch/~~| jq -Rsc '. / "\n" - [""]') + content="{\"keyboard\":$content}" + echo "::set-output name=matrix::$content" + + Build: + needs: gather-keyboards + runs-on: ubuntu-latest + container: qmkfm/qmk_cli + strategy: + fail-fast: false + matrix: ${{fromJson(needs.gather-keyboards.outputs.matrix)}} + steps: + - name: Checkout QMK + uses: actions/checkout@v3 + with: + repository: ${{ github.repository}} + ref: ${{ github.ref }} + submodules: recursive + + - name: Build firmware + shell: bash + run: | + wget -q https://github.com/stedolan/jq/releases/download/jq-1.5/jq-linux64 -O jq + chmod +x jq + mv jq /usr/local/sbin/ + + #keyboards="$(qmk list-keyboards| grep fingerpunch)" + keyboards=$(bash bin/fp_build.sh -l| sed s~keyboards/~~) + all_make_commands_raw=$(bash bin/fp_build.sh) + + readarray -t all_make_commands <<<"$all_make_commands_raw" + + echo "${keyboards}" | while IFS= read -r line ; do + board_map="default" + case "$line" in + *${{ matrix.keyboard }}*) + for per_board_make in "${all_make_commands[@]}" + do + : + per_board_make_specifc=$(echo "$per_board_make"|awk -F ' ' '{print $2}'|cut -d ":" -f 1| sed s~fingerpunch/~~) + if [[ "$per_board_make_specifc" == "${{ matrix.keyboard }}" ]]; then + echo "$per_board_make" + $per_board_make + fi + done + ;; + esac + done + + - name: Archive firmware + uses: actions/upload-artifact@v3 + continue-on-error: true + with: + name: ${{ matrix.file }}_${{ github.actor }} + path: | + *.hex + *.bin + *.uf2 + From bcb4e1b13240d96b00b76544ebf41dd58cbe4c7d Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Fri, 28 Oct 2022 11:37:17 -0700 Subject: [PATCH 32/51] making all builds against stemcell for default keymap --- .github/workflows/firmware_build.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/firmware_build.yml b/.github/workflows/firmware_build.yml index f6ef17455fe6..739e2ca09ca6 100755 --- a/.github/workflows/firmware_build.yml +++ b/.github/workflows/firmware_build.yml @@ -46,17 +46,16 @@ jobs: #keyboards="$(qmk list-keyboards| grep fingerpunch)" keyboards=$(bash bin/fp_build.sh -l| sed s~keyboards/~~) - all_make_commands_raw=$(bash bin/fp_build.sh) - + all_make_commands_raw=$(bash bin/fp_build.sh -c stemcell) + readarray -t all_make_commands <<<"$all_make_commands_raw" echo "${keyboards}" | while IFS= read -r line ; do - board_map="default" case "$line" in *${{ matrix.keyboard }}*) for per_board_make in "${all_make_commands[@]}" do - : + : per_board_make_specifc=$(echo "$per_board_make"|awk -F ' ' '{print $2}'|cut -d ":" -f 1| sed s~fingerpunch/~~) if [[ "$per_board_make_specifc" == "${{ matrix.keyboard }}" ]]; then echo "$per_board_make" From d7ad2073224e006a0a75718db9c7164cd60313ac Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Fri, 28 Oct 2022 12:05:12 -0700 Subject: [PATCH 33/51] updated firmware build action to build the right controllers --- .github/workflows/firmware_build.yml | 23 ++++--------------- bin/fp_build.sh | 1 - keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk | 2 ++ keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk | 2 ++ keyboards/fingerpunch/rockon/v2/rules.mk | 2 ++ keyboards/fingerpunch/rockon/v3/rules.mk | 2 ++ 6 files changed, 13 insertions(+), 19 deletions(-) diff --git a/.github/workflows/firmware_build.yml b/.github/workflows/firmware_build.yml index 739e2ca09ca6..9c897e8e8854 100755 --- a/.github/workflows/firmware_build.yml +++ b/.github/workflows/firmware_build.yml @@ -44,26 +44,13 @@ jobs: chmod +x jq mv jq /usr/local/sbin/ - #keyboards="$(qmk list-keyboards| grep fingerpunch)" - keyboards=$(bash bin/fp_build.sh -l| sed s~keyboards/~~) - all_make_commands_raw=$(bash bin/fp_build.sh -c stemcell) - - readarray -t all_make_commands <<<"$all_make_commands_raw" + keyboards=$(bash bin/fp_build.sh -l| sed s~keyboards/fingerpunch/~~) echo "${keyboards}" | while IFS= read -r line ; do - case "$line" in - *${{ matrix.keyboard }}*) - for per_board_make in "${all_make_commands[@]}" - do - : - per_board_make_specifc=$(echo "$per_board_make"|awk -F ' ' '{print $2}'|cut -d ":" -f 1| sed s~fingerpunch/~~) - if [[ "$per_board_make_specifc" == "${{ matrix.keyboard }}" ]]; then - echo "$per_board_make" - $per_board_make - fi - done - ;; - esac + echo "Building for ${line}" + make_command="bin/fp_build.sh -k ${line} -r" + echo "${make_command}" + $make_command done - name: Archive firmware diff --git a/bin/fp_build.sh b/bin/fp_build.sh index d77bf2ebc6e9..7c1440dfb4a6 100755 --- a/bin/fp_build.sh +++ b/bin/fp_build.sh @@ -223,7 +223,6 @@ else echo "Running for ${filename}" build_keyboard_user_input "${filename}" "${FP_KB_DIR}" "${Keymap}" "${RunBuild}" "${ConvertTo}" else - # build_keyboard_all_combinations "${filename}" "${FP_KB_DIR}" "${Keymap}" "${RunBuild}" "${ConvertTo}" "build string" "current param" build_keyboard_all_combinations "${filename}" "${FP_KB_DIR}" "${Keymap}" "${RunBuild}" "${ConvertTo}" "" fi done diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk index 787d69a9a8a0..deea23db2091 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk @@ -40,6 +40,8 @@ EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features req # for instance, if you build "no_features", it's very unlikely you'll need to disable macros MOUSEKEY_ENABLE = no +CONVERT_TO = stemcell + CIRQUE_ENABLE = no ifeq ($(strip $(CIRQUE_ENABLE)), yes) diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk index 770a3cdd41ec..e407e0eb90b0 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk @@ -39,6 +39,8 @@ OLED_ENABLE = no # this can be yes or no depending on if you have an EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed # for instance, if you build "no_features", it's very unlikely you'll need to disable macros +CONVERT_TO = stemcell + SRC += keyboards/fingerpunch/fp_matrix_74hc595_spi.c QUANTUM_LIB_SRC += spi_master.c CUSTOM_MATRIX = lite diff --git a/keyboards/fingerpunch/rockon/v2/rules.mk b/keyboards/fingerpunch/rockon/v2/rules.mk index 64367c983fad..50e506cc6450 100644 --- a/keyboards/fingerpunch/rockon/v2/rules.mk +++ b/keyboards/fingerpunch/rockon/v2/rules.mk @@ -42,6 +42,8 @@ ENCODER_ENABLE = no OLED_ENABLE = no # EXTRAFLAGS += -flto # macros disabled, if you need the extra space +CONVERT_TO = stemcell + ifeq ($(strip $(CIRQUE_ENABLE)), yes) MOUSEKEY_ENABLE := yes # not required, but enabling for mouse button keys POINTING_DEVICE_ENABLE := yes diff --git a/keyboards/fingerpunch/rockon/v3/rules.mk b/keyboards/fingerpunch/rockon/v3/rules.mk index 4165e3c1b140..26306bf9bd9e 100644 --- a/keyboards/fingerpunch/rockon/v3/rules.mk +++ b/keyboards/fingerpunch/rockon/v3/rules.mk @@ -39,6 +39,8 @@ ENCODER_ENABLE = no # EXTRAFLAGS += -flto # macros disabled, if you need the extra space MOUSEKEY_ENABLE = no +CONVERT_TO = stemcell + SRC += keyboards/fingerpunch/fp_matrix_74hc595_spi.c QUANTUM_LIB_SRC += spi_master.c CUSTOM_MATRIX = lite From 41e906368fcf8a2a13e8aed0ede09e13642c9497 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Fri, 28 Oct 2022 13:07:09 -0700 Subject: [PATCH 34/51] split out the build subactions appropriately --- .github/workflows/firmware_build.yml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/firmware_build.yml b/.github/workflows/firmware_build.yml index 9c897e8e8854..46f6db4885ef 100755 --- a/.github/workflows/firmware_build.yml +++ b/.github/workflows/firmware_build.yml @@ -47,10 +47,14 @@ jobs: keyboards=$(bash bin/fp_build.sh -l| sed s~keyboards/fingerpunch/~~) echo "${keyboards}" | while IFS= read -r line ; do - echo "Building for ${line}" - make_command="bin/fp_build.sh -k ${line} -r" - echo "${make_command}" - $make_command + case "$line" in + *${{ matrix.keyboard }}*) + echo "Building for ${line}" + make_command="bin/fp_build.sh -k ${line} -r" + echo "${make_command}" + $make_command + ;; + esac done - name: Archive firmware From b8cd7103bd9c9b6f043166e1b25dde633846dc2d Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Fri, 28 Oct 2022 14:47:51 -0700 Subject: [PATCH 35/51] fixing ximi for github actions, still needs a little cleaning up --- keyboards/fingerpunch/ximi/config.h | 48 +++++++++------ keyboards/fingerpunch/ximi/fp_build.json | 23 ++++--- keyboards/fingerpunch/ximi/readme.md | 26 +++++--- keyboards/fingerpunch/ximi/rules.mk | 76 ++++++++++++++++-------- 4 files changed, 109 insertions(+), 64 deletions(-) diff --git a/keyboards/fingerpunch/ximi/config.h b/keyboards/fingerpunch/ximi/config.h index ae02db6edda6..afb5a2da7c13 100644 --- a/keyboards/fingerpunch/ximi/config.h +++ b/keyboards/fingerpunch/ximi/config.h @@ -178,15 +178,6 @@ along with this program. If not, see . #define POINTING_DEVICE_ROTATION_90_RIGHT #define I2C1_CLOCK_SPEED 400000 #define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 -#ifdef FP_CIRQUE_BOTH - #define POINTING_DEVICE_COMBINED -#endif -#ifdef FP_CIRQUE_LEFT - #define POINTING_DEVICE_LEFT -#endif -#ifdef FP_CIRQUE_RIGHT - #define POINTING_DEVICE_RIGHT -#endif #endif #ifdef FP_TRACKBALL_ENABLE @@ -201,15 +192,38 @@ along with this program. If not, see . // #define SPI_MOSI_PAL_MODE 5 // already defined in chibios #define SPI_MISO_PIN GP4 // #define SPI_MISO_PAL_MODE 5 // already defined in chibios -#ifdef FP_TRACKBALL_BOTH - #define POINTING_DEVICE_COMBINED - #define POINTING_DEVICE_INVERT_Y // This inverts the Y on the left side only - #define POINTING_DEVICE_INVERT_X_RIGHT #endif -#ifdef FP_TRACKBALL_LEFT - #define POINTING_DEVICE_LEFT + +// If both sides have a pointing device +#if defined(FP_TRACKBALL_BOTH) || \ + defined(FP_CIRQUE_BOTH) || \ + defined(FP_TRACKBALL_LEFT_CIRQUE_RIGHT) || \ + defined(FP_CIRQUE_LEFT_TRACKBALL_RIGHT) + #define POINTING_DEVICE_COMBINED +#endif + +// If the left side has a pointing device +#if defined(FP_TRACKBALL_LEFT_ONLY) || \ + defined(FP_CIRQUE_LEFT_ONLY) + #define POINTING_DEVICE_LEFT #endif -#ifdef FP_TRACKBALL_RIGHT - #define POINTING_DEVICE_RIGHT + +// If the right side has a pointing device +#if defined(FP_TRACKBALL_RIGHT_ONLY) || \ + defined(FP_CIRQUE_RIGHT_ONLY) + #define POINTING_DEVICE_RIGHT #endif + +// If there is a trackball on the left side +#if defined(FP_TRACKBALL_BOTH) || \ + defined(FP_TRACKBALL_LEFT_CIRQUE_RIGHT) || \ + defined(FP_TRACKBALL_LEFT_ONLY) + #define POINTING_DEVICE_INVERT_Y // This inverts the Y on the left side only +#endif + +// If there is a trackball on the right side +#if defined(FP_TRACKBALL_BOTH) || \ + defined(FP_CIRQUE_LEFT_TRACKBALL_RIGHT) || \ + defined(FP_TRACKBALL_RIGHT_ONLY) + #define POINTING_DEVICE_INVERT_X_RIGHT #endif diff --git a/keyboards/fingerpunch/ximi/fp_build.json b/keyboards/fingerpunch/ximi/fp_build.json index ccbf4705663d..8485e9c9296f 100644 --- a/keyboards/fingerpunch/ximi/fp_build.json +++ b/keyboards/fingerpunch/ximi/fp_build.json @@ -1,24 +1,23 @@ [ { "type" : "one-of", - "names" : [ "FP_TRACKBALL_BOTH", "FP_TRACKBALL_LEFT", "FP_TRACKBALL_RIGHT" ], - "user_input": "Do you have a no trackball, on both sides, left, or right?" - }, - { - "type" : "one-of", - "names" : [ "FP_CIRQUE_BOTH", "FP_CIRQUE_LEFT", "FP_CIRQUE_RIGHT" ], - "user_input": "Do you have a no cirque trackpad, on both sides, left, or right?" + "names" : [ + "FP_TRACKBALL_BOTH", + "FP_CIRQUE_BOTH", + "FP_TRACKBALL_LEFT_ONLY", + "FP_TRACKBALL_RIGHT_ONLY", + "FP_CIRQUE_LEFT_ONLY", + "FP_CIRQUE_RIGHT_ONLY", + "FP_TRACKBALL_LEFT_CIRQUE_RIGHT", + "FP_CIRQUE_LEFT_TRACKBALL_RIGHT" + ], + "user_input": "What config would you like to use? (FP_TRACKBALL_BOTH, FP_CIRQUE_BOTH, FP_TRACKBALL_LEFT_ONLY, FP_TRACKBALL_RIGHT_ONLY, FP_CIRQUE_LEFT_ONLY, FP_CIRQUE_RIGHT_ONLY, FP_TRACKBALL_LEFT_CIRQUE_RIGHT, FP_CIRQUE_LEFT_TRACKBALL_RIGHT): " }, { "type" : "single", "name" : "RGBLIGHT_ENABLE", "user_input": "Do you have RGB?" }, - { - "type" : "single", - "name" : "AUDIO_ENABLE", - "user_input": "Do you have audio buzzer?" - }, { "type" : "single", "name" : "HAPTIC_ENABLE", diff --git a/keyboards/fingerpunch/ximi/readme.md b/keyboards/fingerpunch/ximi/readme.md index 4de424884769..f057119d6555 100644 --- a/keyboards/fingerpunch/ximi/readme.md +++ b/keyboards/fingerpunch/ximi/readme.md @@ -3,28 +3,36 @@ * Keyboard Maintainer: sadekbaroudi * Hardware Supported: ximi PCB +IMPORTANT NOTE TO SELF, ADD THIS BACK INTO fp_build.json WHEN AUDIO SUPPORT IS AVAILABLE FOR RP2040 + { + "type" : "single", + "name" : "AUDIO_ENABLE", + "user_input": "Do you have audio buzzer?" + }, + Make example for this keyboard (after setting up your build environment): ``` make fingerpunch/ximi:default RGBLIGHT_ENABLE=yes FP_CIRQUE_BOTH=yes HAPTIC_ENABLE=yes ``` -Don't forget to add ```CONVERT_TO=stemcell``` if using a stemcell controller. - Options are: ``` - FP_TRACKBALL_BOTH=yes - FP_TRACKBALL_LEFT=yes - FP_TRACKBALL_RIGHT=yes - FP_CIRQUE_BOTH=yes - FP_CIRQUE_LEFT=yes - FP_CIRQUE_RIGHT=yes RGBLIGHT_ENABLE=yes AUDIO_ENABLE=yes HAPTIC_FEEDBACK=yes + // for the options below, select only one, or none + FP_TRACKBALL_BOTH=yes + FP_CIRQUE_BOTH=yes + FP_TRACKBALL_LEFT_ONLY=yes + FP_TRACKBALL_RIGHT_ONLY=yes + FP_CIRQUE_LEFT_ONLY=yes + FP_CIRQUE_RIGHT_ONLY=yes + FP_TRACKBALL_LEFT_CIRQUE_RIGHT=yes + FP_CIRQUE_LEFT_TRACKBALL_RIGHT=yes ``` Notes: -* Pick one (or none) of FP_TRACKBALL_* only. Pick one (or none) of FP_CIRQUE_* only. +* Pick one (or none) of FP_TRACKBALL_* or FP_CIRQUE_* only. * If you are using a trackball, you cannot use per key rgb or audio. It will be automatically disabled. The hardware doesn't support them together. See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. diff --git a/keyboards/fingerpunch/ximi/rules.mk b/keyboards/fingerpunch/ximi/rules.mk index e56e1ef84bd0..d0dc67ed4724 100644 --- a/keyboards/fingerpunch/ximi/rules.mk +++ b/keyboards/fingerpunch/ximi/rules.mk @@ -42,50 +42,74 @@ HAPTIC_DRIVER = DRV2605L # Pending https://github.com/qmk/qmk_firmware/pull/17723 and https://github.com/qmk/qmk_firmware/pull/17706 AUDIO_ENABLE ?= no -FP_CIRQUE_BOTH ?= no # Choose one of (BOTH, LEFT, RIGHT) -FP_CIRQUE_LEFT ?= no # Choose one of (BOTH, LEFT, RIGHT) -FP_CIRQUE_RIGHT ?= no # Choose one of (BOTH, LEFT, RIGHT) CIRQUE_ENABLE = no # Don't set this one, gets set automatically by FP_CIRQUE_* +PMW3360_ENABLE = no # Don't set this one, gets set automatically by FP_TRACKBALL_* + +# Choose only one (or none) of the 8 options below +FP_TRACKBALL_BOTH ?= no +FP_CIRQUE_BOTH ?= no +FP_TRACKBALL_LEFT_ONLY ?= no +FP_TRACKBALL_RIGHT_ONLY ?= no +FP_CIRQUE_LEFT_ONLY ?= no +FP_CIRQUE_RIGHT_ONLY ?= no +FP_TRACKBALL_LEFT_CIRQUE_RIGHT ?= no +FP_CIRQUE_LEFT_TRACKBALL_RIGHT ?= no + +ifeq ($(strip $(FP_TRACKBALL_BOTH)), yes) + PMW3360_ENABLE := yes + OPT_DEFS += -DFP_TRACKBALL_BOTH +endif + +ifeq ($(strip $(FP_TRACKBALL_LEFT_ONLY)), yes) + PMW3360_ENABLE := yes + OPT_DEFS += -DFP_TRACKBALL_LEFT_ONLY +endif + +ifeq ($(strip $(FP_TRACKBALL_RIGHT_ONLY)), yes) + PMW3360_ENABLE := yes + OPT_DEFS += -DFP_TRACKBALL_RIGHT_ONLY +endif + +ifeq ($(strip $(FP_TRACKBALL_LEFT_CIRQUE_RIGHT)), yes) + PMW3360_ENABLE := yes + OPT_DEFS += -DFP_TRACKBALL_LEFT_CIRQUE_RIGHT +endif + +ifeq ($(strip $(FP_CIRQUE_LEFT_TRACKBALL_RIGHT)), yes) + PMW3360_ENABLE := yes + OPT_DEFS += -DFP_CIRQUE_LEFT_TRACKBALL_RIGHT +endif ifeq ($(strip $(FP_CIRQUE_BOTH)), yes) CIRQUE_ENABLE := yes OPT_DEFS += -DFP_CIRQUE_BOTH endif -ifeq ($(strip $(FP_CIRQUE_LEFT)), yes) +ifeq ($(strip $(FP_CIRQUE_LEFT_ONLY)), yes) CIRQUE_ENABLE := yes - OPT_DEFS += -DFP_CIRQUE_LEFT + OPT_DEFS += -DFP_CIRQUE_LEFT_ONLY endif -ifeq ($(strip $(FP_CIRQUE_RIGHT)), yes) +ifeq ($(strip $(FP_CIRQUE_RIGHT_ONLY)), yes) CIRQUE_ENABLE := yes - OPT_DEFS += -DFP_CIRQUE_RIGHT + OPT_DEFS += -DFP_CIRQUE_RIGHT_ONLY endif -ifeq ($(strip $(CIRQUE_ENABLE)), yes) - POINTING_DEVICE_ENABLE := yes - POINTING_DEVICE_DRIVER := cirque_pinnacle_i2c - OPT_DEFS += -DCIRQUE_ENABLE +ifeq ($(strip $(FP_TRACKBALL_LEFT_CIRQUE_RIGHT)), yes) + CIRQUE_ENABLE := yes + OPT_DEFS += -DFP_TRACKBALL_LEFT_CIRQUE_RIGHT endif -FP_TRACKBALL_BOTH ?= no # Choose one of (BOTH, LEFT, RIGHT) -FP_TRACKBALL_LEFT ?= no # Choose one of (BOTH, LEFT, RIGHT) -FP_TRACKBALL_RIGHT ?= no # Choose one of (BOTH, LEFT, RIGHT) -PMW3360_ENABLE = no # Don't set this one, gets set automatically by FP_TRACKBALL_* - -ifeq ($(strip $(FP_TRACKBALL_BOTH)), yes) - PMW3360_ENABLE := yes - OPT_DEFS += -DFP_TRACKBALL_BOTH +ifeq ($(strip $(FP_CIRQUE_LEFT_TRACKBALL_RIGHT)), yes) + CIRQUE_ENABLE := yes + OPT_DEFS += -DFP_CIRQUE_LEFT_TRACKBALL_RIGHT endif -ifeq ($(strip $(FP_TRACKBALL_LEFT)), yes) - PMW3360_ENABLE := yes - OPT_DEFS += -DFP_TRACKBALL_LEFT -endif -ifeq ($(strip $(FP_TRACKBALL_RIGHT)), yes) - PMW3360_ENABLE := yes - OPT_DEFS += -DFP_TRACKBALL_RIGHT +ifeq ($(strip $(CIRQUE_ENABLE)), yes) + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := cirque_pinnacle_i2c + OPT_DEFS += -DCIRQUE_ENABLE endif ifeq ($(strip $(PMW3360_ENABLE)), yes) From 3ef8109cbe95b4ee449ac04473722610a850596f Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Fri, 28 Oct 2022 23:07:32 -0700 Subject: [PATCH 36/51] fixed ximi build workflows, yay --- .../fingerpunch/ximi/keymaps/default/keymap.c | 156 ------------------ 1 file changed, 156 deletions(-) diff --git a/keyboards/fingerpunch/ximi/keymaps/default/keymap.c b/keyboards/fingerpunch/ximi/keymaps/default/keymap.c index b974fd4c73f0..8205b2b08098 100644 --- a/keyboards/fingerpunch/ximi/keymaps/default/keymap.c +++ b/keyboards/fingerpunch/ximi/keymaps/default/keymap.c @@ -1,9 +1,5 @@ #include QMK_KEYBOARD_H -#ifdef HAPTIC_ENABLE -#include "drivers/haptic/DRV2605L.h" -#endif - // Defines names for use in layer keycodes and the keymap enum layer_names { _QWERTY, @@ -142,155 +138,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______ ) }; - -layer_state_t layer_state_set_keymap(layer_state_t state) { - switch(get_highest_layer(state)) { - case _QWERTY: - case _COLEMAK: -#ifdef HAPTIC_ENABLE - DRV_pulse(soft_bump); -#endif - break; - case _RAISE: -#ifdef HAPTIC_ENABLE - DRV_pulse(sh_dblsharp_tick); -#endif - break; - case _LOWER: -#ifdef HAPTIC_ENABLE - DRV_pulse(lg_dblclick_str); -#endif - break; - case _ADJUST: -#ifdef HAPTIC_ENABLE - DRV_pulse(pulsing_sharp); -#endif - break; - default: - break; - } - - return state; -} - -bool process_record_kb(uint16_t keycode, keyrecord_t* record) { - if (!process_record_user(keycode, record)) { - return false; - } - switch(keycode) { - case KC_BTN1: -#ifdef HAPTIC_ENABLE - DRV_pulse(medium_click1); -#endif - break; - case KC_BTN2: -#ifdef HAPTIC_ENABLE - DRV_pulse(sh_dblclick_str); -#endif - break; - case KC_BTN3: -#ifdef HAPTIC_ENABLE - DRV_pulse(lg_dblclick_med); -#endif - break; - case KC_C: // copy - if (record->event.pressed) { -#ifdef HAPTIC_ENABLE - if (get_mods() & MOD_MASK_CTRL) { - DRV_pulse(lg_dblclick_str); - } -#endif - } - break; - case KC_X: // cut - if (record->event.pressed) { -#ifdef HAPTIC_ENABLE - if (get_mods() & MOD_MASK_CTRL) { - DRV_pulse(lg_dblclick_str); - } -#endif - } - break; - case KC_V: // paste - if (record->event.pressed) { -#ifdef HAPTIC_ENABLE - if (get_mods() & MOD_MASK_CTRL) { - DRV_pulse(soft_bump); - } -#endif - } - break; - case KC_S: // save - if (record->event.pressed) { -#ifdef HAPTIC_ENABLE - if (get_mods() & MOD_MASK_CTRL) { - DRV_pulse(pulsing_strong); - } -#endif - } - break; - default: - break; - } - - return true; -} - - - -void keyboard_post_init_kb(void) { -#ifdef POINTING_DEVICE_ENABLE - pointing_device_set_default_cpi(); -#endif -} - - -#ifdef POINTING_DEVICE_ENABLE -static bool scrolling_mode = false; - -report_mouse_t pointing_device_task_user(report_mouse_t mouse_report) { - if (scrolling_mode) { - mouse_report.h = mouse_report.x; - mouse_report.v = mouse_report.y; - mouse_report.x = 0; - mouse_report.y = 0; - } - return mouse_report; -} - -layer_state_t layer_state_set_pointing(layer_state_t state) { - switch (get_highest_layer(state)) { - case _RAISE: - case _LOWER: - scrolling_mode = true; - pointing_device_set_cpi(50); - break; - default: - if (scrolling_mode) { - scrolling_mode = false; - pointing_device_set_default_cpi(); - } - break; - } - return state; -} - -#ifdef POINTING_DEVICE_COMBINED -report_mouse_t pointing_device_task_combined_user(report_mouse_t left_report, report_mouse_t right_report) { - left_report.h = left_report.x; - left_report.v = left_report.y; - left_report.x = 0; - left_report.y = 0; - return pointing_device_combine_reports(left_report, right_report); -} -#endif // POINTING_DEVICE_COMBINED - -void pointing_device_set_default_cpi(void) { -#ifdef POINTING_DEVICE_COMBINED - pointing_device_set_cpi_on_side(true, 50); //Set cpi on left side to a low value for slower scrolling. - pointing_device_set_cpi_on_side(false, 2000); //Set cpi on right side to a reasonable value for mousing. -#else - pointing_device_set_cpi(2000); -#endif -} -#endif // POINTING_DEVICE_ENABLE \ No newline at end of file From 91ef208d8b88303bfb275894cb7f612111961519 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Sun, 30 Oct 2022 11:03:11 -0700 Subject: [PATCH 37/51] cleaned up rock on v2 config for cirque --- keyboards/fingerpunch/rockon/v2/config.h | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/keyboards/fingerpunch/rockon/v2/config.h b/keyboards/fingerpunch/rockon/v2/config.h index fbc189f33c47..a373f06e7914 100644 --- a/keyboards/fingerpunch/rockon/v2/config.h +++ b/keyboards/fingerpunch/rockon/v2/config.h @@ -37,13 +37,15 @@ along with this program. If not, see . #define ENCODER_RESOLUTION 2 #ifdef CIRQUE_ENABLE - // cirque trackpad config - #define CIRQUE_PINNACLE_ADDR 0x2A - // If using fingerpunch case - // #define POINTING_DEVICE_ROTATION_270 - // If using chewiedies case - #define POINTING_DEVICE_ROTATION_90 - #define POINTING_DEVICE_TASK_THROTTLE_MS 5 + #define CIRQUE_PINNACLE_ADDR 0x2A + #define POINTING_DEVICE_ROTATION_90 + // If using fingerpunch case + // #define POINTING_DEVICE_ROTATION_270 + // If using chewiedies case + #define CIRQUE_PINNACLE_TAP_ENABLE + #define POINTING_DEVICE_TASK_THROTTLE_MS 5 + #define I2C1_CLOCK_SPEED 400000 + #define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 #endif // BEGIN PWM driver: uncomment if using STeMcell as it's a better led driver From f99e4ed45bb3f37b92f962b4f6a9fd343a049f8d Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Sun, 30 Oct 2022 22:30:47 -0700 Subject: [PATCH 38/51] added firmware file renaming to fp_build.sh for output zip file in github actions --- bin/fp_build.sh | 56 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/bin/fp_build.sh b/bin/fp_build.sh index 7c1440dfb4a6..2026878d4262 100755 --- a/bin/fp_build.sh +++ b/bin/fp_build.sh @@ -166,6 +166,60 @@ make_build_string_recursive() { fi } +rename_file_from_build_string() { + tokens=( $1 ) + + # Calculate the qmk build filename prefix to move it + token_file_prefix="${tokens[1]//\//_}" + token_file_prefix="${token_file_prefix//:/_}" + + # Start the new filename, which will be appended to below + target_filename="${token_file_prefix}" + + # check if token_i>1 + # check if first paramter is CONVERT_TO, then grab other side of = (stemcell for example) + # otherwise grab first parameter (RGBLIGHT_ENABLE for example) + # rename file accordingly + token_i=0 + for token in "${tokens[@]}" + do + if [[ $token_i -gt 1 ]]; then + config_param="${token%%=*}" + config_value="${token#*=}" + if [[ "${config_param}" == "CONVERT_TO" ]]; then + token_file_prefix+="_${config_value}" + target_filename+="_${config_value}" + else + # ,, converts to lowercase + target_filename+="_${config_param,,}" + fi + fi + token_i+=1 + done + + echo "${0}: filename token is ${token_file_prefix}" + echo "${0}: target filename is ${target_filename}" + + hex_source_file=".build/${token_file_prefix}.hex" + uf2_source_file=".build/${token_file_prefix}.uf2" + hex_target_file=".build/${target_filename}.hex" + uf2_target_file=".build/${target_filename}.uf2" + + if test -f "${hex_source_file}"; then + echo "${0}: Renaming file '${hex_source_file}' to '${hex_target_file}'" + mv "${hex_source_file}" "${hex_target_file}" + else + echo "${0}: Could not find hex source file ${hex_source_file} to rename." + fi + + if test -f "${uf2_source_file}"; then + echo "${0}: Renaming file '${uf2_source_file}' to '${uf2_target_file}'" + mv "${uf2_source_file}" "${uf2_target_file}" + else + echo "${0}: Could not find uf2 source file ${uf2_source_file} to rename." + fi +} + # process_build_string $build_string $run_build process_build_string() { build_string="$1" @@ -177,6 +231,8 @@ process_build_string() { echo "fp_build.sh: Running QMK Build...." echo "" eval "${build_string}" + + rename_file_from_build_string "${build_string}" fi } From 3be6bec7eeeabafe883760d9fffeb1b06cbe0b0a Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Sun, 30 Oct 2022 23:18:28 -0700 Subject: [PATCH 39/51] should not have been using .build directory for github build action, and updated build artifact name --- .github/workflows/firmware_build.yml | 2 +- bin/fp_build.sh | 17 +++++++++++------ 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/.github/workflows/firmware_build.yml b/.github/workflows/firmware_build.yml index 46f6db4885ef..26bc61d1f0e0 100755 --- a/.github/workflows/firmware_build.yml +++ b/.github/workflows/firmware_build.yml @@ -61,7 +61,7 @@ jobs: uses: actions/upload-artifact@v3 continue-on-error: true with: - name: ${{ matrix.file }}_${{ github.actor }} + name: qmk_fingerpunch_${{ github.actor }} path: | *.hex *.bin diff --git a/bin/fp_build.sh b/bin/fp_build.sh index 2026878d4262..59ef76e34989 100755 --- a/bin/fp_build.sh +++ b/bin/fp_build.sh @@ -190,8 +190,13 @@ rename_file_from_build_string() { token_file_prefix+="_${config_value}" target_filename+="_${config_value}" else - # ,, converts to lowercase - target_filename+="_${config_param,,}" + # Make sure that the value is yes (it's enabled), otherwise we shouldn't include in the filename + if [[ "${config_value}" == "yes" ]]; then + # ,, converts to lowercase + target_filename+="_${config_param,,}" + # remove _enable suffix as it's implied + target_filename=${target_filename%"_enable"} + fi fi fi token_i+=1 @@ -200,10 +205,10 @@ rename_file_from_build_string() { echo "${0}: filename token is ${token_file_prefix}" echo "${0}: target filename is ${target_filename}" - hex_source_file=".build/${token_file_prefix}.hex" - uf2_source_file=".build/${token_file_prefix}.uf2" - hex_target_file=".build/${target_filename}.hex" - uf2_target_file=".build/${target_filename}.uf2" + hex_source_file="${token_file_prefix}.hex" + uf2_source_file="${token_file_prefix}.uf2" + hex_target_file="${target_filename}.hex" + uf2_target_file="${target_filename}.uf2" if test -f "${hex_source_file}"; then echo "${0}: Renaming file '${hex_source_file}' to '${hex_target_file}'" From d50bfc5bd8e996fa51634af8f2018042c3be75e8 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Mon, 31 Oct 2022 01:50:41 -0700 Subject: [PATCH 40/51] switched stemcell builds from rules.mk to just part of the github build action --- bin/fp_build.sh | 3 +++ keyboards/fingerpunch/ffkb_byomcu/v2/fp_build.json | 4 ++++ keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk | 2 -- keyboards/fingerpunch/ffkb_byomcu/v3/fp_build.json | 4 ++++ keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk | 2 -- keyboards/fingerpunch/rockon/v2/fp_build.json | 6 +++++- keyboards/fingerpunch/rockon/v2/rules.mk | 2 -- keyboards/fingerpunch/rockon/v3/fp_build.json | 4 ++++ keyboards/fingerpunch/rockon/v3/rules.mk | 2 -- 9 files changed, 20 insertions(+), 9 deletions(-) diff --git a/bin/fp_build.sh b/bin/fp_build.sh index 59ef76e34989..0d23c8d5a563 100755 --- a/bin/fp_build.sh +++ b/bin/fp_build.sh @@ -160,6 +160,9 @@ make_build_string_recursive() { local param_name=$(cat "${build_json}" | jq -r ".[${param_number}].name") make_build_string_recursive "${build_json}" "${run_build}" $next_param_number "${build_string_base} ${param_name}=yes" make_build_string_recursive "${build_json}" "${run_build}" $next_param_number "${build_string_base} ${param_name}=no" + elif [[ "${param_type}" == "convert-to" ]]; then + local param_name=$(cat "${build_json}" | jq -r ".[${param_number}].name") + make_build_string_recursive "${build_json}" "${run_build}" $next_param_number "${build_string_base} CONVERT_TO=${param_name}" else echo "invalid type in json file: ${param_type}" exit diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/fp_build.json b/keyboards/fingerpunch/ffkb_byomcu/v2/fp_build.json index d9e508ce2d01..71bbcd8147e6 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v2/fp_build.json +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/fp_build.json @@ -1,4 +1,8 @@ [ + { + "type" : "convert-to", + "name" : "stemcell" + }, { "type" : "single", "name" : "CIRQUE_ENABLE", diff --git a/keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk index deea23db2091..787d69a9a8a0 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk +++ b/keyboards/fingerpunch/ffkb_byomcu/v2/rules.mk @@ -40,8 +40,6 @@ EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features req # for instance, if you build "no_features", it's very unlikely you'll need to disable macros MOUSEKEY_ENABLE = no -CONVERT_TO = stemcell - CIRQUE_ENABLE = no ifeq ($(strip $(CIRQUE_ENABLE)), yes) diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/fp_build.json b/keyboards/fingerpunch/ffkb_byomcu/v3/fp_build.json index ca946ce18bcc..375285fc114b 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v3/fp_build.json +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/fp_build.json @@ -1,4 +1,8 @@ [ + { + "type" : "convert-to", + "name" : "stemcell" + }, { "type" : "single", "name" : "CIRQUE_ENABLE", diff --git a/keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk b/keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk index e407e0eb90b0..770a3cdd41ec 100644 --- a/keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk +++ b/keyboards/fingerpunch/ffkb_byomcu/v3/rules.mk @@ -39,8 +39,6 @@ OLED_ENABLE = no # this can be yes or no depending on if you have an EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed # for instance, if you build "no_features", it's very unlikely you'll need to disable macros -CONVERT_TO = stemcell - SRC += keyboards/fingerpunch/fp_matrix_74hc595_spi.c QUANTUM_LIB_SRC += spi_master.c CUSTOM_MATRIX = lite diff --git a/keyboards/fingerpunch/rockon/v2/fp_build.json b/keyboards/fingerpunch/rockon/v2/fp_build.json index b30bf093fdf9..21936ccb31d7 100644 --- a/keyboards/fingerpunch/rockon/v2/fp_build.json +++ b/keyboards/fingerpunch/rockon/v2/fp_build.json @@ -1,4 +1,8 @@ [ + { + "type" : "convert-to", + "name" : "stemcell" + }, { "type" : "single", "name" : "CIRQUE_ENABLE", @@ -24,4 +28,4 @@ "name" : "PIMORONI_TRACKBALL_ENABLE", "user_input": "Do you have a pimoroni trackball?" } -] \ No newline at end of file +] diff --git a/keyboards/fingerpunch/rockon/v2/rules.mk b/keyboards/fingerpunch/rockon/v2/rules.mk index 50e506cc6450..64367c983fad 100644 --- a/keyboards/fingerpunch/rockon/v2/rules.mk +++ b/keyboards/fingerpunch/rockon/v2/rules.mk @@ -42,8 +42,6 @@ ENCODER_ENABLE = no OLED_ENABLE = no # EXTRAFLAGS += -flto # macros disabled, if you need the extra space -CONVERT_TO = stemcell - ifeq ($(strip $(CIRQUE_ENABLE)), yes) MOUSEKEY_ENABLE := yes # not required, but enabling for mouse button keys POINTING_DEVICE_ENABLE := yes diff --git a/keyboards/fingerpunch/rockon/v3/fp_build.json b/keyboards/fingerpunch/rockon/v3/fp_build.json index 867f56d42da5..6009b5b1023d 100644 --- a/keyboards/fingerpunch/rockon/v3/fp_build.json +++ b/keyboards/fingerpunch/rockon/v3/fp_build.json @@ -1,4 +1,8 @@ [ + { + "type" : "convert-to", + "name" : "stemcell" + }, { "type" : "single", "name" : "CIRQUE_ENABLE", diff --git a/keyboards/fingerpunch/rockon/v3/rules.mk b/keyboards/fingerpunch/rockon/v3/rules.mk index 26306bf9bd9e..4165e3c1b140 100644 --- a/keyboards/fingerpunch/rockon/v3/rules.mk +++ b/keyboards/fingerpunch/rockon/v3/rules.mk @@ -39,8 +39,6 @@ ENCODER_ENABLE = no # EXTRAFLAGS += -flto # macros disabled, if you need the extra space MOUSEKEY_ENABLE = no -CONVERT_TO = stemcell - SRC += keyboards/fingerpunch/fp_matrix_74hc595_spi.c QUANTUM_LIB_SRC += spi_master.c CUSTOM_MATRIX = lite From 629dde3ba227b0b3bfdeb4a3f460ea50746f9bc6 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Mon, 31 Oct 2022 11:46:40 -0700 Subject: [PATCH 41/51] capturing qmk make exit status to prevent false positives in github actions build --- bin/fp_build.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/bin/fp_build.sh b/bin/fp_build.sh index 0d23c8d5a563..1f81c3f88fb6 100755 --- a/bin/fp_build.sh +++ b/bin/fp_build.sh @@ -238,7 +238,12 @@ process_build_string() { if [[ "${run_build}" == "yes" ]]; then echo "fp_build.sh: Running QMK Build...." echo "" - eval "${build_string}" + build_run_output=$(eval "${build_string}" | tee /dev/stderr) + build_run_status=$? + if [[ $build_run_status -ne 0 ]]; then + echo "${0} build run failed with status ${build_run_status}" + exit $build_run_status + fi rename_file_from_build_string "${build_string}" fi From 8d1ee3d8be3cfdce8a4881c573f858e5442e10a8 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Mon, 31 Oct 2022 12:58:45 -0700 Subject: [PATCH 42/51] finally got the exit status right for github build action fp_build.sh calls --- bin/fp_build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/fp_build.sh b/bin/fp_build.sh index 1f81c3f88fb6..892fa583d3fc 100755 --- a/bin/fp_build.sh +++ b/bin/fp_build.sh @@ -238,7 +238,7 @@ process_build_string() { if [[ "${run_build}" == "yes" ]]; then echo "fp_build.sh: Running QMK Build...." echo "" - build_run_output=$(eval "${build_string}" | tee /dev/stderr) + eval "${build_string}" build_run_status=$? if [[ $build_run_status -ne 0 ]]; then echo "${0} build run failed with status ${build_run_status}" From bcf042fc8d3f94e8d41be3e06bc8a2ee1858fc58 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Mon, 31 Oct 2022 13:21:22 -0700 Subject: [PATCH 43/51] fixed github workflow build such that firmware is too large doesn't generate an error, but everything else does --- bin/fp_build.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/bin/fp_build.sh b/bin/fp_build.sh index 892fa583d3fc..a41242900310 100755 --- a/bin/fp_build.sh +++ b/bin/fp_build.sh @@ -238,9 +238,11 @@ process_build_string() { if [[ "${run_build}" == "yes" ]]; then echo "fp_build.sh: Running QMK Build...." echo "" - eval "${build_string}" + build_run_output=`${build_string}` build_run_status=$? - if [[ $build_run_status -ne 0 ]]; then + echo "output: ${build_run_output}" + echo "exit status: ${build_run_status}" + if [[ $build_run_status -ne 0 && "${build_run_output}" != *"The firmware is too large"* ]]; then echo "${0} build run failed with status ${build_run_status}" exit $build_run_status fi From 7c735f5572eeee53d90cd090fda8d76033504c85 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Mon, 31 Oct 2022 16:40:30 -0700 Subject: [PATCH 44/51] added firmware file size check failure to the build output filename to ensure people don't accidentally use it --- bin/fp_build.sh | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/bin/fp_build.sh b/bin/fp_build.sh index a41242900310..a2124e713d51 100755 --- a/bin/fp_build.sh +++ b/bin/fp_build.sh @@ -169,9 +169,15 @@ make_build_string_recursive() { fi } +# rename_file_from_build_string $build_string $target_filename_suffix rename_file_from_build_string() { tokens=( $1 ) + target_filename_suffix="" + if [[ ! -z "${2}" ]]; then + target_filename_suffix="_${2}" + fi + # Calculate the qmk build filename prefix to move it token_file_prefix="${tokens[1]//\//_}" token_file_prefix="${token_file_prefix//:/_}" @@ -210,8 +216,8 @@ rename_file_from_build_string() { hex_source_file="${token_file_prefix}.hex" uf2_source_file="${token_file_prefix}.uf2" - hex_target_file="${target_filename}.hex" - uf2_target_file="${target_filename}.uf2" + hex_target_file="${target_filename}${target_filename_suffix}.hex" + uf2_target_file="${target_filename}${target_filename_suffix}.uf2" if test -f "${hex_source_file}"; then echo "${0}: Renaming file '${hex_source_file}' to '${hex_target_file}'" @@ -232,6 +238,7 @@ rename_file_from_build_string() { process_build_string() { build_string="$1" run_build="$2" + append_to_filename="" echo "${build_string}" @@ -242,12 +249,17 @@ process_build_string() { build_run_status=$? echo "output: ${build_run_output}" echo "exit status: ${build_run_status}" - if [[ $build_run_status -ne 0 && "${build_run_output}" != *"The firmware is too large"* ]]; then - echo "${0} build run failed with status ${build_run_status}" - exit $build_run_status + if [[ $build_run_status -ne 0 ]]; then + # if the firmware is too large, we proceed, but append to filename, otherwise we error out + if [[ "${build_run_output}" == *"The firmware is too large"* ]]; then + append_to_filename="FIRMWARE_SIZE_CHECK_FAILED" + else + echo "${0} build run failed with status ${build_run_status}" + exit $build_run_status + fi fi - rename_file_from_build_string "${build_string}" + rename_file_from_build_string "${build_string}" "${append_to_filename}" fi } From e1a00c1c2487a75281978e9454296b67e64c1e99 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Tue, 1 Nov 2022 15:17:32 -0700 Subject: [PATCH 45/51] added elite-c pin compatibility for sweeeeep, since it requires it --- keyboards/fingerpunch/sweeeeep/rules.mk | 2 ++ 1 file changed, 2 insertions(+) diff --git a/keyboards/fingerpunch/sweeeeep/rules.mk b/keyboards/fingerpunch/sweeeeep/rules.mk index 9486c60f7325..507be426703d 100644 --- a/keyboards/fingerpunch/sweeeeep/rules.mk +++ b/keyboards/fingerpunch/sweeeeep/rules.mk @@ -4,6 +4,8 @@ MCU = atmega32u4 # Bootloader selection BOOTLOADER = atmel-dfu +PIN_COMPATIBLE = elite_c + # Build Options # change yes to no to disable # From abdd818c025a9793518c2fef4019069a65971ae3 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Wed, 2 Nov 2022 01:25:23 -0700 Subject: [PATCH 46/51] Revert "added elite-c pin compatibility for sweeeeep, since it requires it" This reverts commit e1a00c1c2487a75281978e9454296b67e64c1e99. --- keyboards/fingerpunch/sweeeeep/rules.mk | 2 -- 1 file changed, 2 deletions(-) diff --git a/keyboards/fingerpunch/sweeeeep/rules.mk b/keyboards/fingerpunch/sweeeeep/rules.mk index 507be426703d..9486c60f7325 100644 --- a/keyboards/fingerpunch/sweeeeep/rules.mk +++ b/keyboards/fingerpunch/sweeeeep/rules.mk @@ -4,8 +4,6 @@ MCU = atmega32u4 # Bootloader selection BOOTLOADER = atmel-dfu -PIN_COMPATIBLE = elite_c - # Build Options # change yes to no to disable # From f5bd7493a85c12fa495e646d017b4b932efa9cec Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Wed, 2 Nov 2022 11:37:02 -0700 Subject: [PATCH 47/51] small issue with interactive mode for convert-to parameter --- bin/fp_build.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bin/fp_build.sh b/bin/fp_build.sh index a2124e713d51..df94ebdf176f 100755 --- a/bin/fp_build.sh +++ b/bin/fp_build.sh @@ -104,6 +104,9 @@ build_keyboard_user_input() { param_name=$(cat "${build_json}" | jq -r ".[${param_iter}].name") build_string+=" ${param_name}=${user_choice}" + elif [[ "${param_type}" == "convert-to" ]]; then + # Do nothing, we can skip this for interactive mode + param_name=$(cat "${build_json}" | jq -r ".[${param_iter}].name") else echo "invalid type in json file: ${param_type}" exit From 5dcc92739e036c6c63915edf47eb9b691548599e Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Fri, 4 Nov 2022 13:11:18 -0700 Subject: [PATCH 48/51] added fflx official firmware, instead of relying on ffkb v2 firmware --- keyboards/fingerpunch/README.md | 3 +- keyboards/fingerpunch/fflx/config.h | 97 +++++++++ keyboards/fingerpunch/fflx/fflx.c | 17 ++ keyboards/fingerpunch/fflx/fflx.h | 35 ++++ keyboards/fingerpunch/fflx/fp_build.json | 21 ++ .../fingerpunch/fflx/keymaps/default/keymap.c | 193 ++++++++++++++++++ .../keymaps/manna-harbour_miryoku/config.h | 22 ++ .../keymaps/manna-harbour_miryoku/keymap.c | 4 + .../fflx/keymaps/sadekbaroudi/config.h | 1 + .../fflx/keymaps/sadekbaroudi/keymap.c | 97 +++++++++ keyboards/fingerpunch/fflx/readme.md | 22 ++ keyboards/fingerpunch/fflx/rules.mk | 71 +++++++ users/sadekbaroudi/process_records.h | 1 + users/sadekbaroudi/wrappers.h | 5 + 14 files changed, 588 insertions(+), 1 deletion(-) create mode 100644 keyboards/fingerpunch/fflx/config.h create mode 100644 keyboards/fingerpunch/fflx/fflx.c create mode 100644 keyboards/fingerpunch/fflx/fflx.h create mode 100644 keyboards/fingerpunch/fflx/fp_build.json create mode 100644 keyboards/fingerpunch/fflx/keymaps/default/keymap.c create mode 100644 keyboards/fingerpunch/fflx/keymaps/manna-harbour_miryoku/config.h create mode 100644 keyboards/fingerpunch/fflx/keymaps/manna-harbour_miryoku/keymap.c create mode 100644 keyboards/fingerpunch/fflx/keymaps/sadekbaroudi/config.h create mode 100644 keyboards/fingerpunch/fflx/keymaps/sadekbaroudi/keymap.c create mode 100644 keyboards/fingerpunch/fflx/readme.md create mode 100644 keyboards/fingerpunch/fflx/rules.mk diff --git a/keyboards/fingerpunch/README.md b/keyboards/fingerpunch/README.md index 83d6759b1167..3e1b0dd42ec1 100644 --- a/keyboards/fingerpunch/README.md +++ b/keyboards/fingerpunch/README.md @@ -41,6 +41,7 @@ Note: if you are using a userspace, and you have custom keycodes, you will need || defined(KEYBOARD_fingerpunch_ffkb_byomcu_v1) \ || defined(KEYBOARD_fingerpunch_ffkb_byomcu_v2) \ || defined(KEYBOARD_fingerpunch_ffkb_byomcu_v3) \ + || defined(KEYBOARD_fingerpunch_fflx) \ || defined(KEYBOARD_fingerpunch_luakeeb) \ || defined(KEYBOARD_fingerpunch_pinkiesout) \ || defined(KEYBOARD_fingerpunch_rockon_v1) \ @@ -48,7 +49,7 @@ Note: if you are using a userspace, and you have custom keycodes, you will need || defined(KEYBOARD_fingerpunch_rockon_v3) \ || defined(KEYBOARD_fingerpunch_rockon_bp) \ || defined(KEYBOARD_fingerpunch_sweeeeep) \ - || defined(KEYBOARD_fingerpunch_ximi) + || defined(KEYBOARD_fingerpunch_ximi) \ # define PLACEHOLDER_SAFE_RANGE FP_SAFE_RANGE #else # define PLACEHOLDER_SAFE_RANGE SAFE_RANGE diff --git a/keyboards/fingerpunch/fflx/config.h b/keyboards/fingerpunch/fflx/config.h new file mode 100644 index 000000000000..48795db662de --- /dev/null +++ b/keyboards/fingerpunch/fflx/config.h @@ -0,0 +1,97 @@ +/* +Copyright 2021 Sadek Baroudi + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once +#include "config_common.h" + + +/* USB Device descriptor parameter */ +// #define DEVICE_VER 0x0001 // now defined in vx/config.h +#define VENDOR_ID 0xFEFE +#define PRODUCT_ID 0xFF78 +#define MANUFACTURER sadekbaroudi +#define PRODUCT sadekbaroudi fflx + +/* USB Device descriptor parameter */ +#define DEVICE_VER 0x0001 + +/* key matrix size */ +/* Rows are doubled up */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 8 + +// wiring +#define MATRIX_ROW_PINS \ + { D2, F4, F5, F6, F7, B1 } +#define MATRIX_COL_PINS \ + { B5, B4, E6, D7, C6, D4, B2, B3 } + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +#define RGB_DI_PIN D3 // 41 +#ifdef RGBLIGHT_ENABLE + // Use twinkle as the default rgb mode for the layers + #define DEFAULT_RGB_LAYER_MODE RGBLIGHT_MODE_TWINKLE+2 + #define RGBLED_NUM 17 + #define RGBLIGHT_HUE_STEP 16 + #define RGBLIGHT_SAT_STEP 16 + #define RGBLIGHT_VAL_STEP 16 + #define RGBLIGHT_LIMIT_VAL 150 /* The maximum brightness level for RGBLIGHT_ENABLE */ + #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_TWINKLE +#endif + +#define ENCODERS_PAD_A {D5, B6} +#define ENCODERS_PAD_B {B7, F1} + +#define ENCODER_RESOLUTION 2 + +#ifdef FP_EVQ_UNDER_PALMS +#define ENCODERS_A_REVERSE +#define ENCODERS_B_REVERSE +#endif + +#ifdef FP_EC11_UNDER_PALMS +#define ENCODERS_C_REVERSE +#endif + +#ifdef CIRQUE_ENABLE + // cirque trackpad config + #define CIRQUE_PINNACLE_ADDR 0x2A + #define POINTING_DEVICE_ROTATION_90 + #define CIRQUE_PINNACLE_TAP_ENABLE + #define POINTING_DEVICE_TASK_THROTTLE_MS 5 + #define I2C1_CLOCK_SPEED 400000 + #define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 +#endif + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/fingerpunch/fflx/fflx.c b/keyboards/fingerpunch/fflx/fflx.c new file mode 100644 index 000000000000..66893e868227 --- /dev/null +++ b/keyboards/fingerpunch/fflx/fflx.c @@ -0,0 +1,17 @@ +/* Copyright 2021 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "fflx.h" diff --git a/keyboards/fingerpunch/fflx/fflx.h b/keyboards/fingerpunch/fflx/fflx.h new file mode 100644 index 000000000000..b4bde8a7ba7a --- /dev/null +++ b/keyboards/fingerpunch/fflx/fflx.h @@ -0,0 +1,35 @@ +/* Copyright 2022 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#pragma once + +#include "quantum.h" + +#define LAYOUT_fflx( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \ + K32, K34, K35, K36, K37, K38, K39, K3B \ +) \ +{ \ + { K01, K02, K03, K04, K05, K06, K07, K08 }, \ + { K11, K12, K13, K14, K15, K16, K17, K18 }, \ + { K21, K22, K23, K24, K25, K26, K27, K28 }, \ + { KC_NO, KC_NO, K19, K2A, K0A, K1B, K2B, K0C }, \ + { KC_NO, KC_NO, K29, K09, K1A, K0B, K2C, K1C }, \ + { K3B, K32, K39, K34, K35, K36, K37, K38 } \ +} + +#include "keyboards/fingerpunch/fp.h" diff --git a/keyboards/fingerpunch/fflx/fp_build.json b/keyboards/fingerpunch/fflx/fp_build.json new file mode 100644 index 000000000000..41cdbe0018d5 --- /dev/null +++ b/keyboards/fingerpunch/fflx/fp_build.json @@ -0,0 +1,21 @@ +[ + { + "type" : "convert-to", + "name" : "stemcell" + }, + { + "type" : "single", + "name" : "CIRQUE_ENABLE", + "user_input": "Do you have a cirque?" + }, + { + "type" : "single", + "name" : "RGBLIGHT_ENABLE", + "user_input": "Do you want underglow enabled?" + }, + { + "type" : "one-of", + "names" : [ "FP_EC11_UNDER_PALMS", "FP_EVQ_UNDER_PALMS" ], + "user_input": "No under palm encoders, EC11, or EVQ?" + } +] diff --git a/keyboards/fingerpunch/fflx/keymaps/default/keymap.c b/keyboards/fingerpunch/fflx/keymaps/default/keymap.c new file mode 100644 index 000000000000..4009ad695101 --- /dev/null +++ b/keyboards/fingerpunch/fflx/keymaps/default/keymap.c @@ -0,0 +1,193 @@ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _QWERTY, + _COLEMAK, + _LOWER, + _RAISE, + _ADJUST, + _MOUSE +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * + * ,-----------------------------------------. ,-----------------------------------------. + * | ESC | Q | W | E | R | T | | Y | U | I | O | P |BckSpc| + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | TAB | A | S | D | F | G | | H | J | K | L | ; | ' | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | SFT | Z | X | C | V | B | | N | M | , | . | / | SFT | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +// Default config uses home row mods. So hold each of the keys on the home row to use ctrl, gui, alt, or shift +[_QWERTY] = LAYOUT_fflx( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, LCTL_T(KC_A), LGUI_T(KC_S), LALT_T(KC_D), LSFT_T(KC_F), KC_G, KC_H, RSFT_T(KC_J), RALT_T(KC_K), RGUI_T(KC_L), RCTL_T(KC_SCLN), KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_MUTE, KC_BSLS, KC_ENT, LOWER, RAISE, KC_SPC, KC_DEL, LCTL(KC_BSPC) +), + +/* Colemak-dh + * + * ,-----------------------------------------. ,-----------------------------------------. + * | ESC | Q | W | E | R | T | | Y | U | I | O | P |BckSpc| + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | TAB | A | S | D | F | G | | H | J | K | L | ; | ' | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | SFT | Z | X | C | V | B | | N | M | , | . | / | SFT | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +// Default config uses home row mods. So hold each of the keys on the home row to use ctrl, gui, alt, or shift +[_COLEMAK] = LAYOUT_fflx( + KC_ESC, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, + KC_TAB, LCTL_T(KC_A), LGUI_T(KC_R), LALT_T(KC_S), LSFT_T(KC_T), KC_G, KC_M, RSFT_T(KC_N), RALT_T(KC_E), RGUI_T(KC_I), RCTL_T(KC_O), KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_MUTE, KC_BSLS, KC_ENT, LOWER, RAISE, KC_SPC, KC_DEL, LCTL(KC_BSPC) +), + +/* Raise + * + * ,-----------------------------------------. ,-----------------------------------------. + * | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | | | | _ | + | { | } | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | Caps| | | | | | | | | | | " | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ + +[_RAISE] = LAYOUT_fflx( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TAB, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, + _______, _______, KC_PGDN, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ +), +/* Lower + * + * ,-----------------------------------------. ,-----------------------------------------. + * | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | | | | _ | + | { | } | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | Caps| | | | | | | | | | | " | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ +[_LOWER] = LAYOUT_fflx( + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + _______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, _______, + _______, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PIPE, KC_DQT, _______, + _______, _______, _______, _______, _______, _______, _______, _______ +), + +/* Adjust (Lower + Raise) + + * ,-----------------------------------------. ,-----------------------------------------. + * | | RGB_T| RGB_R| RGB_F| |QWERTY| | F1 | F2 | F3 | F4 | F5 | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | SPD_I| HUE_I| SAT_I| VAL_I|COLEMK| | F6 | F7 | F8 | F9 | F10 | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | SPD_D| HUE_D| SAT_D| VAL_D| | | F11 | F12 | | | Reset| | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ +[_ADJUST] = LAYOUT_fflx( + _______, RGB_TOG, RGB_RMOD, RGB_MOD, _______, TO(_QWERTY), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, + _______, RGB_SPI, RGB_HUI, RGB_SAI, RGB_VAI, TO(_COLEMAK), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, + _______, RGB_SPD, RGB_HUD, RGB_SAD, RGB_VAD, _______, KC_F11, KC_F12, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______ +), + +/* Mouse layer + + * ,-----------------------------------------. ,-----------------------------------------. + * | | |KC_WHU| |KC_WHD| | | | | | | | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | |KC_WHL|MSBTN3|MSBTN2|MSBTN1|KC_WHR| | | | | | | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | | | | | | | | | + * `-----------------------------------------' `-----------------------------------------' + * ,------. ,--------------------. ,--------------------. ,------. + * | MUTE | | \ | Enter| LOWER| | RAISE| Space| Del | | DELW | + * `------' `--------------------' `--------------------. `------' + */ +[_MOUSE] = LAYOUT_fflx( + _______, _______, KC_WH_U, _______, KC_WH_D, _______, _______, _______, _______, _______, _______, _______, + _______, KC_WH_L, KC_BTN3, KC_BTN2, KC_BTN1, KC_WH_R, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ +) +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + +#ifdef ENCODER_ENABLE + +bool encoder_update_user(uint8_t index, bool clockwise) { + // default behavior if undefined + if (index == 0) { + // Conditional to reverse the direction of encoder number 1 + // The reason I have this is that for some of my boards, it supports two different types of encoders, and they may differ in direction + #ifdef ENCODERS_A_REVERSE + if (!clockwise) { + #else + if (clockwise) { + #endif + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + } + else if (index == 1) { + // Conditional to reverse the direction of encoder number 1 + // The reason I have this is that for some of my boards, it supports two different types of encoders, and they may differ in direction + #ifdef ENCODERS_B_REVERSE + if (!clockwise) { + #else + if (clockwise) { + #endif + tap_code16(C(KC_RGHT)); + } + else{ + tap_code16(C(KC_LEFT)); + } + } + else if (index == 2) { + #ifdef ENCODERS_C_REVERSE + if (!clockwise) { + #else + if (clockwise) { + #endif + press_super_tab(true); + } else { + press_super_tab(false); + } + } + + return true; +} +#endif diff --git a/keyboards/fingerpunch/fflx/keymaps/manna-harbour_miryoku/config.h b/keyboards/fingerpunch/fflx/keymaps/manna-harbour_miryoku/config.h new file mode 100644 index 000000000000..4a248b56fdc8 --- /dev/null +++ b/keyboards/fingerpunch/fflx/keymaps/manna-harbour_miryoku/config.h @@ -0,0 +1,22 @@ +// Copyright 2022 Manna Harbour +// https://github.com/manna-harbour/miryoku + +// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . + +#pragma once + +#define XXX KC_NO + +#define LAYOUT_miryoku( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \ + N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \ +) \ +LAYOUT_fflx( \ +XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \ +XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \ +XXX, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, XXX, \ + XXX, K32, K33, K34, K35, K36, K37, XXX, \ + XXX \ +) diff --git a/keyboards/fingerpunch/fflx/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/fingerpunch/fflx/keymaps/manna-harbour_miryoku/keymap.c new file mode 100644 index 000000000000..fadfdc83651a --- /dev/null +++ b/keyboards/fingerpunch/fflx/keymaps/manna-harbour_miryoku/keymap.c @@ -0,0 +1,4 @@ +// Copyright 2022 Manna Harbour +// https://github.com/manna-harbour/miryoku + +// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . diff --git a/keyboards/fingerpunch/fflx/keymaps/sadekbaroudi/config.h b/keyboards/fingerpunch/fflx/keymaps/sadekbaroudi/config.h new file mode 100644 index 000000000000..300cf466c533 --- /dev/null +++ b/keyboards/fingerpunch/fflx/keymaps/sadekbaroudi/config.h @@ -0,0 +1 @@ +#define FP_LAYER_LIGHTING_CAPS_LOCK_HUE HSV_WHITE diff --git a/keyboards/fingerpunch/fflx/keymaps/sadekbaroudi/keymap.c b/keyboards/fingerpunch/fflx/keymaps/sadekbaroudi/keymap.c new file mode 100644 index 000000000000..03c4c69d0db0 --- /dev/null +++ b/keyboards/fingerpunch/fflx/keymaps/sadekbaroudi/keymap.c @@ -0,0 +1,97 @@ +/* Copyright 2021 Sadek Baroudi + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "sadekbaroudi.h" +#include QMK_KEYBOARD_H + +/* + * The `LAYOUT_fflx_base` macro is a template to allow the use of identical + * modifiers for the default layouts (eg ALPHA_ALT, Colemak, Dvorak, etc), so + * that there is no need to set them up for each layout, and modify all of + * them if I want to change them. This helps to keep consistency and ease + * of use. K## is a placeholder to pass through the individual keycodes + */ + +// clang-format off +#define LAYOUT_fflx_base( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \ + K33, K34, K35, K36, K37, K38 \ + ) \ + LAYOUT_wrapper( \ + FP_SCROLL_TOG, K01, K02, K03, LT(_FUNCTION, K04), K05, K06, LT(_FUNCTION, K07), K08, K09, K0A, KC_BSLS, \ + KC_MS_BTN1, LCTL_T(K11), LGUI_T(K12), LALT_T(K13), LSFT_T(K14), K15, LT(_MOUSE, K16), RSFT_T(K17), RALT_T(K18), RGUI_T(K19), RCTL_T(K1A), LCTL(KC_V), \ + FP_SNIPE_TOG, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, FP_SUPER_TAB, \ + KC_MUTE, K33, LT(_NAVIGATION,K34), LT(_FUNCTION,K35), LT(_MEDIA,K36), LT(_SYMBOLS,K37), K38, LCTL(KC_BSPC) \ + ) + +/* Re-pass though to allow templates to be used */ +#define LAYOUT_fflx_byomcu_base_wrapper(...) LAYOUT_fflx_base(__VA_ARGS__) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_ALPHA_ALT] = LAYOUT_fflx_byomcu_base_wrapper( + _________________ALPHA_ALT_L1_________________, _________________ALPHA_ALT_R1_________________, + _________________ALPHA_ALT_L2_________________, _________________ALPHA_ALT_R2_________________, + _________________ALPHA_ALT_L3_________________, _________________ALPHA_ALT_R3_________________, + __ALPHA_ALT_THUMBS_6__ + ), + + [_ALPHA] = LAYOUT_fflx_byomcu_base_wrapper( + __________________ALPHA_L1____________________, __________________ALPHA_R1____________________, + __________________ALPHA_L2____________________, __________________ALPHA_R2____________________, + __________________ALPHA_L3____________________, __________________ALPHA_R3____________________, + __ALPHA_THUMBS_6__ + ), + + [_NAVIGATION] = LAYOUT_wrapper( + _______, ________________NAVIGATION_1_______________, _________________NUMPAD_1__________________, _______, + _______, ________________NAVIGATION_2_______________, _________________NUMPAD_2__________________, _______, + _______, ________________NAVIGATION_3_______________, _________________NUMPAD_3__________________, _______, + _______, _______, _______, KC_TAB, KC_BSPC, KC_SPACE, KC_DOT, _______ + ), + + [_SYMBOLS] = LAYOUT_wrapper( + _______, ________________SYMBOLS_L1_________________, ________________SYMBOLS_R1_________________, _______, + _______, ________________SYMBOLS_L2_________________, ________________SYMBOLS_R2_________________, _______, + _______, ________________SYMBOLS_L3_________________, ________________SYMBOLS_R3_________________, _______, + _______, _______, KC_ENT, KC_DEL, KC_BSPC, _______, _______, _______ + ), + + [_FUNCTION] = LAYOUT_wrapper( + _______, ________________SHIFTNAV_1_________________, ________________FUNCTION_1_________________, _______, + _______, ________________SHIFTNAV_2_________________, ________________FUNCTION_2_________________, _______, + _______, ________________SHIFTNAV_3_________________, ________________FUNCTION_3_________________, _______, + _______, _______, _______, _______, N_DEL_LINE, KC_SPACE, _______, _______ + ), + + [_MEDIA] = LAYOUT_wrapper( + _______, ___________________RGB_1___________________, _________________MACROS_1__________________, _______, + _______, ___________________RGB_2___________________, _________________MACROS_2__________________, _______, + _______, ___________________RGB_3___________________, _________________MACROS_3__________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + + [_MOUSE] = LAYOUT_wrapper( + _______, _______________AUTO_MOUSE_1________________, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_2________________, ___________________BLANK___________________, _______, + _______, _______________AUTO_MOUSE_3________________, ___________________BLANK___________________, _______, + _______, _______, KC_MS_BTN1, KC_MS_BTN3, KC_MS_BTN3, KC_MS_BTN2, _______, _______ + ), + +}; + diff --git a/keyboards/fingerpunch/fflx/readme.md b/keyboards/fingerpunch/fflx/readme.md new file mode 100644 index 000000000000..5c3ced05aa00 --- /dev/null +++ b/keyboards/fingerpunch/fflx/readme.md @@ -0,0 +1,22 @@ +# fflx + +An ergonomic 40% keyboard + +* Keyboard Maintainer: [sadekbaroudi](https://github.com/sadekbaroudi) + +Faux Fox LX (fflx) + +Make example for this keyboard (after setting up your build environment): +``` + make fingerpunch/fflx:default RGBLIGHT_ENABLE=yes FP_EC11_UNDER_PALMS=yes CIRQUE_ENABLE=yes +``` + +Options are: +``` + CIRQUE_ENABLE=yes + RGBLIGHT_ENABLE=yes + FP_EC11_UNDER_PALMS=yes + FP_EVQ_UNDER_PALMS=yes +``` + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/fingerpunch/fflx/rules.mk b/keyboards/fingerpunch/fflx/rules.mk new file mode 100644 index 000000000000..956f444f9da5 --- /dev/null +++ b/keyboards/fingerpunch/fflx/rules.mk @@ -0,0 +1,71 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +# Teensy halfkay +# Pro Micro caterina +# Atmel DFU atmel-dfu +# LUFA DFU lufa-dfu +# QMK DFU qmk-dfu +# ATmega32A bootloadHID +# ATmega328P USBasp +BOOTLOADER = atmel-dfu + +CONVERT_TO = stemcell + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE = no # USB Nkey Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality + +# Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = no +RGB_MATRIX_DRIVER = WS2812 + +MIDI_ENABLE = no # MIDI support +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +AUDIO_ENABLE = no # Audio output on port C6 +FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches +ENCODER_ENABLE = no +OLED_ENABLE = no # this can be yes or no depending on if you have an OLED +EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features require more space, can move this line into all the individual rules.mk, only where needed + # for instance, if you build "no_features", it's very unlikely you'll need to disable macros +MOUSEKEY_ENABLE = no + +CIRQUE_ENABLE = no + +ifeq ($(strip $(CIRQUE_ENABLE)), yes) + MOUSEKEY_ENABLE := yes # not required, but enabling for mouse button keys + POINTING_DEVICE_ENABLE := yes + POINTING_DEVICE_DRIVER := cirque_pinnacle_i2c + OPT_DEFS += -DCIRQUE_ENABLE +endif + +ifeq ($(strip $(FP_EC11_UNDER_PALMS)), yes) + ENCODER_ENABLE := yes + OPT_DEFS += -DFP_EC11_UNDER_PALMS +endif + +ifeq ($(strip $(FP_EVQ_UNDER_PALMS)), yes) + ENCODER_ENABLE := yes + OPT_DEFS += -DFP_EVQ_UNDER_PALMS +endif + +DEFERRED_EXEC_ENABLE = yes +SRC += keyboards/fingerpunch/fp.c \ + keyboards/fingerpunch/fp_haptic.c \ + keyboards/fingerpunch/fp_keyhandler.c \ + keyboards/fingerpunch/fp_pointing.c \ + keyboards/fingerpunch/fp_rgb_common.c \ + keyboards/fingerpunch/fp_rgblight.c \ + keyboards/fingerpunch/fp_rgb_matrix.c diff --git a/users/sadekbaroudi/process_records.h b/users/sadekbaroudi/process_records.h index 11b577ae97a8..1aeda8561417 100755 --- a/users/sadekbaroudi/process_records.h +++ b/users/sadekbaroudi/process_records.h @@ -12,6 +12,7 @@ || defined(KEYBOARD_fingerpunch_ffkb_byomcu_v1) \ || defined(KEYBOARD_fingerpunch_ffkb_byomcu_v2) \ || defined(KEYBOARD_fingerpunch_ffkb_byomcu_v3) \ + || defined(KEYBOARD_fingerpunch_fflx) \ || defined(KEYBOARD_fingerpunch_luakeeb) \ || defined(KEYBOARD_fingerpunch_pinkiesout) \ || defined(KEYBOARD_fingerpunch_rockon_v1) \ diff --git a/users/sadekbaroudi/wrappers.h b/users/sadekbaroudi/wrappers.h index f37cc1ddd5d7..2b0a75381c84 100755 --- a/users/sadekbaroudi/wrappers.h +++ b/users/sadekbaroudi/wrappers.h @@ -126,6 +126,11 @@ expanded before being used as arguments to the LAYOUT_xxx macro. # define LAYOUT LAYOUT_badwings #endif +// Since badwings uses the name LAYOUT_badwings instead of LAYOUT +#if (!defined(LAYOUT) && defined(LAYOUT_fflx)) +# define LAYOUT LAYOUT_fflx +#endif + // clang-format off #define LAYOUT_ergodox_wrapper(...) LAYOUT_ergodox(__VA_ARGS__) From 559beb9c4a245ba729eb43596810aa6fe8e76d47 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Fri, 4 Nov 2022 13:15:20 -0700 Subject: [PATCH 49/51] forgot to include the top facing led in the last fflx commit --- keyboards/fingerpunch/fflx/config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/fingerpunch/fflx/config.h b/keyboards/fingerpunch/fflx/config.h index 48795db662de..90db14f804c6 100644 --- a/keyboards/fingerpunch/fflx/config.h +++ b/keyboards/fingerpunch/fflx/config.h @@ -50,7 +50,7 @@ along with this program. If not, see . #ifdef RGBLIGHT_ENABLE // Use twinkle as the default rgb mode for the layers #define DEFAULT_RGB_LAYER_MODE RGBLIGHT_MODE_TWINKLE+2 - #define RGBLED_NUM 17 + #define RGBLED_NUM 19 #define RGBLIGHT_HUE_STEP 16 #define RGBLIGHT_SAT_STEP 16 #define RGBLIGHT_VAL_STEP 16 From d6fe7c4e405798ebcd4e410dabbe15570f86819d Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Sat, 5 Nov 2022 22:39:59 -0700 Subject: [PATCH 50/51] Updating readme to provide instructions for stemcell v1.0.0 --- keyboards/fingerpunch/README.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/keyboards/fingerpunch/README.md b/keyboards/fingerpunch/README.md index 3e1b0dd42ec1..ea2845da6a2f 100644 --- a/keyboards/fingerpunch/README.md +++ b/keyboards/fingerpunch/README.md @@ -190,6 +190,19 @@ If you are looking to use process_record_kb() or process_record | `FP_SR595_MATRIX_DEBUG` | (Optional) Enable debugging the 74hc595 shift register code | `undefined` | | `FP_SR595_MATRIX_DEBUG_RATIO` | (Optional) Frequency for outputting matrix scan information for the shift register (1 in X scans) | `10000` | +## STeMCell v1.0.0 + +There aren't many of these out there, but if you are running one, you'll need to make the following changes before building: +``` +// In platforms/chibios/converters/promicro_to_stemcell/_pin_defs.h +// Add this to the bottom of the file + +// SADEK: For STeMCell v1.0.0, need to swap B1 and B2, since the hardware has it swapped +#undef B1 +#define B1 PAL_LINE(GPIOA, 7) +#undef B2 +#define B2 PAL_LINE(GPIOA, 5) +``` ## Appreciation From d41f27710e64b67613dda835aa5d10f121a560d3 Mon Sep 17 00:00:00 2001 From: Sadek Baroudi Date: Mon, 7 Nov 2022 20:43:54 -0800 Subject: [PATCH 51/51] updating firmware readme and building guide --- keyboards/fingerpunch/FIRMWARE.md | 185 ++++++++++++++++++++++++++++++ keyboards/fingerpunch/README.md | 6 + 2 files changed, 191 insertions(+) create mode 100644 keyboards/fingerpunch/FIRMWARE.md diff --git a/keyboards/fingerpunch/FIRMWARE.md b/keyboards/fingerpunch/FIRMWARE.md new file mode 100644 index 000000000000..744a4c009ac6 --- /dev/null +++ b/keyboards/fingerpunch/FIRMWARE.md @@ -0,0 +1,185 @@ +# Firmware + +QMK repo: https://github.com/qmk/qmk_firmware +fingerpunch repo: https://github.com/sadekbaroudi/qmk_firmware + +Branches +* master - stable, synced with qmk master, but adds the fingerpunch keyboards ( keyboards/fingerpunch/ directory ) +* develop_fingerpunch - relatively stable, synced with qmk master, but contains new fingerpunch specific changes only, no changes to qmk itself... +* develop_qmk - synced with qmk develop, contains all the latest qmk changes only, along with the fingerpunch folder ( keyboards/fingerpunch/ directory ) + +![branch management](images/fingerpunch-repo-branch-management.png) + +## Default firmware + +### Github Actions + +The default firmware for all boards is built automatically for every keyboard with every commit. This is supported for both QMK and Vial. + +You can access them by clicking any commit here: +https://github.com/sadekbaroudi/qmk_firmware/actions +https://github.com/sadekbaroudi/vial-qmk/actions + +You can download the zip file and install the appropriate hex or uf2 to test out your keyboard: + +![github-actions-01](images/github-actions-01.png) +![github-actions-02](images/github-actions-02.png) +![github-actions-03](images/github-actions-03.png) + + +### Vial support + +Vial is supported for most of the fingerpunch keyboards, and you can download the vial firmware as described here: +[Github Actions](#Github-Actions) + + +## Building firmware + +There are a couple of methods to build firmware. The traditional method and the fingerpunch build script. + +To build your own firmware, the recommendation is to use the fingerpunch firmware builder, since it accounts for all the possible fingerpunch features. + +### fingerpunch build script + + The script is available in the git repo: + [/bin/fp_build.sh](/bin/fp_build.sh) + + In other words, you run it from the qmk root directory as follows: + ``` + $ bin/fp_build.sh -h + + Usage: bin/fp_build.sh -k -m -c -r -h + + -l list valid keyboards (optional, overrides all other options) + -k keyboard directory (optional, default is all fingerpunch keyboards) + -m keymap (optional, defaults to the 'default' keymap) + -c add CONVERT_TO parameter for a controller (eg -c stemcell) + -i (interactive mode, take feature selection user input to generate build command) + -r (run the build command(s), defaults to outputting the build string) + -h (show this dialog) + ``` + +The interactive mode will help you configure based on your keyboard setup. For example: + +``` +$ bin/fp_build.sh -k ffkb_byomcu/v3 -m default -i -c stemcell -r +Running for keyboards/fingerpunch/ffkb_byomcu/v3 +make fingerpunch/ffkb_byomcu/v3:default +Do you have a cirque? (yes/no): n +Do you have a trackball? (yes/no): y +No RGB, RGB light, RGB matrix? (0-2): 2 +No rotary encoders, EC11, or EVQ? (0-2): 1 + +make fingerpunch/ffkb_byomcu/v3:default CIRQUE_ENABLE=no FP_TRACKBALL_ENABLE=yes RGB_MATRIX_ENABLE=yes FP_EC11=yes CONVERT_TO=stemcell +fp_build.sh: Running QMK Build.... +``` + +### Traditional QMK method + +In the same way that you build any other keyboard, you can do the same for fingerpunch boards. The thing to consider is that there are options for each keyboard that you should be aware of. + +For your keyboard, review the fp_build.jason to see the possible options. For example: + [/keyboards/fingerpunch/ffkb_byomcu/v3](/keyboards/fingerpunch/ffkb_byomcu/v3) + +Example command: +`make fingerpunch/ffkb_byomcu/v3:default CIRQUE_ENABLE=no FP_TRACKBALL_ENABLE=yes RGB_MATRIX_ENABLE=yes FP_EC11=yes CONVERT_TO=stemcell` + +Anything that is in all caps can be set as a build option followed by `=yes` + +For example, this is from `keyboards/fingerpunch/ffkb_byomcu/v3/fp_build.json` +![fp-build-json](images/fp-build-json.png) + +### STeMCell or other controllers + +For other controllers, you can use the CONVERT_TO build parameter: +https://github.com/qmk/qmk_firmware/blob/master/docs/feature_converters.md + +So, for example, for the STeMCell, you can add `-c stemcell` if using the fingerpunch build script, or you can add CONVERT_TO=stemcell at the end of your build string if using the Traditional QMK build script + +Also note that stemcell uses tinyuf2, so you'll want to use the .uf2 file instead of the .bin or .hex file as you would with other controllers + +### One time build + +Starting with no repository, here's an example of building stock ffkb firmware with rgbmatrix and ec11 encoders: +```bash +# Cloning the repo +git clone git@github.com:sadekbaroudi/qmk_firmware.git +cd qmk_firmware +git submodule update --init --recursive +# Checking out the stemcell repo +git submodule update +# Running the firmware build +make fingerpunch/ffkb_byomcu/v3:default CIRQUE_ENABLE=no FP_TRACKBALL_ENABLE=yes RGB_MATRIX_ENABLE=yes FP_EC11=yes CONVERT_TO=stemcell + +# Build firmware will be .build/fingerpunch_ffkb_byomcu_rgbmatrix_ec11_default.hex +# Copy the hex file and use QMK toolbox to load it +# If using a uf2, copy the uf2 file somewhere where you can drag and drop it to flash your STeMcell +``` + +### Managing fingerpunch code in your repository + +Now, you may ask yourself the question: "But how do I organize and manage my code in there?" + +My recommendation is to add my repo as a remote repository to yours. So, instead of cloning my repo, add it to yours using "git remote" + +Note that you can do the below multiple times for different keyboards by replacing the branch name ffkb with whatever you like. You will not need to repeat the "git remote add" command once you have run it the first time. + +```bash +# Add the fingerpunch repo as a remote repository +git remote add fingerpunch git@github.com:sadekbaroudi/qmk_firmware.git +git fetch fingerpunch + +# Checkout the master branch as a branch that tracks your keyboard. Let's use ffkb in this example +git checkout -b ffkb fingerpunch/master +git submodule update + +# add your keymap, code, etc into keyboards/fingerpunch/ffkb_byomcu/v3/keymaps/{your_keymap_dir} + +# commit your changes +git commit -a -m "Your commit message" + +# push the branch to your repo +git push origin ffkb + +# If you ever want to update from the latest fingerpunch stemcell branch in the future +git fetch fingerpunch +git merge fingerpunch/master +git push origin ffkb +``` + +## Contributing + +Note that I will only accept fingerpunch changes (in the keyboards/fingerpunch/ directory), which go into the develop_fingerpunch branch. If there are changes outside of that, they should be pull requests into qmk directly. + +If you'd like to contribute, you can do the following: +```bash +# ...in your qmk cloned repository +# If you haven't already, create a remote of the fingerpunch repo +git add remote fingerpunch git@github.com:sadekbaroudi/qmk_firmware.git +git fetch fingerpunch + +# Checkout a feature branch based on develop_fingerpunch +git checkout -b features/fingerpunch/YOUR_FEATURE_BRANCH_NAME fingerpunch/develop_fingerpunch + +# Make your changes + +# Commit your changes +git commit -a -m "YOUR COMMIT MESSAGE" + +# Push your changes to your fork +git push origin features/fingerpunch/YOUR_FEATURE_BRANCH_NAME + +# Submit your pull request on github (see below) +``` + +Once you have your branch in your fork, you can go to the pull requests page for my repo: + +https://github.com/sadekbaroudi/qmk_firmware/compare/sadekbaroudi:develop_fingerpunch...Keychron:qmk_firmware:audio_out + +You'll need to change the head repository and branch to yours (circled in green below) + +Please fill in a sensible description to explain what you are changing and why! + +![contributing-pr](images/contributing-pr.jpg) + +Submit the pull request and notify me to review. \ No newline at end of file diff --git a/keyboards/fingerpunch/README.md b/keyboards/fingerpunch/README.md index ea2845da6a2f..c60d8b071b27 100644 --- a/keyboards/fingerpunch/README.md +++ b/keyboards/fingerpunch/README.md @@ -1,4 +1,10 @@ # fingerpunch keyboards + +## Building + +For general firmware build walkthrough and instructions, please see: +[FIRMWARE.md](FIRMWARE.md) + ## Operating system | Setting | Description | Default |