Open main menu

Humanoid Robots Wiki β

Waveshare LCDs

Revision as of 02:12, 1 September 2024 by Goblinrum (talk | contribs)

Instructions to run the Waveshare 1.69in LCDs on the Jetson carrier boards

Jetson BCM Mapping.png

Note the Linux BCM mappings in the image shown. Theoretically with the Jetson.GPIO library, you are able to use either the physical board pin mapping or the BCM mapping, but this process has only been vetted for the BCM mode. When referring to pins in the Python package, use the BCM mapping. For example, if you use pin 32, use "D12" when referring to the pin. With the Adafruit package, this is written as "board.D12"


The 1.5 Inch LCD Module page actually tells you how to set up the Jetson for the Waveshare LCDs. However, since it uses a different controller, the actual firmware needs to be modified.

You can find the draft changes repo here.

Steps to reproduce:

  1. On Jetson, use the jetson-io to enable SPI1. Steps are shown in the 1.5 inch LCD Module guide.
  2. Power down the Jetson and wire up the display using the following pinout:
Function Jetson Pin BCM Pin
3v3 1 3v3
GND 6 GND
DIN/MOSI 19 D10 (Automatically selected by Jetson-GPIO)
SCK 23 D11 (Automatically selected)
CS 24 CE0 (Automatically selected)
DC 22 D25
RST 31 D6
BL 32 D12

Clone the repository and run the code. You may need to install the following pip dependencies:

  • Jetson.GPIO
  • adafruit-circuitpython-busdevice
  • spidev
  • adafruit-blinka-displayio
  • adafruit-circuitpython-rgb-display
  • adafruit-circuitpython-st7789
  • Pillow