Skip to the content
PCBKitNew board
2 layers68 × 59 mmESP32 PCB, the printed circuit board in 3D

sudo apt update && sudo apt install locales sudo locale-gen enUS enUS.UTF-8 sudo update-locale LCALL=enUS.UTF-8 LANG=enUS.UTF-8 export LANG=enUS.UTF-8

Size
68 × 59 mm
Copper layers
2
Thickness
1.6 mm
Parts
22
Nets
45
Pads
128
Tracks, vias
270, 33
Pours
1
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
17 Mar 2025
Updated
24 May 2025

Overview

ESP32 PCB is an open-source printed circuit board by JOvers26, from the JOvers26/SnekBot repository on GitHub. It is a 2-layer board of 68 × 59 mm with 22 parts on 45 nets, routed with 270 tracks and 33 vias.

It is built around the ESP32-S3-WROOM-1-N8, LM1117MP-3.3 and USB4105-GF-A. Its parts include 5 capacitors, 3 resistors, 3 connectors, 2 ICs and 2 switches. It belongs with the ESP32 boards of this library.

Main components

3

README

README.md

SnekBot

SnekBot Arm

Six-Axis Robotic Arm and Control System for ROAR Lunar Surface Operations

This project is a work in progress and setup is subject to change.

Project Summary

SnekBot is a six-axis robotic arm designed for the QUT ROAR team to use in the Australian Rover Challenge (ARCh)

Installation & Setup

Initial Steps

Ensure Ubuntu 24.04 is flashed on the Raspberry Pi 5 and configured for remote access via SSH.

ROS2 Jazzy

1. Set Locale

Ensure your system uses UTF-8 encoding:

sh
locale  # Check for UTF-8

sudo apt update && sudo apt install locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8

locale  # Verify settings

2. Enable Required Repositories

sh
sudo apt install software-properties-common
sudo add-apt-repository universe

3. Add ROS 2 GPG Key

sh
sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

4. Add ROS 2 Repository

sh
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

5. Install Development Tools (Optional)

sh
sudo apt update && sudo apt install ros-dev-tools

6. Update Repository Caches

sh
sudo apt update

7. Upgrade System

sh
sudo apt upgrade

8. Install ROS 2 Jazzy Base

sh
sudo apt install ros-jazzy-ros-base

9. Setup Environment

Ensure ROS 2 is sourced correctly:

sh
# Replace ".bash" with your shell if you're not using Bash
# Possible values: setup.bash, setup.sh, setup.zsh
source /opt/ros/jazzy/setup.bash

For more details, visit the official ROS 2 documentation.

Setting up SnekBot Project

1. Clone the repository

sh
git clone https://github.com/JOvers26/SnekBot
cd ~/SnekBot

2. Install dependencies

sh
cd ~/SnekBot/ros2_ws
sudo rosdep init
rosdep update
rosdep install --from-paths src --ignore-src -r -y

3. Install FOXGLOVE Monitoring (Optional)

sh
source /opt/ros/jazzy/setup.bash
sudo apt install ros-$ROS_DISTRO-foxglove-bridge

4. Build the ROS2 Workspace:

sh
cd ~SnekBot/ros2_ws
colcon build --symlink-install
source install/setup.bash

Setting up ESP-IDF

1. Install Prerequisites

sh
sudo apt-get install git wget flex bison gperf python3 python3-pip python3-venv cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0

2. Get ESP-IDF

sh
mkdir -p ~/esp
cd ~/esp
git clone -b v5.2.5 --recursive https://github.com/espressif/esp-idf.git

3. Set up the Tools

sh
cd ~/esp/esp-idf
./install.sh all

4. Set up the Environment Variables

sh
. $HOME/esp/esp-idf/export.sh

5. Configure ESP32S3

sh
cd ~SnekBot/ESP32_Code/int32_Publisher
pip3 install catkin_pkg lark-parser colcon-common-extensions empy==3.3.4
idf.py set-target esp32s3
idf.py menuconfig

#In micro-ROS Settings ->
  #Set micro-ROS-Agent IP
  #Set WiFi Credentials

6. Build and flash software

sh
idf.py build
idf.py -p /dev/ttyACM0 flash

# Note if this does not work you may need to add user to the dialout group
sudo usermod -aG dialout $USER

idf.py -p /dev/ttyACM0 flash

Install VSCode on Ubuntu

1. Install Prerequisites

sh
sudo apt-get install wget gpg
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -D -o root -g root -m 644 packages.microsoft.gpg /etc/apt/keyrings/packages.microsoft.gpg
echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" |sudo tee /etc/apt/sources.list.d/vscode.list > /dev/null
rm -f packages.microsoft.gpg
sudo apt install apt-transport-https
sudo apt update
sudo apt install code # or code-insiders

Setting up Robotics Toolbox Python environment

1. Install Prerequisites

