Kode Dot: Open-Source All-in-One Device for Makers

by lmcollado in Circuits > Electronics

470 Views, 6 Favorites, 0 Comments

Kode Dot: Open-Source All-in-One Device for Makers

IMG_1886.jpg

Have you ever felt that prototyping involves spending more time fighting with cables, incompatible libraries, and displays that just don't work than actually creating your idea?

Meet Kode Dot, an open-source "all-in-one" device built around the powerful ESP32-S3. It integrates everything you need to start building immediately: a vibrant AMOLED touch screen, a full audio system (mic + speaker), NFC/RFID, IR emitter and receiver, a 9-axis IMU sensor, a microSD slot, and complete battery management.

Why did I make it? This project was born from a simple frustration after years of dealing with shields and breadboards: prototyping shouldn't feel like starting from scratch every time. I wanted a true "multitool for makers"—something you could just take out of the box, turn on, and start coding.

Beyond the hardware, we developed KodeOS, a system that turns your standard Arduino or ESP-IDF sketches into installable "Apps." This means you can run a sensor meter, a voice assistant, and a retro game on the same device, all loaded from the microSD card.

In this Instructable, I will share the design journey—from the initial paper sketches to hand-assembling 50 beta units—and show you how we packed all this functionality into your pocket.

Supplies

IMG_3C78F2A91F00-1.jpeg

To create a truly pocket-sized yet powerful device, we had to carefully select every component to fit within a compact form factor without sacrificing features.

Here is the complete Bill of Materials (BOM) and tools used to bring Kode Dot to life:

Core Hardware & Display

  1. MCU: Espressif ESP32-S3 (Dual-core, WiFi + BLE, Native USB)
  2. Display: 2.13" AMOLED Screen (CO5300, QSPI interface) with Capacitive Touch (CST820)
  3. Storage: microSD card slot (Level shifting breakout)

Connectivity & Sensors (The "Multi-Tool" Features)

  1. NFC / RFID: Integrated module for reading tags and cards (Added via Stretch Goals)
  2. Infrared (IR): IR Emitter and Receiver for universal remote control projects (Added via Stretch Goals)
  3. IMU: STMicroelectronics LSM6DSO (9-axis Accelerometer + Gyroscope)
  4. Audio: MEMS Microphone (INMP401) + 0.25W Speaker (8 ohms)
  5. Visuals: Addressable RGB LED (WS2812B)

Power Management

  1. PMIC: Texas Instruments BQ25896 (Safe USB-C charging)
  2. Fuel Gauge: Texas Instruments BQ27220 (For accurate battery percentage readings, not just voltage)
  3. IO Expander: TCA95xx

Design & Fabrication Tools

  1. Software: KiCad (for PCB Design), ESP-IDF / PlatformIO (for Firmware)
  2. Manufacturing: PCBWay (PCB fabrication), 3D Printing (for the case)
  3. Assembly: Soldering Station, Hot Air Rework Station, Solder Paste

The Spark and Early Iterations

Captura de pantalla 2025-12-15 a las 17.28.53.png
Captura de pantalla 2025-12-15 a las 17.31.36.png

The Spark: "Enough is Enough" The story of Kode Dot began exactly one year ago. After dealing with yet another tangle of shields, temperamental displays, and outdated libraries, we finally said "enough". We realized that prototyping shouldn't feel like starting from scratch every time.

We wanted to build a "real multitool" for makers: a device you could just open, power on, and build with. No bag of loose parts, no bug hunting, and no fighting just to get a "Hello World" on the screen.

From Paper to "Ugly" PCBs The design process wasn't a straight line. We started with simple notebooks and Figma mockups to figure out the form factor. From there, we moved to what we call "ugly PCBs only we could love".

These early prototypes were large and rough, but they were crucial. Each iteration pushed us toward a clear, unified vision:

  1. Total Integration: We decided to merge everything—AMOLED touch display, audio, IMU, and power management—directly onto the board.
  2. A Modern Brain: We chose the ESP32-S3 for its native USB-CDC/JTAG capabilities, Wi-Fi/BLE, and massive community support.
  3. The "App" System: We realized that for this to be useful, every sketch needed to become an installable "App" that you could run and share in seconds.

The Hardware Architecture

Captura de pantalla 2025-12-15 a las 17.31.53.png

We didn't just pick random components; we selected each part to solve specific problems we faced in other maker tools. Here is the breakdown of the hardware architecture and what it gives you:

