Raspberry Pi Pico VGA video output using only resistors

  Рет қаралды 92,964

Robin Grosset

Robin Grosset

Күн бұрын

Пікірлер: 171
@mk6595
@mk6595 2 жыл бұрын
Using standard resistor values: two 1k in parallel = 500 ohms two 1k in series = 2k 1.8k + 2.2k in series = 4k 3.3k + 4.7k in series = 8k
@larrybud
@larrybud Жыл бұрын
I'm thinking just some trimmer pots.
@duckyblenderold
@duckyblenderold Жыл бұрын
@@larrybudyou’re gonna need a lot of them
@botlarry4437
@botlarry4437 3 жыл бұрын
Ok good weve learnt how to blink the led now lets try building a VGA driver
@spotterinc.engineering5207
@spotterinc.engineering5207 3 жыл бұрын
Good to see a RP Pico project that is more than a blinking LED. Thanks for making this one. I hope we will see more complex projects like this from you!! :) Plus it is great to see a C++ project too.
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Glad you like it! Let me know if have any ideas for content you want to see.
@paulmaydaynight9925
@paulmaydaynight9925 3 жыл бұрын
@@robingrosset6941 an idea, i still want someone to Actually Try to add the original (everspin now) MR10Q010, 1Mb QSPI MRAM chip and bench it against the generic slower psram, it should be good for vga buffers running in it's QSPI Read and Write at 52MB/sec mode, it even has real original 'run in place' mode. i dont know if the Pico has the 4 QSPI useable spare pins though !
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Hi Paul, the Pico already has an on-board 2MByte (16M bit) QSPI Flash which is speed matched to the CPU so it can do 66MB/s. I can try benching that if you are interested to see if its running full speed but I think this is likely to be faster than adding an additional external QSPI flash. The data sheet I found for the onboard flash is here www.mouser.ca/datasheet/2/949/w25q16jv_spi_revg_03222018_plus-1489727.pdf
@paulmaydaynight9925
@paulmaydaynight9925 3 жыл бұрын
@@robingrosset6941 www.mouser.co.uk/datasheet/2/144/MR10Q010_Datasheet-1218962.pdf ...The Write Data Bytes (WRITE) command allows data bytes to be written starting at an address specified by the 24-bit address. The data bytes are written sequentially in memory until the write operation is terminated by bringing CS high. The entire memory can be written in a single command. The address counter will roll over to 0000h when the address reaches the top of memory. MRAM is a random access memory rather than a page, sector, or block organized memory so it is ideal for both program and data storage. Unlike EEPROM or Flash Memory, MRAM can write data bytes continuously at its maximum rated clock speed without write delays or data polling. Back to back WRITE commands to any random location in memory can be executed without write delay. ...
@robingrosset6941
@robingrosset6941 3 жыл бұрын
@@paulmaydaynight9925 I get it now. Let me figure that out. The use case is something like fast buffering of video data?
@Wander4P
@Wander4P 2 жыл бұрын
You can use a R2R resistor ladder as the voltage divider for the 5 bit DAC just as well
@Wander4P
@Wander4P 2 жыл бұрын
If you're wondering why you can only get certain resistor values, electronic components are standardized to a logarithmic scale of values known as E series.
@iwir3d
@iwir3d 3 жыл бұрын
Oh wow, I was just watching Ben Eater's video on building a graphic's card and was thinking wow that's alot of IC's I bet the pico can handle that.... then I see this... Well done!
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Pico is amazing. Power + Price is great.
@haakonness
@haakonness 3 жыл бұрын
@@robingrosset6941 Almost as good as ESP32 with dual core 240mhz
@eanerickson8915
@eanerickson8915 3 жыл бұрын
You can do everything in software, its called bit banging. Eventually your processor wont be able to do anything because it's costly.
@paulmaydaynight9925
@paulmaydaynight9925 3 жыл бұрын
@@eanerickson8915 well.... the obvious progression is (to me) pick an old well documented pci card found in every old pc/draw/dump reclaim all the components then do a Ben Eater to build it back up on a small breadboard/diy pcway pcb in different simple configurations where you use its bits as you wish...
@tunahankaratay1523
@tunahankaratay1523 3 жыл бұрын
@@haakonness It's actually better for display interfaces thanks to its PIO. Note that the RP2040 can also overclock to as much as 420MHz.
@lawrencedoliveiro9104
@lawrencedoliveiro9104 3 жыл бұрын
4:34 Put two 1KΩ resistors in parallel? Similar 2 or 4 2KΩ resistors in series to make 4KΩ and 8KΩ?
@pavloskairis9994
@pavloskairis9994 3 жыл бұрын
@3:52 please correct your notes, the last two lines have 4.02k and 8.06k resistors.
@robingrosset6941
@robingrosset6941 3 жыл бұрын
KZbin does not allow videos to be modified once published. The video description contains updated values highlighting the error and there is also an updated video here with the full schematic with correct resistor values. The updated video is linked with a card into the this video at the right timecode kzbin.info/www/bejne/n2KkqKenhdmZqLM. if you click the information button at the timecode you indicate it takes you there.
@lovemadeinjapan
@lovemadeinjapan 5 ай бұрын
I need this but then 2+2+2 bit for 64 colours, and the 7th bit for SYNC, and then 320x240 on PAL 50i.
@kaiyofox
@kaiyofox Ай бұрын
thank you much, Although if you might have any thoughts on the following: I am having issues where despite wiring 1 pin of each R,G,B So 1 on GP0, 1 on GP6, etc And the only color I get is red, any thoughts? Im thinking its triggering every other pin but the ones I have wired up, but not even the test pattern shows more than just Red (and black)
@michaelclement1337
@michaelclement1337 3 жыл бұрын
I recall a long time ago there was a computer that's CPU spent its entire resource running the video and program code was only executed during the blanking time. I forget the brand/model but 1MHZ was a common speed in those days
@robingrosset6941
@robingrosset6941 3 жыл бұрын
I remember the ZX81 which was my first computer. In had fast and slow modes. In fast mode it would not bother updating the screen at all so it would go blank until it finished.
@michaelclement1337
@michaelclement1337 3 жыл бұрын
@@robingrosset6941 yes that’s right the ZX80/81, your got a good memory
@paulmaydaynight9925
@paulmaydaynight9925 3 жыл бұрын
@@robingrosset6941 ^_~ perhaps someone will add something pico to this kit for fun. Can You Build A Brand New ZX Spectrum From 100% New Parts? kzbin.info/www/bejne/jHeve3-uebl4obM
@robingrosset6941
@robingrosset6941 3 жыл бұрын
@@paulmaydaynight9925 I admit I had an eBay accident and have 4 ZX spectrums in my basement and quite a few ZX81s. I am pretty sure a Pico could emulate a ZX81. :-)
@shreyasmurali2836
@shreyasmurali2836 Жыл бұрын
Nicely done. I can see (from the amazon link) your display's native resolution is 1024x600 pixels. Could you tell me what screen resolution and refresh rate were the demos driving the VGA signal at ? Do the display controllers auto-scale up/down the incoming signal's resolution to fit the display or throws error out (like flicker/blank screen) when there is a mismatch ?
@jensschroder8214
@jensschroder8214 3 жыл бұрын
2x 1k Ohm in parallel make 500 Ohm. 2x 1k in serial make 2k. 2x 8,1k parallel make 4k
@dieSpinnt
@dieSpinnt 3 жыл бұрын
For 2 parallel resistors R=(R1*R2)/(R1+R2), so your last calculation is wrong. It is 4.05k For n parallel resistors 1/R = 1/R1 + 1/R2 + 1/R3 ... + 1/Rn
@derekjc777
@derekjc777 3 жыл бұрын
@@dieSpinnt But if R1=R2=…=Rn you just reduce the resistance by n. It’s just Kirchhoff’s laws.
@dieSpinnt
@dieSpinnt 3 жыл бұрын
​@@derekjc777 Sure, Captain Obvious. And LOL, wtf do you think the "special case" formula (the first one I posted) means? The second one is the general Kirchhoff formula for a parallel resistor network. This is your 2n case. P.S.: Your gibberish isn't even a formula ... besides your "reduce" gave me a good laugh, thank you. Very mathematic ... and scientific! :o) P.S.S: It is very boring to repeat basics that are written on page two of every electronics formula collection ... P.S.S.S: And it is all my fault. I should've written: LOOKUP Resistor Networks and Kirchhoff's Law in WIKIPEDIA! This is just a waste of time, here on KZbin, don't you think derekjc? :) Anyway, thanks for your comment.
@paulwomack5866
@paulwomack5866 3 жыл бұрын
It would have been good to see some detail on how you designed and coded this
@zekstra78
@zekstra78 3 жыл бұрын
1K is wide available resistor. For 500 ohms you just put two in paralel, tolerance increases, but hey... :-) It is also easy to make 2K, and 4k as 2.2k+1.8k or 2x 2k or just 4x 1k...
@JarppaGuru
@JarppaGuru Жыл бұрын
1ohm resistor exists you can make MATCH! lol and bcoz 1% from 1ohm is less than 1% 4k you going get real MATCH
@ernestuz
@ernestuz 3 жыл бұрын
Isn't it possible to use a R/2R ladder for the DAC?
@peregreena9046
@peregreena9046 3 жыл бұрын
Yeah, I been wondering the same.
@eFeXuy
@eFeXuy 3 жыл бұрын
Yes
@HamsterSnr
@HamsterSnr 3 жыл бұрын
Then only need 1k and 2k resistors.
@paulmaydaynight9925
@paulmaydaynight9925 3 жыл бұрын
it's a shame they didn't build it against the M4 but still a useful board. fun fact: the original (integer) 25Hz/50Hz "SVGA" was a UK Inmos invented chip/pcb for the transputer that IBM licenced (along with the other inmos IP, japan got the original sram and related IP as you might expect today) for the x86 and never quite used it to it's fullest potential.
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Agree, M4 would also have floating point unit... I think perhaps this was a price decision. Its still a good board for $4 in my opinion.
@almosh3271
@almosh3271 3 жыл бұрын
Although I wouldn't build such a circuit, but your explanation were great and right to the point. I truly enjoyed watching this informative clip very much. Keep up the good work.
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Thanks for that. The circuit design is not mine its from the Hardware Design Guide for RP2040. datasheets.raspberrypi.org/rp2040/hardware-design-with-rp2040.pdf One piece thats maybe not clear in the diagram is the 75 ohm impedance inside the VGA monitor going to ground which is what makes the DAC produce the right-ish voltage levels.
@PhG1961
@PhG1961 3 жыл бұрын
I'm impressed ! Great ingenuity !
@PeetHobby
@PeetHobby 2 жыл бұрын
5:50 Meter says 8.14K not 8.1R
@MultiCraftTube
@MultiCraftTube 3 жыл бұрын
Great project! A cool feature of the Pico are the fast 12 bit ADCs. Gonna build an USB oscilloscope for audio circuit debugging.
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Cool idea!
@kreynolds1123
@kreynolds1123 3 жыл бұрын
In theory can a circuit be made with two 12 bit ADC such that you effectivly have a 24 ADC?
@kreynolds1123
@kreynolds1123 3 жыл бұрын
a fair LC meter would be cool too.
@MultiCraftTube
@MultiCraftTube 3 жыл бұрын
@@kreynolds1123 you could for shure hack around to gain some extra bits. But the circuit would be way more complicated (and slower) than an extra ADC IC. But as 12 bit is already beyond mV accuracy, why would you need it anyways 😉
@elofos0815
@elofos0815 3 жыл бұрын
6:15 8 Ohm or 8k Ohm? and yes 1k two parallel = 500 Ohm
@robingrosset6941
@robingrosset6941 3 жыл бұрын
8k ohm see this update video kzbin.info/www/bejne/n2KkqKenhdmZqLM
@jyvben1520
@jyvben1520 3 жыл бұрын
luckiliy i have several vga to hdmi convertors, still waiting for the pico though
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Seems they sold out quickly. At the price it's not surprising but hopefully more will be available soon.
@tmkkka8093
@tmkkka8093 3 жыл бұрын
Converters? Go native digital, the Pico can handle it (pico hdmi sock)
@maximus6884
@maximus6884 2 жыл бұрын
How can we program the Rpi Pico directly via the terminal without pressing the button always?
@p43lz3r
@p43lz3r Жыл бұрын
Great, thanks a lot for sharing this!!
@dieSpinnt
@dieSpinnt 3 жыл бұрын
Nice Project, subscribed. The ATmega32U4 comparison is not meant to be serious, is it? 32 against 8-bit. Apples and pears:) Better choose another ARM M0 like STM32F0xx. Oh wait, Dual Core and 133MHz. So better choose something like STM32F446 for the comparison. For me you don't need a comparison at all. The right tool for the right job ... what actually translates to experience and RTFM many, many times. Keep up the good work:)
@robingrosset6941
@robingrosset6941 3 жыл бұрын
there are a few microcontrollers like ESP32, STM32 and Teensy 4.0 which are more comparable. I wanted to make the point about the pixel clock and the price comparison MSRP for the Arduino vs Pico. Arduino are coming out with an RP2040 based board soon so I think we will see a lot more RP2040 boards.
@matiasvaldothebird4043
@matiasvaldothebird4043 Жыл бұрын
hi, vsynk and Hsynk resistor?
@davideather5979
@davideather5979 Жыл бұрын
use an r2-r network fot the dac.
@noutram1000
@noutram1000 3 жыл бұрын
Hi, it would be great to dig a little deeper into how the Pico code generates those sync signals, which I'm guessing uses the new programmable i/o, and puts out a bitmap...
@deanhuff123
@deanhuff123 3 жыл бұрын
Really neat demo, thanks for making this video. Question, I've been working on an EINK type writer project and found that SPI to a parital refresh eink display is slower than advertised. There are some Eink displays that support the I80 protocol (which appears to be a 24 pin interface), can the pico support this?
@robingrosset6941
@robingrosset6941 3 жыл бұрын
So Pico has 26 usable I/Os (actually more if you use all RP2040 pins) but using all them is likely not great for a project as you usually need to use pins for other things too. I looked up I80 protocol, I've never used it but its basically a parallel interface typically 8 or 16 bits wide sometimes 18 bits wide. It has 3 or 5 pins for control lines. I think I would try using a 8 bit or 16 bit interface, the pico should be good for that depending on how many other pins you need. I can't think of a reason it would not work but I don't know of a library for I80.
@tonyennis1787
@tonyennis1787 3 жыл бұрын
So thanks for the VGA resiter ladder information. Where did you get the horizontal and vertical timing signals?
@robingrosset6941
@robingrosset6941 3 жыл бұрын
the timing information is in the pico-extras scanline project here github.com/raspberrypi/pico-extras/blob/master/src/common/pico_scanvideo/vga_modes.c This tells you the supported modes. Is this what you were asking?
@tonyennis1787
@tonyennis1787 3 жыл бұрын
​@@robingrosset6941 Yah I think so. Back in the "Cheap Video Cookbook" days, getting the h and v timing right was always "a matter of great nicety".
@sirsinnes
@sirsinnes 3 жыл бұрын
How high do you think you could push the pixel clock with this? I am thinking that the Pico might be just the thing to use as a test pattern generator for CRT televisions, which ties into another project of mine. I'd be using NTSC timings instead of VGA, and I'd be looking at making a single luminance signal with sync instead of RGBHV (no chroma necessary), but what I'd really like is to be able to use a wide variety of pixel clocks as the basis for a TVL generator. Any thoughts would be appreciated!
@massimookissed1023
@massimookissed1023 Жыл бұрын
CRT TV luminance is under 6MHz, so a Pico that can achieve 25MHz VGA could easily do TV.
@syrus3k
@syrus3k Жыл бұрын
Also note zx spectrum and BBC micro Pico emulators exist
@lawrencedoliveiro9104
@lawrencedoliveiro9104 3 жыл бұрын
10:32 I think those are Eben Upton’s head.
@abymohanan9403
@abymohanan9403 3 жыл бұрын
Thank you so much for this video
@jugnu361
@jugnu361 3 жыл бұрын
How To Debug uisng ST Link and SWD pins
@untodesu
@untodesu 2 жыл бұрын
Soooo Pico could be used as a stub for a VGA card. Got it.
@RockyBMusic
@RockyBMusic 2 жыл бұрын
well, yes, nice job. maybe it would have been easier if you had used an R2R digital-to-analog converter for the circuit. In this case, only 2 resistance types would have been needed
@CatalynnBboy
@CatalynnBboy 3 жыл бұрын
Well done!
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Thanks!
@SoundSpeeding
@SoundSpeeding 3 жыл бұрын
You reckon you could handle an HD video signal?
@robingrosset6941
@robingrosset6941 3 жыл бұрын
A few folks have got 1080i to work for vga and 720p video. Here is an example twitter.com/mdb036/status/1374496642112495619?s=21
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Here is 720p video on a pico twitter.com/mdb036/status/1366102403632742404?s=21
@facist_monk
@facist_monk 3 жыл бұрын
good video, is there any way to turn old VGA monitors into a digital clock display using picopi, i know it will consume more power but just for a school project
@HamsterSnr
@HamsterSnr 3 жыл бұрын
What about screen resolution achieved, can indicate?
@robingrosset6941
@robingrosset6941 3 жыл бұрын
This setup will go to 1080p resolution that’s the maximum I have seen with a pico overclocked. I think this is also the highest VGA can really do.
@goatmeal5779
@goatmeal5779 2 жыл бұрын
What would happen if I used no resistors? Would the video just be unstable?
@robingrosset6941
@robingrosset6941 2 жыл бұрын
Mnn interesting. The colour is an analog signal on each of R,G and B lines. 0 volts is black and 0.7 volts is bright red or green or blue. If all RGB lines are 0.7 v then the screen pixel is white, each signal at full brightness. You at least need something like a resistor to scale the voltages down from 3.3v of the Pico’s I/O line to 0.7 otherwise you might damage your VGA display. Minimally you need one resistor per colour line for each of RGB and you could just use one Pico I/O per colour. This actually gets you 8 colours (including black and white) which is a very retro 80’s computer colour palette. The HSYNC and VSYNC lines are the ones that make the picture stable, these are TTL logic so 5v is what is expected, there is no need for scaling the voltage on these lines, no resistors needed. The pico’s 3.3v is enough to drive most VGA displays (CMOS logic level rather than TTL but most monitors like CMOS levels anyway) Hope this helps
@goatmeal5779
@goatmeal5779 2 жыл бұрын
@@robingrosset6941 Thanks for replying, I have driven a VGA monitor with an Arduino Uno and no resistors. So maybe it'll work fine with the the Pico but I probably won't take any risks. Good to know
@lovemadeinjapan
@lovemadeinjapan 5 ай бұрын
@@goatmeal5779 What resolution can an Uno do? I calculated that for 320x240 on PAL/NTSC you need a 6MHz pixel clock. Can the UNO output a different 8-bit value from a buffer in RAM on every clock pulse?
@alejandroalzatesanchez
@alejandroalzatesanchez 3 жыл бұрын
what about composite?
@System-1541
@System-1541 2 жыл бұрын
What part of Canada are you from? Your accent sounds like you're from the UK.
@robingrosset6941
@robingrosset6941 2 жыл бұрын
I’m from Scotland originally but I live in Ottawa, Ontario now.
@1toneboy
@1toneboy 3 жыл бұрын
Any way to make a crude PCI graphics card for a motherboard?
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Thats an interesting idea.... mmmnnn...
@luisinistrosa4399
@luisinistrosa4399 3 жыл бұрын
Thank you so much excelente video felicitaciones
@JamesPeters98
@JamesPeters98 3 жыл бұрын
Hey, I don't suppose you managed to get this running on a modern LCD monitor through D-Sub? I just got the official VGA demo board and can't seem to get any of the demos to run on it.
@robingrosset6941
@robingrosset6941 3 жыл бұрын
I did, see this video kzbin.info/www/bejne/r5u6Z6eGrJmUpNk I connected it to a new Asus 28" 2K monitor via D-Sub and it worked really well. I have just ordered a VGA demo board myself from Pimoroni. (just came back in stock) so I was going to try that out. Which board do you have?
@ElectronicIngDiaz0786
@ElectronicIngDiaz0786 3 жыл бұрын
Excellent video. I have a question: ¿What is the ide, you using for programing the raspberry pi pico board?
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Its a text editor called VSCode. code.visualstudio.com/ It is really good. Works with lots of different languages and will run on Linux, MacOS and Windows.
@0toleranz
@0toleranz 3 жыл бұрын
An easier to built and more accurate resistor ladder would be an R2R-Ladder for which you only need two resistor values which basically have to be R and double that value which is more accurate and linear especial when using more bits per pixels for higher color depth but requires some more resistors. Here you can find an example and some theory behind it hackaday.com/2015/11/05/logic-noise-digital-to-analog-with-an-r-2r-dac/
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Totally, yup. I used an 2R2 ladder in a project for a sound board DAC a few months ago here is the link kzbin.info/www/bejne/inOpcmWul6idkJY It uses a 10K and 20K R2R for an Audio DAC. In the Pico VGA video I was copying the hardware design guide as this is what is being used in boards like those on this link www.cnx-software.com/2021/02/03/open-hardware-raspberry-pi-pico-vga-sd-card-and-audio-demo-board-to-support-qvga-video-playback/ I chose this also because it supports the demo code from Raspberry Pi Foundation for VGA.
@amyshaw893
@amyshaw893 3 жыл бұрын
I bet bitluni is happy right now
@SinanAkkoyun
@SinanAkkoyun 3 жыл бұрын
Was he mentioned?
@theengineer9910
@theengineer9910 3 жыл бұрын
so far i have been able to change the color on the example minimal scanvideo example to give a blue screen instead of different colors each scanline. The code is easy to follow but damn there is alot happening. I want to change the sprite on the sprite example and change positions based on a pin input. I gotta get better with my C knowledge. Embedded systems is as deep as i go with software.
@theengineer9910
@theengineer9910 3 жыл бұрын
decreasing the number of heads on the floating head example got rid of the distortion !!!!
@ndrinks5550
@ndrinks5550 Жыл бұрын
So porting Second Reality to it isn't a stupid idea.. If lookup tables are good enough for the Future Crew then they're good enough for me! Now where did I put my VGA monitor from 1993...
@JernD
@JernD 3 жыл бұрын
Nice video! What would happen if you ran the vga signal using only one resistor ladder (bridged into R, G and B)?
@robingrosset6941
@robingrosset6941 3 жыл бұрын
You can do this... you would end up with a grey scale if you put into all RGB lines. Or you could pick a colour with some resistors and end up with a graduated shade of that colour. This project uses 15 GPIO pins for 32768 colours but using say 6 pins would get you 64 colours and lots more free pins for other things. Or simply 3 pins for red, green , blue and mixture of the 3 pin colours which would give magenta, cyan, yellow and white.
@DmitryKandiner
@DmitryKandiner 3 жыл бұрын
@@robingrosset6941 using 1 bit per color will bring something between the CGA and EGA, with 8 colors.
@robingrosset6941
@robingrosset6941 3 жыл бұрын
@@DmitryKandiner true this would be enough to emulate retro computers which had 8 bit graphics. Lots of 70s and 80s home computers and video arcade games used 8 bit colour like this.
@DmitryKandiner
@DmitryKandiner 3 жыл бұрын
@@robingrosset6941 8 colors are not 8 bits, it's much simpler. Eight bits will bring some 256 colors, a true VGA.
@robingrosset6941
@robingrosset6941 3 жыл бұрын
@@DmitryKandiner very true, 8 bit computers like the ZX Spectrum only had 1 bits per colour, so 3 bits = 8 colours … 2^3 :-)
@KroceBow
@KroceBow 3 жыл бұрын
Very nice video! Do you think it would be possible to add a w5500 to the pico and receive an image(480px * 480px) over the network to output to to vga? Is the Pico under powered for that?
@larrystone654
@larrystone654 3 жыл бұрын
Can this be done with MicroPython?
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Hi Larry, so I have seen MicroPython projects for the Pico but only the simple examples like Blink and SPI, PWM ... nothing like VGA... the VGA code has critical timing sections so I think C might be required for those. I expect in time they will produce MicroPython versions which just call the C code docs.micropython.org/en/latest/develop/cmodules.html
@larrystone654
@larrystone654 3 жыл бұрын
@@robingrosset6941 Thank you. I’ll try it in C (as soon as I get my hands on a Pico!). Great video.
@thingyee1118
@thingyee1118 3 жыл бұрын
What pen do you use?
@robingrosset6941
@robingrosset6941 3 жыл бұрын
It's a random pen from a pot of pens in my house. I think it's a BIC pen, says "Grip Roller ".
@KarstenJohansson
@KarstenJohansson 3 жыл бұрын
@@robingrosset6941 I think every household has one. Sometimes we do "spring cleaning" and have to check them all to make sure they're still working. Nobody needs that many pens, but as is usually the case, you'll always have too many, or you simply can't find even one. Never in between.
@Cptnbond
@Cptnbond 3 жыл бұрын
Why does every YT compare with old Arduino boards, at least compare with e.g. the Blue Pill (very much same cost), based on STM32F103 (Arm M1-core), whereas Pico use two Arm M0+ cores.
@robingrosset6941
@robingrosset6941 3 жыл бұрын
I was not benchmarking original Arduino vs Pico in the video. The point of explaining the clock differences relative to Arduino is to talk about pixel clock which is what limits the resolutions you can generate and what puts real VGA out of range of something like an Arduino. I have a Blue Pill I can do a benchmark but Andreas already covered it. kzbin.info/www/bejne/mYerdJ-il7NmmLM&vl=en
@karlinet
@karlinet 2 жыл бұрын
Gracias por compartir. ¡Suscrito! ☺️
@eR-MIK
@eR-MIK 2 жыл бұрын
5-bit DAC with 5% resistors? 3% is required for 5-bit! The DAC is built from the R-2R ladder!
@Theineluctable_SOME_CANT
@Theineluctable_SOME_CANT 2 жыл бұрын
Great content! Just what I was looking for.
@MichaelKingsfordGray
@MichaelKingsfordGray 2 жыл бұрын
Some can't summon the minimal courage to use their real adult name.
@artesalve5965
@artesalve5965 2 жыл бұрын
hi would it be possible to send a 640x480 linux desktop + audio to the pico + monitor (adding a wifi module to the pico)?
@alrichmond4341
@alrichmond4341 3 жыл бұрын
Impressive.
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Thanks!
@mspeir
@mspeir 3 жыл бұрын
That gender changer idea is brilliant! 😳👍👍
@harrysvensson2610
@harrysvensson2610 Жыл бұрын
10:02 ah yes, normal speed. I too run at normal speed.
@JarppaGuru
@JarppaGuru Жыл бұрын
why cant we just use 2x1ohm paraller 2x1ohm series 3x1ohm series 4x1ohm series 8x1ohm series it will be more in scale than try match these and have more than 1% error for 8k thats 8oms LOL 499ohm 1000ohm 2000ohm 4020ohm 8060 ohm
@YoutubeBorkedMyOldHandle_why
@YoutubeBorkedMyOldHandle_why 3 жыл бұрын
Good intro ... you seem excited about the pico. I appreciate your effort. Probably I'll buy a pico at some point, though I'm not quite so convinced. Everyone forgets to add shipping when they speak of price. I'm about 100 km east of Ottawa, which is significant because Buyapi.ca wants $11 for shipping outside of Ottawa ($6 within Ottawa.) This is the cheapest shipping option. CanaKit.com charges $13 for shipping. One way or the other, the final price is a lot more than the implied $5.25. (Both places currently out of stock.) Compare this for example, with the 38 pin esp32s board running at 240 MHz, which has built in wifi, and typically sells on AliExpress for about $5 CAD plus $1.40 shipping. (Roughly 1/3 the real cost of a pico.) This board can also handle vga, micropython, and almost everything the pico does. I've tried these things successfully on several esp32 boards. Bottom line, the pico seems like a good first attempt at a micro-controller for the 'Raspberry Pi Foundation' and I wish them well, but it is not reasonable to compare the pico to 8 bit Atmels and the pico is already up against some serious competition.
@robingrosset6941
@robingrosset6941 3 жыл бұрын
It is true. You can't ship anything in Canada or US for the shipping costs from places like AliExpress. This perhaps reflect postal service rather than the product though. I agree shipping is an issue when comparing prices. It is true for places like DigiKey that small purchases make no sense as shipping is always the killer. I figure I have to buy at least $60 worth of components at a time to make it worth the $15 delivery but it does come very quickly. I do like the documentation for the Pico. It is good and the momentum of new projects being built right now is growing. Also note the Pico clock speed is configurable and Pico has been clocked up to 270 MHz on its 2 cores. Raspberry Pi foundation has also started shipping bare RP2040 chips to places like AdaFruit so I think you will see variants of the RP2040 boards coming soon. Like AdaFruit's HUZZAH32 for ESP32 based boards twitter.com/EbenUpton/status/1362171557469179907 The difference where I think the Pico may be really interesting is the support and community that builds around these products to make it easier for makers to get started and create new things. On the comparison to 8 bit Atmels or ESP32s; I have lost count of how many Arduinos and ESP32s I have. Arduino started something important, they made their products very accessible to everyone. The whole market for clones of Arduino boards exists because of the demand created by the community. ESP32s can be programmed inside Arduino IDE and before Arduino there were very few choices for makers without getting into expensive SDKs and prototype systems. If you take shipping out of the picture and buy a branded Arduino, ESP32 (AdaFruit branded HUZZAH32) and Pico from BuyAPi.ca, they sell all three, you can get many Picos for the price of an Arduino or the ESP32. And this is why I think the comparison is fair. If the Raspberry Pi foundation can build the same community support that Arduino has built then I think the Pico could become something special. Time will tell but it's looking very promising.
@YoutubeBorkedMyOldHandle_why
@YoutubeBorkedMyOldHandle_why 3 жыл бұрын
@@robingrosset6941 I totally agree with you on most points, especially that this is mostly about community. This is why 8 bit Arduinos and their awful IDE are still hugely popular. Though I have a few observations: The shipping costs on AliExpress need to be taken with a grain of salt, and simply calculated into the total price. As you suggest, I am convinced that Canada has just about the worst postal 'service' in the world. What I often do is spend a lot of time looking for a reliable seller who can provide multiple items of interest, and doesn't gouge on shipping. Then I'll place a large order, for a dozen or so different items, and pay for the expensive (more reliable) shipping. Still, I can't help noticing that it is possible to purchase the pi pico on AliExpress (in stock.) However the best price is about $16 CND + $4 shipping, (compared with ESP32 at around $5 + $2), which sort of implies that picos are intended to sell for about this price. Years ago, I bought a Raspberry pi (within an hour of when they first became available), because I was totally sold on the concept. I showed it to the guy at our local computer store. He just scoffed and suggested that it would never catch on. I'm tempted to go back again to see if he's perhaps changed his tune. So, I'm not down on the pico. Really, I hope they do well; probably they will. It's always good to have choices. I just like to keep things in perspective.
@massimookissed1023
@massimookissed1023 2 жыл бұрын
2x 1k resistors in parallel will give you 500 ohms.
@duncanwalduck7715
@duncanwalduck7715 3 жыл бұрын
Of course, that "tray" is called a "cut tape" in the industry.
@0LoneTech
@0LoneTech 3 жыл бұрын
Ah yes, the AVR "can't" produce VGA: kzbin.info/www/bejne/qX-moqWvobOMY5I ... this works because VGA doesn't care if you update your values for every "pixel". Unlike DVI/HDMI, the clock isn't an included physical signal; it's reconstructed from the sync signals.
@robingrosset6941
@robingrosset6941 3 жыл бұрын
I agree you can create the sync signals, and then not output every pixel. In this case pico is outputting for each pixel. There are a number of different resolutions the pico can support too which is what makes the pico more interesting for VGA in my opinion github.com/raspberrypi/pico-extras/blob/master/src/common/pico_scanvideo/vga_modes.c
@johnnydepp4114
@johnnydepp4114 3 жыл бұрын
build a c64 emulator with the pico :)
@Alperic27
@Alperic27 3 жыл бұрын
You realize you keep saying ‘8.1 ohm’ ... not K....and even your notes say that, when the PI doc has it at 8k and 4k .... makes the ladder all over the place. All you have to do is read their doc right.
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Yup. KZbin does not allow you to re-upload videos. So there is a card in the video at that point which takes you through to the video with the correction. kzbin.info/www/bejne/n2KkqKenhdmZqLM Also the description describes the correct resistor values.
@Alperic27
@Alperic27 3 жыл бұрын
Yeah ... but no matter what, it is good that you took the time to give visibility to that pico capability.. many people do not read the docs and will only find out about it via videos like yours.
@bigsmoke8492
@bigsmoke8492 3 жыл бұрын
please try to play doom ;)
@thingyee1118
@thingyee1118 3 жыл бұрын
Lol you sound almost British? But you live in USA? Neutral accent lol
@robingrosset6941
@robingrosset6941 3 жыл бұрын
I am British actually born in Scotland but I live in Canada now.
@KarstenJohansson
@KarstenJohansson 3 жыл бұрын
@@robingrosset6941 Proof that Canadians are cool, eh!
@protonjinx
@protonjinx 3 жыл бұрын
I was wondering if he'd ever realise that 2x 1k is 500, but nope... btw, doing vga on an arduino is much cooler
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Thanks for your comment I did think of that but either way requires 2 resistors and both approaches get you within a few percent of the desired value once you consider the manufacturing tolerances. The other thing is 1K are generally more useful than 470 ohm and 33 ohm particularly if you are making R2R DACs (which this is not) but it is why I did not want to use all my 1K resistors, your suggestion would require 9 1K resistors mine uses 3 which is why I chose it. I also have folks who suggested it would be easier/better to make an R2R DAC but I did not have enough 1K and 2K to create all 3 of the 5bit dacs. It would require 15 of each. Which Arduino did you use to do VGA? I’d be interested in what pixel clock you were able to achieve, video link if you have one.
@robingrosset6941
@robingrosset6941 3 жыл бұрын
Oh wait I found one kzbin.info/www/bejne/oIbSg2h_eKiYpqM that is cool. Monochrome and require an extra IC, but still pretty cool. The nice thing about Pico VGA is you have up to HD resolution with 15 bit colour and entirely another core running at ~300 mhz to do other things which is how you can build a BBC model B or Spectrum emulators with it.
@jarisipilainen3875
@jarisipilainen3875 3 жыл бұрын
we allready had parallax propeller with 8 cores or whatever. its free if allready have no need buy 4buck more lol xD. pico v2 coming.. or someone else do
@robingrosset6941
@robingrosset6941 3 жыл бұрын
I used a parallax Propeller (2 actually one in the screen for VGA and one as the IO interface) for my Apple 1 clone project 6 years ago.. kzbin.info/www/bejne/jZ3CqXd7ZpaSZqM. The propeller is cool with its 8 cogs but it had to be overclocked to get to USB 2.0 speeds and the programming model with Spin is kinda specialized. I do have some propeller chips lying around but even a bare propeller chip not on a board is $8. Makes you wonder how Raspberry Pi can do it for $4. Not for profit I guess.
@child_of_god_
@child_of_god_ 3 жыл бұрын
But arduino nano is cloned in china and sold for less than $2
@robingrosset6941
@robingrosset6941 3 жыл бұрын
I was using the MRRP and current list prices. Pico has only been out for a few weeks.
@JoshCano
@JoshCano 2 жыл бұрын
lol dude, pick an os! /s
@rarob1234
@rarob1234 3 жыл бұрын
I find you uh's and um's very distracting. The rest is, uh, very, um, interesting.
@lordhexon
@lordhexon 2 жыл бұрын
Instead of trying to trow yours words out , dude take breath think about what you want to say to limit the ahh , hmm ,agh , aahh. Its is impossible to listen
@tonysofla
@tonysofla 3 жыл бұрын
1% resistor value seem odd compared to your old standard 470, 1K etc, here is a list of them, slight logarithmic and repeats values by just moving decimal point www.electronicsplanet.ch/en/resistor/e96-series.php
What is VGA and How to Use it With a Raspberry Pi Pico
18:28
Gary Explains
Рет қаралды 57 М.
So Cute 🥰 who is better?
00:15
dednahype
Рет қаралды 19 МЛН
1% vs 100% #beatbox #tiktok
01:10
BeatboxJCOP
Рет қаралды 67 МЛН
Quilt Challenge, No Skills, Just Luck#Funnyfamily #Partygames #Funny
00:32
Family Games Media
Рет қаралды 55 МЛН
Raspberry Pi Pico PIO - Ep. 6 - VGA Video and C/C++
12:29
Life with David
Рет қаралды 19 М.
Raspberry Pi Pico Overclocking, beware there is a catch!
5:02
Robin Grosset
Рет қаралды 17 М.
PicoMiteVGA: Raspberry Pi Pico Boot-to-BASIC Microcomputer
23:58
ExplainingComputers
Рет қаралды 131 М.
Raspberry Pi Pico Audio output
6:27
Robin Grosset
Рет қаралды 37 М.
GVga: Simplified VGA for RPi Pico
19:46
Dr. Francintosh
Рет қаралды 3,5 М.
Raspberry Pi Pico - USB HID Auto Clicker with Circuit Python
11:53
Novaspirit Tech
Рет қаралды 77 М.
Raspberry Pi Pico, HDMI on a breadboard
3:23
Robin Grosset
Рет қаралды 41 М.
Getting Started with Multicore Programming on the Raspberry Pi Pico
11:14
Learn Embedded Systems
Рет қаралды 46 М.