fbcp-ili9341: vc_dispmanx_display_open failed! (Pi Zero W - Raspbian Buster)

I successfully got a 2.8" ili9341 to work a Raspberry Pi 3B+. Now I’m trying the sam display with a Raspberry Pi Zero W. The screen flashes briefly and then i get this error:

pi@raspberrypi:~/fbcp-ili9341/build $ sudo ./fbcp-ili9341
bcm_host_get_peripheral_address: 0x20000000, bcm_host_get_peripheral_size: 33554432, bcm_host_get_sdram_address: 0x40000000
BCM core speed: current: 250000000hz, max turbo: 400000000hz. SPI CDIV: 30, SPI max frequency: 13333333hz
Allocated DMA channel 7
Allocated DMA channel 1
Enabling DMA channels Tx:7 and Rx:1
DMA hardware register file is at ptr: 0xb4b70000, using DMA TX channel: 7 and DMA RX channel: 1
DMA hardware TX channel register file is at ptr: 0xb4b70700, DMA RX channel register file is at ptr: 0xb4b70100
Resetting DMA channels for use
DMA all set up
Initializing display
Resetting display at reset GPIO pin 27
Setting TFT backlight on at pin 17
InitSPI done
vc_dispmanx_display_open failed!

Am I doing something wrong?

Configuration:

cmake -DILI9341=ON -DGPIO_TFT_DATA_CONTROL=22 -DGPIO_TFT_RESET_PIN=27 -DGPIO_TFT_BACKLIGHT=17 -DSPI_BUS_CLOCK_DIVISOR=30 -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..

Wiring:

Display | Raspberry
MISO | 21
LED | 11
SCK | 23
MOSI | 19
DC | 15
RESET | 13
CS | 24
GND | GND
VCC | 5V

Setup: IMG_20190730_135839

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 15 (6 by maintainers)

Most upvoted comments

I encountered the same issue while trying to run fbcp-ili9341 on a Pi Zero using DietPi (based on Raspbian Lite Buster).

hdmi_force_hotplug=1 wouldn’t do any good.

What I found is, I had a GPU memory split set at 16MB in /boot/config.txt (gpu_mem_512=16). This, somehow, caused vc_dispmanx_display_open to fail. Removing the line (defaults to 64MB I think), or setting it to 32MB (haven’t tried other options) solved the issue.

If DispmanX cannot be loaded, then it is not a wiring nor a fbcp-ili9341 config/build issue, but something is going wrong with the display driver load. The only reason I have observed that to happen is mentioned in issue #75, when hardware VC4 KMS GL driver is used (dtoverlay=vc4-kms-v3d in /boot/config.txt) instead of the default driver. Try double-checking if that might be the reason here?