Commit Graph
151 Commits
Author SHA1 Message Date
Joel ChallisandGitHub 0730740add Add mmoskal/uf2-stm32f103 bootloader support (#19594) 2023-01-15 15:04:32 +00:00
Joel ChallisandGitHub 974a1eaf2a Ignore defaults.hjson values if already set (#19511)
* Ignore defaults.hjson values if already set

* Add warning when nothing is merged
2023-01-07 17:05:53 +00:00
QMK Bot 403c7eeb5c Merge remote-tracking branch 'origin/master' into develop 2023-01-07 17:03:18 +00:00
Joel ChallisandGitHub c5e3275299 Fix handwired/onekey/kb2040 WS2812 pin (#19517) 2023-01-07 17:02:40 +00:00
RyanandGitHub 1978007fae Tap Dance: remove qk_ prefix (#19313) 2022-12-14 12:40:25 -08:00
102f22f7e9 [Core] Quantum Painter - LVGL Integration (#18499)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-12-13 07:51:14 +11:00
Stefan KerkmannandGitHub 9dc3f79196 [RP2040] update i2c drivers to reflect peripheral number (#19277) 2022-12-11 14:04:29 +01:00
Nick BrasselandGitHub cf3c26533c Fixup EFL and F4's sector selection. (#19221) 2022-12-02 21:55:28 +11:00
RyanandGitHub 1e95f7be8f Joystick feature improvements (#19052) 2022-11-27 03:14:45 +11:00
Joel ChallisandGitHub 59443fa970 jsonify some info.json (#19146) 2022-11-25 02:47:02 +00:00
QMK Bot 8449a4a11f Merge remote-tracking branch 'origin/master' into develop 2022-11-18 02:17:25 +00:00
Joel ChallisandGitHub 5d882ab6ef Disable onekey console by default (#19104) 2022-11-18 02:16:38 +00:00
RyanandGitHub 6cc9513ab0 Digitizer feature improvements (#19034) 2022-11-12 23:28:11 +00:00
RyanandGitHub 8cecf7fad8 onekey: disable NKRO and mousekeys by default (#19038) 2022-11-12 03:20:44 +00:00
9435ad19ee Added analog support for WB32 MCU. (#18289)
Co-authored-by: Joy <chang.li@westberrytech.com>
2022-11-01 15:04:15 +11:00
RyanandGitHub 7407347be1 Remove rgblight_list.h (#18878)
* Remove rgblight_list defines with no usage

* Remove rgblight_setrgb_*[_at] defines

* Remove rgblight_sethsv_* defines

* Remove rgblight_sethsv_noeeprom_* defines

* Delete rgblight_list.h and remove all references
2022-10-27 23:50:14 +01:00
Stefan KerkmannandGitHub 19145704e4 [Core] Adjust PWM hardware audio driver for RP2040 (#17723) 2022-10-27 19:26:16 +02:00
RyanandGitHub 6bbe8b6edd Normalise Joystick and Programmable Button keycodes (#18832) 2022-10-24 15:50:33 +01:00
RyanandGitHub c347e732be Remove legacy EEPROM clear keycodes (#18782)
* `EEP_RST` -> `EE_CLR`, default-ish keymaps

* `EEP_RST` -> `EE_CLR`, user keymaps

* `EEP_RST` -> `EE_CLR`, community layouts

* `EEP_RST` -> `EE_CLR`, userspace

* `EEP_RST` -> `EE_CLR`, docs & core
2022-10-20 12:20:07 +01:00
Drashna JaelreandGitHub 55b9a4d06e Remove RGBLIGHT_ANIMATION and clean up effect defines for G-K (#18726) 2022-10-15 09:55:27 -07:00
RyanandGitHub 4d6fab1cfa onekey: Enable ADC for STM32F072 Discovery (#18592) 2022-10-05 11:36:20 +11:00
Stefan KerkmannandGitHub 996a9006d3 [Core] PWM Backlight for RP2040 (#17706) 2022-10-04 23:10:24 +02:00
QMK Bot f81123469e Merge remote-tracking branch 'origin/master' into develop 2022-10-01 02:55:17 +00:00
RyanandGitHub 9f0d9b4fbe onekey: fix quine keymap (#18555) 2022-10-01 12:54:42 +10:00
RyanandGitHub e0115caab9 onekey: enable ADC for Bluepill and Blackpill (#18545) 2022-09-30 17:14:41 +01:00
fauxpark dbb70871fc Merge remote-tracking branch 'upstream/master' into develop 2022-09-30 05:19:53 +10:00
RyanandGitHub 45b5ed5c6e Onekey: migrate some stuff to data driven (#18502) 2022-09-30 04:23:11 +10:00
RyanandGitHub be8907d634 Further refactoring of joystick feature (#18437) 2022-09-27 18:37:13 +10:00
9632360caa Use a macro to compute the size of arrays at compile time (#18044)
* Add ARRAY_SIZE and CEILING utility macros

* Apply a coccinelle patch to use ARRAY_SIZE

* fix up some straggling items

* Fix 'make test:secure'

* Enhance ARRAY_SIZE macro to reject acting on pointers

The previous definition would not produce a diagnostic for
```
int *p;
size_t num_elem = ARRAY_SIZE(p)
```
but the new one will.

* explicitly get definition of ARRAY_SIZE

* Convert to ARRAY_SIZE when const is involved

The following spatch finds additional instances where the array is
const and the division is by the size of the type, not the size of
the first element:
```
@ rule5a using "empty.iso" @
type T;
const T[] E;
@@

- (sizeof(E)/sizeof(T))
+ ARRAY_SIZE(E)

@ rule6a using "empty.iso" @
type T;
const T[] E;
@@

- sizeof(E)/sizeof(T)
+ ARRAY_SIZE(E)
```

* New instances of ARRAY_SIZE added since initial spatch run

* Use `ARRAY_SIZE` in docs (found by grep)

* Manually use ARRAY_SIZE

hs_set is expected to be the same size as uint16_t, though it's made
of two 8-bit integers

* Just like char, sizeof(uint8_t) is guaranteed to be 1

This is at least true on any plausible system where qmk is actually used.

Per my understanding it's universally true, assuming that uint8_t exists:
https://stackoverflow.com/questions/48655310/can-i-assume-that-sizeofuint8-t-1

* Run qmk-format on core C files touched in this branch

Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-08-30 10:20:04 +02:00
RyanandGitHub cf41c24db8 Move keyboard USB IDs and strings to data driven: develop (#18152)
* Move keyboard USB IDs and strings to data driven: develop

* Also do new onekeys
2022-08-24 15:28:38 +01:00
Joel ChallisandGitHub bbc3bc55f2 RESET -> QK_BOOT user keymaps (#17940) 2022-08-21 23:55:30 +01:00
QMK Bot eceed6c50b Merge remote-tracking branch 'origin/master' into develop 2022-08-20 00:32:18 +00:00
RyanandGitHub 48792b030b Move keyboard USB IDs and strings to data driven, pass 2: handwired (#18079) 2022-08-20 10:31:48 +10:00
QMK Bot 904df296b0 Merge remote-tracking branch 'origin/master' into develop 2022-08-15 17:55:58 +00:00
Joel ChallisandGitHub e44b6242b7 Migrate more F4x1 board files (#18054) 2022-08-15 18:55:21 +01:00
Sergey VlasovandGitHub 9e44362179 Add minimal STM32F103C6 support (#17853)
Unfortunately, the crippled versions of “Bluepill” boards with
STM32F103C6xx chips instead of STM32F103C8xx are now sold all over the
place, sometimes advertised in a confusing way to make the difference
not noticeable until too late.  Add minimal support for these MCUs in
the common “Bluepill with stm32duino” configuration, so that it could be
possible to make something useful from those boards (although fitting
QMK into the available 24 KiB of flash may be rather hard).

(In fact, I'm not sure whether the “STM32” part of the chip name is
actually correct for those boards of uncertain origin, so the onekey
board name is `bluepill_f103c6`; another reason for that name is to
match the existing `blackpill_f401` and `blackpill_f411`.)

The EEPROM emulation support is not included on purpose, because
enabling it without having a working firmware size check would be
irresponsible with such flash size (the chance that someone would build
a firmware where the EEPROM backing store ends up overlapping some
firmware code is really high).  Other than that, enabling the EEPROM
emulation code is mostly trivial (the `wear_leveling` driver with the
`embedded_flash` backing store even works without any custom
configuration, although its code is significantly larger than the
`vendor` driver, which may also be important for such flash size).
2022-08-11 22:37:41 +01:00
Nick BrasselandGitHub 154d35ac14 Remove UNUSED_PINS (#17931) 2022-08-06 23:23:35 +10:00
Jeff EplerandGitHub 7bbc1b21dd Add kb2040 onkey keyboard that works with the oled keymap (#17786) 2022-08-05 19:38:10 -07:00
QMK Bot f0300fc763 Merge remote-tracking branch 'origin/master' into develop 2022-07-26 05:00:11 +00:00
Diogo SergioandGitHub e6a7db2fd2 Update README.md for teensy lc onekey (#17797) 2022-07-25 21:59:37 -07:00
Stefan KerkmannandGitHub 3f5dc47296 [Core] Use polled waiting on ChibiOS platforms that support it (#17607)
* Use polled waiting on platforms that support it

Due to context switching overhead waiting a very short amount of time on
a sleeping thread is often not accurate and in fact not usable for timing
critical usage i.e. in a driver. Thus we use polled waiting for ranges
in the us range on platforms that support it instead. The fallback is
the thread sleeping mechanism.

This includes:

* ARM platforms with CYCCNT register (ARMv7, ARMv8) this is
  incremented at CPU clock frequency
* GD32VF103 RISC-V port with CSR_MCYCLE register this is incremented at
  CPU clock frequency
* RP2040 ARMv6 port which uses the integrated timer peripheral which is
  incremented with a fixed 1MHz frequency

* Use wait_us() instead of chSysPolledDelayX

...as it is powered by busy waiting now.

* Add chibios waiting methods test bench
2022-07-11 15:17:05 +02:00
RyanandGitHub ac5e6b6a3b Tentative Teensy 3.5 support (#14420)
* Tentative Teensy 3.5 support

* Set firmware format to .hex for ARM Teensys

* Got to "device descriptor failed" by comparing with Teensy 3.6 code

* Drop down to 96MHz...

* Bump back up to 120MHz
2022-07-03 00:12:45 +10:00
QMK Bot a61e549a31 Merge remote-tracking branch 'origin/master' into develop 2022-07-01 14:39:35 +00:00
Joel ChallisandGitHub 2757251218 Specify blackpill board files where relevant (#17521) 2022-07-01 15:38:57 +01:00
d717396708 [Core] Add Raspberry Pi RP2040 support (#14877)
* Disable RESET keycode because of naming conflicts

* Add Pico SDK as submodule

* Add RP2040 build support to QMK

* Adjust USB endpoint structs for RP2040

* Add RP2040 bootloader and double-tap reset routine

* Add generic and pro micro RP2040 boards

* Add RP2040 onekey keyboard

* Add WS2812 PIO DMA enabled driver and documentation

Supports regular and open-drain output configuration. RP2040 GPIOs are
sadly not 5V tolerant, so this is a bit use-less or needs extra hardware
or you take the risk to fry your hardware.

* Adjust SIO Driver for RP2040

* Adjust I2C Driver for RP2040

* Adjust SPI Driver for RP2040

* Add PIO serial driver and documentation

* Add general RP2040 documentation

* Apply suggestions from code review

Co-authored-by: Nick Brassel <nick@tzarc.org>

Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-06-30 13:19:27 +02:00
preconditionandGitHub 3b9e186019 Do not enable PERMISSIVE_HOLD when TAPPING_TERM exceeds 500ms (#15674) 2022-06-24 12:40:09 +02:00
Nick BrasselandGitHub 1d75e20cd8 Add WB32 evaluation board onekey targets. (#17330) 2022-06-08 10:47:56 +10:00
Drashna JaelreandGitHub f090881aeb [Feature] Add support for multiple switchs/solenoids to Haptic Feedback engine (#15657) 2022-05-15 21:24:35 +10:00
Drashna JaelreandGitHub 787a68948f [Core] Add Reboot keycode to core (#15990) 2022-05-14 13:35:49 +10:00
Joel ChallisandGitHub 969c68a9ad Provide better config defaults for bluepill boards (#16909) 2022-04-22 07:03:28 +10:00