

RCUP BASE PCB 2
Certainly — here it is in a clear pointer-based format:
- Size
- 126.5 × 132.5 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 111
- Nets
- 121
- Pads
- 403
- Tracks, vias
- 796, 534
- Pours
- 19
- Routed
- Yes
- KiCad
- KiCad 9.0 (file 20241229)
- Created
- 27 Mar 2026
- Updated
- 27 Mar 2026
Overview
RCUP BASE PCB 2 is an open-source printed circuit board by dhruvdabur, from the dhruvdabur/AMR-Motor-Control-Power-Distribution repository on GitHub. It is a 2-layer board of 126.5 × 132.5 mm with 111 parts on 121 nets, routed with 796 tracks and 534 vias.
It is built around the USBLC6-4SC6, BNO055 and BSS138. Its parts include 34 connectors, 18 resistors, 7 capacitors, 7 ICs and 2 diodes. It belongs with the STM32 boards of this library.
Main components
3USBLC6-4SC6
SOT-23-6-55℃~+125℃ 0.3pF 15V 300W@8/20us 4.7A@8/20us 5V 6V 80nA ESD Four channels IEC 61000-4-2、IEC 61000-4-5、IEC 61000-4-4 Unidirectional SOT-23-6 ESD and Surge Protection (TVS/ESD) ROHSTECH PUBLICESD And Surge Protection (TVS/ESD)BNO055
LGA-28(3.8x5.2)-40℃~+85℃ 2.4V~3.6V 40uA I2C、UART IMU X,Y,Z X,Y,Z ±16g ±2000dps LGA-28(3.8x5.2) Accelerometers ROHSBosch SensortecAccelerometersBSS138
SOT-23-55℃~+150℃ 1 N-channel 1.1Ω@10V、1.2Ω@4.5V 1.2V 1.7nC@10V 17.5pF 340mA 350mW 50V 6.5pF N-Channel SOT-23 MOSFETs ROHShongjiachengMOSFETs
README
README.mdAMR-Motor-Control-Power-Distribution
Certainly — here it is in a clear pointer-based format:
AMR-Motor-Control-Power-Distribution
-
A custom-designed PCB that acts as the central power distribution and low-level control unit of the autonomous mobile robot.
-
Distributes power from the 24V battery to the robot’s major subsystems, including:
- Base motors
- Robotic arm
- Onboard Jetson compute module
- Supporting electronics and sensors
Power Regulation
- Includes buck converters to step down the input voltage to the required levels for different subsystems.
- Provides stable and regulated power delivery to components with different voltage requirements.
- Improves overall system efficiency through localized voltage regulation.
Control Architecture
-
Integrates two electrically isolated STM32F411 microcontrollers.
-
The microcontrollers are responsible for:
- Motor control
- Encoder data handling
- IMU data handling
- Communication with the Jetson compute module
-
Electrical isolation between control and power sections helps:
- Reduce electrical noise
- Improve system reliability
- Protect sensitive electronics from faults in high-current sections
Protection and Reliability Features
-
Designed with a strong focus on electrical protection and robust operation.
-
Protection features include:
- Galvanic isolation
- Isolated DC-DC converters
- Polyfuses
- TVS diodes
-
These features help protect the system against:
- Overcurrent conditions
- Voltage spikes
- Electrical noise and transients
-
Includes an emergency kill switch with fuse protection in the main power path for safe and immediate shutdown.
System Design Advantages
-
Separates power electronics, sensing, and computing into distinct electrical domains.
-
Improves:
- Serviceability
- Fault isolation
- Debugging efficiency
- Long-term system reliability
-
Plays a key role in ensuring stable operation of the robot in demanding autonomous applications.
I can also merge this with your dual-STM isolation scheme section so the whole README reads in one consistent pointer-based style.
The Two Brains
Got it. For a schematic description, pointer-style is better.
You can write it like this:
Isolation and Communication Architecture
-
The board uses two STM32 microcontrollers arranged in separate electrical domains.
-
The two controllers communicate through optocouplers, providing electrical isolation between the domains.
-
Communication across the isolation barrier consists of:
- 1 clock synchronization line
- 2 UART lines
-
This arrangement allows reliable data exchange while reducing the effect of electrical noise and preventing fault propagation between subsystems.
Powering Scheme
- One STM32 is powered using an isolated DC-DC converter.
- The other STM32 is powered directly from the raw power rail.
- This split power architecture helps isolate sensitive control and sensing electronics from noisy power sections.
Functional Division Between the Two STM32s
STM32-1
- Receives encoder data
- Sends encoder feedback to the Jetson
- Receives motor actuation commands from the Jetson through USB CDC
- Acts as the main communication bridge to the Jetson
STM32-2
- Acquires IMU data
- Sends IMU data to STM32-1
Data Flow
- Jetson → STM32-1: motor actuation commands via USB CDC
- STM32-2 → STM32-1: IMU data
- STM32-1 → Jetson: encoder data and forwarded IMU data
Design Benefits
- Clear separation of sensing and control responsibilities
- Reduced electrical interference between domains
- Improved robustness in noisy motor-control environments
- Easier debugging and modular system integration
Here is an even shorter README-style version:
Dual-STM Isolation Scheme
- Two STM32 microcontrollers are used in separate electrical domains.
- The domains are isolated using optocouplers.
- Cross-domain communication uses one clock synchronization line and two UART lines.
- One STM32, powered through an isolated DC-DC converter, handles encoder acquisition and Jetson communication over USB CDC for motor commands.
- The second STM32, powered from the raw supply, handles IMU acquisition and sends this data to the first STM32.
- The first STM32 forwards the combined feedback data to the Jetson.
Switch Layout
- The schematic includes three primary power switches: Main Kill, Arm Kill, and Base Kill.
- The Main Kill Switch controls overall system power.
- The Arm Kill Switch only disables the arm power domain.
- The Base Kill Switch only disables the base power domain.
- The Jetson remains powered even when the Arm Kill Switch is turned off, allowing computation and system monitoring to continue independently of the arm power domain.
Fuse Layout and Protection
-
The schematic includes three main fuses on the PCB:
- one for the IMU
- one for each STM32 microcontroller
-
These fuses protect the low-power sensing and control sections of the board.
-
In addition, one fuse may also be added along with each kill switch, depending on the required level of subsystem protection.
-
This design provides better electrical safety and allows faults to be isolated more effectively across different power domains.
You can write it like this:
High-Current Power Routing
-
The high-current section of the PCB is laid out as a separate and clearly defined power zone.
-
This section is designed with wider copper paths to support higher current flow with lower resistance.
-
Special attention has been given to the battery input terminal to improve current-carrying capability.
-
In this region, the solder mask has been removed intentionally so that additional solder can be added over the copper.
-
Adding extra solder increases the effective conductive cross-section and helps the board handle higher current more reliably.
-
This layout improves:
- current-carrying capacity
- thermal performance
- power delivery reliability under heavy load
Acknowledgment and Conclusion
- This project represents the combined effort of the entire electronics team and all the members who contributed to making this AMR possible.
- The development of the AMR-Motor-Control-Power-Distribution board was made possible through continuous design, testing, debugging, and integration across multiple subsystems.
- Special acknowledgment goes to all the members of the electronics system whose work on power distribution, control, sensing, protection, and system integration contributed to the successful realization of this project.
- This board serves as a key part of the robot’s electrical architecture, enabling reliable power delivery, subsystem isolation, and robust low-level control.
- With this work, the project establishes a strong foundation for stable and scalable operation of the autonomous mobile robot.
Parts
111| Qty | Value | Footprint | References |
|---|---|---|---|
| 6 | 350 | PCM_Resistor_SMD_AKL:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R3, R4, R8, R9, R17, R18 |
| 6 | 6R8K | PCM_Resistor_SMD_AKL:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R11, R12, R13, R14, R15, R16 |
| 6 | Conn_01x03_Pin | Connector_JST:JST_XH_B3B-XH-A_1x03_P2.50mm_Vertical | J30, J31, MDD1, MDD2, MDD3, MDD4 |
| 6 | LOGO | LOGO | G***, G***, G***, G***, G***, G*** |
| 5 | USBLC6-4SC6 | Package_TO_SOT_SMD:SOT-23-6 | U4, U5, U6, U7, U8 |
| 4 | COOLING SYSTEM | ROBO:xt60 | J19, J20, J25, J26 |
| 4 | Conn_01x20_Pin | Connector_PinHeader_2.54mm:PinHeader_1x20_P2.54mm_Vertical | J1, J2, J3, J4 |
| 4 | MountingHole_Pad | MountingHole:MountingHole_4.3mm_M4_DIN965_Pad_TopBottom | H5, H6, H7, H8 |
| 4 | SolderJumper_2_Open | Jumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm | JP1, JP2, JP3, JP4 |
| 3 | 0.1µ | Capacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolder | C1, C4, C7 |
| 3 | 6N137 | PCM_Package_DIP_AKL:DIP-8_W7.62mm_LongPads | OC1, OC2, OC3 |
| 3 | Conn_01x04_Pin | Connector_JST:JST_XH_B4B-XH-A_1x04_P2.50mm_Vertical | Encoder1, Encoder2, Encoder3 |
| 3 | Polyfuse | Fuse:Fuse_0603_1608Metric_Pad1.05x0.95mm_HandSolder | BNO1, STMFuse1, STMFuse2 |
| 2 | 100µ | PCM_Capacitor_Tantalum_SMD_AKL:CP_EIA-6032-28_Kemet-C_Pad2.25x2.35mm_HandSolder | C2, C3 |
| 2 | 10K | PCM_Resistor_SMD_AKL:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R5, R6 |
| 2 | 4R7K | PCM_Resistor_SMD_AKL:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R19, R20 |
| 2 | LED | Diode_SMD:D_0805_2012Metric_Pad1.15x1.40mm_HandSolder | D1, D2 |
| 2 | STM32F411_BP | ROBO:STM32F411-BP | MotorController1, MotorController2 |
| 1 | 10µ | PCM_Capacitor_Tantalum_SMD_AKL:CP_EIA-6032-28_Kemet-C_Pad2.25x2.35mm_HandSolder | C6 |
| 1 | 1K | PCM_Resistor_SMD_AKL:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R1 |
| 1 | 220 | PCM_Resistor_SMD_AKL:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R2 |
| 1 | 24V TO 12V BUCK IN | ROBO:xt60 | J18 |
| 1 | 24V TO 12V BUCK OUT | ROBO:xt60 | J22 |
| 1 | 24V TO 5V BUCK IN | ROBO:xt60 | J15 |
| 1 | 24V TO 5V BUCK OUT | ROBO:xt60 | J21 |
| 1 | 4.7µ | footprints:IND_SWPA5040S_SNL-M | L1 |
| 1 | 47µ | Capacitor_Tantalum_SMD:CP_EIA-3216-18_Kemet-A_HandSolder | C5 |
| 1 | ARM KILL SWITCH | ROBO:xt60 | J24 |
| 1 | ARM KILL SWITCH 12V | ROBO:xt60 | J23 |
| 1 | BASE KILL SWITCH 12V | ROBO:xt60 | J16 |
| 1 | BASE KILL SWITCH 24V | ROBO:xt60 | J17 |
| 1 | BNO055 | ROBO:7_semi_BNO055 | U3 |
| 1 | BSS138 | BSS138 (2):SOT95P240X111-3N | Q1 |
| 1 | BatteryIN | ROBO:xt60 | J11 |
| 1 | Conn_01x02 | Connector_JST:JST_XH_B2B-XH-AM_1x02_P2.50mm_Vertical | J5 |
| 1 | EXTRA 12V PORT | ROBO:xt60 | J27 |
| 1 | EXTRA 24V PORT | ROBO:xt60 | J29 |
| 1 | EXTRA 5V PORT | ROBO:xt60 | J28 |
| 1 | G*** | kibuzzard-692D34FC | kibuzzard-692D34FC |
| 1 | G*** | kibuzzard-69313BBD | kibuzzard-69313BBD |
| 1 | G*** | kibuzzard-692ABDC1 | kibuzzard-692ABDC1 |
| 1 | G*** | kibuzzard-692EDD63 | kibuzzard-692EDD63 |
| 1 | G*** | kibuzzard-692EDD82 | kibuzzard-692EDD82 |
| 1 | G*** | kibuzzard-692ABD47 | kibuzzard-692ABD47 |
| 1 | G*** | kibuzzard-697CBF62 | kibuzzard-697CBF62 |
| 1 | G*** | kibuzzard-692ABE21 | kibuzzard-692ABE21 |
| 1 | G*** | kibuzzard-692D35A8 | kibuzzard-692D35A8 |
| 1 | G*** | kibuzzard-692D3512 | kibuzzard-692D3512 |
| 1 | G*** | kibuzzard-692D3525 | kibuzzard-692D3525 |
| 1 | G*** | kibuzzard-692D34D4 | kibuzzard-692D34D4 |
| 1 | G*** | kibuzzard-692ABE65 | kibuzzard-692ABE65 |
| 1 | G*** | kibuzzard-692EF28F | kibuzzard-692EF28F |
| 1 | JETSON POWER | ROBO:xt60 | J9 |
| 1 | LOGO | rm logo long 18x6:rm logo long 2 18x6 | G*** |
| 1 | MAIN KILL SWITCH | ROBO:xt60 | J10 |
| 1 | MOTOR 1 PWR | ROBO:xt60 | J6 |
| 1 | MOTOR 2 PWR | ROBO:xt60 | J13 |
| 1 | MOTOR 3 PWR | ROBO:xt60 | J7 |
| 1 | MOTOR 4 PWR | ROBO:xt60 | J14 |
| 1 | STEPPER AND BLDC POWER | ROBO:xt60 | J8 |
| 1 | ~ | ROBO:WRB0505S-3WR3 | U2 |
The 110 most common of 111 parts.
Similar boards
- 2 layers172.5 × 392 mm

