Skip to content

Release 4.0.0 - Pico 2 (RP2350) Support, SDK 2.0, new boards

Compare
Choose a tag to compare
@github-actions github-actions released this 25 Aug 22:48
· 128 commits to master since this release

Overview

This is a major release with support for the Raspberry Pi Pico 2 (RP2350) using a new SDK 2.0.0. New RP2350-based boards from iLabs, Solder Party, and SparkFun are supported in addition to the Pico 2. The full 512K of RAM and up to 8MB of PSRAM are available for applications to use.

Special thanks to @arturo182 for a great code review that helped get a working RP2350 build even before I had any chips in hand, and to @PontusO, @Architeuthis-Flux, and @gigapod for kindly supplying chips and boards before I could even order them here in the US.

Pico 2 / RP2350

  • Add RP2350 support, new boards (#2337)
    Support for the Pico 2 in ARM mode has been added. A slightly updated toolchain (new OpenOCD and Picotool to support RP2350) is included. The Pico2 support includes PSRAM as a first-class memory and is explained in the documentation. Everything that worked on the RP2040 should work on the RP2350 except for FreeRTOS (requires use of a private RPi fork of the upstream we use) and OTA (requires me to understand the new bootup sequence better). SPI, I2C, LittleFS, EEPROM, PWMAudio, LWIP-based networking, multicore, SDK USB and TinyUSB, and more have been verified.

New Boards

  • Raspberry Pi Pico 2
  • Invector Labs Challenger RP2350 BConnect, Invector Labs Challenger RP2350 WiFi/BLE
  • SparkFun ProMicro RP2350
  • Solder Party RP2350 Stamp, Solder Party RP2350 Stamp XL

New Ethernet Controllers

  • W6100 implementation based on W5500 driver (#2346)
    Driver for WizNet W6100 added, works the same as other lwip_XXX drivers

New SDK

  • Migrate to 2.0.0 SDK (#2336)
    Pico SDK 2.0 is required for RP2350 support and includes a new OpenOCD and Picotool.

Filesystems

  • Add VFS to enable POSIX file I/O operations (#2333)
    FILE-type calls like fopen() and fprintf() can now natively work with LittleFS or SDFS.
  • BREAKING: Remove FS::info64, make FS::info 64-bit (#2335)