I'm an engineer but I still appreciate how you have done all the heavy lifting on these videos, making it a breeze for me just to jump in and create something instead of spending all the time doing preliminary research nose in the spec sheets.
Great explainer video. Challenger 2040 is 3-4x the cost of Pico, but the battery charging circuit alone is worth the extra $$. I'm very nervous about DIY power - esp mains and/or charging circuits. I might be willing to pay $15 for this board knowing I get battery charging.
According to the spec WiFi is provided by a ESP8285 chip which is part of the ESP8266 family. This makes more sense than putting an ESP32 chip on the board since ESP32 is also a dual core MCU with lots of GPIO pins and features including micropython. You would not really need the RP2040 chip if there was also ESP32 on the board.
I'm trying to think of an application that requires an RP2040 in addition to an ESP32. I've done a lot of bit-slice in my career. AM2900x3wide, 68332 TPU before there was an assembler, Moto DSCs and even EPROM based. Somebody give me a challenge. What does this combo really bring to the table above just an ESP32? It has a core dedicated(?) to comms, leaving the other core for you. Also has FreeRTOS built in. Is it all so that you can write in a higher level language?
I work on embedded devices. If you can put the ESP32 in deep sleep, then this is a very good board. There are applications where you need some heavy computation, like in reading accelorometers. If certain condition is met, you need to send the data over the internet or bluetooth. Then you wake up the ESP32, to make some more heavier computation and send the data wirelessly. I've worked on such systems using an Attiny85 as the "always on" uC, but it was not enough power for me. This board, RP2040+ESP32, is an ideal solution for me.
@@AZOffRoadster A few things. It's an ESP8285 not an ESP32. This is terrible disappointing and cheap skating of them. Why? Well Espressif do not develop anything for the ESP82* series anymore. They are end of life. So the AT Command firmware (which I will come to), is the old out of date one with bugs. The NEW V2. AT Command firmware is only available for the ESP32 and contains built in support for Webservers, and MQTT connections direct from the module, not on the ESP8285 though. At least they added flash memory for it, as by default it has too little to install much. However with the AT Command firmware on there, you get Basic Wifi +Bluetooth classic. So you can do audio and calls etc. By the way. The Wifi chip is flashed with the AT Command firmware. This is a basic "teletype" interface using a single bi-direction UART (Serial). You send it commands like: +JAP MySSID MyPasscode and it responds with OK WIFI CONNECTING WIFI CONNECTED The trouble comes when you want to make a TCP connection (or 2). I'm not sure the AT command version on the ESP8285 allows more than one connection. However the data arrives like this: +TCPRECV:1:4232 You then send: RECV 1:4232 and the next 4232 bytes it sends you is binary data. 1 is the stream id. I'm sure someone will have wrapped this in a driver (hopefully) because handling an asynchronous UART command channel at the same time as trying to asynchronously pick you data back out of it on the data stream is not trival or easy. I know this because my current project is designing a dev board just like this, except with more professional MCU. An STM32F411 + an ESP32 WROOM 3E. Set up the same way, even the WS2812 but with a 2.8" TFT color screen as well. In my case I expose the ESP32 System Serial so you can, if you choose, reflash the ESP32 to do what you want. A note. The ESP8685 AT Command firmware may, or may not support OTA Updates. If it does support that, then you can point it to an HTTP URL to find it's firmware and it will flash itself. Thus, you might be able to reprogram it. Good luck getting to any of it's pins though :(
I work on embedded devices. If you can put the ESP32 to sleep, then this is a very good board. There are applications where you need some heavy computation, like in reading accelorometers. If certain condition is met, you need to send the data over the interner or bluetooth. Then you wake up the ESP32, to make some more heavier computation and send the data wirelessly. I've worked on such systems using an Attiny85 as the "always on" uC, but it was not enough power for me. This board, RP2040+ESP32, is an ideal solution for me.
THIS is a great improvement. Wireless is really something I want, but they Pico W is sold out everywhere. I would get a few of these, a great alternative to the ESP. Sadly, out of stock
I've just bought something with a similar architecture. It is currently on its way. Some of the ESP32 pins are brought out. I'm looking forward to seeing what I can do with it
I would like to know the difference between requesting from a ntp server and the world time API. I have done some application that uses ntp server without adding the json library. Thank you for the video.
Thanks for the vid. PiHut also has stock, but none of the details mention Ble. What flavour of Ble does it have, and does it have software support? 👍🏾🤓
Why wouldn't we want to explore how we can take full advantage of the ESP32? Especially if it can be set up for remote programming via wifi, and, perhaps to send python programs to the RP2040.
LOL! Just completed a Teensy 4.1 laser synth prototype, using 3 I2S stereo audio shields for X/Y/R/G/B. Works great, after a few mods for 6 channels. Now, I'm wanting WiFi.🤔 BTW, PJRC's audio library & online Audio Design Tool are great for getting started. Software controlled DSP, filters, mixers, ADSR, etc, etc. BR.
13:48 Sorry to be picky but just a note for next time if you could please zoom in more for this program (or if there’s an option to make the text larger within the application?). Cheers 👍🏻
Am I missing something. I tried this and I couldn't load the neopixel library. You have to download these from a separate source and load them onto your board separately. The process is not as simple as you describe.
Hm. What's the advantage over an ESP32 board - apart from the charging capabiliity. I would assume that this board needs more power than an ESP32 board.
This dev board looks very interesting. I've just completed a prototype Teensy laser synth, using the Teensyduino's I2S audio library, which Adafruit have forked. But, the T4.1 doesn't have WiFi, so I'm considering the ESP32 with hex DACs, instead. Would PJRC's Teensyduino libraries run on this board? Otherwise, I'll take your same approach of adding an ESP32 to the Teensy laser synth, just for WiFi. Are the RP2040 & ESP32 MCU's simply passing data via I2C? Thanks, Looks like a great product. 😎
Forgive me if I don't trust random makers to design a reliable board. I like to at least see the schematic if everything seems alright, especially if it has lipo charging. But schematic for this board is nowhere to be found. Red flag. Negative Tindie reviews. Another red flag.
@@martincerny3294 Thank you for your feedback regarding my unanswered 6 month old question. 3rd red flag. Actually, I've stayed with the Teensy 4.1 for my laser synth, but upgraded the I2S DAC to the CS42448 CODEC IC, which has 6 ADC inputs, as well as the 6 DAC outputs for the laser projector. That allows it to receive inputs from any ILDA standard OTC laser DAC and software, which can be multiplied/summed with the T4 Laser Synth waveform images. This random maker has just learned KiCad and am putting the finishing touches on my 1st SMD PCB. Wish me luck with the reliability on that. Best regards. 😎
Considering how many new devices are unavailable to buy and try, I ordered a couple. I'm keen to try getting the PPP protocol to work on an ESP32 to interface with some retro devices also. My order came to ~$39 USD including shipping which was ~$7.50, I think that also included an exchange rate fee (paypal). I'm also wondering if it's possible to replace the 8MB flash with something larger like you could with the ESP8266.
For lots of reasons starting with the fact that the RP2040 is more powerful than the ESP32-C3, then compatibility with the Pico ecosystem, plus many more reasons.
I wanted to work on abstracted code probably some decent oop for micro-controllers as the code just clutters up in some small applications. any idea what to take?
this is basicaly the same price as a pro micro board, which is used to make custom mechanical handwired keyboards, I wonder what extra weird features you could give a keyboard with this.
Hello Sir I am a bit confused regarding pi pico and RP2040. Is it the same thing or two different things. I tried to Google and but couldn't find any clear answer. Thanks
You should be able to use the flash storage in CircuitPython and Arduino to store and retrieve values. I'd imaging that you can in MP as well, but I haven't worked with that platform
As it says on the Raspberry Pi website: Eagle-eyed readers of datasheets will notice that CYW43439 supports both Bluetooth Classic and Bluetooth Low-Energy: we have not enabled Bluetooth on Pico W at launch, but may do so in the future.
One thing that makes me dubious of the value of the RP2040 for high performance projects is that it really only has RAM and that it therefore has to load applications serially from an external FLASH into a mere 264k of RAM. When you consider that RAM has to contain the bootloader (from FLASH) and all the other basic stuff it's really going to be doing a lot of swapping in and out. Add to the the inherently inefficient ISA and bloat you need to deal with the peripherals in ARM, I just wonder.
@@GaryExplains I've played around with ARM M0 processors for a while, and simple things take 16k to 32k (house keeping). This means you only get ~8 house keeping things in RAM at a time. printf is about 4k, and I think a graphical UI ends up being nearly half the RAM. Setting and clearing a pin takes about 3us on M0 without function swapping and if you add your GUI and not too much else I think you get into the realm of memory swaps. If you want to anything realtime beyond that you would see performance degradation. These are only guesses at this stage based on a few 1000 lines of written code.
@@michabarnas612 I'm talking about the serial flash that stores the applications. It has to down load it. If it doesn't then it can only execute each instruction after it's downloaded which means no pipelining
@@michabarnas612 This is from the description "The RP2040 uses a small internal flash for a bootloader and a larger external flash for everything else". The external FLASH is serial!!
If you want a ESP32 then just get one of those (there are plenty of boards available). If you want an Arm Cortex-M board with WiFi and Bluetooth then get one of these or a Pico W or an Arduino Uno R4 and just think of the ESP32 as a WiFi chip.
Because NTP only gives UTC time which means you need to do all the heavy lifting for timezones and day light saving. World Time API solves that. Besides I also demonstrated NTP as well, so take your pick.
I can hardly think about a programming language less suited for microcontrollers than Python. The slowest beast of a language is used for the most realtime type of application..
@@GaryExplains I'm surprised that they haven't updated their datasheet. I'm trying to run your WiFiWebServer4Time example. I have commented out the #define WIFIESPAT1 but it doesn't get further than the loop (while (WiFi.status() != WL_CONNECTED) ) where it is trying to connect to Wi-Fi. I have all the latest versions of libraries and my wifi ssid and password are correct and am in the same room as my router. Any thoughts?
Of course it is capable, that is why it is being used to do all the heavy lifting for the networking end of things, freeing up the RP2040 for the main processing. As a side note, quoting MHz is basically pointless and it depends on how much the CPU can do per cycle, it is known as IPC, Instructions Per Cycle. The ESP32-C3 running at 160MHz could be slower than the RP2040 running at 133Mhz. I haven't tested it, but it is quite likely.
@@GaryExplains i agree, you are right. Would be great if you could make a comparison video between the performance of these embedded microcontrollers. Like RP2040, ESP32-D0WDR2-V3 (dual core variant), RISC-V FE310 SoC (open source hardware) , and may be throw some STM32s into the mix. But its probably too time consuming to standardise a test for all these architectures. A solution could be to use the arduino cores for all these chips and make a standard arduino bench mark. Only processing power, and not RF Capabilities because not all of them have RF.
Im hesitating to ask this question, but any idea how read bios info from a mobo? If I can’t get info bios because of unknown password? all known methods of removing it didn’t work.
then what is the point? why not just have an esp32? it is faster than the rp2040, this just adds complexity, power consumption, cost... for little to no benefit
Personally if I'd used the name "Challenger" I'd have not also put an image of a space shuttle on the board because of the Challenger disaster. Not the right image for any product.
I purchased several of these Challenger wifi boards and ever piece of sample code I have found online crashes and I dont know how to get past the erros. Does anyone have sample code and list of the libraries to setup a simple Webserver? This would be a massive help to me.
@@GaryExplains I think I may not have all or the correct libs. When I run your ntp_sync code I get "AttributeError: 'module' object has no attribute 'ESP_WIFI_EN' I also tried running the neopixel test and it bombs on me too with "AttributeError: 'module' object has no attribute 'NeoPixel'". I have the seesaw library but I think I must be missing somethnig. Would you mind sharing your libs? Thank you.
@@GaryExplains Many ESP32 boards have a special wireless protocol that allows them to communicate with each other wirelessly without the Internet or Bluetooth. It's called ESPnow. I was wondering if the board supported that? If it does, it means it could send speed data to an ESP32 running an instrument cluster, for instance.
@@GaryExplains just the RP2040 MCU, alone. The bare component chips. Edit: my bad! Apparently, Mouser got a ton in at the end of July, and more are coming by the end of August. This is great news! Could the shortage be ending???
@@jonathanstein6056 Even better, they have a sale on at the moment. 10 X RP2040 chips for £6.30 before shipping. One order on the way, with another underway. Have far too many bits and pieces. They have also removed the 1 Pico W per customer limit too.
Whilst it's fine to call the board the Challenger, it's in somewhat questionable taste to put a drawing of the Space Shuttle on the board given its fate. That's before taking into account the even worse taste puns it might elicit.
@@GaryExplains given the association computers and software have with crashes? Maybe just me. I used to wonder about the loose use of Titanic metaphors when it's sinking was still in living memory. Perhaps I'm becoming over-sensitive in my old age. That said, the board is very nice, and I see how things have changed since I wrote an RTOS for a Z80 based project back in the 80s. It was, somehow, more fun with if a lot less productive than these modern wonders.