I’ve started building a photobooth using one of the first generation Raspberry Pi I found in a drawer. More details are to come. Meanwhile, here are some notes to configure the Landzo 7″ touchscreen display.
The display is sold as compatible with Raspberry Pi and probably it is but it didn’t work out of the box. The box comes with a CD-ROM but I don’t have any way to read that old stuff anymore. The landzo.com website doesn’t seem to host the content of that CD-ROM either.
The Pi doesn’t use the correct video modes for the display out of the box so I had to read the documentation. The gist of it is that you need to add a new custom mode to /boot/config.txt as below:
# uncomment to force a specific HDMI mode (this will force VGA) hdmi_group=2 hdmi_mode=1 hdmi_mode=87 hdmi_cvt=800 480 60 3 0 0 0
If you’re interested, here is how I got to those numbers. I rebooted the Pi in VGA mode (hdmi_group=1 & hdmi_mode=1) and then ran the tools to interrogate the display:
pi@raspberrypi:~ $ /opt/vc/bin/tvservice -d edid.dat Written 128 bytes to edid.dat
Parsed the file with the edidparser:
pi@raspberrypi:~ $ /opt/vc/bin/edidparser edid.dat Enabling fuzzy format match... Parsing edid.dat... HDMI:EDID version 1.3, 0 extensions, screen size 15x10 cm HDMI:EDID features - videodef 0x80 !standby !suspend !active off; colour encoding:RGB444|YCbCr422; sRGB is not default colourspace; preferred format is native; does not support GTF HDMI:EDID ignored unknown descriptor tag 0x10 HDMI:EDID ignored unknown descriptor tag 0x10 HDMI:EDID ignored unknown descriptor tag 0x10 HDMI:EDID does not yet know monitor vertical range, setting to default 24 to 120Hz HDMI:EDID failed to find a matching detail format for 800x480p hfp:40 hs:48 hbp:40 vfp:13 vs:3 vbp:29 pixel clock:32 MHz HDMI:EDID calculated refresh rate is 66 Hz HDMI:EDID guessing the format to be 800x480p @70 Hz HDMI:EDID found unknown detail timing format: 800x480p hfp:40 hs:48 hbp:40 vfp:13 vs:3 vbp:29 pixel clock:32 MHz HDMI:EDID established timing I/II bytes are 00 00 00 HDMI:EDID standard timings block x 8: 0x0101 0101 0101 0101 0101 0101 0101 0101 HDMI:EDID adding mandatory support for DMT (4) 640x480p @ 60Hz HDMI:EDID filtering formats with pixel clock > 162 MHz or h. blanking > 1023 HDMI:EDID no known preferred format has been set HDMI:EDID filtering preferred group has been changed from Invalid to DMT HDMI:EDID best score mode initialised to DMT (4) 640x480p @ 60 Hz with pixel clock 25 MHz (score 0) HDMI:EDID best score mode is now DMT (4) 640x480p @ 60 Hz with pixel clock 25 MHz (score 36864) HDMI:EDID preferred mode is updated to DMT (4) 640x480p @ 60 Hz with pixel clock 25200000 Hz HDMI:EDID has only DVI support and no audio support edid_parser exited with code 0
From there I saw this interesting line:
HDMI:EDID guessing the format to be 800x480p @70 Hz
I know the display’s resolution is 800×480 so that has to be my clue for the new mode. The docs gave me the rest.
hdmi_cvt=<width> <height> <framerate> <aspect> <margins> <interlace> <rb> Value Default Description width (required) width in pixels height (required) height in pixels framerate (required) framerate in Hz aspect 3 aspect ratio 1=4:3, 2=14:9, 3=16:9, 4=5:4, 5=16:10, 6=15:9 margins 0 0=margins disabled, 1=margins enabled interlace 0 0=progressive, 1=interlaced rb 0 0=normal, 1=reduced blanking
The next challenge is to enable the touchscreen: the driver is probably in the CD-ROM and I haven’t found it online yet.