diff options
Diffstat (limited to 'keyboards/splitkb/elora/rev1/config.h')
-rw-r--r-- | keyboards/splitkb/elora/rev1/config.h | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/keyboards/splitkb/elora/rev1/config.h b/keyboards/splitkb/elora/rev1/config.h new file mode 100644 index 0000000000..7633cf00af --- /dev/null +++ b/keyboards/splitkb/elora/rev1/config.h @@ -0,0 +1,60 @@ +// Copyright 2024 splitkb.com ([email protected]) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +// Make it easier to enter the bootloader +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U + +// I2C0, onboard SSD1306 socket and I2C to Myriad module +#define I2C_DRIVER I2CD0 +#define I2C1_SDA_PIN GP0 +#define I2C1_SCL_PIN GP1 +// We need to slow down the I2C clock because the default of 400.000 +// fails to communicate with Zetta ZD24C02A EEPROM on a Myriad card. +#define I2C1_CLOCK_SPEED 100000 + +// SPI1, both for onboard matrix data and SPI to Myriad module +#define SPI_DRIVER SPID1 +#define SPI_SCK_PIN GP10 +#define SPI_MOSI_PIN GP11 +#define SPI_MISO_PIN GP12 + +// UART1, communication between the two halves +#define SERIAL_USART_FULL_DUPLEX +#define SERIAL_USART_DRIVER SIOD1 +#define SERIAL_USART_TX_PIN GP20 +#define SERIAL_USART_RX_PIN GP21 + +// Potential onboard speaker, not populated by default +#define AUDIO_PIN GP23 + +// Transmitting pointing device status to the master side +#define SPLIT_POINTING_ENABLE +#define POINTING_DEVICE_COMBINED + +// VBUS detection +#define USB_VBUS_PIN GP25 + +// Define matrix size +#define MATRIX_COLS 8 +#define MATRIX_ROWS 12 + +// Encoders +// 3 onboard, 1 for Myriad +#define NUM_ENCODERS_LEFT 4 +#define NUM_ENCODERS_RIGHT 4 +#define ENCODER_RESOLUTION 2 + +// OLED display +#define OLED_DISPLAY_128X64 +// If someone has only one OLED display +// and that display was on the slave side. +// It wouldn't work at all. This fixes that +// including some code in rev1.c but makes +// it so the timeout's are not synced +// between halves. +#undef SPLIT_OLED_ENABLE +#define OLED_TIMEOUT 0 + |