mirror of
https://github.com/qmk/qmk_firmware.git
synced 2025-07-20 06:32:01 +00:00
* Add splitkb's Elora * WIP * Make requested changes * fix missing call to keyboard init user for elora * sync vial_qmk with qmk * Add fixes * Add encoder quadrature and update files * Update Readme * Implement changes * Remove encoder driver from keyboard.json * make requested changed * Implement changes and remove myriad_task as it wasn't actually doing anything. * Remove myriad.h from matrix.c * Simplify OLED code debug * Update RGB keycodes (qmk#24484) * remove rules.mk (qmk#23281) * Add matrix state sync --------- Co-authored-by: NapOli1084 <10320176+NapOli1084@users.noreply.github.com> Co-authored-by: harveysch <126267034+harvey-splitkb@users.noreply.github.com> Co-authored-by: harvey <harvey@splitkb.com> Co-authored-by: VeyPatch <126267034+VeyPatch@users.noreply.github.com>
61 lines
1.6 KiB
C
61 lines
1.6 KiB
C
// 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
|
|
|