sh
sudo apt install python3-venv
cd ~SnekBot
python3 -m venv venv
source venv/bin/activate

pip3 install pygame
pip3 install setuptools
pip3 install roboticstoolbox-python
pip3 install "numpy<2"

Useful Commands

Sourcing Ros2

sh
source /opt/ros/jazzy/setup.bash

Building micro-ROS-Agent

sh
cd ~SnekBot/ros2_ws
colcon build --symlink-install
source install/setup.bash
sh
ros2 run micro_ros_agent micro_ros_agent udp4 --port 8888

Launching Foxglove Monitoring

sh
source /opt/ros/jazzy/setup.bash
ros2 run foxglove_bridge foxglove_bridge

Sourcing ESP-IDF

sh
. $HOME/esp/esp-idf/export.sh

Flashing and Monitoring ESP32-S3

sh
idf.py -p /dev/ttyACM0 flash
idf.py -p /dev/ttyACM0 monitor

Parts

22
QtyValueFootprintReferences
30.1uFCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC4, C8, C9
35.1KResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR1, R2, R6
3MountHoleMountingHole:MountingHole_3.2mm_M3H1, H2, H3
3TestPointTestPoint:TestPoint_Pad_D3.0mmTP1, TP2, TP3
210uFCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC2, C7
2SW_PushButton_Switch_SMD:SW_Push_SPST_NO_Alps_SKRKSW1, SW2
1Conn_01x08_PinConnector_PinHeader_2.54mm:PinHeader_1x08_P2.54mm_VerticalJ2
1Conn_01x10_PinConnector_PinHeader_2.54mm:PinHeader_2x05_P2.54mm_VerticalJ3
1D_SmallDiode_SMD:D_0805_2012Metric_Pad1.15x1.40mm_HandSolderD1
1ESP32-S3-WROOM-1RF_Module:ESP32-S3-WROOM-1U1
1LM1117MP-3.3Package_TO_SOT_SMD:SOT-223-3_TabPin2U2
1USB4105-GF-AUSB4105-GF-A:GCT_USB4105-GF-AJ1

Questions

How big is the ESP32 PCB PCB?

It measures 68 × 59 mm and has 2 copper layers, 1.6 mm thick.

What parts does the ESP32 PCB use?

22 parts, built around the ESP32-S3-WROOM-1-N8, LM1117MP-3.3 and USB4105-GF-A. 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 ESP32 PCB KiCad files?

From the JOvers26/SnekBot repository on GitHub, at the commit this page was made from: the board is ESP32 PCB/Version 1/Version 1.kicad_pcb and its schematic ESP32 PCB/Version 1/Version 1.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the ESP32 PCB design in my own project?

Its repository states no licence, so its author keeps all rights: ask JOvers26 before reusing the design.

Similar boards

  • 2 layers112 × 45 mmPc1715-esp32vga, the printed circuit board in 3D

    Pc1715-esp32vga

    mgoegel/robotron-esp-vga.pcb

    Robotron MDA Adapter, ESP32S3 based PCB Layout in KiCad 8.0

    36 parts3
  • 2 layers164.3 × 145 mmMain board esp32, the printed circuit board in 3D

    Main board esp32

    MrRooby/Maszyna-W-ESP32

    ESP32 based project with addressable LED displays, simulating basic CPU architecture with website Websocket connectivity for real time visualization

    92 parts2
  • 4 layers50 × 50 mmESP32-S3-testboard, the printed circuit board in 3D

    ESP32-S3-testboard

    Imdad2005/ESP32-S3-testboard

    Custom 4-layer ESP32-S3 IoT testboard designed in KiCad 9, featuring USB-C, 3.3 V power regulation, environmental sensing, and QWIIC/SPI expansion.

    42 parts1
  • 2 layers85 × 65 mmFuente regulable, the printed circuit board in 3D

    Fuente regulable

    iowlabs/camara_electroforesis

    Dispositivo para la instrumentación de experimentos de electroforesis. Considera tanto el diseño de un modelo 3D para el tanque, como la electrónica para una fuente generadora de voltaje.

    80 parts1GPL-3.0
  • 2 layersIowLabs incubadora, the printed circuit board in 3D

    IowLabs incubadora

    iowlabs/incubadora

    Proyecto para confeccionar una incubadora bajo costo.

    59 parts1GPL-3.0
  • 2 layers68.8 × 53.3 mmESP32-Uno Board, the printed circuit board in 3D

    ESP32-Uno Board

    alexandrebobkov/KiCAD-Projects

    KiCAD PBC projects

    27 parts2MIT
  • 2 layers76.2 × 39 mmIronman hands, the printed circuit board in 3D

    Ironman hands

    KavyanshKhaitan2/ironman-hands

    A cool glove with bunch of sensors so you can interact with your computer in a different way!!

    23 parts1