Skip to content

README.md

Machine-translated by Robotheca from the original in Chinese (opens in a new tab). License: GPL-3.0-only (opens in a new tab).

Robotic Arm

Robotic Arm is an open-source robotic arm that uses an ESP32-C3 chip to control four servos via a PCA9685 chip, and is operated with an Xbox-compatible controller.

video (opens in a new tab)

Directory Structure Description

  • solidworks-model: SolidWorks 2023 source model files.
  • 3d-printable: 3D printable model files exported from SolidWorks:
    • step: Step format (recommended if the printer supports Step format).
    • stl: STL format (universally printable format).
    • 3mf: 3D printing format that can be printed directly.
  • esp32-controller: ESP-IDF project source code.
  • docs: Related documentation.

Design

The model was designed using SolidWorks 2023.

solidworks-model

Control

Uses MG996Rx3 and MG90S servos, ESP32-C3 main controller, PCA9685 servo driver board, and an Xbox-compatible controller.

Bill of Materials

NameQuantityReference Unit Price (CNY)Reference Purchase LinkNotes
3D printed parts170Use FDM 3D printingApproximately 700g of PLA material
Deep groove ball bearing 6180914https://detail.tmall.com/item.htm?id=558165998149&skuId=3632300271694 (opens in a new tab)Upper rotation axis of fixed base
Deep groove ball bearing 6190011https://detail.tmall.com/item.htm?id=558028332089&skuId=3466348596124 (opens in a new tab)Lower rotation axis of fixed base
Deep groove ball bearing 619-521https://detail.tmall.com/item.htm?id=665677732947&skuId=4803499105837 (opens in a new tab)Main rocker of rotating base
igus flange bearing GFM-04050-04204https://item.taobao.com/item.htm?id=577055358668&skuId=3973097699261 (opens in a new tab)Connecting rods
igus flange bearing GFM-0506-0543https://item.taobao.com/item.htm?id=577055358668&skuId=3917924689834 (opens in a new tab)Connecting rods
Shoulder screw M8-d10-45-1013https://item.taobao.com/item.htm?id=727328728239&skuId=5220634259143 (opens in a new tab)Main rod of fixed base
Shoulder screw M4-d5-30-512https://item.taobao.com/item.htm?id=727328728239&skuId=5220634259095 (opens in a new tab)
Shoulder screw M4-d5-20-511https://item.taobao.com/item.htm?id=727328728239&skuId=5220634259093 (opens in a new tab)
Shoulder screw M3-d4-20-432https://item.taobao.com/item.htm?id=727328728239&skuId=5220634259082 (opens in a new tab)
Shoulder screw M3-d4-12-472https://item.taobao.com/item.htm?id=727328728239&skuId=5220634259079 (opens in a new tab)
Lock nut M811https://item.taobao.com/item.htm?id=39801137771&skuId=3179651418712 (opens in a new tab)
Lock nut M421https://item.taobao.com/item.htm?id=39801137771&skuId=3179651418702 (opens in a new tab)
Lock nut M3101https://item.taobao.com/item.htm?id=39801137771&skuId=3179651418705 (opens in a new tab)
Round head screw M4-1241https://item.taobao.com/item.html?id=559706384805&skuId=4924704353913 (opens in a new tab)
Round head screw M2.5-12121https://item.taobao.com/item.html?id=559706384805&skuId=4924704353893 (opens in a new tab)Used for installing MG996R servo
Round head screw M2-2021https://item.taobao.com/item.html?id=559706384805&skuId=4924704353971 (opens in a new tab)Used for installing MG90S servo
Round head screw M2-821https://item.taobao.com/item.html?id=559706384805&skuId=4924704353888 (opens in a new tab)
Hex nut M441https://item.taobao.com/item.htm?id=39801137771&skuId=3179651418702 (opens in a new tab)
Hex nut M2.5121https://item.taobao.com/item.htm?id=39801137771&skuId=3179950216671 (opens in a new tab)
Hex nut M221https://item.taobao.com/item.htm?id=39801137771&skuId=3179950216672 (opens in a new tab)
MG90S/180ยฐ117https://detail.tmall.com/item.htm?id=530629424244&skuId=4179287423050 (opens in a new tab)Micro servo for front claw
MG996R/180ยฐ323https://detail.tmall.com/item.htm?id=530629424244&skuId=4179287423040 (opens in a new tab)Small servo for fixed and mobile bases
ESP32-C3 development board120https://detail.tmall.com/item.htm?id=802840084513&skuId=5465032488648 (opens in a new tab)Robotic arm control MCU, built-in WiFi/2.4G and Bluetooth BLE 5
16-channel PWM servo driver board127https://detail.tmall.com/item.htm?id=624505789589&skuId=5054325653554 (opens in a new tab)Servo driver board using I2C interface, capable of driving up to 16 servos simultaneously
Mounting clip16https://item.taobao.com/item.htm?id=812206553246&skuId=5676343543601 (opens in a new tab)Fixes the robotic arm to the desktop
12 mm self-locking switch15https://detail.tmall.com/item.htm?id=607769066907&skuId=5258355114246 (opens in a new tab)Power switch for the robotic arm
12 mm self-locking switch connector12https://detail.tmall.com/item.htm?id=607769066907&skuId=4419711093384 (opens in a new tab)Recommended purchase to avoid soldering
Gaoshi Xiaoji Venus game controller180https://detail.tmall.com/item.htm?id=749611763829&skuId=5169816701870 (opens in a new tab)Xbox-compatible controller, supports Bluetooth BLE 5
10 cm DuPont wire33https://detail.tmall.com/item.htm?id=14466195609 (opens in a new tab)Recommended to purchase male-to-male, male-to-female, and female-to-female jumper wires to avoid soldering

Files by @michaelliao, at commit d6319f9, read from GitHub in your browser. Hardware license: GPL-3.0-only; software license: GPL-3.0-only. Robotheca doesn't review code: read it before running it.