Thanks for going down this ARM/RISC-V compiler rabbit hole across multiple videos. It has been very interesting to see just how much compilers, libraries & settings make a difference. Also happy to see RISC-V is generally holding it's own when it has hardware equivalence to M33. I wouldn't doubt a new, lower cost RISC-V only Pico hits within the next year or so
@@GaryExplains My reasoning is that the Hazard 3 core has near identical integer performance to the M33 but without the licensing costs. This means that a RISC V only Pico would have a much smaller, cheaper core (or they use that space for more memory or features like hardware floating point, etc - after all RISC V is modular) but no licensing costs so instead of $5, it is back down to $4 or even less. Not a big deal for a hobbyist buying one but makes a big difference for Pico chip integration for OEMs & manufacturers. That moves RISC V further up the food chain of adoption and provides an even more accessible high performance (compared to the M0+) tool for hobbyist. For micro controllers it is either price performant for your task or not. It matters little if it is running an ARM, RISC V or Dorito as the chip
This is a common theory however majority of the costs for the boards are the manufacturing costs: the PCB, the RP2350, etc. The licensing costs are negligible. I can guarantee that a RISC-V only Pico will be the same price as an Arm one.
@@GaryExplains Perhaps the licensing cost is a minimal component of overall cost but Hazard 3 core is basically a more performant M0+ and its modular nature means it can be customized to match board needs much more seamlessly and maybe even from existing RISC V designs.Having a bespoke design also means you have a minimum amount of silicon to pay for per product specification. I think these are strong reasons that Raspberry Pi corporation is actively supporting and beginning to demo RISC V usage,even if licensing costs are a small part of that overall improvement in product
This is great, thanks. I don't suppose you know how to build with different levels of optimisation for debug/release type build configurations do you? I'd love an explanation of how to do that...
Wow, the end user experience now is sooooo much better than it was. There's not even any need for Zadig for Pico 2 under Windows, although you still need it for the original Picos. Furthermore, debugging in VS Code with the Debug Probe is an OOB experience now. What an improvement!
Gary nice video :) Question: I have a degree in C (not C++), JAVA and Python (+ HTML/CSS/PHP/SQL). Which (in your experience) programming language is the best (in your opinion) for setting up (from the ground up) a custom script that lets the Pico2 (I have a WIZnet W6100-EVB-Pico2 test board in combination with a Nordic nRF7002-EB Wifi 6 board) act as a webserver...? My use-case: I want to monitor the powerstatus of a flatscreen through an API call and sent out the response via WiFi to a remote SQL database. Is this C or perhaps C++, or micropython or is the Arduino IDE the most successfull route to take?? I hope to hear from you, thx so much in advance. With kind regards, Jeroen Wolf
Interesting, I let it to create sample code, it generated blink.pio file that looks like mix of unknown (pseudo-)assembly (not RISC-V, not x86) and C with unfamiliar functions and then blink_cpp that includes mysterious blink_pio_h that contains byte array blink_program_instructions with this assembly in the comment. It almost feels like each GPIO pin can run a program with 16bit instructions while main cpu can run something completely different (in this case sleep/print hello world). Can't use dots, youtube evaluates it as a domain and erases post.
VsCode is rarely to the rescue. Now I'm fighting on Linux, because it simply refuses to make intellisense work with larger cmake project. However on windows it works fine (which is useless because I don't need Windows binaries)
Look, mama, I'm on a Gary Explains video! Great video, Gary, and kudos for Raspberry for updating the VSCode extension.
Thanks for going down this ARM/RISC-V compiler rabbit hole across multiple videos. It has been very interesting to see just how much compilers, libraries & settings make a difference. Also happy to see RISC-V is generally holding it's own when it has hardware equivalence to M33. I wouldn't doubt a new, lower cost RISC-V only Pico hits within the next year or so
Upgrading the RP2040 to be risc-v only will be amazing upgrade over the Cortex M0+
Really. Why? What advantages does it give compared to M0+ ?
@@GaryExplains My reasoning is that the Hazard 3 core has near identical integer performance to the M33 but without the licensing costs. This means that a RISC V only Pico would have a much smaller, cheaper core (or they use that space for more memory or features like hardware floating point, etc - after all RISC V is modular) but no licensing costs so instead of $5, it is back down to $4 or even less. Not a big deal for a hobbyist buying one but makes a big difference for Pico chip integration for OEMs & manufacturers. That moves RISC V further up the food chain of adoption and provides an even more accessible high performance (compared to the M0+) tool for hobbyist. For micro controllers it is either price performant for your task or not. It matters little if it is running an ARM, RISC V or Dorito as the chip
This is a common theory however majority of the costs for the boards are the manufacturing costs: the PCB, the RP2350, etc. The licensing costs are negligible. I can guarantee that a RISC-V only Pico will be the same price as an Arm one.
@@GaryExplains Perhaps the licensing cost is a minimal component of overall cost but Hazard 3 core is basically a more performant M0+ and its modular nature means it can be customized to match board needs much more seamlessly and maybe even from existing RISC V designs.Having a bespoke design also means you have a minimum amount of silicon to pay for per product specification. I think these are strong reasons that Raspberry Pi corporation is actively supporting and beginning to demo RISC V usage,even if licensing costs are a small part of that overall improvement in product
at last!! Managed to get it working on MacBook with no issues. This is so much simpler than the older way of cobbling together than IDE.
Great info to know Gary! Thanks for keeping up up-to-date!
My two Pi Pico 2s just arrived today! Thanks for the vid Gazza mate …
Have fun!
fr? im super jealous! didnt realize they moved past pre-order
This is great, thanks. I don't suppose you know how to build with different levels of optimisation for debug/release type build configurations do you? I'd love an explanation of how to do that...
As always, great job, Gary!! Thanks a lot!! :)
Wow, the end user experience now is sooooo much better than it was.
There's not even any need for Zadig for Pico 2 under Windows, although you still need it for the original Picos.
Furthermore, debugging in VS Code with the Debug Probe is an OOB experience now.
What an improvement!
Could you make a video on the (now infamous) RP2350 E9 Erratum? I think it is quite obscure for newcomers what are the implications of it.
learnt a lot. tnx🎉
Hi and thanks a lot. Based on your Great Video i was able to program my raspberry pico by vs code instand of ardunio ide in view minutes. 😊
Glad it helped
Gary nice video :) Question: I have a degree in C (not C++), JAVA and Python (+ HTML/CSS/PHP/SQL). Which (in your experience) programming language is the best (in your opinion) for setting up (from the ground up) a custom script that lets the Pico2 (I have a WIZnet W6100-EVB-Pico2 test board in combination with a Nordic nRF7002-EB Wifi 6 board) act as a webserver...? My use-case: I want to monitor the powerstatus of a flatscreen through an API call and sent out the response via WiFi to a remote SQL database. Is this C or perhaps C++, or micropython or is the Arduino IDE the most successfull route to take?? I hope to hear from you, thx so much in advance. With kind regards, Jeroen Wolf
Does the new Pico support hardware debugging?
Interesting, I let it to create sample code, it generated blink.pio file that looks like mix of unknown (pseudo-)assembly (not RISC-V, not x86) and C with unfamiliar functions and then blink_cpp that includes mysterious blink_pio_h that contains byte array blink_program_instructions with this assembly in the comment. It almost feels like each GPIO pin can run a program with 16bit instructions while main cpu can run something completely different (in this case sleep/print hello world). Can't use dots, youtube evaluates it as a domain and erases post.
it creates a program in the language C, how do i make this c++ do i just rename the .c to .cpp? 💀💀💀💀💀💀
is there any real complex project demo for rp2350 like doom for rp2040 from pico sdk author?
Now get them to put in J-link support. My aneurisms have aneurisms from trying to get it to work.
Your T-shirt link doesn't work!
VsCode is rarely to the rescue.
Now I'm fighting on Linux, because it simply refuses to make intellisense work with larger cmake project.
However on windows it works fine (which is useless because I don't need Windows binaries)
First 😊