If anyone is coming to this video, I found I kept getting a blank display. But it was actually the wiring that was wrong. Based on the current code in the PicoDVI repo (going by the date of this comment), the wiring is: B+ GP12 B- GP13 CL+ GP14 CL- GP15 R+ GP16 R- GP17 G+ GP18 G- GP19 Assuming you're wiring up as the DIV_Sock is laid out (as per this video).
@reducedlunch22223 жыл бұрын
I am getting into embedded systems heavy and the pico is a great starter for folks. We need more content!
@samuelgreen26043 жыл бұрын
Fascinating!
@robertbaindourov1343 жыл бұрын
You're awesome.
@karersio70623 ай бұрын
it doesnt work for me for some reason. flashed multiple uf2s my monitor isnt even detecting a cable being plugged in
@marko_z_bogdanca3 жыл бұрын
This is awesome! Incredible.
@ryegewalt36402 жыл бұрын
At the very end of your very instructive and well produced video, you commented something about connecting to the DVI of the monitor vs connecting to the AC monitor. Somehow I can't get my 80 year old vacuum tube mind around what you were referring to. Could you clarify just a bit if it isn't too much trouble? I think I checked all of the other comments but..... Thanks
@robingrosset69412 жыл бұрын
Hi Rye, So what I found is that connecting to an HDMI port rather than a DVI worked better. DVI seems much more picky about resolutions etc. So just connected directly to an HDMI port on a modern monitor worked fine. My older DVI monitors did not like the signal so much. I hope this helps.
@VEC7ORlt Жыл бұрын
Huh, that is so cool, BTW do you need to push the data at the 25Mhz clock or there is some leeway in that?
@eFeXuy3 жыл бұрын
Cool, because I can't difenrentiate soldering surface mounted from black magic. It even uses less pins than a 15 bit vga ladder
@suvijks Жыл бұрын
how can we change font size for "dht logging" example?
@ulfrinn87832 жыл бұрын
are you getting a full 60hz out of that at full resolution?
@RaminAssadollahi3 жыл бұрын
okay and now we add the fuzix linux derivate to the mix?
@DiyintheGhetto2 жыл бұрын
I wish there was a arduino version of the code. I would of love to test this out.
@Legoloewe2 жыл бұрын
Arduino + HDMI = IMPOSSIBLE Arduino + VGA = very hard
@joshuavincent78842 жыл бұрын
Arduino probably can't do this, Pi Pico can do it because it has 8 PIO which are basically very fast hardware logic co-processors. They have limited capability but can generate very fast signals
@DiyintheGhetto2 жыл бұрын
@@joshuavincent7884 not the hardware of arduino I’m referring to the code itself. Instead of being in python.
@DiyintheGhetto2 жыл бұрын
@@Legoloewe not the hardware of arduino I’m referring to the code itself. Instead of being in python.
@joshuavincent78842 жыл бұрын
@@DiyintheGhetto this project is written mostly in C not python. Python is likely too slow for this. Also Arduino is not a language it's basically highly abstracted C++
@shafi.j2 жыл бұрын
Resolution full HD can I get And also different Resolution selectable option too need
@studylanguageswithme10903 жыл бұрын
I have been loving your content. I tried searching for the Ethernet connection (without any other modules) on your channel and the general Web but there is nothing. Is it possible? It would be great as the pico does not have Internet connectivity.
@CoCoNutBob Жыл бұрын
Can this be used for the RGB to HDMI project instead of a Pi Zero?
@robingrosset6941 Жыл бұрын
Yeah, at least you can buy a pico these days. I tried to do some composite video (monochrome classic mac) to HDMI at one point. It half worked twitter.com/robingrosset/status/1401535750588485632?s=20 With RGB the Pico only has limit RAM so the resolution and colour depth are one issue. I could not quite get the pico to sync precisely with the signal but that might just be me not being good at I/O programming these things.
@therealpepeu Жыл бұрын
Oooh! Impressive! :OD
@samdavies2412 жыл бұрын
This is great, I'm trying my best to get it working but all i get is a blank screen. I've added the 5v line to the separate red wire but still nothing, do I need to change any settings before compiling?
@svendevarennes5202 жыл бұрын
Did you get it working?
@allene503 жыл бұрын
Where is the example code? The software link goes to the hardware link
@robingrosset69413 жыл бұрын
Here is the link to the Software github.com/Wren6991/PicoDVI
@SoundSpeeding3 жыл бұрын
How would you get an HDMI input into a Raspberry Pico instead of HDMI out?
@robingrosset69413 жыл бұрын
It’s basically TMDS signalling, so 3 data lines and one click line each as differential pairs. Minimum clock is 25Mhz, going up to 350Mhz at 1080p . There is a logic analyzer demo application for the pico and you can run the Peripherial IO at full clock speed. I think it might be possible if there is an easy way to decode to differential pairs into a simple logic level. I tried decoding monochrome video signal from an old Mac with the logic analyzer example and it kinda worked video here twitter.com/robingrosset/status/1401535750588485632?s=21 At 1080p resolution you will struggle to process the data rate with a pico. You can only get 320x240 full colour bitmap image in RAM so you could not capture a full frame without storing it somewhere else.
@ewalk1533 жыл бұрын
Robin, this video was really helpful and I've successfully got a video output (my monitor required the 5v line of the HDMI cable to be driven). Oddly, my black and white colors are off. On my display, black is yellow and white is a dark blue. Did you encounter this with your strange colors?
@ewalk1533 жыл бұрын
Ah, it turns out I had the d1 and d2 pin pairs the wrong way around. Again wonderful tutorial.
@robingrosset69413 жыл бұрын
Yeah I got that combination. I think I did everything possible wrong before I got it right :-) looks like you figured it out which is cool. Good luck with it!
@knghtbrd3 жыл бұрын
@@robingrosset6941 Seems to me the right way to get this right would be to feed it grayscale so you can fiddle with the pairs to get proper grayscale, then feed it reds, then greens, then blues. That should sort out the channels pretty methodically.
@suvijks Жыл бұрын
how to increase font size for "dht logging" application ? can anyone please help?
@Catmengi_2g2b3 жыл бұрын
What resolution of this hdmi gpio
@robingrosset69413 жыл бұрын
No worries. The resolution was 640x480 at 60Hz the actual resolution of the picture is 320x240 but it’s scaled to fill the whole image.
@mathewhair28923 жыл бұрын
arduino library would be nice
@nicosb12 Жыл бұрын
Will this work in a ESP32?
@urnoob55289 ай бұрын
no esp32 doesnt have pio
@CharlesSibbald3 жыл бұрын
very cool, were you able to get this working with a capacitive touch HDMI screen ?
@paarthsstudio2 жыл бұрын
nope, touch screens need more pins, you'll need to figure that out
@meneerjansen002 жыл бұрын
This may be a stupid question, but will it work on an HDMI television? Or *only* on a DVI monitor?
@robingrosset69412 жыл бұрын
My experience is it works better on HDMI televisions than DVI-D monitors, for some reason. DVI-D is the same signals to HDMI as far as I can tell.
@meneerjansen002 жыл бұрын
@@robingrosset6941 Thanks! I'd like to buy a Pico Pi to connect it to a small portable HDMI screen.
@yoonsikp3 жыл бұрын
Whats the max resolution and refresh rate?
@robingrosset69413 жыл бұрын
In the video this is 640x480 @ 60Hz but there are a lot of different modes. 720p is also possible @ 30Hz. All the currently supported modes are in this file github.com/Wren6991/PicoDVI/blob/master/software/libdvi/dvi_timing.c
@GnuReligion3 жыл бұрын
Have seen this demo elsewhere. I believe the color palate is a bit limited by RAM. Overclocking, overvolting, and a heat sink may be necessary for 720p@30.
@hitech4442 жыл бұрын
Question: Can I use it along with Geoff's MMBasic, BASIC Interpreter? If yes, are there any restrictions in my programs due to the hardware add-on?
@harrytsang15012 жыл бұрын
Here's my guesses from reading the pi pico PIO specs: One of the two PIO block is being used here, eight of the GPIO pins are allocated, CPU clock may have to be modified to match the HDMI signal. Other than that, the CPU can focus on creating the image instead of copying the image to HDMI because the PIO state machine is running almost independently to handle only the HDMI
@edgeeffect2 жыл бұрын
Cor! That's a bit "decadent" isn't it? Chopping up an HDMI cable!
@svenmuhlberg766 Жыл бұрын
Hi all, be aware that some HDMI cable manufacturer don't use correct color pairs for the signals... for example mine had the clock pair on blue instead brown. So checkout pinout yourself :)
@siriokds3 жыл бұрын
Hi. Why 8x 270ohm?
@robingrosset69413 жыл бұрын
Hi, There are 4 differential pairs in a DVI-D signal. The specification for DVI signals is here glenwing.github.io/docs/DVI-1.0.pdf page 33 is where the relevant section starts,. So the DVI-D receiver in your monitor has 50 ohm pull up resistors to 3.3v . While the maximum voltage is 3.3v for DVI the signal is transmitted using the differential voltage of the pairs. When the pico pin is high no current flows as both ends are at 3.3v when the pico pin is low current flows from monitor to the pico. The pico is acting as a current sink. The pins can sink up to 16mA so 270 ohm resistor you get about 10mA of current flowing when the pico pin is low. According to the DVI spec the Vidiff which is the peak to peak difference at the receiver should be between 150 mV and 1200 mV. So with a 270 ohm at the transmitter and a 50 ohm at the receiver the voltage between high and low at the receiver should be ~500mV this is the single ended swing. So its twice this value is the peak to peak difference of the pair so again this is in spec for DVI-D. Luke Wren has a good explanation of the circuit on his GitHub repo here and the testing he did of the source eye diagram shows the circuit is passing the DVI-D/HMDI specs. github.com/Wren6991/PicoDVI
@justinbarnes3857 Жыл бұрын
can this be done with pio instead of bit banging?
@drivers99 Жыл бұрын
It does use pio. Check the software link then drill down to software/libdvi/dviserialiser.pio
@urnoob55289 ай бұрын
this is literally possible because it was exactly using pio
@adamsilesia57533 жыл бұрын
The EVOVO monitor does not exist.
@robingrosset69413 жыл бұрын
You are right Evovo does not exist. That’s because its a Eyoyo 10 Inch IPS LCD Monitor, I bought it from Amazon. The great thing is it has HDMI, VGA, Composite and BNC inputs.. www.amazon.ca/Eyoyo-Monitor-1280x800-Resolution-Security/dp/B072N2YGXN