- 2 layers44.8 × 72.5 mm

- 4 layers100 × 50 mm

- 4 layers100 × 60 mm

- 2 layers50 × 60 mm

FlightControllerBoard
ToolboxPlane/FlightControllerBoard
A flight controller board for the mini Talon UAV based on a STM32 Nucleo-32.
88 parts3 - 4 layers52.4 × 48.7 mm

Flight Controller v1
ckflight/FLIGHT_CONTROLLER_HARDWARE
SAM3X8E Peripheral rich flight controller pcb design
447 parts2 - 2 layers25.4 × 20.3 mm

Adafruit BNO055 STEMMA QT
ShekharShwetank/Breakout_Boards
Custom Breakout Board files that I needed (since couldn't find these specific ones) to be used in EDA tools like KiCAD, or Altium Designer while working as Electronics Lead of Enthalpy (Student Rocketry Team) or while…
30 parts1MIT - 2 layers100 × 60 mm

Mother Ctrl
Tomoshibi-technology/RCJ-Japan2024-Circuit
RoboCup JapanOpen 2024とEindohoven 2024に向けての回路開発
253 parts1MIT
Questions
How big is the RCUP BASE PCB 2 PCB?
It measures 126.5 × 132.5 mm and has 2 copper layers, 1.6 mm thick.
What parts does the RCUP BASE PCB 2 use?
111 parts, built around the USBLC6-4SC6, BNO055 and BSS138. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the RCUP BASE PCB 2 KiCad files?
From the dhruvdabur/AMR-Motor-Control-Power-Distribution repository on GitHub, at the commit this page was made from: the board is base/RCUP_BASE_PCB_2.kicad_pcb and its schematic base/RCUP_BASE_PCB_2.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the RCUP BASE PCB 2 design in my own project?
Its repository states no licence, so its author keeps all rights: ask dhruvdabur before reusing the design.