Rioctrl controller

festlv·rioctrl-hw·rioctrl-controller/rioctrl-controller.kicad_pcb

Rioctrl controller PCB layout, top view — open source RP2040/RP2350 board by festlv
Simulate this board

About the Rioctrl controller PCB

Rioctrl controller is an open source RP2040/RP2350 PCB design by festlv, published on GitHub under the CERN-OHL-S-2.0 license. It is a 4-layer board measuring 190 × 100 mm, with 260 components from 74 distinct parts.

Its main chip is the RP2040, from the RP2040/RP2350 family. Other key parts include the TD6811, TPS54335ADDAR, NCP114ASN250T1G, W25Q16JVSSIQ and USBLC6-4SC6. By type, the board carries 67 capacitors, 63 resistors, 32 diodes, 29 ICs, 28 inductors and 18 fuses.

It belongs with the robotics & motion designs in this gallery.

From the project

Hardware design for modular CNC controller

The heart of controller is Lattice ECP5-series FPGA with 25k logic cells.

RJ45 Ethernet interface to PC (via Wiznet W5500) USB TypeC for re-flashing the FPGA (using RP2040 microcontroller with pico-dirtyJtag firmware) 12-24V DC input for powering the FPGA and basic slot hardware E-Stop signal that inhibits slot outputs in hardware, independant of FPGA gateware PMOD header for future expansion (e.g. controlling the board via SPI from RaspberryPi or something) JTAG header for FPGA debugging SWD header for JTAG probe debugging :) Six 2x13 pin 2.54mm sockets for slots (each has 12 FPGA signals…

Rioctrl controller, from the project README
From the project README

Main components on the Rioctrl controller

Rioctrl controller bill of materials (BOM)

260 components, 74 distinct parts — part numbers from the project's BOM.

QtyPartRefs
1
TD6811
Techcode
U1
2
TPS54335ADDAR
Texas Instruments
U2, U3
1
NCP114ASN250T1G
Onsemi
U4
2
W25Q16JVSSIQ
W25Q16JVSS
Winbond
U5, U10
1
USBLC6-4SC6
TECH PUBLIC
U6
1
RP2040
Raspberry Pi
U7
1
W5500
U8
1
LFE5U-12F-6BG256C
ECP5U_45_CABGA256
Lattice
U9
18
SRV05-4.TCT
SRV05-4
UMW(Youtai Semiconductor Co., Ltd.)
U11, U12, U13, U15, U16, U17, U18, U19 +10
1
SN74LVC1G125DBVR
SN74LVC1G125DBV
Texas Instruments
U14
4
BSS138W
Jiangsu Changjing Electronics Technology Co., Ltd.
Q1, Q2, Q3, Q4
1
OT322525MJBA4SL
OSC_25MHz
YXC Crystal Oscillators
X1
1
TXM12M0004252DBCEO00T
Crystal_12MHz
TAE(Zhejiang Abel Elec)
Y1
1
TXM25M0004252DBCEO00T
Crystal_25MHz
Yajingxin
Y2
2
KF2EDGR-3.5-2P
TERM-BLK-2H
Cixi Kefa Elec
J1, J7
2
C49257
PIN_HEADER_3V
Boom Precision Elec
J2, J5
1
TYPE-C-31-M-12
Korean Hroparts
J3
1
Conn_02x05_Odd_Even
J4
1
J0011D21BNL
RJ45_Pulse_J0011D21BNL
Pulse
J6
1
Conn_02x05_PH
J8
Show 54 more
QtyPartRefs
6
Conn_02x13_Odd_Even
J9, J11, J12, J13, J14, J15
1
Conn_02x06_Odd_Even
J10
18
SMD0805B050TF
Yageo
F1, F2, F3, F4, F5, F6, F7, F8 +10
1
TS-1088-AR02016
SW_PUSH_SMALL
XUNPU
SW1
2
DSS34
BORN
D1, D9
4
SZYY0603R
LED_RED
Yongyu Photoelectric
D2, D4, D10, D17
3
SZYY0603YG
LED_GREEN
Yongyu Photoelectric
D3, D11, D12
1
XL-1608UBC-04
LED_BLUE
XINGLIGHT
D5
9
BSD5C031V
BORN
D6, D7, D8, D14, D19, D22, D25, D28 +1
6
SMF24A
Shandong Jingdao Microelectronics
D13, D18, D21, D24, D27, D30
7
PESD5V0S1BBN
BORN
D15, D16, D20, D23, D26, D29, D32
25
UPZ1608E101-3R0TF
FB_100R_3A
Sunlord
FB1, FB2, FB3, FB4, FB5, FB6, FB7, FB8 +17
1
MLP2012S4R7MT0S1
TDK
L1
2
PSPMAA0805-220M-ANP
PROD Tech
L2, L3
1
GRM21BR6YA106ME43L
10uF
Murata
C1
2
GRM21BR61H106KE43L
10uF
C2, C3
8
0.1uF
C4, C5, C13, C14, C36, C40, C41, C42
2
120pF
C6, C7
2
0.012uF
C8, C9
1
DNP
C10
1
GRM21BR6YA106ME43L
10uF/35V
Murata
C11
11
CC0603KRX7R9BB104
0.1uF
Yageo
C12, C21, C24, C25, C27, C28, C29, C30 +3
4
GRM21BR61H106KE43L
47uF
C15, C16, C17, C18
2
1uF
C19, C20
2
CC0603JRNPO9BN100
10pF
Yageo
C22, C23
1
CL10A105KA8NNNC
1uF
Samsung
C26
2
18pF
C33, C34
2
10uF/6.3V
C35, C39
2
10nF
C37, C46
1
4.7uF
C38
1
22nF
C43
2
6.8nF
C44, C45
20
0.1uF
C47, C48, C49, C50, C51, C52, C53, C54 +12
11
10K
R1, R29, R30, R31, R32, R44, R45, R46 +3
5
47K
R2, R3, R5, R7, R10
2
220K
R4, R6
2
3.47K
R8, R9
1
RC0603FR-0710KL
56.2K
Yageo
R11
2
100K
R12, R14
1
19.1K
R13
1
32K
R15
4
RC0603FR-071KL
1K
Yageo
R16, R18, R19, R28
4
RC0603FR-0710KL
10K
Yageo
R17, R23, R27, R47
3
RC0603FR-075K11L
5.11K
Yageo
R20, R21, R22
1
1M
R24
1
12.4K
R25
1
RC0603FR-075K11L
100K
Yageo
R26
6
330R
R33, R34, R50, R51, R52, R56
4
0R
R35, R36, R37, R38
4
49.9R
R39, R40, R42, R43
1
10R
R41
6
100R
R53, R58, R59, R60, R61, R62
1
1K
R55
2
4K7
R57, R63

Rioctrl controller design files

The KiCad project lives in the festlv/rioctrl-hw repository on GitHub; these links point at the commit this page was built from.

Rioctrl controller: common questions

What microcontroller does the Rioctrl controller use?

The Rioctrl controller is built around the RP2040, from the RP2040/RP2350 family.

How big is the Rioctrl controller PCB?

The Rioctrl controller measures 190 × 100 mm, has 4 copper layers and is 1.6 mm thick.

How many components are on the Rioctrl controller?

260 components, from 74 distinct parts, with part numbers taken from the project's own BOM. The full bill of materials is listed on this page.

Where can I download the Rioctrl controller design files?

From the festlv/rioctrl-hw repository on GitHub, which has the KiCad layout, the schematic and the BOM; the links under Design files point to each one.

Can I use the Rioctrl controller design in my own project?

Yes, under the terms of its CERN-OHL-S-2.0 license, which festlv chose for the repository.

Can I test firmware for the Rioctrl controller without the hardware?

Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug RP2040/RP2350 firmware against it before you order a PCB.

More boards in rioctrl-hw

Similar boards