The Brain: ESP32-S3 We chose the ESP32-S3 for its dual-core power (crucial for driving smooth UIs), native USB support for easy flashing/debugging, and its massive community support. It handles Wi-Fi and BLE, making it perfect for connected builds.

The Face: Custom AMOLED Display We hunted for screens for weeks, testing for color fidelity and touch latency. We settled on a custom Capacitive AMOLED panel tailored for Kode. It delivers crisp visuals and interacts perfectly with LVGL for instant UI response—no more laggy, washed-out screens.

Interaction & Sensors

  1. Integrated Audio (Mic + Speaker): Enables voice assistants, sound effects, meters, and text-to-speech without external modules.
  2. 9-Axis IMU (LSM6DSO): Combines accelerometer, gyroscope, and magnetometer for gesture control, orientation sensing, and gaming.
  3. microSD Slot: Used to store Apps and assets (icons, audio). Installing an app is as simple as copying and pasting a file.

Power Management (The Invisible Hero) A portable device needs reliable power.

  1. PMIC (BQ25896): Handles safe USB-C charging and provides a robust 5V/2A bus for external accessories.
  2. Fuel Gauge (BQ27220): Provides real battery percentage readings, not just rough voltage estimates.

Expansion Top and bottom connectors allow for modular expansions, supporting add-ons like Meshtastic (LoRa), IR, and NFC/RFID.

The KodeOS Workflow

IMG_060A7C92DC3B-1.jpeg

Hardware is only half the story. We built KodeOS to fundamentally change how you interact with the device. It turns your standard Arduino or ESP-IDF sketches into "Apps" that appear in a graphical launcher.

From Idea to App in Minutes Instead of flashing firmware and overwriting the device every time you want to switch projects, the workflow is much simpler:

  1. Compile: You write your code and compile the binary.
  2. Drag & Drop: You drop the compiled binary and its assets (icons, audio files) onto the microSD card.
  3. Run: The app appears in the Kode Dot launcher. You just pick the icon, and it runs.

Why this changes everything

  1. No Wiring Required: Since the display, audio, sensors, and storage are already integrated, you don't need to wire anything up. You just code.
  2. Shareable: You can zip your app folder or commit it to a GitHub repo. Anyone with a Kode Dot can download it, put it on their SD card, and run it immediately.

Hand-Assembling 50 Units

Captura de pantalla 2025-12-15 a las 17.32.35.png

Before thinking about mass production, we decided to do something a bit crazy: we hand-assembled 50 units right here in the lab.

Why build them one by one? It wasn't just to save money; it was to learn. We needed to:

  1. Understand Manufacturing: By building them ourselves, we learned the hard truths about tolerances, adhesives, light diffusers, and screw placements.
  2. Find Weak Points: We identified exactly where the assembly process was difficult or prone to failure, allowing us to redesign those parts before the final run.
  3. Get Real Feedback: We sold these units to beta testers to get honest, unfiltered opinions.

The Feedback Loop These 50 units shipped to makers in several countries. The data we got back was invaluable. We learned everything from how to improve the tactile feel of the buttons to making necessary tweaks in audio performance and thermal management.

Every single note from the beta testers went into our backlog and resulted in a design change for the final version you see now.

Open Source and Kickstarter Launch

Captura de pantalla 2025-12-15 a las 17.39.20.png

Why We Made It Ultimately, we built Kode Dot because we believe prototyping should feel creative, not fragile. Your first day with a new device should be about making things—spinning up a decibel meter, trying a mini-game, or using Meshtastic—not babysitting hardware or chasing broken drivers.

Open Source & Community We are committed to the open-source spirit. We are publishing tutorials, examples, and the full app structure so you can start building immediately.

  1. Documentation: We are building a living roadmap.
  2. Hardware Files: Design files and schematics will be released to the community after the campaign.
  3. Stretch Goals: Thanks to community support, we've already added features like IR (Infrared), a Vibration Motor, and NFC/RFID support.

Taking the Leap: Kickstarter With the design consolidated and the lessons learned from our 50 beta units, we are taking the leap to mass production. We are now live on Kickstarter to bring Kode Dot to makers everywhere.

If you want to support the project, get your own device, or just follow our journey, we would love to have you involved.

Link to our campaign: https://www.kickstarter.com/projects/kode/kode-dot-the-all-in-one-pocket-size-maker-device