Build a Pi Zero W pocket projector! // Project

Has anyone looked at using a DSI bridge (like the Toshiba TC358762 used in the official Raspberry PI DSI display) or an FPGA to connect over the DSI port on full-size Raspberry Pi boards? Lattice have an FPGA line (CrossLink) designed to be used as a display bus interface, including free (but not open source) IP for a DSI to DPI bridge. I don’t have the skills to try it myself, but maybe someone else does.

2 Likes

Has anyone been successful with this DLP2000 and RPI 4B using the wire method? I am getting just DLP splash screen. I am using 10cm jumpers, enabled I2C, edited all proper files, etc. Could this be related to the on board dual display?

I would be happy to do some testing if anyone has any ideas.

There’re some device tree overlay changes required for DPI to work on the Raspberry Pi 4. https://www.raspberrypi.org/forums/viewtopic.php?f=107&t=244266#p1501249

The problem with the dpi24 overlays is that it hangs its pinmux changes to the framebuffer “fb” node. Pi 4 relies on the vc4-fkms-v3d overlay being applied which disables the old framebuffer and any associated pinmux settings.

A fix for this is for the dpi24 overlay to hedge its bets and attach to both the “fb” node and the “vc4” node, one of which should be enabled. You can download an updated overlay to try from here: https://drive.google.com/file/d/14vR6iq … sp=sharing

Install the update with:

 sudo cp dpi24.dtbo /boot/overlays

Then remove the “gpio=” workaround (if you added it) and reboot. All being well, and provided “dtparam=audio=off” and “enable_uart=off”, your display should work.

– [PhilE] Raspberry Pi Engineer & Forum Moderator

Does this:
“Then remove the “gpio=” workaround (if you added it) and reboot.”
Mean that I need to remove all of the previously amendments to config.txt?
In other words I remove all of this:

Added to support DLP2000

dtoverlay=i2c-gpio,i2c_gpio_sda=23,i2c_gpio_scl=24,i2c_gpio_delay_us=2

dtoverlay=dpi18
overscan_left=0
overscan_right=0
overscan_top=0
overscan_bottom=0
framebuffer_width=854
framebuffer_height=480
enable_dpi_lcd=1
display_default_lcd=1
dpi_group=2
dpi_mode=87

dpi_output_format=458773
hdmi_timings=854 0 14 4 12 480 0 2 3 9 0 0 0 60 0 32000000 3

Thanks in advance

The “gpio=” workaround refers to a workaround the Raspberry Pi forum thread’s OP tried, “gpio=0-27=a2,np” (sets GPIO pins 0 through 27 to alt mode 2 (DPI) and disables pull-up/down. You still need the other settings to set the overscan, dimensions, timings, etc.

I don’t have a Raspberry Pi 4 (or DLP2000 EVM) to test with, so I don’t know exactly what settings you need.

Hi Mick,
Can I connect the pi zero W projector to a smart phone using Bluetooth to be able to project it’s screen? or i can only project the PC desktop screen only?

thank you for your reply in advance.

Hi Guys,
so my problem is that I can’t access the link. It says that the access was denied…
Deckonym

Hi, my links don’t work either and it has been months since Mick’s last video…

1 Like

I found a (kinda) solution with Rpi4 on the TI forum. It has to do with a slightly different i2c timing setting in /etc/rc.local and a slightly different res in /boot/config.txt Thanks to mickmake PhilE Vanderbosh icb and especially Maxim for helping me get to this point.

https://e2e.ti.com/support/dlp/f/94/t/850392

same here man! trying from almost 2 days now!

same here man! trying from 2 days

Has anyone tried picking up i2c on the CSI or DSI connector? That should free up pins on the 40-pin header to use DPI in RGB888 (RGB24) mode. I’m not having any luck finding a good breakout board. The closest I’m finding is Adafruit’s CSI/DSI extender board that has some convenient vias. I don’t think there are any i2c address conflicts, so using that might mean being able to still use the camera too.

hi
i have this problem too,
when i edit raspi config file, after restarting os , my raspiberry stop on colored screen, and my projector do not turn on?
please help me
what i should do?
and i dont use your board.

I am waiting for you guys, please help me

Mick can you help me please?

Hello, glad that someone used my update to the solution. Do you have the color banding issue? I really don’t know how to get rid of it.

You may try to enable fkms in config.txt

So, I’m pretty new to raspberry pi, and I’ve been beating my head against my desk for a few days now.

Basically when I add:

dtoverlay=i2c-gpio,i2c_gpio_sda=23,i2c_gpio_scl=24,i2c_gpio_delay_us=2

dtoverlay=dpi18
overscan_left=0
overscan_right=0
overscan_top=0
overscan_bottom=0
framebuffer_width=854
framebuffer_height=480
enable_dpi_lcd=1
display_default_lcd=1
dpi_group=2
dpi_mode=87

dpi_output_format=458773
hdmi_timings=854 0 14 4 12 480 0 2 3 9 0 0 0 60 0 32000000 3

To my config.txt file and reboot, the screen doesn’t change at all, and I can’t ssh into my raspberry pi zero w.

If I delete what I added in, the screen still shows the DLP splash screen like normal, but I’m now able to ssh back into the pi.

I thought maaaaaybe it could be windows carriage return, but I’m pretty sure I removed those.

Anyone have any ideas?

So I narrowed it down to just this line that seems to be barfing things. If soldering is poor, or I wired this wrong, could that cause my raspberry pi to crash and thus prevent me from being able to ping/ssh?

Are you using Mick’s board, or everything up yourself?

If you enable only the i2c-gpio dtoverlay line, commenting out or deleting the rest of the new lines, and reboot without the board or projector attached, does your Pi boot normally?