Posts

Showing posts from January, 2026

1.28" 240x240 Round Display with GC9A01 SPI, on Raspberry Pi Pico 2 W.

Image
Exercises run on Raspberry Pi Pico 2 W /CircuitPython 10.0.3, to display on 1.28 inch IPS Module: GC9A01+CST816S 240*240(Round) 4W-SPI . Connection: Raspberry Pi Pico 2 W Run | GP22| ------- LCD_BLK ------------+ GND | | GP21| ------- LCD_DC ---------+ | GP20| ------- LCD_RES-------+ | | GP19| MOSI - SPI_SDA ----+ | | | GP18| SCK - SPI_SCL --+ | | | | GND | | | | | | GP17| SS - LCD_CS ---|-|-|-|-+ | GP16| MISO - no use | | | | | | --------+ | | | | | | | | | | | | | | | | | | GC9A01 | | | | | | | | | | | +---- BLK | | | | +------ CS | | | +-------- DC ...

1.28 inch IPS Module: GC9A01+CST816S 240*240(Round) 4W-SPI

Image
My display module: 1.28 inch IPS Module: GC9A01+CST816S 240*240(Round) 4W-SPI CircuitPython Exercises: ~  1.28" 240x240 Round Display with GC9A01 SPI, on Raspberry Pi Pico 2 W .

Python exercises to auto-play jpg and mp4

Image
The Python code listed below auto-play jpg and mp4 in "files" sub-folder, run on Windows 11.  Remark: These Python programs require OpenCV and ffpyplayer. Since I encountered some issues installing OpenCV on the latest Python 3.14, I created a Python 3.12 virtual environment to install OpenCV and ffpyplayer. Related:  Create Python virtual environment in Windows 11 play_jpg.py """ Python to auto play all jpg in "files" sub-folder. To install cv2: > pip install opencv-python """ import cv2 import os import time import platform sys_info_text = "Python " + platform.python_version() + "\n" +\ "Running on " + platform.platform() + "\n" +\ cv2.__name__ + " " + cv2.__version__ print("==================================================") print("""Python to auto play all jpg in "files" sub-folder.""") pri...

My display module: 1.9" 170*320 TFT ST7789 x 2pcs

Image
Arduino Exercise: ~  Raspberry Pi Pico 2 W display on two 1.9" 170*320 ST7789 SPI LCD, using Arduino_GFX_Library .

Raspberry Pi Pico 2 W display on two 1.9" 170*320 ST7789 SPI LCD, using Arduino_GFX_Library, using separated SPI.

Image
Raspberry Pi Pico 2 W display on two 1.9" 170*320 ST7789 SPI LCD, using Arduino_GFX_Library, using separated SPI. In previous exercise, I used a Raspberry Pi Pico 2 W to drive two LCDs: a 2.4-inch and a 2.0-inch 240×320 ST7789 SPI IPS . Both displays shared a common SPI bus without any problems. However, when I replaced them with two 1.9-inch 170×320 ST7789 SPI LCDs , the setup did not work. Using the same code and connections, only the second LCD would turn on. To solve this, I separated the SPI connections for the two displays: the first one (on the left) is connected via Arduino_RPiPicoSPI, and the second one (on the right) is connected via Arduino_SWSPI. Updated connection: Raspberry Pi Pico 2 W      GP28| LCD2_RST -----------------+      GND | |      GP27| LCD2_DC ----------------+ |      GP26| LCD2_CS --------------+ | |      Run | ...

Raspberry Pi Pico 2 W display on dual LCD using Arduino_GFX_Library (Arduino Framework), common SPI.

Image
Raspberry Pi Pico 2 W display on dual LCD using Arduino_GFX_Library.  - 2.4 inch 240×320 ST7789 SPI IPS - 2.0 inch 240x320 ST7789 SPI IPS Connection: Connection ==========      Raspberry Pi Pico 2 W | GP28| ------- LCD2_RST -----------------+      GND | |      GP27| ------- LCD2_DC ----------------+ |      GP26| ------- LCD2_CS --------------+ | |      Run | | | |      GP22| ------- LCD_RST ------+ | | |      GND | | | | |      GP21| ------- LCD_DC -------|-+ | | |      GP20| ------- LCD_BL -------|-|---+ | | |      GP19| MOSI - SPI_SDA ----+ | | | | | |      GP18| SCK - SPI_SCL --+ | | | | | | |      GND |      | | | | | | | |      GP17| SS - LCD_CS ---|-|-|-|-+ | | | ...

1.54" 320x320 ST7796 SPI IPS on Waveshare ESP32-H2-Zero/CircuitPython 10.0.3

Image
1.54" 320x320 ST7796 SPI IPS on Waveshare ESP32-H2-Zero /CircuitPython 10.0.3 Currently, no official ST7796 library for CircuitPython, so we have to implement my custom ST7796_INIT_SEQUENCE and busdisplay.BusDisplay(). cpy_H2Zero_st7796_320x320.py , simple color test. """ Waveshare ESP32-H2-Zero/CircuitPython display on 1.54 inch 320x320 ST7796 SPI IPS 320x320 ST7796 LCD ESP32-H2-Zero - BL -----+ +-----=======-----+ 3V3 ---+ | |5V GPIO24| GND ---|-|-------------|GND GPIO23| +-|-------------|3V3 GPIO25| +-------------|GPIO0 GPIO22| CS -------------------|GPIO1 GPIO14| SCK -------------------|GPIO2 GPIO13| DC -------------------|GPIO3 GPIO12| MOSI -------------------|GPIO4 GPIO11| |GPIO5 GPIO10| +-----------------+ CircuitPython Libraries ...