/fbcp-X

An updated blazing fast display driver for SPI-based LCD displays for Raspberry Pi A, B, 2, 3, 4 and Zero

Primary LanguageC++MIT LicenseMIT

fbcp-X

+ Deprecation Notice

Read more...

+ Intro

This repository contains customized copy of original fbcp-ili9341 repository by Jukka Jylänki. You can learn more about licensing in original README.md.

This version has a few new features and some changes. It also may not be fully tested on all device configurations, so keep this in mind when choosing this code over the official version.

~Good luck

+ Drivers

The followinng displays are supported (see: config.h):

  • ILI9488
  • ILI9341
  • ILI9340
  • ILI9486L
  • ILI9486
  • HX8357D
  • ST7789VW
  • ST7789
  • ST7735S
  • ST7735R
  • SSD1351
  • MZ61581
  • MPI3501
  • KEDEI_V63_MPI3501
  • WAVESHARE35B_ILI9486
  • ADAFRUIT_ILI9341_PITFT
  • FREEPLAYTECH_WAVESHARE32B
  • WAVESHARE_ST7789VW_HAT
  • PIRATE_AUDIO_ST7789_HAT
  • WAVESHARE_ST7735S_HAT
  • ADAFRUIT_HX8357D_PITFT
  • TONTEC_MZ61581

+ Brief howto

The installation is not fully automatic, you need to spend some time on going through the config.h. Once it's done you could just copy the code onto your device, launch installer annd follow the instructions. It's pretty simple for those linux where it was tested.

Before the installation uncomment all the options that suitable for your setup in config.h, leave commented what you don't need. Also have check fbcpX.conf which is operational config that could be found in /etc/fbcpx diirectory.

++ Splash Screen

splash screen

You also may wish to personalize splash screen. To do so you need to use img2bin.sh shell script.

Just choose an image (jpg/png), copy it into in directory, run the script to check the options. Normally your command line would look like:

~$ ./img2bin.sh -r 100:100 -b 2 -bg 0000 myimage.jpg

++ Installation

You may chouse to use eather:

~$ ./install.sh 

or manual method, using:

~$ cmake -S ./src -B ./build
~$ make -C ./build

++ Usage

Signals:

Signal Description
SIGUSR1 toggle backlight (if backlight control enabled)
SIGUSR2 switch on/off display (if display driver can do that)
SIGPROF manually clear screen

BlankTime:

Once display is in sleep mode if set turn_off_after and ignore_redraw_area it can be turned active again by using SIGUSR2.

If you are using fbcpX as a service:

~$ systemctl kill --signal=SIGUSR2 fbcpX

If it's a proccess:

~$ pkill --signal SIGUSR2 fbcpx

In previous versions you'd need to compile the code defining configuration throgh command line. Now we can avoid this by using config.h and fbcpX.conf.

bugtracker
Let me know in issues 🪲 if you have any suggestion or found an error.