This item didn't quite make it in time for the May mailbag video
but I've got an Arduino Nano RP2040 Connect to play with.
We'll take a close look at this board and try out some of the features.
There's something pretty interesting about the board that I think we might explore in a future video.
Before we get started I'd like to thank PCBWay for sponsoring the channel.
PCBWay offer PCB Production, CNC and 3D Printing, PCB Assembly and much much more.
They are great to deal with and offer excellent quality, service and value for money.
Check out the link in the description.
Let's zoom in on the board and see what we have.
We have the main processor - a 32 bit dual-core Arm Cortex-M0+ processor clocked at 133MHz.
There is a 16MByte NOR flash chip.
A PDM MEMs microphone for audio input.
There's also a six-axis motion controller with a machine learning core.
On the output side of things, there's a green LED and there's also an RGB LED.
Finally, there's the thing that makes this board interesting, a NINA-W102 WiFi and Bluetooth radio module.
This module provides connectivity for the RP2040.
This, along with the other built-in peripherals, makes this board quite useful.
When we plug the board in and start up the Arduino IDE
it immediately prompts us to install the new board.
Once we've done that we can try out some simple examples
The first thing we'll try is using the RGB LED.and fire up the RGB LED.
One thing to note about this is that the RGB LED is actually connected to the WiFi module.
So we need to use the WiFiNINA library to access it.
It works pretty nicely, we can do red, green, blue and any combination we want.
The LED has a common Anode so we need to take the pins low to turn on each colour.
We can also read values from the PDM microphone.
There's a simple example sketch that will output values from the microphone to the serial plotter.
So, that's the Arduino side of things, what about alternatives like Python?
There is a release candidate of CircuitPython available.
We can download this.
And then to get the board into the right mode to be flashed
We just double-tap the reset button.
Once you've done that you just drop the firmware into the new flash drive.
And it will reboot in CircuitPython mode.
I've also dropped a small WAVE file onto the flash drive
and I've hooked up an I2S amplifier.
This simple python script will play the WAVE file.
Works pretty well!
But why is this board actually interesting?
Let's go back to this NINA-W102 module.
What's amazing about this module is that it actually contains a fully functional ESP32!
If we flip the board over we find that there are solder pads that break out the
Reset, RX, TX and GPIO0 lines.
So in theory you put the ESP32 into programming mode and burn new firmware into it.
I've soldered some wires to these pads and hooked the RX and TX lines to my USB to UART board.
I'm going to use the reset and GPIO0 pads to put the ESP32 into programming mode.
Well, eventually, I did get this to work.
Unfortunately, I've also managed to damage my board
and now the RP2040 no longer works.
Looking at the schematic the GPIO0 and the reset lines are connected directly to the RP2040
and I think forcing these low seems to have permanently damaged something.
I should have checked the schematic first to make sure these weren't connected
as it looks like I could have done this programmatically.
A valuable lesson learned!
I've got some fresh boards ordered so I'll try these experiments again
but I'll be a bit more careful!
As always, thanks for watching, I hope you enjoyed the video and if you did, please hit
the subscribe button.
There are more videos in the pipeline.
I'll see you in the next video!