summaryrefslogtreecommitdiffstats
path: root/keyboards/helix/pico
Commit message (Collapse)AuthorAgeFilesLines
* Remove .noci functionality (#19122)Joel Challis2022-11-213-0/+0
|
* Remove legacy keycodes, part 6 (#18740)Ryan2022-10-161-1/+1
| | | | | | | | | * `KC_RSHIFT` -> `KC_RSFT` * `KC_RCTRL` -> `KC_RCTL` * `KC_LSHIFT` -> `KC_LSFT` * `KC_LCTRL` -> `KC_LCTL`
* Remove legacy keycodes, part 5 (#18710)Ryan2022-10-151-2/+2
| | | | | * `KC_SLCK` -> `KC_SCRL` * `KC_NLCK` -> `KC_NUM`
* Remove RGBLIGHT_ANIMATION and clean up effect defines for G-K (#18726)Drashna Jaelre2022-10-151-1/+0
|
* Remove legacy international keycodes (#18588)Ryan2022-10-093-15/+15
|
* Remove legacy USE_SERIAL define (#18292)Dasky2022-09-061-4/+0
| | | | | * Remove legacy USE_SERIAL define * tidy up missed comments
* RESET -> QK_BOOT user keymaps (#17940)Joel Challis2022-08-212-2/+2
|
* Merge remote-tracking branch 'origin/master' into developQMK Bot2022-07-282-7/+6
|\
| * Move keyboard USB IDs and strings to data driven: H (#17821)Ryan2022-07-282-7/+6
| |
* | Do not enable PERMISSIVE_HOLD when TAPPING_TERM exceeds 500ms (#15674)precondition2022-06-241-2/+0
| |
* | Make default layer size 16-bit (#15286)Drashna Jaelre2022-06-191-1/+1
|/ | | Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
* Merge remote-tracking branch 'origin/master' into developQMK Bot2022-05-182-76/+18
|\
| * Update mtei's keymap (helix/rev2:five_rows, helix/pico:mtei, ↵Takeshi ISHII2022-05-192-76/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | helix/rev3_5rows:five_rows) (#16966) * add users/mtei/key_blocks.h This change does not alter the binary of the build result. Moved common macro definitions in the following files to users/mtei/key_blocks.h. * keyboards/helix/rev2/keymaps/five_rows/keymap.c * keyboards/helix/rev3_5rows/keymaps/five_rows/keymap.c * remove INIT_HELIX_OLED() in helix:five_rows This change does not alter the binary of the build result. * update helix/pico/keymaps/mtei/keymap.c Changed helix/pico/keymaps/mtei/keymap.c to use users/mtei/key_blocks.h. This change does not alter the binary of the build result. * Remove old SSD1306OLED code from users/mtei/oled_display.c This change does not alter the binary of the build result. * add options ENABLE_COLEMAK, ENABLE_DVORAK and ENABLE_EUCALYN into five_rows/keymap.c * add users/mtei/{config.h,rules.mk,user_featues.mk,user_options.mk} * move layer_names[] from users/mtei/oled_display.c to keymaps/five_rows/keymap.c * Update keyboards/helix/pico/keymaps/mtei/config.h Co-authored-by: Ryan <fauxpark@gmail.com> * Update keyboards/helix/pico/keymaps/mtei/config.h Co-authored-by: Ryan <fauxpark@gmail.com> * Update keyboards/helix/pico/keymaps/mtei/keymap.c Co-authored-by: Ryan <fauxpark@gmail.com> * Update keyboards/helix/rev2/keymaps/five_rows/config.h Co-authored-by: Ryan <fauxpark@gmail.com> * Update keyboards/helix/rev2/keymaps/five_rows/config.h Co-authored-by: Ryan <fauxpark@gmail.com> * Update keyboards/helix/rev2/keymaps/five_rows/keymap.c Co-authored-by: Ryan <fauxpark@gmail.com> * Update keyboards/helix/rev3_5rows/keymaps/five_rows/config.h Co-authored-by: Ryan <fauxpark@gmail.com> * Update keyboards/helix/rev3_5rows/keymaps/five_rows/config.h Co-authored-by: Ryan <fauxpark@gmail.com> * Update keyboards/helix/rev3_5rows/keymaps/five_rows/keymap.c Co-authored-by: Ryan <fauxpark@gmail.com> * Update users/mtei/config.h Co-authored-by: Ryan <fauxpark@gmail.com> * Update users/mtei/config.h Co-authored-by: Ryan <fauxpark@gmail.com> * Update users/mtei/cpp_map.h Co-authored-by: Ryan <fauxpark@gmail.com> * Update users/mtei/cpp_map.h Co-authored-by: Ryan <fauxpark@gmail.com> * Update users/mtei/debug_config.h Co-authored-by: Ryan <fauxpark@gmail.com> * Update users/mtei/debug_config.h Co-authored-by: Ryan <fauxpark@gmail.com> * Update users/mtei/layer_number_util.h Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Ryan <fauxpark@gmail.com>
* | RESET -> QK_BOOT default keymaps (#17037)Joel Challis2022-05-151-1/+1
|/
* Remove `NO_ACTION_MACRO` and `NO_ACTION_FUNCTION` from keyboard config.h ↵Ryan2022-03-151-2/+0
| | | | (#16655)
* Helix/pico move to split_common (#16418)Takeshi ISHII2022-02-2118-913/+165
|
* Remove unnecessary backslash-escapes in default keymaps (#15472)Ryan2021-12-141-30/+30
| | | | | | | * Remove unnecessary backslash-escapes in default keymaps * Remove unnecessary backslash-escapes in via keymaps * Remove unnecessary backslash-escapes in default-ish keymaps
* Remove references to Makefile in keyboard-level rules.mk (#15427)Ryan2021-12-071-7/+0
|
* Merge remote-tracking branch 'upstream/master' into developfauxpark2021-09-212-2/+2
|\
| * Remove audio pin references in rules.mk (#14532)Ryan2021-09-212-2/+2
| |
* | Merge remote-tracking branch 'upstream/master' into developfauxpark2021-09-121-2/+0
|\|
| * Remove width, height and key_count from info.json (#14274)Ryan2021-09-121-2/+0
| |
* | Merge remote-tracking branch 'origin/master' into developQMK Bot2021-09-051-5/+0
|\|
| * Remove empty override functions (#14312)Ryan2021-09-051-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove empty override functions, 0-9 * Remove empty override functions, A-D * Remove empty override functions, E-H * Remove empty override functions, handwired * Remove empty override functions, I-L * Remove empty override functions, M-P * Remove empty override functions, Q-T * Remove empty override functions, U-Z
* | Change keyboard level include guards to `pragma once` (#14248)Ryan2021-09-011-4/+1
| | | | | | | | | | | | | | | | | | * Change keyboard level include guards to `pragma once` And clean up a lot of layout macros * Oops * Remove dangling endif
* | [Keyboard] Helix use `post_rules.mk` (#14216)Takeshi ISHII2021-08-315-17/+1
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Helix/pico use post_rules.mk insted of local_features.mk Tested with the following procedure. ``` git checkout 77a93fec79 (qmk/develop) make clean make helix/pico:all:check-md5 make helix/pico/sc:all:check-md5 git checkout helix_use_post_rules.mk make clean make helix/pico:all:check-md5 make helix/pico/sc:all:check-md5 ``` * Helix/rev2 use post_rules.mk Tested with the following procedure. ``` git checkout 77a93fec79 (qmk/develop) make clean make helix/pico:all:check-md5 make helix/pico/sc:all:check-md5 make helix/rev2:all:check-md5 make helix/rev2/sc:all:check-md5 git checkout helix_use_post_rules.mk make clean make helix/pico:all:check-md5 make helix/pico/sc:all:check-md5 make helix/rev2:all:check-md5 make helix/rev2/sc:all:check-md5 ```
* [Core] Refactor OLED to allow easy addition of other types (#13454)Xelus222021-08-241-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * add docs * core changes * update keyboards to new OLED * updated users to new OLED * update layouts to new OLED * fixup docs * drashna's suggestion * fix up docs * new keyboards with oled * core split changes * remaining keyboard files * Fix The Helix keyboards oled options * reflect develop Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: mtei <2170248+mtei@users.noreply.github.com>
* Fix up builds after #8591 (#13900)Nick Brassel2021-08-061-1/+0
|
* Remove KEYMAP and LAYOUT_kc (#12160)Zach White2021-05-111-12/+0
| | | | | * alias KEYMAP to LAYOUT * remove KEYMAP and LAYOUT_kc
* [Keymap] Update keyboards/helix/pico/keymaps/mtei/keymap.c (#12188)Takeshi ISHII2021-03-251-105/+136
| | | | | | | | | * update keyboards/helix/pico/keymaps/mtei/keymap.c Stopped using the LAYOUT_kc macro. (this is response to #12160) There is no change in the generated binary. * small update pico/keymaps/mtei/keymap.c
* Audio system overhaul (#11820)Drashna Jaelre2021-02-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Redo Arm DAC implementation for additive, wavetable synthesis, sample playback changes by Jack Humbert on an implementation for DAC audio on arm/chibios platforms this commits bundles the changes from the arm-dac-work branch focused on audio/audio_arm.* into one commit (leaving out the test-keyboard) f52faeb5d (origin/arm-dac-work) add sample and wavetable examples, parsers for both -> only the changes on audio_arm_.*, the keyboard related parts are split off to a separate commit bfe468ef1 start morphing wavetable 474d100b5 refined a bit 208bee10f play_notes working 3e6478b0b start in-place documentation of dac settings 3e1826a33 fixed blip (rounding error), other waves, added key selection (left/right) 73853d651 5 voices at 44.1khz dfb401b95 limit voices to working number 9632b3379 configuration for the ez 6241f3f3b notes working in a new way * Redo Arm DAC implementation for additive, wavetable synthesis, sample playback changes by Jack Humbert on an implementation for DAC audio on arm/chibios platforms this commit splits off the plank example keymap from commit f52faeb5d (origin/arm-dac-work) add sample and wavetable examples, parsers for both * refactoring: rename audio_ to reflect their supported hardware-platform and audio-generation method: avr vs arm, and pwm vs dac * refactoring: deducplicate ISR code to update the pwm duty-cycle and period in the avr-pwm-implementation pulls three copies of the same code into one function which should improve readability and maintainability :-) * refactoring: move common code of arm and avr implementation into a separate/new file * refactoring: audio_avr_pwm, renaming defines to decouple them from actually used timers, registers and ISRs * refactoring: audio_avr_pwm - replacing function defines with plain register defines aligns better with other existing qmk code (and the new audio_arm_pwm) doing similar pwm thing * add audio-arm-pwm since not all STM32 have a DAC onboard (STM32F2xx and STM32F3xx), pwm-audio is an alternative (STM32F1xx) this code works on a "BluePill" clone, with an STM32F103C8B * clang-format changes on quantum/audio/* only * audio_arm_dac: stopping the notes caused screeching when using the DAC audio paths * audio_arm_pwm: use pushpull on the pin; so that a piezzo can be hooked up direclty without additional components (opendrain would require an external pullup) * refactoring: remove unused file from/for atmel-avr chips * refactoring: remove unused (avr) wavetable file * audio_arm_dac: adapt dac_end callback to changed chibios DAC api the previous chibios (17.6.0) passed along a pointer into the buffer plus a sample_count (which are/already where included in the DACDrivre object) - the current chibios (19.1.0) only passes the driver object. this patch ports more or less exactly what the previous chibios ISR code did: either have the user-callback work the first or second half of the buffer (dacsample_t pointer, with half the DAC_BUFFER_SIZE samples) by adjusting the pointer and sample count * audio-arm-dac: show a compile-warning on undefined audio-pins Co-Authored-By: Drashna Jaelre <drashna@live.com> * audio_arm_dac: switch from exemplary wavetable generation to sine only sine+triangle+squrare is exemplary, and not realy fit for "production" use 'stairs' are usefull for debugging (hardware, with an oscilloscope) * audio_arm_dac: enable output buffers in the STM32 to drive external loads without any additional ciruitry - external opamps and such * audio: prevent out-of-bounds array access * audio_arm_dac: add output-frequency correcting factor * audio_arm_pwm: get both the alternate-function and pm-callback variants back into working condition and do some code-cleanup, refine documentation, ... * audio_arm_pwm: increase pwm frequency for "higher fidelity" on the previous .frequency=100000 higher frequency musical notes came out wrong (frequency measured on a Tektronix TDS2014B) note | freq | arm-pwm C2 | 65.4 | 65.491 C5 | 523.25 | 523.93 C6 | 1046.5 | 1053.38 C7 | 2093 | 2129 C8 | 4186 | 4350.91 with .frequency = 500000 C8 | 4186 | 4204.6 * audio refactoring: remove unused variables * audio_arm_dac: calibrate note tempo: with a tempo of 60beats-per-second a whole-note should last for exactly one second * audio: allow feature selection in rules.mk so the user can switch the audio driver between DAC and PWM on STM32 boards which support both (STM32F2 and up) or select the "pin alternate" pwm mode, for example on STM32F103 * audio-refactoring: move codeblocks in audio.[ch] into more coherent groups and add some inline documentation * audio-refactoring: cleanup and streamline common code between audio_arm_[dac|pwm] untangeling the relation between audio.c and the two drivers and adding more documenting comments :-) * audio_avr_pwm: getting it back into working condition, and cleanup+refactor * audio-refactoring: documentation and typo fixes Co-Authored-By: Nick Brassel <nick@tzarc.org> * audio-refactoring: cleanup defines, inludes and remove debug-prints * audio_chibios_dac: define&use a minimal sampling rate, based on the available tone-range to ease up on the cpu-load, while still rendering the higher notes/tones sufficiently also reenable the lower tones, since with the new implementation there is no evidence of them still beeing 'bugged' * audio-refactoring: one common AUDIO_MAX_VOICES define for all audio-drivers * audio-chibios-pwm: pwm-pin-allternate: make the the timer, timer-channel and alternate function user-#definable * audio_chibios_dac: math.h has fmod for this * Redo Arm DAC implementation for additive, wavetable synthesis, sample playback update Jack Humberts dac-example keymaps for the slight changes in the audio-dac interface * audio-refactoring: use a common AUDIO_PIN configuration switch instead of defines have the user select a pin by configuration in rules.mk instead of a define in config.h has the advantage of beeing in a common form/pattern across all audio-driver implementations * audio-refactoring: switch backlight_avr.c to the new AUDIO_PIN defines * audio-common: have advance_note return a boolean if the note changed, to the next one in the melody beeing played * audio-chibios-pwm: fix issue with ~130ms silence between note/frequency changes while playing a SONG through trial,error and a scope/logic analyzer figured out Chibios-PWMDriver (at least in the current version) misbehaves if the initial period is set to zero (or one; two seems to work); when thats the case subsequent calls to 'pwmChhangePeriod' + pwmEnableChannel took ~135ms of silence, before the PWM continued with the new frequency... * audio-refactoring: get 'play_note' working again with a limited number of available voices (say AUDIO_VOICES_MAX=1) allow new frequencies to be played, by discarding the oldest one in the 'frequencies' queue * audio: set the fallback driver to DAC for chibios and PWM for all others (==avr at the moment) * audio-refactoring: moore documentation and some cleanup * audio-avr-pwm: no fallback on unset AUDIO_PIN this seems to be the expected behaviour by some keyboards (looking at ckeys/handwire_101:default) which otherwise fail to build because the firmware-image ends up beeing too large for the atmega... so we fail silently instead to keep travis happy * audio-refactoring: untangling terminology: voice->tone the code actually was working on tones (combination of pitch/frequency, duration, timbre, intensity/volume) and not voices (characteristic sound of an instrument; think piano vs guitar, which can be played together, each having its own "track" = voice on a music sheet) * audio-pwm: allow freq=0 aka a pause/rest in a SONG continue processing, but do not enable pwm units, since freq=0 wouldn't produce any sound anyway (and lead to division by zero on that occasion) * audio-refactoring: audio_advance_note -> audio_advance_state since it does not only affect 'one note', but the internally kept state as a whole * audio-refactoring: untangling terminology: polyphony the feature om the "inherited" avr code has little to do with polyphony (see wikipedia), but is more a time-multiplexing feature, to work around hardware limitations - like only having one pwm channel, that could on its own only reproduce one voice/instrument at a time * audio-chibios-dac: add zero-crossing feature have tones only change/stop when the waveform approaches zero - to avoid audible clicks note that this also requires the samples to start at zero, since the internally kept index into the samples is reset to zero too * audio-refactoring: feature: time-multiplexing of tones on a single output channel this feature was in the original avr-pwm implementation misnomed as "polyphony" with polyphony_rate and so on; did the same thing though: time-multiplexing multiple active notes so that a single output channel could reproduce more than one note at a time (which is not the same as a polyphony - see wikipedia :-) ) * audio-avr-pwm: get music-mode working (again) on AVRs with both pwm channels, or either one of the two :-) play_notes worked already - but music_mode uses play_note * audio-refactoring: split define MAX_SIMULTANEOUS_TONES -> TONE_STACKSIZE since the two cases are independant from one another, the hardware might impose limitations on the number of simultaneously reproducable tones, but the audio state should be able to track an unrelated number of notes recently started by play_note * audio-arm-dac: per define selectable sample-luts plus generation script in ./util * audio-refactoring: heh, avr has a MIN... * audio-refactoring: add basic dac audio-driver based on the current/master implementation whereas current=d96380e65496912e0f68e6531565f4b45efd1623 which is the state of things before this whole audio-refactoring branch boiled down to interface with the refactored audio system = removing all redundant state-managing and frequency calculation * audio-refactoring: rename audio-drivers to driver_$PLATFORM_$DRIVER * audio-arm-pwm: split the software/hardware implementations into separate files which saves us partially from a 'define hell', with the tradeoff that now two somewhat similar chibios_pwm implementations have to be maintained * audio-refactoring: update documentation * audio-arm-dac: apply AUDIO_PIN defines to driver_chibios_dac_basic * audio-arm-dac: dac_additive: stop the hardware when the last sample completed the audio system calls for a driver_stop, which is delayed until the current sample conversion finishes * audio-refactoring: make function-namespace consistent - all (public) audio functions start with audio_ - also refactoring play*_notes/tones to play*_melody, to visually distance it a bit from play*_tone/_note * audio-refactoring: consistent define namespace: DAC_ -> AUDIO_DAC_ * audio-arm-dac: update (inline) documentation regarding MAX for sample val