config.h (1673B)
- // Copyright 2024 splitkb.com (support@splitkb.com)
- // 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