I'm interested to know how low the TMDS clock could be for 800x480 with reduced blanking. The typical value seems to ~332 MHz without reduced blanking. I think these 800x480 HDMI displays also support 640x480 at standard timings but no other modes.
I found this data but it may not be the exact model and the AT070TN92 might be a generic name for many different panels (can't be sure there) but might be a reasonable start though. If it is valid it looks like it takes a 26.4-46.8MHz dot clock with a decently wide range of sync/blanking timing possible. This would be nice to try with a P2 at 264MHz or 270MHz perhaps, operating at the 10x pixel rate for DVI. It is quite easy to experiment with the timing in my driver to find what might work for native resolution. The Realtek(?) converter part may have some of its own timing constraints however, so maybe that can be looked up too.
I hooked up the 7" LCD display to my bench supply and now it seems to be working with the P2 Eval board. It still doesn't work with the Raspberry Pi though. I don't plan to use it with the Pi anyway so I guess that isn't a problem. It seems that neither the P2 5V supply nor my breadboard supply provide enough current to drive the display.
I switched to using a USB C power supply intended for a Raspberry Pi 4 and the 7" LCD display seems to be working fine. Does anyone have code to put text on the display?
I'm still working out the regions that are used (4 in the example)... Modifying the code around what gets displayed (text, vs graphics, cursor, etc...) still had me a bit confused, but I was able to put some text onto the screen other than the examples
' create a VGA display
'THE DEFAULT
'vid.initDisplay(@display1, VID#VGA, VGA_BASE_PIN, VGA_VSYNC_PIN, VID#RGBHV, @lineBuffer1, LINEBUFSIZE, timing)
' or turn one of these other video outputs...
'vid.initDisplay(@display1, VID#COMPONENT_SDTV, COMPONENT_BASE_PIN, 0, VID#PROGRESSIVE+VID#PAL, @lineBuffer1, LINEBUFSIZE, 0)
'vid.initDisplay(@display1, VID#COMPONENT_HDTV, COMPONENT_BASE_PIN, 0, VID#PROGRESSIVE, @lineBuffer1, LINEBUFSIZE, 0)
'vid.initDisplay(@display1, VID#SVIDEO_CVBS, SVIDEO_BASE_PIN, 0, VID#INTERLACED+VID#NTSC, @lineBuffer1, LINEBUFSIZE, 0)
'vid.initDisplay(@display1, VID#CVBS, SVIDEO_BASE_PIN+2, 0, VID#INTERLACED+VID#NTSC, @lineBuffer1, LINEBUFSIZE, 0)
'vid.initDisplay(@display1, VID#SVIDEO, SVIDEO_BASE_PIN, 0, VID#PROGRESSIVE+VID#NTSC, @lineBuffer1, LINEBUFSIZE, 0)
' HDMI TEST
USE THIS: ==> vid.initDisplay(@display1, VID#DVI, DVI_BASE_PIN, 0, VID#DVI_NORMAL, @lineBuffer2, LINEBUFSIZE, 0) ' create a VGA display over DVI
A cheesy stand for the 7 inch Display, for 3D printing:
NOTE: I used KISSlicer to create a .gcode for my printer (thanks to Jonathan Dummer)... It came out with a really high-grade object!
@dgately Thanks for posting stl file. I may have to print that out.
Wondering if one of those right angle hdmi adapters will work there...
That would be nice as it would hide the HDMI cable as it leaves the top of the LCD's board. I did make a cut-away in the stand to give room for the HDMI cable end, but it was probably not needed.
Comments
Thanks for the link. I'd seen this file before but forgot to save it.
270MHz would produce a 60Hz display with 862 pixels/line (min.) and 522 lines, or 882 pixels/line and 510 lines (min.)
I was able to get rogloh's driver to work with the 7" display (Look for the DVI initialization, which is commented out, I believe):
I'm still working out the regions that are used (4 in the example)... Modifying the code around what gets displayed (text, vs graphics, cursor, etc...) still had me a bit confused, but I was able to put some text onto the screen other than the examples
dgately
NOTE: I used KISSlicer to create a .gcode for my printer (thanks to Jonathan Dummer)... It came out with a really high-grade object!
The .stl file is attached (zipped).
dgately
I have the same trouble the screen go blue and then off.
After a while i notice my hdmi cable was not wel plugged in the screen
dumb
Wondering if one of those right angle hdmi adapters will work there...
I like it. Great job. I may print one for mine when I pick up a 3D printer.