KRYONOS
Hardware

Hardware & Display Wiring

Pinout schematics and connection guide for ESP32 and ILI9341 2.8" SPI touch screen.

Hardware & Display Wiring Guide

KryonOS is optimized for the widely available ILI9341 2.8" SPI TFT LCD with XPT2046 Resistive Touch Controller (240x320 resolution).


  • Microcontroller: ESP32-WROOM-32 / ESP32-S3 (Dual-Core 240MHz, 4MB+ Flash)
  • Display Module: 2.8" SPI TFT LCD (240x320) with ILI9341 Driver IC
  • Touch IC: XPT2046 SPI Touch Controller

Pinout Mapping Table

Connect the display headers to your ESP32 GPIO pins as follows:

| ILI9341 Pin | ESP32 GPIO | Description | | :--- | :--- | :--- | | VCC | 3.3V / 5V | Display Power Input | | GND | GND | Common Ground | | CS | GPIO 15 | TFT Chip Select | | RESET | GPIO 4 / EN | Display Reset Pin | | DC / RS | GPIO 2 | Data / Command Control | | MOSI / SDI | GPIO 23 | VSPI MOSI Master Out | | SCK / CLK | GPIO 18 | VSPI Clock | | LED / BL | 3.3V | Backlight Anode | | MISO / SDO | GPIO 19 | VSPI MISO Master In | | T_CLK | GPIO 18 | Shared SPI Clock for Touch | | T_CS | GPIO 21 | Touch Controller Chip Select | | T_DIN / MOSI | GPIO 23 | Shared SPI MOSI for Touch | | T_DO / MISO | GPIO 19 | Shared SPI MISO for Touch | | T_IRQ | GPIO 22 / N.C. | Touch Pen Interrupt (Optional) |

Power Requirement

Make sure your 3.3V power rail supplies at least 500mA of current. Backlight plus Wi-Fi transmission bursts can trigger brownouts if powered via poor USB cables.


TFT_eSPI User_Setup.h Configuration

If compiling from source with the Arduino TFT_eSPI library, ensure your User_Setup.h contains:

#define USER_SETUP_LOADED
#define ILI9341_DRIVER
#define TFT_MISO 19
#define TFT_MOSI 23
#define TFT_SCLK 18
#define TFT_CS   15
#define TFT_DC    2
#define TFT_RST   4

#define TOUCH_CS 21

#define SPI_FREQUENCY       40000000 // 40MHz High-Speed SPI
#define SPI_TOUCH_FREQUENCY  2500000 // 2.5MHz Touch SPI

On this page