View All Posts
read
Want to keep up to date with the latest posts and videos? Subscribe to the newsletter
HELP SUPPORT MY WORK: If you're feeling flush then please stop by Patreon Or you can make a one off donation via ko-fi

Take a closer look at the Arduino Nano RP2040 Connect, a versatile board that supports Python and contains a 32-bit dual-core Arm Cortex-M0+ processor, WiFi & Bluetooth module, and a six-axis motion controller. Find out how to use the RGB LED, read values from the PDM microphone, and create innovative projects using this powerful, compact device.

Related Content
Transcript

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


HELP SUPPORT MY WORK: If you're feeling flush then please stop by Patreon Or you can make a one off donation via ko-fi
Want to keep up to date with the latest posts and videos? Subscribe to the newsletter
Blog Logo

Chris Greening

> Image

atomic14

A collection of slightly mad projects, instructive/educational videos, and generally interesting stuff. Building projects around the Arduino and ESP32 platforms - we'll be exploring AI, Computer Vision, Audio, 3D Printing - it may get a bit eclectic...

View All Posts