• sales

    +86-0755-88291180

Raspberry Pi 1.54inch LCD Bookworm-Desktop Display and Touch

Step 1】Test Environment
Official image version
2024-03-12-raspios-bookworm-armhf.im

Pi' Version :  4B、5B

HAT :  spotpear rpi-1.54inch-lcd

Step 2】Configure SPI display:

Copy spotpear_240x320_st7789.dtbo to /boot/overlays/ directory

sudo cp spotpear_240x240_st7789_lcd1inch54.dtbo /boot/overlays/

Edit config.txt configuration file】

sudo nano /boot/firmware/config.txt

Disable KMS】

#dtoverlay=vc4-kms-v3d

#max_framebuffers=2

Add the following configuration at the end of the file】

dtparam=spi=on

dtoverlay=spotpear_240x240_st7789_lcd1inch54

hdmi_force_hotplug=1

max_usb_current=1

hdmi_group=2

hdmi_mode=87

hdmi_cvt 480 480 60 6 0 0 0

hdmi_drive=2

display_rotate=0


Download, compile and install fbcp】

sudo apt update

sudo apt-get install git -y

sudo git clone https://github.com/tasanakorn/rpi-fbcp.git

cd ./rpi-fbcp/

sudo mkdir -m 777 ./build

cd ./build/

sudo apt install libraspberrypi-dev -y

sudo apt-get install cmake -y

sudo cmake ..

sudo make

sudo install fbcp /usr/local/bin/fbcp


Set auto-start startx and fbcp】

sudo nano ~/.bash_profile


Note: If there is no .bash_profile file, create one yourself

Add the following code to the bottom of the .bash_profile file】

if [ "$(cat /proc/device-tree/model | cut -d ' ' -f 3)" = "5" ]; then

# Raspberry Pi 5B configuration

export FRAMEBUFFER=/dev/fb1

startx 2> /tmp/xorg_errors

else

# Non-Raspberry Pi 5B configuration

export FRAMEBUFFER=/dev/fb0

sleep 20

fbcp &

startx 2> /tmp/xorg_errors

fi


Set CLI automatic login】

sudo raspi-config nonint do_boot_behaviour B2

Noto: This command has optional parameters

B1 - Boot to console, requiring login

B2 - Boot to console, logging in automatically

B3 - Boot to desktop, requiring login

B4 - Boot to desktop, logging in automatically

Note: Make sure the username of the Raspberry Pi is pi, otherwise it will not log in automatically


Switch to X11】

sudo raspi-config nonint do_wayland W1

Note: This command has optional parameters

W1 - Use the X11 backend

W2 - Use the Wayland backend


The above configuration will take effect after restart】

sudo reboot

Note: After setting all the above configurations, the system will become longer during each restart, and SSH also needs to wait for a while to enter;

Step 3】Configure Touch:

Install the calibrator software

sudo apt-get install xserver-xorg-input-evdev

sudo cp -rf /usr/share/X11/xorg.conf.d/10-evdev.conf /usr/share/X11/xorg.conf.d/45-evdev.conf

sudo apt-get install xinput-calibrator

Edit the 99-calibration.conf configuration file

sudo nano /usr/share/X11/xorg.conf.d/99-calibration.conf

Section "InputClass"

        Identifier      "calibration"

        MatchProduct    "ADS7846 Touchscreen"

        Option  "Calibration"   "326 3536 3509 256"

        Option  "SwapAxes"      "1"

        Option "EmulateThirdButton" "1"

        Option "EmulateThirdButtonTimeout" "1000"

        Option "EmulateThirdButtonMoveThreshold" "300"

EndSection

The above configuration will take effect after restart】  

sudo reboot

TAG: RV1103 SC3336 Ranging Sensor ESP32 ST7789 Milk-V Duo RJ45 Tutorial Raspberry Pi 5 ESP32-P4 DEV-KIT C6 WiFi6 MIPI DSI 7/10.1 inch Display/CSI Camera/Audio Speaker For AI Deepseek ESP32-S3 A7670E 4G development board supports LTE Cat-1/2G/GNSS positioning/WiFi/Bluetooth ESP32-P4-NANO Development Board RISC-V WiFi6 MIPI CSI Camera / 10.1 inch DSI Display / USB / RJ45 Ethernet / POE / Audio Buzzer Digital Photo Frames Raspberry Pi 1.3inch RDK X5 PoE Module For Power Over Ethernet/ IEEE 802.3af/at PoE For D-Robotics RDK X5 ESP32 C3 Zero BG95-M3-Zero QuecPython EVB development support LTE/EGPRS and GNSS ESP32 C3 Raspberry Pi Pico 2 RP2350-Tiny/Tiny-Kit Super Mini Board RP2350A Raspberry Pi LCD Display Screen 1.3inch LCD with Game Button AND Audio Buzzer For Zero 2W / 3B / 4B / PI5 / RP2040-PiZero SpotPear Raspberry-Pi-Pico-W-webserver Industrial Modbus POE ETH RJ45 To 8-Ch Relay B RTU/Modbus TCP-Ethernet For IOT DAPLINK