#ifndef BOARD_PICO2_EINK_H #define BOARD_PICO2_EINK_H #include "pico/stdlib.h" // ============================================================================ // Raspberry Pi Pico 2 with E-Ink Display // ============================================================================ #define BOARD_NAME "Raspberry Pi Pico 2 + E-Ink Display" // Display Configuration #define DISPLAY_WIDTH 400 #define DISPLAY_HEIGHT 300 #define DISPLAY_TYPE_SELECTED 2 // DISPLAY_TYPE_EPAPER_VAL // Touch Configuration (if your e-ink has touch, otherwise use TOUCH_TYPE_NONE) #define TOUCH_TYPE_SELECTED 1 // TOUCH_TYPE_NONE_VAL #define TOUCH_SWAP_XY false #define TOUCH_INVERT_X false #define TOUCH_INVERT_Y false // SPI pins for E-Ink display (using SPI0) #define DISPLAY_SPI_PORT spi0 #define DISPLAY_SCK_PIN 2 // GP2 #define DISPLAY_MOSI_PIN 3 // GP3 #define DISPLAY_MISO_PIN 4 // GP4 (often not used by e-paper) #define DISPLAY_CS_PIN 5 // GP5 #define DISPLAY_DC_PIN 6 // GP6 (Data/Command) #define DISPLAY_RST_PIN 7 // GP7 (Reset) #define DISPLAY_BL_PIN 8 // GP8 - Not used for e-ink, but needs valid pin number #define DISPLAY_BUSY_PIN 9 // GP9 - E-paper BUSY pin (critical!) // I2C pins for touch (if using touch-enabled e-ink) #define TOUCH_I2C_PORT i2c0 #define TOUCH_SDA_PIN 12 // GP12 #define TOUCH_SCL_PIN 13 // GP13 #define TOUCH_INT_PIN 14 // GP14 #define TOUCH_RST_PIN 15 // GP15 // SD card pins (separate SPI1) - optional #define SD_SPI_PORT spi1 #define SD_CS_PIN 17 // GP17 #define SD_MISO_PIN 16 // GP16 #define SD_MOSI_PIN 19 // GP19 #define SD_SCK_PIN 18 // GP18 // Common configuration #define SPI_BAUDRATE (4 * 1000 * 1000) // 4 MHz for e-paper (slower than TFT) #define I2C_BAUDRATE (400 * 1000) // 400 kHz for touch #endif // BOARD_PICO2_EINK_H