RP2350 is a 32-bit dual ARM Cortex-M33 and Hazard3 RISC-V microcontroller integrated circuit by Raspberry Pi Ltd. [1] In August 2024, it was released as part of the Raspberry Pi Pico 2 board. [2]
Announced on 8 August 2024, the RP2350 is the second microcontroller designed by Raspberry Pi Ltd, after the RP2040. [2] The microcontroller is low cost, with the Raspberry Pi Pico 2 being introduced at US$5 and the RP2350 itself costing as little as US$0.80 in bulk. The microcontroller is software-compatible with the RP2040 and can be programmed in assembly, C, C++, Free Pascal, Rust, MicroPython, CircuitPython, and other languages.
The RP2350 comes in four versions, which are identified by the number of cores (2), a numeral loosely correlated to the core type [3] (3), log₂ of the number of 16 KB RAM blocks (5), log₂ of the number of 128 KB flash storage blocks (0 or 4), and a letter denoting package type (A or B): [4]
Note: inside the "54" IC packages, a NOR flash die is stacked on top of the microcontroller die, then connected to its QSPI bus and first chip select.
At announcement time, seventeen other manufacturers had products expected to be available within a month.[ citation needed ]
The chip is a 5.3 mm2 (0.0082 sq in) silicon die in a 7 × 7 mm QFN-60EP or 10 × 10 mm QFN-80EP surface-mount device (SMD) package. [2]
The following is a simplified comparison of the RP2040 and RP2350 microcontroller families.
Feature | RP2040 | RP2350 |
---|---|---|
Package | QFN-56EP | QFN-60EP or QFN-80EP |
CPU Cores | Two ARM Cortex-M0+ | Two ARM Cortex-M33 (FPU), two Hazard3 RISC-V |
CPU Clock | 133 MHz | 150 MHz |
SRAM | 264 KB, 6 banks | 520 KB, 10 banks |
Flash | None | 2 MB (inside x54 parts) |
OTP | None | 8 KB |
DMA | 12 chan, 2 IRQ | 16 chan, 4 IRQ |
PIO | 8 | 12 |
PWM | 16 | 24 |
ADC | 4 chan | 4 chan (QFN-60EP), 8 chan (QFN-80EP) |
HSTX | None | One |
Engines | ? | RNG, SHA-256 |
The RP2350 chip was released with errata RP2350-E9, documenting a "Latching behaviour on Bank 0 GPIO pull-down resistors", which was later updated to "Increased leakage current on Bank 0 GPIO when pad input is enabled" due to multiple reports from users, [5] such as developers of the Bus Pirate.
The defect causes pins configured as inputs to source about 120 μA when the input voltage is between logical low and logical high, pulling them to about 2.2V. [6]
Luke Wren, one of the engineers working on RP2350 has stated that the supplier responsible for the pad circuitry has provided a faulty design. "We didn't modify the pad, we asked the vendor to modify their own pad. There was one particular structure on the RP2040 FT pad that limited its tolerance, but on inspection the modified layout we got back was a completely different circuit." [7]
A microcontroller or microcontroller unit (MCU) is a small computer on a single integrated circuit. A microcontroller contains one or more CPUs along with memory and programmable input/output peripherals. Program memory in the form of NOR flash, OTP ROM, or ferroelectric RAM is also often included on the chip, as well as a small amount of RAM. Microcontrollers are designed for embedded applications, in contrast to the microprocessors used in personal computers or other general-purpose applications consisting of various discrete chips.
AVR is a family of microcontrollers developed since 1996 by Atmel, acquired by Microchip Technology in 2016. These are modified Harvard architecture 8-bit RISC single-chip microcontrollers. AVR was one of the first microcontroller families to use on-chip flash memory for program storage, as opposed to one-time programmable ROM, EPROM, or EEPROM used by other microcontrollers at the time.
The MSP430 is a mixed-signal microcontroller family from Texas Instruments, first introduced on 14 February 1992. Built around a 16-bit CPU, the MSP430 was designed for low power consumption, embedded applications and low cost.
Serial Peripheral Interface (SPI) is a de facto standard for synchronous serial communication, used primarily in embedded systems for short-distance wired communication between integrated circuits.
A general-purpose input/output (GPIO) is an uncommitted digital signal pin on an integrated circuit or electronic circuit board which may be used as an input or output, or both, and is controllable by software.
Atmel ARM-based processors are microcontrollers and microprocessors integrated circuits, by Microchip Technology, that are based on various 32-bit ARM processor cores, with in-house designed peripherals and tool support.
The ARM Cortex-M is a group of 32-bit RISC ARM processor cores licensed by ARM Limited. These cores are optimized for low-cost and energy-efficient integrated circuits, which have been embedded in tens of billions of consumer devices. Though they are most often the main component of microcontroller chips, sometimes they are embedded inside other types of chips too. The Cortex-M family consists of Cortex-M0, Cortex-M0+, Cortex-M1, Cortex-M3, Cortex-M4, Cortex-M7, Cortex-M23, Cortex-M33, Cortex-M35P, Cortex-M52, Cortex-M55, Cortex-M85. A floating-point unit (FPU) option is available for Cortex-M4 / M7 / M33 / M35P / M52 / M55 / M85 cores, and when included in the silicon these cores are sometimes known as "Cortex-MxF", where 'x' is the core variant.
Raspberry Pi is a series of small single-board computers (SBCs) developed in the United Kingdom by the Raspberry Pi Foundation in association with Broadcom. The Raspberry Pi project originally leaned toward the promotion of teaching basic computer science in schools. The original model became more popular than anticipated, selling outside its target market for diverse uses such as robotics, home automation, industrial automation, and by computer and electronic hobbyists, because of its low cost, modularity, open design, and its adoption of the HDMI and USB standards.
STM32 is a family of 32-bit microcontroller integrated circuits by STMicroelectronics. The STM32 chips are grouped into related series that are based around the same 32-bit ARM processor core: Cortex-M0, Cortex-M0+, Cortex-M3, Cortex-M4, Cortex-M7, Cortex-M33. Internally, each microcontroller consists of ARM processor core(s), flash memory, static RAM, debugging interface, and various peripherals.
Maximite Microcomputer is a Microchip PIC32 microcontroller-based microcomputer. This series of chips uses the MIPS 32-bit RISC MIPS architecture and was neither an ARM nor PIC variant. Originally designed as a hobby kit, the Maximite was introduced in a three-part article in Silicon Chip magazine in autumn of 2011 by Australian designer Geoff Graham. The project consists of two main components — a main circuit board and the MMBasic Interpreter, styled after GW-BASIC.
LPC is a family of 32-bit microcontroller integrated circuits by NXP Semiconductors. The LPC chips are grouped into related series that are based around the same 32-bit ARM processor core, such as the Cortex-M4F, Cortex-M3, Cortex-M0+, or Cortex-M0. Internally, each microcontroller consists of the processor core, static RAM memory, flash memory, debugging interface, and various peripherals. The earliest LPC series were based on the Intel 8-bit 80C51 core. As of February 2011, NXP had shipped over one billion ARM processor-based chips.
The ATmega328 is a single-chip microcontroller created by Atmel in the megaAVR family. It has a modified Harvard architecture 8-bit RISC processor core.
The Arduino Uno is an open-source microcontroller board based on the Microchip ATmega328P microcontroller (MCU) and developed by Arduino.cc and initially released in 2010. The microcontroller board is equipped with sets of digital and analog input/output (I/O) pins that may be interfaced to various expansion boards (shields) and other circuits. The board has 14 digital I/O pins, 6 analog I/O pins, and is programmable with the Arduino IDE, via a type B USB cable. It can be powered by a USB cable or a barrel connector that accepts voltages between 7 and 20 volts, such as a rectangular 9-volt battery. It has the same microcontroller as the Arduino Nano board, and the same headers as the Leonardo board. The hardware reference design is distributed under a Creative Commons Attribution Share-Alike 2.5 license and is available on the Arduino website. Layout and production files for some versions of the hardware are also available.
The MSP432 is a mixed-signal microcontroller family from Texas Instruments. It is based on a 32-bit ARM Cortex-M4F CPU, and extends their 16-bit MSP430 line, with a larger address space for code and data, and faster integer and floating point calculation than the MSP430. Like the MSP430, it has a number of built-in peripheral devices, and is designed for low power requirements. In 2021, TI confirmed that the MSP432 has been discontinued and "there will be no new MSP432 products".
The Arduino Nano is an open-source breadboard-friendly microcontroller board based on the Microchip ATmega328P microcontroller (MCU) and developed by Arduino.cc and initially released in 2008. It offers the same connectivity and specs of the Arduino Uno board in a smaller form factor.
Apache Mynewt is a modular real-time operating system for connected Internet of things (IoT) devices that must operate for long times under power, memory, and storage constraints. It is free and open-source software incubating under the Apache Software Foundation, with source code distributed under the Apache License 2.0, a permissive license that is conducive to commercial adoption of open-source software.
ESP32 is a series of low-cost, low-power system-on-chip microcontrollers with integrated Wi-Fi and dual-mode Bluetooth. The ESP32 series employs either a Tensilica Xtensa LX6 microprocessor in both dual-core and single-core variations, an Xtensa LX7 dual-core microprocessor, or a single-core RISC-V microprocessor and includes built-in antenna switches, RF balun, power amplifier, low-noise receive amplifier, filters, and power-management modules. Commonly found either on device specific PCBs or on a range of development boards with GPIO pins and various connectors depending on the model and manufacturer of the board.
Shakti is an open-source initiative by the Reconfigurable Intelligent Systems Engineering (RISE) group at Indian Institute of Technology, Madras to develop the first indigenous Indian industrial-grade processor. The aims of the Shakti initiative include building an open source production-grade processor, complete systems on a chip (SoCs), microprocessor development boards, and a Shakti-based software platform. The main focus of the team is computer architecture research to develop SoCs, which are competitive with commercial offerings in the market in area, power, and performance. All the source codes for Shakti are open-sourced under the Modified BSD License. The project was funded by the Ministry of Electronics and Information Technology (MeITY), Government of India.
RP2040 is a 32-bit dual ARM Cortex-M0+ microcontroller integrated circuit by Raspberry Pi Ltd. In January 2021, it was released as part of the Raspberry Pi Pico board. Its successor is the RP2350 series.