2040
This commit is contained in:
parent
48f0639453
commit
ccc0dbe3a2
38
config.h
38
config.h
@ -7,27 +7,34 @@
|
||||
#define MATRIX_COLS 5
|
||||
|
||||
#define DIRECT_PINS { \
|
||||
{ D5, F5, B7, F4, D3 }, \
|
||||
{ B1, C6, F7, D4, F6}, \
|
||||
{ B6, B2, E6, B3, D7 }, \
|
||||
{ F0, B5, B4, NO_PIN, NO_PIN } \
|
||||
{ GP13, GP28, GP12, GP29, GP0 }, \
|
||||
{ GP22, GP14, GP26, GP4, GP27}, \
|
||||
{ GP21, GP23, GP7, GP20, GP6 }, \
|
||||
{ GP16, GP9, GP8, NO_PIN, NO_PIN } \
|
||||
}
|
||||
|
||||
#define DIRECT_PINS_RIGHT { \
|
||||
{ D3, F4, B7, F5, D5 }, \
|
||||
{ F6, D4, F7, C6, B1}, \
|
||||
{ D7, B3, E6, B2, B6 }, \
|
||||
{ B4, B5, F0, NO_PIN, NO_PIN } \
|
||||
{ GP0, GP29, GP12, GP28, GP13 }, \
|
||||
{ GP27, GP4, GP26, GP14, GP22}, \
|
||||
{ GP6, GP20, GP7, GP23, GP21 }, \
|
||||
{ GP8, GP9, GP16, NO_PIN, NO_PIN } \
|
||||
}
|
||||
|
||||
|
||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
||||
#define DEBOUNCE 5
|
||||
|
||||
/* Serial Config */
|
||||
#define USE_SERIAL
|
||||
#define SOFT_SERIAL_PIN D2
|
||||
#define SERIAL_USART_TX_PIN GP1
|
||||
#define MASTER_LEFT
|
||||
|
||||
/* I2C Pin mapping */
|
||||
//#define I2C1_SDA_PIN GP7
|
||||
//#define I2C1_SCL_PIN GP6
|
||||
//#define I2C1_CLOCK_SPEED 400000
|
||||
//#define I2C_DRIVER I2CD2
|
||||
|
||||
// Set the mouse settings to a comfortable speed/accuracy trade-off,
|
||||
// assuming a screen refresh rate of 60 Htz or higher
|
||||
// The default is 50. This makes the mouse ~3 times faster and more accurate
|
||||
@ -49,3 +56,16 @@
|
||||
#define PERMISSIVE_HOLD
|
||||
#define IGNORE_MOD_TAP_INTERRUPT
|
||||
#define TAPPING_FORCE_HOLD
|
||||
#define USB_VBUS_PIN 19
|
||||
#define AUDIO_PWM_DRIVER PWMD2
|
||||
#define AUDIO_PWM_CHANNEL RP2040_PWM_CHANNEL_B
|
||||
#define AUDIO_STATE_TIMER GPTD4
|
||||
#define AUDIO_PIN GP5
|
||||
#ifdef AUDIO_ENABLE
|
||||
#define AUDIO_INIT_DELAY
|
||||
#define AUDIO_CLICKY
|
||||
#define AUDIO_CLICKY_FREQ_RANDOMNESS 1.0f
|
||||
#define STARTUP_SONG SONG(STARTUP_SOUND)
|
||||
#endif
|
||||
|
||||
#define STARTUP_SOUND E__NOTE(_E6), E__NOTE(_A6), ED_NOTE(_E7),
|
||||
|
||||
11
halconf.h
Normal file
11
halconf.h
Normal file
@ -0,0 +1,11 @@
|
||||
#pragma once
|
||||
|
||||
#undef HAL_USE_SIO
|
||||
#define HAL_USE_SIO TRUE
|
||||
|
||||
#define HAL_USE_I2C TRUE
|
||||
|
||||
#define HAL_USE_PWM TRUE
|
||||
#define HAL_USE_PAL TRUE
|
||||
|
||||
#include_next <halconf.h>
|
||||
64
info.json
64
info.json
@ -2,8 +2,8 @@
|
||||
"manufacturer": "grooovebob",
|
||||
"keyboard_name": "dasbob",
|
||||
"maintainer": "grooovebob",
|
||||
"bootloader": "atmel-dfu",
|
||||
"processor": "atmega32u4",
|
||||
"processor": "RP2040",
|
||||
"bootloader": "rp2040",
|
||||
"url": "",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
@ -13,36 +13,36 @@
|
||||
"layouts": {
|
||||
"LAYOUT_split_3x5_3": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 0], "x": 0, "y": 0.25 },
|
||||
{ "matrix": [0, 1], "x": 1, "y": 0.25 },
|
||||
{ "matrix": [0, 2], "x": 2, "y": 0.125 },
|
||||
{ "matrix": [0, 3], "x": 3, "y": 0 },
|
||||
{ "matrix": [0, 4], "x": 4, "y": 0.125 },
|
||||
{ "matrix": [4, 0], "x": 8, "y": 0.25 },
|
||||
{ "matrix": [4, 1], "x": 9, "y": 0.125 },
|
||||
{ "matrix": [4, 2], "x": 10, "y": 0 },
|
||||
{ "matrix": [4, 3], "x": 11, "y": 0.125 },
|
||||
{ "matrix": [4, 4], "x": 12, "y": 0.25 },
|
||||
{ "matrix": [1, 0], "x": 0, "y": 1.25 },
|
||||
{ "matrix": [1, 1], "x": 1, "y": 1.25 },
|
||||
{ "matrix": [1, 2], "x": 2, "y": 1.125 },
|
||||
{ "matrix": [1, 3], "x": 3, "y": 1 },
|
||||
{ "matrix": [1, 4], "x": 4, "y": 1.125 },
|
||||
{ "matrix": [5, 0], "x": 8, "y": 1.25 },
|
||||
{ "matrix": [5, 1], "x": 9, "y": 1.125 },
|
||||
{ "matrix": [5, 2], "x": 10, "y": 1 },
|
||||
{ "matrix": [5, 3], "x": 11, "y": 1.125 },
|
||||
{ "matrix": [5, 4], "x": 12, "y": 1.25 },
|
||||
{ "matrix": [2, 0], "x": 0, "y": 2.25 },
|
||||
{ "matrix": [2, 1], "x": 1, "y": 2.25 },
|
||||
{ "matrix": [2, 2], "x": 2, "y": 2.125 },
|
||||
{ "matrix": [2, 3], "x": 3, "y": 2 },
|
||||
{ "matrix": [2, 4], "x": 4, "y": 2.125 },
|
||||
{ "matrix": [6, 0], "x": 8, "y": 2.25 },
|
||||
{ "matrix": [6, 1], "x": 9, "y": 2.125 },
|
||||
{ "matrix": [6, 2], "x": 10, "y": 2 },
|
||||
{ "matrix": [6, 3], "x": 11, "y": 2.125 },
|
||||
{ "matrix": [6, 4], "x": 12, "y": 2.25 },
|
||||
{ "matrix": [0, 0], "x": 0, "y": 0.25 },
|
||||
{ "matrix": [0, 1], "x": 1, "y": 0.25 },
|
||||
{ "matrix": [0, 2], "x": 2, "y": 0.125 },
|
||||
{ "matrix": [0, 3], "x": 3, "y": 0 },
|
||||
{ "matrix": [0, 4], "x": 4, "y": 0.125 },
|
||||
{ "matrix": [4, 0], "x": 8, "y": 0.25 },
|
||||
{ "matrix": [4, 1], "x": 9, "y": 0.125 },
|
||||
{ "matrix": [4, 2], "x": 10, "y": 0 },
|
||||
{ "matrix": [4, 3], "x": 11, "y": 0.125 },
|
||||
{ "matrix": [4, 4], "x": 12, "y": 0.25 },
|
||||
{ "matrix": [1, 0], "x": 0, "y": 1.25 },
|
||||
{ "matrix": [1, 1], "x": 1, "y": 1.25 },
|
||||
{ "matrix": [1, 2], "x": 2, "y": 1.125 },
|
||||
{ "matrix": [1, 3], "x": 3, "y": 1 },
|
||||
{ "matrix": [1, 4], "x": 4, "y": 1.125 },
|
||||
{ "matrix": [5, 0], "x": 8, "y": 1.25 },
|
||||
{ "matrix": [5, 1], "x": 9, "y": 1.125 },
|
||||
{ "matrix": [5, 2], "x": 10, "y": 1 },
|
||||
{ "matrix": [5, 3], "x": 11, "y": 1.125 },
|
||||
{ "matrix": [5, 4], "x": 12, "y": 1.25 },
|
||||
{ "matrix": [2, 0], "x": 0, "y": 2.25 },
|
||||
{ "matrix": [2, 1], "x": 1, "y": 2.25 },
|
||||
{ "matrix": [2, 2], "x": 2, "y": 2.125 },
|
||||
{ "matrix": [2, 3], "x": 3, "y": 2 },
|
||||
{ "matrix": [2, 4], "x": 4, "y": 2.125 },
|
||||
{ "matrix": [6, 0], "x": 8, "y": 2.25 },
|
||||
{ "matrix": [6, 1], "x": 9, "y": 2.125 },
|
||||
{ "matrix": [6, 2], "x": 10, "y": 2 },
|
||||
{ "matrix": [6, 3], "x": 11, "y": 2.125 },
|
||||
{ "matrix": [6, 4], "x": 12, "y": 2.25 },
|
||||
{ "matrix": [3, 0], "x": 3.5, "y": 3.25 },
|
||||
{ "matrix": [3, 1], "x": 4.5, "y": 3.5 },
|
||||
{ "matrix": [3, 2], "x": 5.5, "y": 3.75 },
|
||||
|
||||
@ -1,70 +0,0 @@
|
||||
// Copyright 2022 grooovebob (@grooovebob)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
/*
|
||||
* Feature disable options
|
||||
* These options are also useful to firmware size reduction.
|
||||
*/
|
||||
|
||||
/* disable debug print */
|
||||
//#define NO_DEBUG
|
||||
|
||||
/* disable print */
|
||||
//#define NO_PRINT
|
||||
|
||||
/* disable action features */
|
||||
//#define NO_ACTION_LAYER
|
||||
//#define NO_ACTION_TAPPING
|
||||
//#define NO_ACTION_ONESHOT
|
||||
|
||||
#define MATRIX_ROWS 8
|
||||
#define MATRIX_COLS 5
|
||||
|
||||
#define DIRECT_PINS { \
|
||||
{ D0, F5, D1, F4, D3 }, \
|
||||
{ B1, C6, F7, D4, F6}, \
|
||||
{ B6, B2, E6, B3, D7 }, \
|
||||
{ F0, B5, B4, NO_PIN, NO_PIN } \
|
||||
}
|
||||
|
||||
#define DIRECT_PINS_RIGHT { \
|
||||
{ D3, F4, D1, F5, D0 }, \
|
||||
{ F6, D4, F7, C6, B1}, \
|
||||
{ D7, B3, E6, B2, B6 }, \
|
||||
{ B4, B5, F0, NO_PIN, NO_PIN } \
|
||||
}
|
||||
|
||||
|
||||
|
||||
#define UNUSED_PINS
|
||||
|
||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
||||
#define DEBOUNCE 5
|
||||
|
||||
#define USE_SERIAL
|
||||
#define SOFT_SERIAL_PIN D2
|
||||
#define MASTER_LEFT
|
||||
|
||||
// Set the mouse settings to a comfortable speed/accuracy trade-off,
|
||||
// assuming a screen refresh rate of 60 Htz or higher
|
||||
// The default is 50. This makes the mouse ~3 times faster and more accurate
|
||||
#define MOUSEKEY_INTERVAL 16
|
||||
// The default is 20. Since we made the mouse about 3 times faster with the previous setting,
|
||||
// give it more time to accelerate to max speed to retain precise control over short distances.
|
||||
#define MOUSEKEY_TIME_TO_MAX 40
|
||||
// The default is 300. Let's try and make this as low as possible while keeping the cursor responsive
|
||||
#define MOUSEKEY_DELAY 100
|
||||
// It makes sense to use the same delay for the mouseweel
|
||||
#define MOUSEKEY_WHEEL_DELAY 100
|
||||
// The default is 100
|
||||
#define MOUSEKEY_WHEEL_INTERVAL 50
|
||||
// The default is 40
|
||||
#define MOUSEKEY_WHEEL_TIME_TO_MAX 100
|
||||
|
||||
// Pick good defaults for enabling homerow modifiers
|
||||
#define TAPPING_TERM 200
|
||||
#define PERMISSIVE_HOLD
|
||||
#define IGNORE_MOD_TAP_INTERRUPT
|
||||
#define TAPPING_FORCE_HOLD
|
||||
@ -33,15 +33,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_LOWER] = LAYOUT_split_3x5_3(
|
||||
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
|
||||
XXXXXXX, RALT_T(XXXXXXX), LCTL_T(XXXXXXX), LSFT_T(XXXXXXX), XXXXXXX, KC_MINS, LSFT_T(KC_EQL), LCTL_T(KC_GRV), RALT_T(KC_QUOT), KC_BSLS,
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, LCTL(KC_C), LCTL(KC_V), KC_PSCR, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
|
||||
CK_RST, RALT_T(XXXXXXX), LCTL_T(XXXXXXX), LSFT_T(XXXXXXX), XXXXXXX, KC_MINS, LSFT_T(KC_EQL), LCTL_T(KC_GRV), RALT_T(KC_QUOT), KC_BSLS,
|
||||
CK_TOGG, CK_UP, CK_DOWN, LCTL(KC_C), LCTL(KC_V), KC_TAB, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
|
||||
KC_TRNS, KC_TRNS, KC_TAB, KC_ENT, KC_TRNS, KC_TRNS
|
||||
),
|
||||
|
||||
[_RAISE] = LAYOUT_split_3x5_3(
|
||||
KC_ESC, KC_UP, XXXXXXX, XXXXXXX, CK_TOGG, KC_NUM_LOCK, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_MINUS,
|
||||
KC_LEFT, RALT_T(KC_DOWN), LCTL_T(KC_RGHT), LSFT_T(XXXXXXX), KC_LGUI, XXXXXXX, LSFT_T(KC_KP_4), LCTL_T(KC_KP_5), RALT_T(KC_KP_6), KC_KP_PLUS,
|
||||
KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, KC_PSCR, KC_RALT, KC_KP_1, KC_KP_2, KC_KP_3, KC_KP_0,
|
||||
KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, KC_PSCR, XXXXXXX, KC_KP_1, KC_KP_2, KC_KP_3, KC_KP_0,
|
||||
KC_TRNS, KC_TRNS, KC_TAB, KC_ENT, KC_TRNS, KC_TRNS
|
||||
),
|
||||
|
||||
@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
};
|
||||
#ifdef OLED_ENABLE
|
||||
|
||||
oled_rotation_t oled_init_user(oled_rotation_t rotation) { return OLED_ROTATION_180; }
|
||||
oled_rotation_t oled_init_user(oled_rotation_t rotation) { return OLED_ROTATION_0; }
|
||||
bool oled_task_user(void) {
|
||||
if (is_keyboard_master()) {
|
||||
static const char PROGMEM runqmk_logo[] = {0,0,0,0,152,152,152,152,152,152,24,24,24,
|
||||
@ -102,28 +102,10 @@ bool oled_task_user(void) {
|
||||
}
|
||||
} else {
|
||||
static const char PROGMEM dasbob_logo[] = {
|
||||
0,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,
|
||||
0,0,0,0,0,0,128,128,128,128,128,128,128,128,128,128,128,128,128,0,0,0,0,0,0,0,
|
||||
0,0,128,128,128,128,128,128,128,128,128,128,128,128,128,0,0,0,128,128,128,128,
|
||||
128,128,128,128,128,128,128,128,128,128,128,128,0,0,0,0,0,0,0,0,0,128,128,128,
|
||||
128,128,128,128,128,128,128,128,128,0,0,0,0,0,0,128,128,128,128,128,128,128,
|
||||
128,128,128,128,128,128,128,128,128,0,0,0,0,0,0,255,255,255,255,255,255,255,
|
||||
255,255,255,255,31,255,255,255,255,255,255,255,255,255,252,0,224,255,255,255,
|
||||
255,255,255,255,255,255,255,255,255,255,255,248,192,0,0,0,120,254,255,255,255,
|
||||
255,255,255,255,255,223,223,223,223,223,159,159,191,63,1,255,255,255,255,255,
|
||||
255,255,255,255,199,255,255,255,255,255,255,255,255,126,0,224,252,254,255,255,
|
||||
255,255,255,255,255,255,31,255,255,255,255,255,255,255,254,252,240,0,255,255,
|
||||
255,255,255,255,255,255,255,199,255,255,255,255,255,255,255,255,126,0,0,0,1,
|
||||
255,255,255,255,255,255,255,255,255,255,248,255,255,255,255,255,255,255,127,63,
|
||||
143,252,255,255,255,255,255,255,255,127,112,127,255,255,255,255,255,255,255,252,
|
||||
224,0,252,249,251,251,251,243,247,247,247,247,255,255,255,255,255,255,255,255,
|
||||
126,254,255,255,255,255,255,255,255,255,239,227,255,255,255,255,255,255,255,254,
|
||||
126,0,31,127,255,255,255,255,255,255,255,255,254,240,255,255,255,255,255,255,
|
||||
255,255,255,63,254,255,255,255,255,255,255,255,255,239,227,255,255,255,255,255,
|
||||
255,255,254,126,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,1,1,1,1,1,1,
|
||||
1,1,0,0,0,3,3,3,3,3,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,1,1,1,
|
||||
1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,3,3,3,3,3,3,3,3,3,3,3,1,1,1,0,0,0,0,0,
|
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0
|
||||
0, 0, 0, 0, 0,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, 0, 0, 0, 0, 0,128,128,128,192,192,192,192,192,192,192,192,192,192,192,128,128, 0, 0, 0, 0, 0, 0, 0,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, 0, 0, 0, 0, 0,128,128,128,128,128,128,128,128,128,128,128,128,128, 0, 0, 0,128,128,128,128,128,192,192,192,192,192, 0, 0, 0,128,128,128,128,128,128,128,128,128, 0, 0, 0, 0,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, 0, 0,
|
||||
0, 0,126,127,255,255,255,255,255,255,255,199,247,255,255,255,255,255,255,255,255,127,252,255,255,255,255,255,255,255,255,255, 15,127,255,255,255,255,255,255,255,255,254,248, 0,126,127,255,255,255,255,255,255,255,199,247,255,255,255,255,255,255,255,255,127,126,255,255,255,255,255,255,255,255,239,239,239,239,207,223,223,223,159, 63, 0, 7, 63,255,255,255,255,255,255,255,254, 14,254,255,255,255,255,255,255,255, 63,241,252,254,255,255,255,255,255,255,255, 31,255,255,255,255,255,255,255,255,255,255,128, 0,
|
||||
0, 0,126,255,255,255,255,255,255,255,255,227,255,255,255,255,255,255,255,255,255, 0, 15, 63,127,255,255,255,255,255,255,255,248,255,255,255,255,255,255,255,255,127, 63, 7, 0,126,255,255,255,255,255,255,255,255,227,255,255,255,255,255,255,255,255,255,128,252,253,249,249,251,251,251,251,251,255,255,255,255,255,255,255,255,127, 30, 0, 0, 0, 3, 31,255,255,255,255,255,255,255,255,255,255,255,255,255,255, 7, 0, 63,255,255,255,255,255,255,255,255,255,248,255,255,255,255,255,255,255,255,255,255,255, 0,
|
||||
0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
|
||||
};
|
||||
oled_write_raw_P(dasbob_logo, sizeof(dasbob_logo));
|
||||
}
|
||||
|
||||
15
mcuconf.h
Normal file
15
mcuconf.h
Normal file
@ -0,0 +1,15 @@
|
||||
#pragma once
|
||||
|
||||
#include_next <mcuconf.h>
|
||||
|
||||
#undef RP_SIO_USE_UART0
|
||||
#define RP_SIO_USE_UART0 TRUE
|
||||
|
||||
#undef RP_I2C_USE_I2C1
|
||||
#define RP_I2C_USE_I2C1 TRUE
|
||||
|
||||
#undef RP_PWM_USE_PWM2
|
||||
#define RP_PWM_USE_PWM2 TRUE
|
||||
|
||||
#undef RP_PWM_USE_TIM1 //hier bin ich gerade nicht mehr sicher ob das auch für Audio gebraucht wird
|
||||
#define RP_PWM_USE_TIM1 TRUE
|
||||
12
rules.mk
12
rules.mk
@ -1,14 +1,13 @@
|
||||
# MCU name
|
||||
MCU = atmega32u4
|
||||
|
||||
|
||||
# Bootloader selection
|
||||
BOOTLOADER = caterina
|
||||
BOOTLOADER = rp2040
|
||||
|
||||
# Build Options
|
||||
# change yes to no to disable
|
||||
#
|
||||
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
|
||||
MOUSEKEY_ENABLE = yes # Mouse keys
|
||||
MOUSEKEY_ENABLE = no # Mouse keys
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
||||
CONSOLE_ENABLE = no # Console for debug
|
||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||
@ -16,8 +15,11 @@ NKRO_ENABLE = no # Enable N-Key Rollover
|
||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
||||
UNICODE_ENABLE = yes # Unicode
|
||||
AUDIO_ENABLE = no # Audio output
|
||||
AUDIO_ENABLE = yes # Audio output
|
||||
SPLIT_KEYBOARD = yes # Use shared split_common code
|
||||
OLED_ENABLE = yes
|
||||
OLED_DRIVER = SSD1306
|
||||
WPM_ENABLE = yes
|
||||
LTO_ENABLE = yes
|
||||
SERIAL_DRIVER = vendor
|
||||
AUDIO_DRIVER = pwm_hardware
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user