Arduino Nano RP2040 Connect

The Nano RP2040 Connect is a tiny development board based on the Raspberry Pi RP2040 microcontroller.

Peripherals:

  • NINA-W102 chip with wifinina firmware (wifi and bluetooth)
  • lsm6dox IMU chip (acceleration, rotation and temperature)
  • microphone

Interfaces

InterfaceHardware SupportedTinyGo Support
GPIOYESYES
UARTYESYES
SPIYESYES
I2CYESYES
ADCYESYES
PWMYESYES
USBDeviceYESYES

Pins

PinHardware pinAlternative namesPWM
D2GPIO25PWM4 (channel B)
D3GPIO15PWM7 (channel B)
D4GPIO16PWM0 (channel A)
D5GPIO17PWM0 (channel B)
D6GPIO18I2C1_SDA_PINPWM1 (channel A)
D7GPIO19I2C1_SCL_PINPWM1 (channel B)
D8GPIO20PWM2 (channel A)
D9GPIO21PWM2 (channel B)
D10GPIO5PWM2 (channel B)
D11GPIO7SPI0_SDO_PINPWM3 (channel B)
D12GPIO4SPI0_SDI_PINPWM2 (channel A)
D13GPIO6LED, SPI0_SCK_PINPWM3 (channel A)
D14GPIO26A0, ADC0PWM5 (channel A)
D15GPIO27A1, ADC1PWM5 (channel B)
D16GPIO28A2, ADC2PWM6 (channel A)
D17GPIO29A3, ADC3PWM6 (channel B)
D18GPIO12I2C0_SDA_PINPWM6 (channel A)
D19GPIO13I2C0_SCL_PINPWM6 (channel B)
SPI1_SCK_PINGPIO22SPI1_SDO_PIN, SPI1_SDI_PINPWM3 (channel A)
NINA_SCKGPIO14PWM7 (channel A)
NINA_SDOGPIO11NINA_RTSPWM5 (channel B)
NINA_SDIGPIO8NINA_TXPWM4 (channel A)
NINA_CSGPIO9NINA_RXPWM4 (channel B)
NINA_ACKGPIO10NINA_CTSPWM5 (channel A)
NINA_GPIO0GPIO2PWM1 (channel A)
NINA_RESETNGPIO3PWM1 (channel B)
UART0_TX_PINGPIO0UART_TX_PINPWM0 (channel A)
UART0_RX_PINGPIO1UART_RX_PINPWM0 (channel B)

Machine Package Docs

Documentation for the machine package for the Nano RP2040

Flashing

UF2

The Nano RP2040 comes with the UF2 bootloader already installed.

CLI Flashing

  • Flash your TinyGo program to the board using this command:

    tinygo flash -target=nano-rp2040 [PATH TO YOUR PROGRAM]
    
  • The Nano RP2040 board should restart and run your program.

Troubleshooting

Any troubleshooting tips go here.

Notes

You can use the USB port to the Nano RP2040 as a serial port.

TinyGo has support for the RP2040’s on-board Programmable Input/Output (PIO) block.

For more informantion, see https://.com/tinygo-org/pio