This is only a preview of the August 2025 issue of Silicon Chip. You can view 46 of the 104 pages in the full issue, including the advertisments. For full access, purchase the issue for $10.00 or subscribe for access to the latest issues. Articles in this series:
Articles in this series:
Items relevant to "Modules: Thin-Film Pressure Sensor":
Articles in this series:
Items relevant to "USB-C Power Monitor, Part 1":
Items relevant to "RP2350B Development Board":
Items relevant to "Mic the Mouse":
Items relevant to "Ducted Heat Transfer Controller Part 1":
Purchase a printed copy of this issue for $13.00. |
RP2350B
development board
Think of this as the Pico 2’s bigger sibling – more pins, more I/O, more speed,
more storage and more memory. It’s perfect for breadboarding, too. Also, like the
Picos, it can be purchased pre-assembled!
T
he Raspberry Pi Pico is well known
to our readers, and has been
designed into many of our projects
as a drop-in, self-contained compute
module. It has been a runaway success
for the Raspberry Pi Foundation, with
over 4 million of this handy module
sold since its launch in 2021.
In August 2024, they improved on
it with the Pico 2, based on the new
RP2350A processor, which has also
been very popular.
The RP2350A processor also has
a lesser-known sibling called the
RP2350B, which is often overlooked.
This has the same features as the A
variant, but comes in a larger 80-pin
QFN package with 48 I/O pins vs the
30 I/O pins of the RP2350A.
The Raspberry Pi foundation does
not offer a module based on this chip,
but recently they have made it available for individual sale – so now
we can design our own RP2350B
based module. Thus, we present the
RP2350B Development Board.
This is similar to the Raspberry Pi
Pico 2, but it uses the RP2350B, with
nearly all of its 48 I/O pins available
for experimenters – a vast improvement over the Pico 2. This board can
be used as a general-purpose compute module when you need a lot of
I/O pins, or as a development board
while designing a circuit around the
RP2350B chip.
Features
The RP2350B Development Board
is designed to suit solderless breadboards with two rows of 32 pins on a
2.54mm/0.1-inch pitch. This is similar
to the standard Raspberry Pi Pico, and
this layout can also be used as a plug-in
module in your own PCB designs.
In our module, 47 of the RP2350B’s
48 I/O pins are routed to the edge connectors. This is useful when you need
a lot of I/O; for example, when driving
a high-performance LCD panel with
a parallel interface, or constructing
your own multi-key keyboard. The
one I/O pin not available, GPIO00,
is used as the PSRAM IC chip select
(CS) signal.
On the edge pins of the module, we
have also included numerous grounds,
plus +3.3V and +5V outputs.
One extra benefit of the RP2350B is
that eight of the I/O pins are capable of
analog measurements (vs four on the
RP2350A), and these are also available
for use in your programs. The diagram
opposite lists the full capabilities of
each I/O pin.
The module is self-contained,
including a 3.3V regulator. The input
power supply is nominally 5V, but
∎ Processor: Raspberry Pi RP2350B
∎ Cores: two ARM Cortex-M33 and two Hazard3 RISC-V
∎ Clock Speed: default 150MHz; overclockable up to around 400MHz
∎ Flash memory: 16Mbytes
∎ RAM: 520kiB, expandable to over 8MiB
∎ I/O pins: 47 (eight with analog capability)
∎ I/O connectors: two rows of 32 pins, 2.54mm/0.1-inch pitch, 25.4mm/1-inch
separation
∎ Power supply: 5V nominal (4.5-12V) <at> 95mA (150MHz clock)
∎ Size: 82 × 28mm
Words by Geoff Graham | Design by Peter Mather
RP2350B Assembled Board (SC7514, $30): includes a fully-assembled PCB
with nearly everything from the parts list, except for the optional components
a range of 4.5-12V is acceptable. A
USB-C socket is provided for power
and loading the firmware. The firmware loading process works exactly the
same as with the Raspberry Pi Pico, ie,
you hold down the BOOT switch while
plugging the USB into your desktop or
laptop computer.
The flash memory used for storing
programs and data in this design has
a capacity of 16Mbytes (the Pico 2 has
4Mbytes). The PicoMite BASIC interpreter occupies just 2Mbytes, which
leaves plenty of flash free to create an
internal “disk drive” with a capacity
of about 14Mbytes.
Our design also supports an 8Mbyte
PSRAM chip. This sits on the same
quad SPI bus as the flash memory,
and can be used to add to the internal
RAM of the RP2350B.
Overclocking
The RP2350B Development Board
is designed for overclocking, which
means running the processor cores at
a higher clock speed than specified in
the data sheet. This enables the module to be used in high-performance
applications, such as generating DVI/
HDMI video.
The default speed for the RP2350B
is 150MHz, but some people have
claimed to have overclocked it to over
600MHz. A more reasonable goal is
the 372MHz needed to generate DVI/
HDMI video.
To support the faster speeds, our
design uses an adjustable linear regulator to generate the digital core supply voltage (DVDD). This powers the
chip’s core digital logic, and in our
design, can be accurately adjusted
from 1.1V to over 1.4V. Higher voltages allowing the CPU to run faster.
In the Pico 2, this voltage is provided by an on-chip switching regulator, which is not suited to high
siliconchip.com.au
PWM
PWM0B
SERIAL
I2C
SPI
COM1 RX I²C SDC
SPI
I2C
GPIO47
SPI2 RX
I²C2 SDL
Pin
Pin
5V
5V
3.3V
3.3V
GND
SERIAL
PWM
PWM11B
GPIO01
GPIO46
SPI2 CLK I²C2 SDA
PWM1A
I²C2 SDA SPI CLK
GPIO02
GPIO45
I²C SDL
COM1 RX
PWM10B
PWM1B
I²C2 SDC SPI TX
GPIO03
GPIO44
SPI2 RX
I²C SDA
COM1 TX
PWM10A
GND
GND
GPIO04
GPIO43
SPI2 TX
I²C2 SDL
GPIO05
GPIO42
SPI2 CLK I²C2 SDA
I²C SDL
COM2 RX
PWM8B
SPI2 RX
I²C SDA
COM2 TX
PWM8A
PWM2A
COM2 TX I²C SDA
PWM2B
COM2 RX I²C SDC
SPI RX
PWM3A
I²C2 SDA SPI CLK
GPIO06
GPIO41
PWM3B
I²C2 SDC SPI TX
GPIO07
GPIO40
GND
GND
GPIO08
GPIO39
SPI TX
I²C2 SDL
GPIO09
GPIO38
SPI CLK
I²C2 SDA
PWM4A
COM2 TX I²C SDA
PWM4B
COM2 RX I²C SCL
SPI2 RX
PWM5A
I²C2 SDA SPI2 CLK
GPIO10
GPIO37
PWM5B
I²C2 SCL
SPI2 TX
GPIO11
GPIO36
GND
GND
PWM6A
COM1 TX I²C SDA
SPI2 RX
GPIO12
PWM6B
COM1 RX I²C SCL
GPIO13
PWM10B
COM2 TX
PWM10A
GPIO35
SPI TX
I²C2 SDL
GPIO34
SPI CLK
I²C2 SDA
PWM7B
I²C2 SCL
GPIO15
GPIO32
GND
GND
GPIO16
GPIO17
COM1 RX I²C SCL
SPI RX
PWM9A
COM1 RX
PWM8B
SPI RX
I²C SDA
COM1 TX
PWM8A
GPIO31
SPI2 TX
I²C2 SDL
PWM7B
GPIO30
SPI2 CLK I²C2 SDA
PWM7A
I²C2 SDA SPI CLK
GPIO18
GPIO29
PWM1B
I²C2 SCL
GPIO19
GPIO28
GND
GND
GPIO20
SPI RX
PWM9B
I²C SDL
PWM1A
SPI TX
PWM11A
I²C SDA
GPIO33
COM1 TX I²C SDA
PWM11B
SPI RX
GPIO14
PWM0B
PWM9A
COM2 RX
I²C2 SDA SPI2 CLK
PWM0A
PWM9B
I²C SDL
PWM7A
SPI2 TX
PWM11A
I²C SDL
COM1 RX
PWM6B
SPI2 RX
I²C SDA
COM1 TX
PWM6A
GPIO27
SPI2 TX
I²C2 SDL
PWM2A
COM2 TX I²C SDA
PWM2B
COM2 RX I²C SCL
GPIO21
GPIO26
SPI2 CLK I²C2 SDA
PWM3A
I²C2 SDA
GPIO22
GPIO25
I²C SDL
COM2 RX
PWM4B
PWM3A
I²C2 SCL
GPIO23
GPIO24
I²C SDA
COM2 TX
PWM4A
3.3V
3.3V
SPI TX
clock speeds because of the electrical
noise it generates. Additionally, it is
difficult to implement, as it requires
a specialised inductor, which is hard
to find.
In our design, the DVDD voltage
is provided by a TPS7A7002DDAR
linear regulator (REG34) that is both
inexpensive and does not generate
any electrical noise. The onboard
trimming resistor (VR1) is used to
set the DVDD voltage. Note that it is
important that this is set before power
is applied to the board. If DVDD is
accidentally set too high, it can damage the RP2350B chip.
We have also used an integrated
crystal oscillator to generate the base
clock of 12MHz for the RP2350B. This
is different from Raspberry Pi Pico 2,
which uses a simple crystal for this
purpose. The integrated crystal oscillator provides a more stable clock with
much less jitter. Jitter can be a problem
siliconchip.com.au
when the base clock frequency is multiplied many times in the RP2350B to
give the core CPU clock.
Development environments
All the familiar development environments used with the Raspberry Pi
Pico 2 can be used with this board.
This includes:
∎ The official Raspberry Pi C SDK
for C/C++ development, which can
be used from the command line on a
desktop or laptop computer, or within
popular integrated development environments like Visual Studio Code (VS
Code), Eclipse and Clion.
∎ MicroPython, which is a full
implementation of the Python 3 programming language running directly
on the Development Board. This
includes an interactive prompt to
execute commands immediately via
a USB serial port.
∎ Our own PicoMite firmware,
Australia's electronics magazine
SPI2 RX
PWM5B
PWM5A
ANALOG PIN
which implements a feature-rich
BASIC interpreter (MMBasic) with
support for audio, LCD panels, SD
cards, game controllers, HDMI/VGA
video and PS2/USB keyboards. This
firmware includes its own full-screen
editor so programs can be developed,
tested and run on the development
board in a highly productive environment.
Circuit details
Fig.1 shows the full circuit for the
RP2350B Development Module. At the
centre is the RP2350B processor. All its
general-purpose I/O pins are routed to
the two connectors at the edges of the
The RP2350B has
the same features
as the RP2350A
in the Pico 2 but
has more pins,
including 48
GPIOs.
August 2025 47
Fig.1: the circuit diagram for the RP2350B Development Board/Module. USB-C socket CON2 is used both for supplying
power (5V DC) and communicating with the RP2350B. The USB 5V supply is regulated to 3.3V by REG21 to power
oscillator XO4, PSRAM IC33 and flash chip IC6. The RP2350B's nominally 1.1V core supply is generated by adjustable
regulator REG34, so it can be increased for overclocking.
48
Silicon Chip
Australia's electronics magazine
siliconchip.com.au
PCB (CON35/36), except for GPIO00,
which is used as the chip select signal
for the PSRAM (IC33).
One other pin (GPIO25) is special as
it drives the onboard LED, LED2. If you
do not need this indicating function,
the I/O pin can be used as a general
purpose I/O with the extra load presented by the LED and its 1kW current-
limiting resistor.
The input power for the board is
a nominal 5V DC; the RP2350B and
the other chips on the board run from
3.3V, which is supplied by a simple
AMS1117-3.3 low-dropout linear regulator.
The official Raspberry Pi Pico modules have a much more complex design
for the power supply, using a switching regulator, but this can cause significant electrical noise that interferes
with analog measurements and sensitive circuits such as audio input/
output.
Most designs do not need the wide
voltage range of the switching regulator, so our design avoids the noise
problems and still provides a useful
input supply voltage range of 4.5-12V.
The RP2350B needs another voltage
supply called the digital core supply
(DVDD), which we mentioned earlier
as essential for overclocking. This
powers the chip’s core digital logic. In
our design, it is provided by REG34, an
adjustable linear regulator controlled
by trimpot VR1.
IC6 is a W25Q128JVSIQ 128Mbit
(16Mbyte) flash memory chip made
by Winbond Electronics. It uses a
quad SPI interface and is designed for
true XIP (execute in place) operation,
which allows the RP2350B to execute
its program directly from this chip.
The W25Q128JVSIQ can operate
with high clock speeds on the SPI
interface (133MHz); this is important
when overclocking the RP2350B. The
RP2350B also has a built-in SRAM
cache, which operates to mitigate the
effect of the relatively slow quad SPI
bus interface.
The BOOT pushbutton switch (S16)
pulls the chip select line (CS) low on
the flash memory chip, which essentially disables the flash memory. When
power is applied, the RP2350B will
interpret the disabled memory as a signal to enter its bootloader mode, which
is used to load a new firmware image.
IC33 is an optional external PSRAM
chip (APS6404L-3SQR-SN), which
sits on the same quad SPI bus as the
siliconchip.com.au
Parts List – RP2350B Development Board
1 double-sided PCB coded 07107251, 82 × 28mm
2 momentary SMD tactile pushbutton switches (S15, S16)
[XKB Connectivity TS-1187A-B-A-B]
1 USB-C USB 2.0 data + power socket (CON2) [Kinghelm KH-TYPE-C-16P]
1 50kW 3.8 × 3.6mm SMD trimpot (VR1) [Bourns TC33X-2-503E]
2 32-pin male headers, 2.54mm pitch (optional)
Semiconductors
1 128Mbit QSPI flash memory, SOIC-8 (IC6) [Winbond W25Q128JVSIQ]
1 Raspberry Pi RP2350B microcontroller, QFN-80 (IC28)
1 APS6404L-3SQR-SN 8MiB PSRAM, SOIC-8 (IC33; optional)
1 12MHz oscillator module, 3.2 × 2mm SMD-4 (XO4)
[TOGNJING XOS32012000LT00351005]
1 AMS1117-3.3 low-dropout 3.3V linear regulator, SOT-223-3 (REG21)
1 TPS7A7002DDAR adjustable low-dropout voltage regulator, SOIC-8
(REG34)
1 white SMD LED, M1608/0603 size [KT-0603W]
Capacitors (all SMD multilayer ceramic capacitors)
3 10μF 50V X5R, M3216/1206 package [Samsung CL31A106KBHNNNE]
18 100nF 16V X7R, M1206/0402 package [Samsung CL05B104KO5NNNC]
1 10μF 10V X5R, M1608/0603 package
[Samsung CL10A106KP8NNNC]
Resistors (all SMD M1206/0402 ±1% unless noted)
1 1MW
2 1kW
2 20kW
1 33W
5 10kW
2 33W (0603 size)
2 5.1kW
2 150W (0603 size)
The finished RP2350B
Development Board shown at
75% of actual size. The 32-pin
headers are not included with
the assembled board
flash memory chip. This has a capacity of 64Mbits (8Mbytes) and it can be
used to augment the internal RAM of
the RP2350B. How it is actually used
depends on the running program.
For example, PicoMite BASIC will
automatically add it to the general-
purpose RAM seen by the BASIC interpreter, allowing for very large arrays
to be defined.
Because the PSRAM must communicate over a serial interface, it is a lot
slower than the internal RAM of the
RP2350B. It also can limit the amount
of overclocking that the board is capable of; however, it should still reach
the speeds needed for generating DVI/
HDMI video.
The internal RAM is normally more
than enough for most applications, so
for this and performance reasons, the
PSRAM location is not populated in
our design. However, it can be easily
added to the BOM (Bill of Materials)
for automated assembly or, as it is in
an easy-to-solder 8-pin SOIC package,
you can add it yourself.
Australia's electronics magazine
This chip is available from Mouser
for around $3 in small quantities:
https://au.mouser.com/ProductDetail/
878-APS6404L-3SQR-SN
Building it
The RP2350B chip comes in an
80-pin QFP package, which is designed
for automated surface-mount soldering. It can be hand soldered, but this is
a challenge, even for someone skilled
in SMD soldering.
So, practically speaking, you have
two options for obtaining this module. You can purchase it fully assembled from the Silicon Chip Online
Shop, or you can use an SMD assembly service such as JLCPCB’s to build
the board.
We recommend JLCPCB (https://
jlcpcb.com) for the automated assembly, as they have proved reliable and
reasonably priced in the past. JLCPCB
also source the components at a good
price and they do everything, including making the board, making the solder stencil, applying the solder paste,
August 2025 49
Resistance (TP1-DVDD)
DVDD
6.0kΩ
1.10V
9.0kΩ
1.15V
12.0kΩ
1.20V
15.0kΩ
1.25V
18.0kΩ
1.30V
21.0kΩ
1.35V
24.0kΩ
1.40V
27.0kΩ
1.45V
30.0kΩ
1.50V
33.0kΩ
1.55V
36.0kΩ
1.60V
Fig.2 (above): the
overlay diagram
for the RP2350B
Development
Board. The
table at the top
of the page can
be used as a
reference for
overclocking
the RP2350B
IC.
placing the components and reflow
soldering them.
Their minimum quantity for assembly is two boards. However, if you do
want a number of boards, it is hard to
see why you would want to undertake
the hand assembly of this board when
the automated assembly option is relatively cheap.
To order boards from JLCPCB, you
will need to download three files from
siliconchip.au/Shop/10/2832 (they
all come in one download package).
The package includes a ZIP file with
the Gerber files that contain the PCB
design, a Bill of Materials spreadsheet
listing all the parts required, and a
CPL spreadsheet that contains the
placement information for the pickand-place robots.
Ordering assembled boards from
the JLCPCB website is reasonably simple. Go to https://jlcpcb.com and create an account with them. Then, drag
and drop the “RP2350B Development
Board Gerbers.zip” file onto the “Add
gerber file” box to the left of the Instant
Quote button on their front page.
The website will process the file and
display an image of the PCB. Click on
the switch marked “PCB Assembly”,
then click “NEXT” until you reach a
screen that prompts you to drag and
drop the “RP2350B Development
Board BOM.xlsx” and “RP2350B
Development Board CPL.xlsx” files.
After supplying those files, you
can continue and then accept all the
defaults. However, you may wish to
change the quantity of PCBs made
(minimum of 5), and the number that
you want assembled (minimum of 2).
Note that boards purchased from
the Silicon Chip shop or assembled
by JLCPCB will not include the two
32-pin headers required for use with
a solderless breadboard. You will have
to add these yourself (if required).
Adjusting the DVDD voltage
When you receive the boards, there
is one adjustment that you need to
make: using VR1 to set the digital core
supply voltage (DVDD).
The RP2350B Development Board has all its
components mounted on the top, with the pin
designations listed on the reverse. It is available
fully-assembled, apart from the two pin header
strips. The module is quite small at 82×28mm
(shown here enlarged for clarity). It is designed to
suit solderless breadboards, with two rows of 32
pins on a 2.54mm/0.1in pitch, or it can be used as
a plug-in module in your own PCB designs.
50
Australia's electronics magazine
Important: the potentiometer must
be adjusted before applying power
to the board. Leaving it in a random
position may damage the RP2350B
chip.
Set your multimeter to the resistance
mode and, with the board unpowered,
place the leads across the test points
marked DVDD and TP1. Adjust potentiometer VR1 to give a reading of 6kW.
This will set DVDD to 1.1V, which
is the standard voltage for a clock
speed of 150MHz (the default for the
RP2350B). This should also work for
clock speeds up to 250MHz.
If you wish to overclock the
RP2350B, you need to do two things:
increase DVDD and set the desired
clock speed in the program by setting
CPU registers. Typically, a DVDD of
1.3V will allow the RP2350B to run
up to 400MHz, with intermediate values suitable for clock speeds between
250MHz and 500MHz. The table at left
lists some resistance values and the
resultant DVDD voltages.
A maximum of 1.4V for DVDD
should be safe. However, if you wish,
you can try higher voltages with a risk
of damaging the RP2350B processor.
When the board is powered, this setting can be checked by measuring the
voltage between the DVDD test point
and any GND point.
Note that overclocking the RP2350B
Development Board is not guaranteed,
although all the samples we tested
have reached a speed close to 400MHz.
Also note that when a PSRAM chip is
fitted, the maximum overclock speed
will typically be slightly reduced.
Using the module
Power for the board is supplied via
the USB-C connector. This is the normal mode when you are developing
a program, as the board will be connected to a desktop or laptop computer that is used to load or edit the
program.
When the board is used as an embedded controller (ie, not connected to a
computer), power can be supplied via
a 5V pin on the edge connector. This
supply can be 4.5-12V. In this case, you
cannot use the USB connector at the
same time, as that would cause a conflict between the two power supplies
and possibly damage your computer.
To prevent this possibility, you can
use a switch or jumper to isolate your
power supply whenever the USB connector is used.
siliconchip.com.au
◀ The RP2350B Development Board is
ideal when you need many I/O pins.
One example is driving a high quality
LCD panel with a parallel interface;
this can require 15-23 I/Os, difficult
for a Pico 2 to accommodate but easy
with our module.
Some development environments,
such as MicroPython and the PicoMite
BASIC interpreter, use the USB connector with a terminal emulator on a
computer to edit and manage the programming environment.
Other, hosted development environments, such as the C/C++ compiler,
will build the program on the desktop
or laptop computer, which then needs
to be transferred to the module.
To load this firmware, you simply
hold down the BOOT button while
restarting the module (the RESET button is good for that) and then copy the
firmware to the pseudo USB drive that
is created on your computer by the
RP2350B chip.
How you use the RP2350B Development Board will depend on the
firmware that you have running on it.
The PicoMite BASIC interpreter can
be downloaded from siliconchip.au/
Shop/6/833
This is a complete OS with a Microsoft BASIC compatible interpreter and
extensive hardware support, including
HDMI/VGA video, PS/2 and USB keyboards, touch-sensitive LCD panels,
SD cards and much more.
For a full
description of
the PicoMite firmware, read the article
on the Pico
Mite 2 (February
2025; siliconchip.au/Article/17729)
or visit the author’s website at https://
SC
geoffg.net
Songbird
An easy-to-build project
that is perfect as a gift.
SC6633 ($30 plus postage): Songbird Kit
Choose from one of four colours for the PCB (purple, green, yellow or red). The kit includes nearly all
parts, plus the piezo buzzer, 3D-printed piezo mount and switched battery box (base/stand not
included). See the May 2023 issue for details: siliconchip.au/Article/15785
siliconchip.com.au
Australia's electronics magazine
August 2025 51
|