ILI9341 vs ST7735
Screen size and pixel count decide: the 2.8 inch ILI9341 module shows 240 × 320 pixels on a 43.2 × 57.6 mm active area and adds a resistive touch layer (LCDWiki MSP2807 user manual, p. 1), while the 1.8 inch ST7735 shows 128 × 160 pixels on 28.03 × 35.04 mm (LCDWiki MSP1803 product parameters). Both are 65K-color SPI displays with 3.3 V logic and a 3.3 V to 5 V VCC, but the ILI9341 has 3.75 times the pixels to push, so it suits an ESP32 or Pico better than an Uno.
Side by side
| ILI9341 | ST7735 | |
|---|---|---|
| ResolutionLCDWiki MSP2807 user manual, p. 1; LCDWiki MSP1803 product parameters | 240 × 320 | 128 × 160 |
| Active areaLCDWiki MSP2807 user manual, p. 1; LCDWiki MSP1803 product parameters | 43.2 × 57.6 mm | 28.03 × 35.04 mm |
| Board sizeLCDWiki MSP2807 user manual, p. 1; LCDWiki MSP1803 product parameters | 50 × 86 mm | 34.5 × 58 mm |
| ColorsLCDWiki MSP2807 user manual, p. 1; Ilitek ILI9341 datasheet V1.11, p. 7; LCDWiki MSP1803 product parameters | 65K (RGB565); controller up to 262K | 65K (RGB565); controller up to 262K |
| Supply and logicLCDWiki MSP2807 user manual, p. 1; LCDWiki MSP1803 product parameters | VCC 3.3 V to 5 V, logic 3.3 V TTL | VCC 3.3 V to 5 V, logic 3.3 V TTL |
| SPI write clockIlitek ILI9341 datasheet V1.11, p. 242; Sitronix ST7735S datasheet V1.1, p. 35 | 100 ns min cycle (10 MHz) | 66 ns min cycle (about 15 MHz) |
| Data/command pinIlitek ILI9341 datasheet V1.11, p. 11; LCDWiki MSP1803 user manual, p. 3 | DC/RS | A0 |
| Read back (MISO)LCDWiki MSP2807 user manual, p. 1; LCDWiki MSP1803 user manual, p. 3 | SDO/MISO broken out | None, write only |
| TouchLCDWiki MSP2807 user manual, p. 1; LCDWiki MSP1803 product parameters | Resistive touch on its own SPI chip select (T_CS, T_IRQ) | None |
| SD card slotLCDWiki MSP2807 user manual, p. 1; LCDWiki MSP1803 user manual, p. 3 | Yes | Yes, on its own 4-pin header |
Which one to pick
- Touch menus, dashboards and control panels: 240 × 320 pixels and a resistive touch layer (LCDWiki MSP2807 user manual, p. 1).
- ESP32, ESP32-S3 or Pico projects, which have the RAM and SPI speed to redraw a 240 × 320 screen.
- Readouts meant to be seen from a desk away: a 2.8 inch panel with a 43.2 × 57.6 mm active area.
- Compact builds and handhelds: a 34.5 × 58 mm board (LCDWiki MSP1803 product parameters).
- Arduino Uno and Nano projects: 20,480 pixels redraw far faster over the Uno's 8 MHz SPI than the ILI9341's 76,800.
- Small color gauges, icons and status screens where touch is not needed.
Swapping one for the other
What changes in the wiring and the code.
- The SPI wiring carries over: SCK to SCK, MOSI to the ST7735's SDA or the ILI9341's SDI, CS, RESET and the data/command line (A0 on the ST7735, DC/RS on the ILI9341) to the same GPIOs, LED to 3.3 V. The ILI9341 adds MISO and the T_ touch pins, which can stay unconnected if unused.
- Both modules take 3.3 V logic (LCDWiki MSP2807 user manual, p. 1; MSP1803 product parameters): on a 5 V Arduino keep the level shifter on CS, RESET, DC/A0, MOSI and SCK; on an ESP32 or Pico wire them directly.
- The library changes: Adafruit_ILI9341(TFT_CS, TFT_DC, TFT_RST) with begin(), against Adafruit_ST7735 with initR(INITR_BLACKTAB) or another tab setting. TFT_eSPI drives both, selected in its User_Setup.
- Layouts must be redrawn for the new size: 240 × 320 against 128 × 160, so coordinates, fonts and bitmaps do not carry over.
- Moving to the ILI9341, cap the SPI clock near 10 MHz if pixels corrupt (Ilitek datasheet, p. 242); the ST7735S is rated to a 66 ns cycle, about 15 MHz (Sitronix datasheet, p. 35).
ILI9341 or ST7735: questions
Which TFT is better for an Arduino Uno?
The ST7735. Its 128 × 160 frame is 20,480 pixels against the ILI9341's 76,800, so full redraws over the Uno's SPI take about a quarter of the time. Both need a level shifter on a 5 V Uno, because their logic pins are 3.3 V (LCDWiki MSP1803 and MSP2807 manuals).
Can I use the same code for the ILI9341 and the ST7735?
The drawing calls of Adafruit GFX are the same, but the driver object changes: Adafruit_ILI9341 for one, Adafruit_ST7735 with initR() for the other. TFT_eSPI handles both from its setup file. Screen coordinates must be rescaled from 128 × 160 to 240 × 320.
Does the ST7735 have touch like the ILI9341?
No. The 1.8 inch MSP1803 has no touch layer. The 2.8 inch MSP2807 adds a resistive touch panel on its own chip select, T_CS, with T_IRQ going low on a touch (LCDWiki MSP2807 user manual, p. 1); its non-touch sibling is the MSP2806.
Are both displays 5 V tolerant?
Only on VCC. Both modules take 3.3 V to 5 V on VCC through a regulator but run their logic at 3.3 V TTL (LCDWiki MSP2807 user manual, p. 1; MSP1803 product parameters), and each controller allows its logic supply plus 0.3 V at most on an input (Ilitek ILI9341 datasheet, p. 235; Sitronix ST7735S datasheet, p. 28).
Which display refreshes faster?
The ST7735, for two reasons: it has 3.75 times fewer pixels, and its controller is rated to a 66 ns SPI write cycle, about 15 MHz (Sitronix ST7735S datasheet, p. 35), against the ILI9341's 100 ns, 10 MHz (Ilitek datasheet, p. 242).
The two references
Checked on 2026-10-29 against 4 sources, the makers’ datasheets first.
This comparison as plain Markdown. /compare/ili9341-tft-2-8-vs-st7735-tft-1-8.md

