summaryrefslogtreecommitdiffstats
path: root/quantum
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/master' into developQMK Bot2021-03-061-9/+5
|\
| * Remove ifdefs for UC and X/XP too (#12131)Ryan2021-03-061-9/+5
| |
* | Merge remote-tracking branch 'origin/master' into developQMK Bot2021-03-061-21/+14
|\|
| * Remove a few more ifdefs from quantum_keycodes (#12129)Ryan2021-03-061-21/+14
| |
* | Merge remote-tracking branch 'origin/master' into developQMK Bot2021-03-041-14/+10
|\|
| * Remove ifdefs for Swap Hands keycodes (#12095)Drashna Jaelre2021-03-031-14/+10
| |
* | Format code according to conventions (#12088)github-actions[bot]2021-03-033-17/+16
| | | | | | Co-authored-by: QMK Bot <hello@qmk.fm>
* | Split RGB Matrix (#11055)XScorpion22021-03-033-5/+66
| | | | | | | | | | * Split RGB Matrix * Suspend State sync for rgb matrix
* | Format code according to conventions (#12076)github-actions[bot]2021-03-011-2/+2
| | | | | | Co-authored-by: QMK Bot <hello@qmk.fm>
* | Add ability to toggle One Shot functionality (#4198)Drashna Jaelre2021-03-013-0/+21
| | | | | | | | Co-authored-by: Nick Brassel <nick@tzarc.org> Co-authored-by: Ryan <fauxpark@gmail.com>
* | Merge remote-tracking branch 'origin/master' into developQMK Bot2021-02-284-258/+300
|\|
| * Extract sendstring into its own compilation unit (#12060)Ryan2021-03-014-258/+300
| | | | | | | | | | | | | | * Extract sendstring into its own compilation unit * License headers? * Put this include in the header
* | Format code according to conventions (#12056)github-actions[bot]2021-02-281-16/+8
| | | | | | Co-authored-by: QMK Bot <hello@qmk.fm>
* | Refactor of USB code within split_common (#11890)Joel Challis2021-02-281-46/+24
| | | | | | | | | | | | | | | | | | | | | | * Initial refactor of usb code within split_common * Add headers * Correct disable condition * Format * Align func name
* | Overhaul bootmagic logic to have single entrypoint (#8532)Joel Challis2021-02-289-15/+460
|/ | | | | * Relocate bootmagic logic to have single entrypoint * Align init of layer state
* [BUG] Massdrop develop rgb fix (#12022)Nick Brassel2021-02-261-0/+3
| | | | | | | * Allow for disabling RGB_MATRIX on Massdrop boards. * Fixup init sequence. * Make some functions static as they've got very generic names.
* Merge remote-tracking branch 'upstream/master' into developfauxpark2021-02-251-13/+0
|\
| * V-USB suspend refactor (#11891)Ryan2021-02-251-13/+0
| |
* | RGBLight: Allow configurable default settings (#11912)Ryan2021-02-161-5/+25
| | | | | | | | | | * RGBLight: Allow configurable default settings * Docs
* | Format code according to conventions (#11928)github-actions[bot]2021-02-161-18/+18
| | | | | | Co-authored-by: QMK Bot <hello@qmk.fm>
* | Split transport mirror (#11046)XScorpion22021-02-167-37/+43
| | | | | | | | | | | | | | * Split transport mirror support * Updated RGB Matrix to respond to electrical events instead of key events * split matrix slave fix
* | Merge branch 'master' into developJoshua Diamond2021-02-143-7/+7
|\|
| * LED Matrix: rename `LED_DRIVER_LED_COUNT` to `DRIVER_LED_TOTAL` (#11858)Ryan2021-02-153-7/+7
| |
* | Merge branch 'develop' of github.com:qmk/qmk_firmware into developJoshua Diamond2021-02-141-4/+4
|\ \
| * | Format code according to conventions (#11907)github-actions[bot]2021-02-151-4/+4
| | | | | | | | | Co-authored-by: QMK Bot <hello@qmk.fm>
* | | Merge branch 'master' into developJoshua Diamond2021-02-146-540/+160
|\ \ \ | |/ / |/| / | |/
| * LED Matrix: add led_matrix_types.h and implement g_led_config (#11741)Ryan2021-02-144-106/+153
| | | | | | | | | | | | | | | | | | * LED Matrix: add led_matrix_types.h and implement g_led_config * Set correct flags for non-"modifier" LEDs * Clean up docs a little * Add license headers for [led,rgb]_matrix_types.h
| * Split gpio and atomic to platform (#11792)Joel Challis2021-02-142-436/+6
| |
* | Audio system overhaul (#11820)Drashna Jaelre2021-02-1518-2321/+2339
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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-refa