The Raspberry Pi 4 has three video/display interfaces with two micro HDMI ports, and one MIPI DSI connector.
I understand it's currently to drive two displays over HDMI with up to 1080p60 resolution each, and later maybe 4K30 will be supported. But it is also possible to connect an LCD display to the MIPI DSI interface to get three independent displays, or alternatively just one 4K display connected via HDMI plus the LCD display connected to the MIPI DSI connector. Thanks in advance.
Re: Triple display with Raspberry Pi 4
There is also DPI on GPIO pins so that makes it four now 
On older Pis I think all three (HDMI,DSI,DPI) worked at the same time in some way.
And there are also those cheap Fresco Logic (FL2000) USB3.0 video cards (popular for SDR) that may work now with Pi4 too.

On older Pis I think all three (HDMI,DSI,DPI) worked at the same time in some way.
And there are also those cheap Fresco Logic (FL2000) USB3.0 video cards (popular for SDR) that may work now with Pi4 too.
Re: Triple display with Raspberry Pi 4
Does everybody forget good old composite video on the TRRS jack?
55:55:44:44:4C
52:4C:52:42:41
Rose tinted glasses are difficult to see through.
52:4C:52:42:41
Rose tinted glasses are difficult to see through.
-
- Raspberry Pi Engineer & Forum Moderator
- Posts: 15291
- Joined: Wed Dec 04, 2013 11:27 am
- Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.
Re: Triple display with Raspberry Pi 4
Not currently, but the hardware potentially could feed 3 devices simultaneously.
There are 3 HVS (Hardware Video Scalar) channels, which each feed into one of the 5 pixel valves at a time, and from there on to output devices. There are a couple of restrictions (eg DSI0 and DPI share a pixel valve), but routing of HVS channel to PV is pretty flexible.
History has only ever required driving 2 displays simultaneously, and so the third HVS channel is assigned in the software to the transposer - it writes back to memory and is used should you wish to transpose (rotate) the display, and also currently for some of the composition with VLC.
If you don't need the transposer then HVS channel 2 would be available and could be used for a 3rd display.
HOWEVER, I see no need to do that in the firmware driver. A full DRM/KMS driver is in the pipeline for Pi4, and with the configuration of that through device tree I can see the possibility of exposing 3 displays.
Memory bandwidth and the V3D max composition size of 7680x7680 are going to limit what is practical, but it's far to early to say where those limits will sit.
There are 3 HVS (Hardware Video Scalar) channels, which each feed into one of the 5 pixel valves at a time, and from there on to output devices. There are a couple of restrictions (eg DSI0 and DPI share a pixel valve), but routing of HVS channel to PV is pretty flexible.
History has only ever required driving 2 displays simultaneously, and so the third HVS channel is assigned in the software to the transposer - it writes back to memory and is used should you wish to transpose (rotate) the display, and also currently for some of the composition with VLC.
If you don't need the transposer then HVS channel 2 would be available and could be used for a 3rd display.
HOWEVER, I see no need to do that in the firmware driver. A full DRM/KMS driver is in the pipeline for Pi4, and with the configuration of that through device tree I can see the possibility of exposing 3 displays.
Memory bandwidth and the V3D max composition size of 7680x7680 are going to limit what is practical, but it's far to early to say where those limits will sit.
Software Engineer at Raspberry Pi Ltd. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.
I'm not interested in doing contracts for bespoke functionality - please don't ask.
Re: Triple display with Raspberry Pi 4
I am designing an embedded projector application, where the Raspberry 7" touchscreen display serves as a UI, HDMI-1 drives a special projector that projects an Infrared pattern. I'd like to use HDMI-2 as an optional development/debug display port.
The projector is 720p, my developer monitor is 1080p, so even with the additional 800x480 display via MIPI I'm well below the 7680x7680 limit.
Could you please point me to documentation or steps to disable the transposer and enable the 3rd display?
The projector is 720p, my developer monitor is 1080p, so even with the additional 800x480 display via MIPI I'm well below the 7680x7680 limit.
Could you please point me to documentation or steps to disable the transposer and enable the 3rd display?
-
- Raspberry Pi Engineer & Forum Moderator
- Posts: 15291
- Joined: Wed Dec 04, 2013 11:27 am
- Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.
Re: Triple display with Raspberry Pi 4
With the firmware rendering pipe it isn't possible and it's highly unlikely that it ever will be possible.maszoka wrote: ↑Sat Dec 05, 2020 8:13 pmI am designing an embedded projector application, where the Raspberry 7" touchscreen display serves as a UI, HDMI-1 drives a special projector that projects an Infrared pattern. I'd like to use HDMI-2 as an optional development/debug display port.
The projector is 720p, my developer monitor is 1080p, so even with the additional 800x480 display via MIPI I'm well below the 7680x7680 limit.
Could you please point me to documentation or steps to disable the transposer and enable the 3rd display?
With the 5.10 kernel it is now possible, however this is still early stages of the 5.10 kernel (it's not released as a mainline kernel yet). DO NOT DO THIS ON A CRITICAL PI.
Update the kernel and firmware using "sudo BRANCH=next rpi-update".
In /boot/config.txt
- Remove the line "dtoverlay=vc4-fkms-v3d"
- Add "dtoverlay=vc4-kms-v3d"
- Add "dtoverlay=vc4-kms-dsi-7inch"
- Add "ignore_lcd=1"
Reboot.
In the Screen Configuration tool you should now get 3 displays showing up.
Software Engineer at Raspberry Pi Ltd. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.
I'm not interested in doing contracts for bespoke functionality - please don't ask.
Re: Triple display with Raspberry Pi 4
My quick reading of this thread suggests that it is also possible to do a triple display with 2 x HDMI and a GPIO-connected MIPI DPI display or a VGA-connected GertVGA-style display too? (Or is the DSI0 + DPI sharing not what I think?)
Is there a device tree combo for that triple display set-up?
Is there a device tree combo for that triple display set-up?
-
- Posts: 8168
- Joined: Sat Aug 18, 2012 2:33 pm
Re: Triple display with Raspberry Pi 4
i believe HDMI0 + HDMI1 + DPI should be perfectly fine on pi4b/pi400/cm4noggin wrote: ↑Wed Dec 16, 2020 3:05 amMy quick reading of this thread suggests that it is also possible to do a triple display with 2 x HDMI and a GPIO-connected MIPI DPI display or a VGA-connected GertVGA-style display too? (Or is the DSI0 + DPI sharing not what I think?)
Is there a device tree combo for that triple display set-up?
but youll need to use the kms drivers, because the firmware reserves a channel for transposing
-
- Posts: 8409
- Joined: Tue Jun 30, 2015 1:35 pm
Re: Triple display with Raspberry Pi 4
triple display is possible with KMS, but as said this is not officially released yet so be prepared to see some issues.noggin wrote: ↑Wed Dec 16, 2020 3:05 amMy quick reading of this thread suggests that it is also possible to do a triple display with 2 x HDMI and a GPIO-connected MIPI DPI display or a VGA-connected GertVGA-style display too? (Or is the DSI0 + DPI sharing not what I think?)
Is there a device tree combo for that triple display set-up?
-
- Raspberry Pi Engineer & Forum Moderator
- Posts: 15291
- Joined: Wed Dec 04, 2013 11:27 am
- Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.
Re: Triple display with Raspberry Pi 4
Most issues are now resolved. 5.10 is now the default kernel from rpi-update.aBUGSworstnightmare wrote: ↑Wed Dec 16, 2020 5:37 amtriple display is possible with KMS, but as said this is not officially released yet so be prepared to see some issues.noggin wrote: ↑Wed Dec 16, 2020 3:05 amMy quick reading of this thread suggests that it is also possible to do a triple display with 2 x HDMI and a GPIO-connected MIPI DPI display or a VGA-connected GertVGA-style display too? (Or is the DSI0 + DPI sharing not what I think?)
Is there a device tree combo for that triple display set-up?
![]()
dtoverlay=vc4-kms-v3d
dtoverlay=vc4-kms-kippah-7inch
will get you dual hdmi and dpi for the 800x480 Adafruit Kippah panel.
Choosing alternate resolutions/timings will mean either adding modes manually using xrandr, or altering the compatible string in the Kippah overlay to choose the right one from the panel-simple driver. It may be possible to tag an i2c bus onto it to make a vga port, but I'm not aware of a ready made solution for that.
Software Engineer at Raspberry Pi Ltd. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.
I'm not interested in doing contracts for bespoke functionality - please don't ask.
-
- Posts: 8168
- Joined: Sat Aug 18, 2012 2:33 pm
Re: Triple display with Raspberry Pi 4
and it may need some i2c level shifters, since vga's EDID likely operates at 5v, while the pi gpio are 3.3v
but that would also be far better then the old vga hacks, since it could auto-detect the supported resolutions, and just magic its way into working, like vga normally does
hmmm, what about putting that edid on gpio 0/1, along with a hat eeprom
would the hat flash not collide with edid flash? and then the hat flash contains a dtbo to configure the dpi+i2c-edid, so it just magically works at every level!
-
- Raspberry Pi Engineer & Forum Moderator
- Posts: 15291
- Joined: Wed Dec 04, 2013 11:27 am
- Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.
Re: Triple display with Raspberry Pi 4
GPIO 0&1 won't be used for VGA via a VGA666 so could be level shifted for EDID reading.cleverca22 wrote: ↑Wed Dec 16, 2020 9:42 amand it may need some i2c level shifters, since vga's EDID likely operates at 5v, while the pi gpio are 3.3v
but that would also be far better then the old vga hacks, since it could auto-detect the supported resolutions, and just magic its way into working, like vga normally does
hmmm, what about putting that edid on gpio 0/1, along with a hat eeprom
would the hat flash not collide with edid flash? and then the hat flash contains a dtbo to configure the dpi+i2c-edid, so it just magically works at every level!
Rechecking panel-simple, it does look for a ddc-i2c-bus property, and if found will read an EDID from it.
With a couple of level shifters on those lines taking I2C to VGA pins 12 & 15, and 5V to VGA pin 9, it would imply that we can drive VGA as Plug'N'Pray

HAT EEPROM isn't worth doing - there's no guarantee that vc4-kms-v3d will be enabled, and a VGA666 can be used without KMS.
Software Engineer at Raspberry Pi Ltd. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.
I'm not interested in doing contracts for bespoke functionality - please don't ask.
-
- Posts: 8168
- Joined: Sat Aug 18, 2012 2:33 pm
Re: Triple display with Raspberry Pi 4
ah, and also no simple/portable way for the hat eeprom to force kms on, since it needs a full dtbo, and cant use dtoverlay=, correct?
Re: Triple display with Raspberry Pi 4
Time to get a CM4 and CM I/O and go for 4 displays?
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges
Raspberries are not Apples or Oranges
-
- Posts: 8168
- Joined: Sat Aug 18, 2012 2:33 pm
Re: Triple display with Raspberry Pi 4
Two GPUs would be interesting - VideoCore VI plus one on the PCIe link. Has anyone got an external GPU running with the CM4 yet?cleverca22 wrote: ↑Thu Dec 17, 2020 3:14 amwont help, the internal design of the SoC can only drive 3 video ports at once
any extra video would either be non-accelerated (spi displays) or pci-e (not working yet, needs more software development)
-
- Posts: 8168
- Joined: Sat Aug 18, 2012 2:33 pm
Re: Triple display with Raspberry Pi 4
none are working yetandrum99 wrote: ↑Thu Dec 17, 2020 4:19 amTwo GPUs would be interesting - VideoCore VI plus one on the PCIe link. Has anyone got an external GPU running with the CM4 yet?cleverca22 wrote: ↑Thu Dec 17, 2020 3:14 amwont help, the internal design of the SoC can only drive 3 video ports at once
any extra video would either be non-accelerated (spi displays) or pci-e (not working yet, needs more software development)
Re: Triple display with Raspberry Pi 4
In the meantime this looking interesting.
https://www.phoronix.com/scan.php?page= ... SB-Display
USB boot loading and compression possibilities too.
https://www.phoronix.com/scan.php?page= ... SB-Display
USB boot loading and compression possibilities too.
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges
Raspberries are not Apples or Oranges
-
- Posts: 8168
- Joined: Sat Aug 18, 2012 2:33 pm
Re: Triple display with Raspberry Pi 4
ooo, thats niceGavinmc42 wrote: ↑Thu Dec 17, 2020 6:00 amIn the meantime this looking interesting.
https://www.phoronix.com/scan.php?page= ... SB-Display
USB boot loading and compression possibilities too.
that could easily be rolled into an initrd, and then you can usb-boot a pi0 into it using the CM utils
you could also pop it onto an SD card, and then it would boot directly into display mode for any compatible host to use
and since its only LZ4 not h264, it would also be fairly simple to implement in baremetal arm or baremetal vpu, which would allow faster booting
Re: Triple display with Raspberry Pi 4
VPU only? That would boot faster?and since its only LZ4 not h264, it would also be fairly simple to implement in baremetal arm or baremetal vpu, which would allow faster booting
Let the Arm do the decompression?
Seems a big waste to fire up Linux and only do a USB client.
I have USB booted PiCore Linux on a Zero so smaller things like Barebox would work too.
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges
Raspberries are not Apples or Oranges
-
- Raspberry Pi Engineer & Forum Moderator
- Posts: 15291
- Joined: Wed Dec 04, 2013 11:27 am
- Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.
Re: Triple display with Raspberry Pi 4
You can use the include directive to pull in vc4-kms-v3d, but there are totally valid uses of a VGA666 type board using the firmware, therefore forcing everyone into using KMS with your board is a bad thing. Having to add a dtoverlay= line isn't the end of the world.cleverca22 wrote: ↑Wed Dec 16, 2020 10:20 pmah, and also no simple/portable way for the hat eeprom to force kms on, since it needs a full dtbo, and cant use dtoverlay=, correct?
Software Engineer at Raspberry Pi Ltd. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.
I'm not interested in doing contracts for bespoke functionality - please don't ask.
-
- Posts: 8168
- Joined: Sat Aug 18, 2012 2:33 pm
Re: Triple display with Raspberry Pi 4
when i was testing some VPU only code on my pi400, i noticed that it sometimes finished booting, before the usb-c cable even fully clicked inGavinmc42 wrote: ↑Thu Dec 17, 2020 8:20 amVPU only? That would boot faster?and since its only LZ4 not h264, it would also be fairly simple to implement in baremetal arm or baremetal vpu, which would allow faster booting
Let the Arm do the decompression?
Seems a big waste to fire up Linux and only do a USB client.
I have USB booted PiCore Linux on a Zero so smaller things like Barebox would work too.
its damn fast, but that speed comes with the cost of all ram, lol
until i get the ddr4 drivers worked out, your limited to 128kb of ram, for both code and data (including the final framebuffer, if you power up the hdmi)
VC4 era (pi0, to pi3) does have open ddr2 drivers, so thats less of an issue
yeah, i wouldnt want to force that on the user, so id either need a switch and 2 hat chips, or just document how its meant to be used6by9 wrote: ↑Thu Dec 17, 2020 9:02 amYou can use the include directive to pull in vc4-kms-v3d, but there are totally valid uses of a VGA666 type board using the firmware, therefore forcing everyone into using KMS with your board is a bad thing. Having to add a dtoverlay= line isn't the end of the world.cleverca22 wrote: ↑Wed Dec 16, 2020 10:20 pmah, and also no simple/portable way for the hat eeprom to force kms on, since it needs a full dtbo, and cant use dtoverlay=, correct?
or document how to reflash the hat chip, to change it there, could allow all 3 routes
Re: Triple display with Raspberry Pi 4
Thank you 6by9 for the response.
I updated to 5.10, and added the lines to /boot/config.txt
After reboot none of the displays worked, not even with the previously safe LCD + 1xHDMI. HDMI had no sync, the LCD kind of 'fizzled out' after boot as if the LCD controller removed the drive voltages or stopped flipping.
Probably same issue as: viewtopic.php?f=108&t=293877&p=1783548& ... h#p1783548
When accessing the system with 3 displays attached via VNC, arandr shows two displays (LCD + HDMI)
Can you explain the fundamentals behind the
dtoverlay=vc4-kms-v3d
dtoverlay=vc4-kms-dsi-7inch
ignore_lcd=1
settings?
We are turning on 'real' vs. 'fake' kms, and explicitly specifying the LCD driver?
Regards, Gabor
I updated to 5.10, and added the lines to /boot/config.txt
After reboot none of the displays worked, not even with the previously safe LCD + 1xHDMI. HDMI had no sync, the LCD kind of 'fizzled out' after boot as if the LCD controller removed the drive voltages or stopped flipping.
Probably same issue as: viewtopic.php?f=108&t=293877&p=1783548& ... h#p1783548
When accessing the system with 3 displays attached via VNC, arandr shows two displays (LCD + HDMI)
Can you explain the fundamentals behind the
dtoverlay=vc4-kms-v3d
dtoverlay=vc4-kms-dsi-7inch
ignore_lcd=1
settings?
We are turning on 'real' vs. 'fake' kms, and explicitly specifying the LCD driver?
Regards, Gabor
-
- Posts: 8409
- Joined: Tue Jun 30, 2015 1:35 pm
Re: Triple display with Raspberry Pi 4
None of your displays work? So 7in connected to Adafruit Kippah isn't working as well?
Or .. Wait .. which displays are you using? Have you tested the single displays to work under KMS? Ifyour EDID isn'tcorrect for some reason they will fail....
Or .. Wait .. which displays are you using? Have you tested the single displays to work under KMS? Ifyour EDID isn'tcorrect for some reason they will fail....
Re: Triple display with Raspberry Pi 4
I am using the https://www.raspberrypi.org/products/ra ... h-display/
Without the mods suggested by 6by9, I can use any of the 2 out of 3 display configurations:
- DSI with HDMI-1
- DSI with HDMI-2
- HDMI-1 with HDMI-2,
but not all 3, based on which displays I physically connect / disconnect from the system.
With the proposed change, none of the displays work, irrespective of what's connected.
HDMI syncs for a second, but then it loses sync, same with the LCD: it displays something for a split second, which then fizzles out.
Without the mods suggested by 6by9, I can use any of the 2 out of 3 display configurations:
- DSI with HDMI-1
- DSI with HDMI-2
- HDMI-1 with HDMI-2,
but not all 3, based on which displays I physically connect / disconnect from the system.
With the proposed change, none of the displays work, irrespective of what's connected.
HDMI syncs for a second, but then it loses sync, same with the LCD: it displays something for a split second, which then fizzles out.