diff --git a/docs/modding_your_keyboard.md b/docs/modding_your_keyboard.md index 2429570f53e..44e6e6e72ad 100644 --- a/docs/modding_your_keyboard.md +++ b/docs/modding_your_keyboard.md @@ -1,7 +1,7 @@ ## Audio output from a speaker -Your keyboard can make sounds! If you've got a Planck, Preonic, or basically any keyboard that allows access to the C6 port, you can hook up a simple speaker and make it beep. You can use those beeps to indicate layer transitions, modifiers, special keys, or just to play some funky 8bit tunes. +Your keyboard can make sounds! If you've got a Planck, Preonic, or basically any keyboard that allows access to the C6 or B5 port (`#define C6_AUDIO` and `#define B5_AUDIO`), you can hook up a simple speaker and make it beep. You can use those beeps to indicate layer transitions, modifiers, special keys, or just to play some funky 8bit tunes. The audio code lives in [quantum/audio/audio.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/audio/audio.h) and in the other files in the audio directory. It's enabled by default on the Planck [stock keymap](https://github.com/qmk/qmk_firmware/blob/master/keyboards/planck/keymaps/default/keymap.c). Here are the important bits: diff --git a/keyboards/planck/config.h b/keyboards/planck/config.h index 5cf96bb88cb..c86f8491eed 100644 --- a/keyboards/planck/config.h +++ b/keyboards/planck/config.h @@ -37,6 +37,7 @@ along with this program. If not, see . #define UNUSED_PINS #define AUDIO_VOICES +#define C6_AUDIO #define BACKLIGHT_PIN B7 diff --git a/keyboards/preonic/config.h b/keyboards/preonic/config.h index 239c29ebf9e..8aa88b7f0d2 100644 --- a/keyboards/preonic/config.h +++ b/keyboards/preonic/config.h @@ -38,6 +38,7 @@ along with this program. If not, see . #define UNUSED_PINS #define AUDIO_VOICES +#define C6_AUDIO #define BACKLIGHT_PIN B7 diff --git a/quantum/audio/audio.c b/quantum/audio/audio.c index 04f34600331..3192d500f56 100644 --- a/quantum/audio/audio.c +++ b/quantum/audio/audio.c @@ -271,12 +271,13 @@ float vibrato(float average_freq) { #ifdef C6_AUDIO ISR(TIMER3_COMPA_vect) { - float freq, freq_alt = 0; + float freq; if (playing_note) { if (voices > 0) { #ifdef B5_AUDIO + float freq_alt = 0; if (voices > 1) { if (polyphony_rate == 0) { if (glissando) {