
Cube motherboard
willem-pennings/balancing-cube
A cube that balances itself in a corner or edge using reaction wheels

끌리니 (Cleany) - 무인 공간 관리 로봇
Motor controller is an open-source printed circuit board by asm17-moving-agent, from the asm17-moving-agent/cleany repository on GitHub. It is a 2-layer board of 78 × 55 mm with 13 parts on 40 nets, routed with 142 tracks and 0 vias.
It is built around the ESP32-S3-DEVKITC-1-N8. Its parts include 2 connectors and 1 IC. It belongs with the robots and motor control boards and the ESP32 boards of this library.
Cleany 로봇의 ROS 2 runtime, Gazebo/MuJoCo 시뮬레이션, ESP32 펌웨어를 관리하는 저장소입니다. 제품 목표와 설계 결정은 KB에서 확인합니다. 각 구현과 시험의 상태는 제품 전체의 완료 여부와 구분합니다.
flowchart TB
KB["KB / 제품 목표와 설계 결정"]
Entry["README / 작업 선택"]
Setup["DEVELOPMENT_SETUP / 환경과 빌드"]
Run["RUNNING / 실행"]
Test["TESTING / 검증"]
Cal["CALIBRATION / 수집과 평가"]
Contract["INTEGRATION / 연결과 계약 위치"]
Ref["코드 옆 docs / 단위와 안전 규약"]
API["ROS_INTERFACES / 노드별 통신 목록"]
Evidence["EVIDENCE / 과거 원본 위치"]
KB -. "제품 기준" .-> Entry
Entry --> Setup
Setup --> Run
Run --> Test
Run --> Cal
Entry --> Contract
Contract --> Ref
Entry --> API
API --> Ref
Test --> Evidence기준 환경은 Ubuntu 22.04, ROS 2 Humble, Python 3.10, Gazebo Fortress 6입니다. 새 환경은 개발환경 설치를 먼저 따릅니다. 아래 명령은 저장소 루트의 Humble 터미널에서 실행합니다.
git submodule update --init --recursive docs/cleany-docs
source /opt/ros/humble/setup.bash
make deps-gazebo
make test-gazebo
make sim-gazebo전체 workspace는 make deps, make build, make test를 사용합니다. 각 검사의 범위와 시뮬레이션, 실물 검증의 차이는 테스트 가이드에서 확인합니다.
| 작업 | 문서 |
|---|---|
| 환경 설치, 의존성, 빌드 경로 | 개발환경 |
| 시뮬레이션, Mission Runtime, Monitor 실행 | 실행 |
| 변경 검증, runtime 시험, 결과 저장 | 테스트 |
| hand-eye 데이터 수집과 검토 | Calibration |
| 노드별 토픽, 서비스, 액션 찾기 | ROS 인터페이스 색인 |
| Backend, ROS, MCU 연동 | 연동과 계약 |
| 펌웨어 빌드, 업로드, 장치 확인 | ESP32, 배선 |
| 과거 보고서와 실행 원본 찾기 | 근거 색인 |
| 코드 구조와 구현 학습 | 학습 가이드, HTML 뷰어 |
| 인식과 sorting 실행 | Perception, Manipulation |
| 물체 하나의 Action 실행 | Mock 서버, MuJoCo BT 서버 |
| 제품, 설계, 미해결 질문 | KB |
| 위치 | 책임 |
|---|---|
ros2_ws/src/ | ROS 패키지, 순수 core, launch와 package 설정 |
esp32/ | micro-ROS 펌웨어, 빌드 보조 도구, 장치 없는 검사와 PCB |
tests/ | 패키지 경계를 넘는 통합 검사 |
tools/ | 빌드 출력 정리와 vision 환경 준비 도구 |
생성물과 실행 원본은 기본적으로 worktree 옆 ../cleany-data/에 둡니다. 사용 가능한 명령은 make help, 실제 옵션은 Makefile, launch, config에서 확인합니다. 문서 변경은 기존 설명에 반영하며, README에는 날짜별 구현 일지를 추가하지 않습니다.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 6 | JST_XH | Connector_JST:JST_XH_S4B-XH-A_1x04_P2.50mm_Horizontal | J_ENC1, J_ENC2, J_ENC3, J_ENC4, J_I2C1, J_I2C2 |
| 4 | JST_XH | Connector_JST:JST_XH_S3B-XH-A_1x03_P2.50mm_Horizontal | J_MOTOR1, J_MOTOR2, J_MOTOR3, J_MOTOR4 |
| 2 | JST_XH | Connector_JST:JST_XH_S2B-XH-A_1x02_P2.50mm_Horizontal | J1, J2 |
| 1 | ESP32-S3-DevKitC | PCM_Espressif:ESP32-S3-DevKitC | U1 |
It measures 78 × 55 mm and has 2 copper layers, 1.6 mm thick.
13 parts, built around the ESP32-S3-DEVKITC-1-N8. 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.
From the asm17-moving-agent/cleany repository on GitHub, at the commit this page was made from: the board is esp32/pcb/motor_controller.kicad_pcb and its schematic esp32/pcb/motor_controller.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask asm17-moving-agent before reusing the design.

willem-pennings/balancing-cube
A cube that balances itself in a corner or edge using reaction wheels

jazzmonger/Traeger-PID-Controller
Traeger Smoker/Grill Controller based on an

ohasanov-hbrw/tribit32-advanced
A tri-microcontroller, overengineered GameBoy Advance clone. More value was given to the controls and the exterior look, which is cool!



FIPATECH/CDFR26_PAMI
Open source firmware and PCB for a differential mobile robot (PAMI) based on ESP32-S3 - Coupe de France de Robotique

dnhutchins/ETC_Express_Reverse_Eng
The ultimate goal of this work is to develop an interface to use the control surface from a legacy ETC Express 24/48 lighting controller as a modern EOSNomad compatible programming and fader wing.

heckler/esphome-device-configs
Configuration definitions for local ESPHome files