summaryrefslogtreecommitdiff
path: root/keyboards/adafruit/macropad/macropad.c
diff options
context:
space:
mode:
authorNick Brassel <nick@tzarc.org>2023-04-08 11:03:04 +1000
committerNick Brassel <nick@tzarc.org>2023-04-08 11:03:04 +1000
commit10fc6c4cd6d7463737801430e8c13b347e1b85c7 (patch)
treed5a277fc0a36d48052c5489c13b96862e8ac063d /keyboards/adafruit/macropad/macropad.c
parentdbfbf6c2c47922600beeb45883ae6892e9f71edd (diff)
parent2c375e64785f3d69a14d7a3e02c041d774d1d75b (diff)
Merge remote-tracking branch 'upstream/master' into develop
Diffstat (limited to 'keyboards/adafruit/macropad/macropad.c')
-rw-r--r--keyboards/adafruit/macropad/macropad.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/keyboards/adafruit/macropad/macropad.c b/keyboards/adafruit/macropad/macropad.c
index 819b5067d8..6661e43909 100644
--- a/keyboards/adafruit/macropad/macropad.c
+++ b/keyboards/adafruit/macropad/macropad.c
@@ -40,3 +40,28 @@ led_config_t g_led_config = { {
} };
#endif
+
+#ifdef AUDIO_ENABLE
+void keyboard_pre_init_kb(void) {
+ // ensure pin is set and enabled pre-audio init
+ setPinOutput(SPEAKER_SHUTDOWN);
+ writePinHigh(SPEAKER_SHUTDOWN);
+ keyboard_pre_init_user();
+}
+
+void keyboard_post_init_kb(void) {
+ // set pin based on active status
+ writePin(SPEAKER_SHUTDOWN, audio_is_on());
+ keyboard_post_init_user();
+}
+
+void audio_on_user(void) {
+ writePinHigh(SPEAKER_SHUTDOWN);
+}
+
+void audio_off_user(void) {
+ // needs a delay or it runs right after play note.
+ wait_ms(200);
+ writePinLow(SPEAKER_SHUTDOWN);
+}
+#endif