Skip to the content
PCBKitNew board
2 layers27.3 × 60 mmDsi esp, the printed circuit board in 3D

Robot that is remote-controlled by Nintendo DSi. Also streams DSi webcam data to screen on the robot.

Size
27.3 × 60 mm
Copper layers
2
Thickness
1.6 mm
Parts
16
Nets
52
Pads
92
Tracks, vias
125, 22
Pours
1
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
4 Apr 2024
Updated
8 Aug 2024

Overview

Dsi esp is an open-source printed circuit board by grahamgrieb, from the grahamgrieb/DSi-Robot repository on GitHub. It is a 2-layer board of 27.3 × 60 mm with 16 parts on 52 nets, routed with 125 tracks and 22 vias.

It is built around the ESP32-S3-WROOM-1-N8. Its parts include 4 resistors, 2 ICs, 1 capacitor and 1 connector. It belongs with the retro computing and games boards and the ESP32 boards of this library.

Main components

1

README

README.md
This project uses a Nintendo DSi to control a worm-like origami robot. The DSi also streams live video data from its webcam to a TFT Display on the robot. This project involved programming custom homebrew, designing a PCB cartridge for the DSi, wireless ESP to ESP communication, image encoding, and motor control. Both the robot and DSi operate completely wirelessly.
The robot and the DSi with its custom cartridge slotted in
Photo of DSi and Robot
Block Diagram overview of all the devices in the system
Device Block Diagram

The first part of this project is the Nintendo DSi. The DSi is running handwritten homebrew code (can be found in the ds-app folder). This application display the current DSi webcam data on the top screen. The user is able to place stickers over the webcam footage using the touchscreen. They are also able to switch between the front and back camera of the DSi. The webcam data is sent automatically if the user is in video mode, or whenever the user hits the A button when they are in photo mode.

DSi Application with all the Stickers Placed
DSi App

This application takes advantage of the two CPU's on the DSi. The image data is sent out over the SPI lines in the cartridge slot. The ARM9 CPU takes care of the main application, while the ARM7 CPU sends the SPI data in the background. These CPU's communicate with each other using the IPC register.

Close up of custom DSi Cartridge PCB and screenshots of Gerber files.
Photo of DSi and Robot Front of Gerber Back of Gerber

The raw bitmap image data is received over SPI on the ESP32-S3 on our custom cartridge PCB. This ESP32 is setup as SPI peripheral. It encodes the image as a JPEG (to reduce its size) and then sends it out over a WiFi WebSocket. It also receives and sends out the movement cortol signals for the robot. The code for this section can be found in esp32-sender folder.

The 7" TFT DIS08070H TFT Display is also powered by an ESP32-S3. The display ESP32 receives the data from the cartridge ESP32 over the direct Wifi connection. When it receives image data, it immediately draws it to the display. When it receives movement control signals, its uses our H-Bridge to appropiately tell the motors how to move. The code for this section can be found in esp32-receiver folder.

Side View of Robot
Side View of Robot

For the robot, the design was inspired by a metamaterial soft snake robot built by the University of Southern Denmark. This design uses a Yoshimura Crease Pattern.

The files for the cartridge PCB can be found in the cartridge_pcb folder and the CAD files for the cartridge housing in the cartridge_cad folder. The laser cutting and CAD files for the worm robot can be found in the robot folder.

Flowchart of the software/algorithm design
Software Flowchart

Parts

16
QtyValueFootprintReferences
3330Ilya_Teach:0805R2, R3, R4
3LOGOLOGOcookie, joe, up
2~Ilya_Teach:BTN_2BOOT1, RESET1
110000Ilya_Teach:0805R1
1BLUEIlya_Teach:LED-0603WIFI1
1ESP32-S3-WROOM-1PCM_Espressif:ESP32-S3-WROOM-1U2
1GREENIlya_Teach:LED-0603SPI1
1REDIlya_Teach:LED-0603POWER2
1ndsPADSConnector:nds_contact_padsU1
1~Ilya_Teach:0805C1
1~SparkFun-Connectors:1X04J1

Questions

How big is the Dsi esp PCB?

It measures 27.3 × 60 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Dsi esp use?

16 parts, built around the ESP32-S3-WROOM-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.

Where can I download the Dsi esp KiCad files?

From the grahamgrieb/DSi-Robot repository on GitHub, at the commit this page was made from: the board is cartridge_pcb/dsi_esp.kicad_pcb and its schematic Robot/Custom_coil_PCB/coil/coil.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Dsi esp design in my own project?

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

Similar boards

  • 2 layers85 × 115 mmOSO BOOK B1, the printed circuit board in 3D

    OSO BOOK B1

    joeycastillo/The-Open-Book

    For details on how to build, test and use Open Book, I've made documentation available here.

    76 parts8.1kCC-BY-SA-4.0
  • 2 layers299 × 82.5 mmPixelWave, the printed circuit board in 3D

    PixelWave

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    663 parts915
  • 4 layers56.5 × 99.8 mmBitaxeGamma, the printed circuit board in 3D

    BitaxeGamma

    bitaxeorg/bitaxeGamma

    Bitaxe based on the BM1370 from the S21 Pro

    147 parts432CERN-OHL-S-2.0
  • 2 layers129.5 × 50.8 mmLilka, the printed circuit board in 3D

    Lilka

    lilka-dev/lilka

    Схема та документація ігрової консолі Lilka

    39 parts234GPL-2.0
  • 4 layers84.5 × 129.5 mmBitaxeHex, the printed circuit board in 3D

    BitaxeHex

    bitaxeorg/ultraHex

    multi-ASIC Bitcoin miner

    369 parts190CERN-OHL-S-2.0
  • 2 layers110 × 115 mmEsp32 keyboard v0.1, the printed circuit board in 3D

    Esp32 keyboard v0.1

    hhuysqt/esp32s3-keyboard

    USB/BLE keyboard driver based on ESP32S3-WROOM-1

    230 parts168GPL-3.0
  • 2 layers35.1 × 36.6 mmBinNanoFOC, the printed circuit board in 3D

    BinNanoFOC

    katbinaris/nanofoc_devkit

    Compact All-In-One BLDC Controler featuiring ESP32-S3, TMC6300 and Magalpha sensors. Small 35x35mm footprint.

    76 parts146
  • 2 layers148 × 81 mmCommunicator pcb, the printed circuit board in 3D

    Communicator pcb

    Hack-a-Day/2025-Communicator_Badge

    The 2025 Hackaday Supercon RF Communicator Badge

    58 parts107MIT