1.9'' 170x320 IPS TFT Display

Full-Angle (IPS) Rectangular TFT Display With SPI And 262K Colors (18bit)

This breakout board features a 1.9” full-angle color TFT display with *SPI interface that works for 3.3V and 5V microcontrollers. Since the display is using IPS (In-Plane Switching), it has excellent viewing angles and rich colors.

The display is available from generic Chinese sources (like Estardyn and others) for around €2.00:

It is used by renown brands as well. The 1.9” Adafruit Display has a snappier PCB design and comes with good documentation. You decide whether this is worth 10x the cost (around €20.00):

In-between this price range, there are many other vendors offering their own PCB designs, including this cleverly designed PCB from WaveShare with the smallest-possible form factor and an excellent documentation that equally applies to the breakout boards from other vendors:

Item Description
Supply Voltage 3.2-5.0V
Resolution 170x320
Pixel Size 0.1335x0.1335mm
Colors 262K (18bit)
Controller ST7789
Controller Power Consumption 7mA
Backlight Power Consumption 20-40mA
Sleep-In Power Consumption 30uA
Module Size 29x62x5.1mm
Screen Size 23.7x43.7mm
Visible Size 22.7x42.7mm (0.5mm margin)
Weight 9.8g

SPI Interface

Both the Chinese Board and the Adafruit Display expose the SPI interface:

Pin (Display Board) Description Pin (Lolin32 Lite)
GND Ground G
VCC positive supply voltage 3V
SCL SPI Clock (SCK) 18
SDA SPI MOSI 23
RES Reset EN or programmable GPIO, (low active)
DC Data/Command (Data=high, Command=low) any output GPIO
CS Chip Select (low active) 5
BLK Backlight any PWM pin or 3V (100% bright, no dimming)

Backlight

The display backlight is controlled via pin BLK:

  • Controllable: if you want your microcontroller to control the backlight (i.e. to dynamically dim it), connect BLK to any PWM pin.
  • Fixed: when you connect BLK to 3.3V/5V directly, the backlight works independently from the microcontroller. You could use a small potentiometer to manually adjust its brightness.

With the latter setup, the display remains on (and fully readable) when the board enters deep sleep. This can be highly power efficient if you want your device to display static content.

Reset

Via the RES pin, the display controller can be resetted (low active). Here are your options:

  • Don’t care: if you do not plan to reset the display, pull this pin high by connecting it to VCC, ensuring that the device won’t reset itself randomly.
  • Sync With Microcontroller: when your microcontroller breakout board exposes its own Reset pin, you can connect RES to the reset pin of your microcontroller. This way, you don’t waste a precious GPIO and get basic reset behavior: when you reset your microcontroller (i.e. by pressing its Reset button), the display is resetted as well. This may be invaluable because else, when you reset your microcontroller, the display would still continue to show its previous content. This can be highly confusing, especially when you flash the microcontroller with fresh firmware (without removing its power). If the new firmware isn’t drawing content on the display, after the firmware update, the board would still show the old display content, and users could be led to believe the firmare update wasn’t successful.
  • Manual: when wiring RES to any output GPIO, you can control when to reset the display. Make sure the GPIO has a pullup resistor enabled, and pull the GPIO low to reset the display controller.

Unless you have a real reason why you wanted to ever manually reset the display controller, connecting RES to the Reset Pin of your microcontroller appears to be the best value (provided your development board exposes this pin).

Programming

The display boards use the ST7789 controller that can be programmed with these librarys and components:

Here is a good walkthrough using this display plus these:

Materials

  • How To Connect Breakout-Board: excellent and detailed documentation (by WaveShare) covering the WaveShare breakout board. Applies to breakout boards from other vendors as well. Covers using the display with various microcontrollers (including Raspberry Pi, STM32, and Arduino).

Slow Website?

This website is very fast, and pages should appear instantly. If this site is slow for you, then your routing may be messed up, and this issue does not only affect done.land, but potentially a few other websites and downloads as well. Here are simple steps to speed up your Internet experience and fix issues with slow websites and downloads..

Comments

Please do leave comments below. I am using utteran.ce, an open-source and ad-free light-weight commenting system.

Here is how your comments are stored

Whenever you leave a comment, a new github issue is created on your behalf.

  • All comments become trackable issues in the Github Issues section, and I (and you) can follow up on them.

  • There is no third-party provider, no disrupting ads, and everything remains transparent inside github.

Github Users Yes, Spammers No

To keep spammers out and comments attributable, all you do is log in using your (free) github account and grant utteranc.es the permission to submit issues on your behalf.

If you don’t have a github account yet, go get yourself one - it’s free and simple.

If for any reason you do not feel comfortable with letting the commenting system submit issues for you, then visit Github Issues directly, i.e. by clicking the red button Submit Issue at the bottom of each page, and submit your issue manually. You control everything.

Discussions

For chit-chat and quick questions, feel free to visit and participate in Discussions. They work much like classic forums or bulletin boards. Just keep in mind: your valued input isn’t equally well trackable there.

  Show on Github    Submit Issue

(content created Oct 20, 2024)