Skip to the content
2 layers73.1 × 99.9 mmBloopyHardware, the printed circuit board in 3D

Bloopy is a personal AI companion robot prototype integrating custom PCB designs, ESP32 sensors, Raspberry Pi processing, interactive OLED animations, and an AI-powered companion app.

Size
73.1 × 99.9 mm
Copper layers
2
Thickness
1.6 mm
Parts
72
Nets
84
Pads
319
Tracks, vias
564, 125
Pours
1
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
28 Oct 2026
Updated
28 Oct 2026

Overview

BloopyHardware is an open-source printed circuit board by BrandonC27-Engineer, from the BrandonC27-Engineer/Bloopy-Robot repository on GitHub. It is a 2-layer board of 73.1 × 99.9 mm with 72 parts on 84 nets, routed with 564 tracks and 125 vias.

It is built around the ESP32-WROOM-32E, DRV8833PWPR and BNO086. Its parts include 2 ICs and 1 transistor. It belongs with the robots and motor control boards and the ESP32 boards of this library.

Main components

3

README

README.md

Bloopy 🤖

An AI Companion Robot Prototype

Designed and built by Brandon Carmona Guerena

Bloopy is a personal robotics project exploring how electronics, physical interaction, and artificial intelligence can work together to create a more expressive companion.

The project began with an idea: What if a digital companion could eventually have a physical presence and interact with its surroundings?

I developed a stationary working prototype to explore that idea, combining custom hardware, sensors, a Raspberry Pi, an ESP32, animated eyes, and an AI-assisted companion application.


What the Prototype Does

The stationary Bloopy prototype integrates:

  • ESP32: Collects sensor readings and controls OLED eye animations.
  • Raspberry Pi 4: Handles higher-level processing and connected peripherals.
  • Sensors: Detect environmental conditions and nearby objects.
  • OLED eyes: Display expressions and animations in response to interactions.
  • Camera and microphone: Support visual and audio input.
  • Speaker: Provides audio output.
  • Companion application: Provides controls, displays information, and communicates with the robot.
  • AI API integration: Supports context-aware companion responses.

The application and hardware communicate to create an interactive experience rather than a standalone chatbot.

My Design and Building Process

I developed Bloopy through an iterative process involving:

  1. Planning the robot's capabilities and component architecture.
  2. Designing a stationary stand using Fusion 360.
  3. Designing custom printed circuit boards using KiCad.
  4. Assembling and connecting electronic components.
  5. Integrating the ESP32 and Raspberry Pi.
  6. Developing and refining software with AI assistance.
  7. Testing the hardware and troubleshooting connections and behavior.

One of the greatest challenges was integrating hardware and software into a system that behaved as intended.

Custom PCB Designs

I designed two different PCBs:

BloopyPrototype — Triangular PCB

Created for the stationary prototype.

This board was assembled and used successfully in the working prototype.

BloopyHardware — Rectangular PCB

Designed for a proposed future mobile Bloopy design.

The board was manufactured but has not been assembled or validated as a working electronic system.

The two designs represent different stages of development, not two completed robots.

3D-Printed Stand

BloopyPrototype.3mf

The stand was designed in Fusion 360 to support the stationary robot prototype and its components.

It represents the physical structure used during prototype development.


Repository Structure

Bloopy-App-Reconstructed/

Recovered and reconstructed application source files.

These files document application structure and development work. They should not be interpreted as a byte-for-byte copy of every file used in the original running application.

Arduino-Uno-R3/

Reconstructed Arduino Uno R3 example code based on the project's documented behavior.

The original project used an ultrasonic distance sensor, a keypad, and an LCD display.

PCB-Additional-Schematics/

Original KiCad design resources for both custom PCB projects.

Each PCB project includes:

  • .kicad_pcb — PCB layout
  • .kicad_sch — Circuit schematic
  • .kicad_pro — KiCad project settings

BloopyPrototype.3mf

Original 3D CAD model of the stationary Bloopy stand.

SOURCE_NOTES.md

Additional information about source recovery, reconstruction, and the status of the uploaded files.


Arduino Projects: Where My Electronics Journey Began

Before Bloopy, I learned foundational electronics and programming through an Arduino course.

After completing the course, I independently adapted earlier code examples to combine:

  • An Arduino Uno R3
  • An ultrasonic distance sensor
  • An LCD display
  • A keypad

The program displayed sensor measurements in the serial monitor and keypad input on the LCD.

I also attempted a larger Arduino Mega project with multiple sensors.

That second project was unsuccessful because of difficulties with soldering and electrical connections. Although I did not finish it, the experience motivated me to learn better assembly techniques.

These experiences helped me understand how individual electronic components communicate and function together.


Development Tools

  • Fusion 360 — Mechanical CAD
  • KiCad — PCB and schematic design
  • Arduino IDE — Microcontroller development
  • ESP32 — Embedded hardware control
  • Raspberry Pi — Computing and peripheral integration
  • Python and web development technologies
  • AI-assisted software development tools

AI Assistance and Source Transparency

I used AI tools, including Claude, to assist with portions of software development.

My role included defining requirements, specifying behavior, reviewing generated implementations, requesting changes, integrating components, and troubleshooting the system.

Some software in this repository was reconstructed after the original development process. Reconstructed files are identified as such and should not be represented as the exact original deployed source code.

The original ESP32 firmware used in the working prototype is not included in this recovered source collection.

For details, see SOURCE_NOTES.md.


Current Status and Future Goals

Completed: Functional stationary Bloopy prototype integrating custom electronics, sensors, animated eyes, Raspberry Pi processing, and a companion application.

Future development: Improving physical expressiveness, exploring mobility, and developing more continuous character animations that make Bloopy feel alive.

My long-term goal is to continue learning how mechanical design, electronics, and software can come together in complete robotic systems.


About the Builder

I'm Brandon Carmona Guerena, a high school student in Phoenix, Arizona, interested in robotics and engineering.

I enjoy learning by building, experimenting, making mistakes, and improving my designs.

Visit my GitHub profile

Parts

72
QtyValueFootprintReferences
1310kΩResistor_SMD:R_0805_2012MetricR_BNO_BOOT_PULLUP1, R_BNO_RST_PULLUP1, R_BOOT_PULLUP1, R_DRV_SLEEP_PULLUP1, R_EN_PULLUP_ESP32, R_M1_ENC_A_PULLUP1, R_M1_ENC_B_PULLUP1, R_M2_ENC_A_PULLUP1, R_M2_ENC_B_PULLUP1, R_M3_ENC_A_PULLUP1, R_M3_ENC_B_PULLUP1, R_U3_FAULT_PULLUP1, R_U4_FAULT_PULLUP1
40.1uFCapacitor_SMD:C_0805_2012MetricC_BNO_100N1, C_BNO_CAP1, C_EN1, C_ESP32_100N1
40ΩResistor_SMD:R_0805_2012MetricR_U3_AISEN1, R_U3_BISEN1, R_U4_AISEN1, R_U4_BISEN1
4MountingHoleMountingHole:MountingHole_3.2mm_M3H1, H2, H3, H4
32.2kΩResistor_SMD:R_0805_2012MetricR_SCL_PULLUP1, R_SDA_PULLUP1, R_VMOTOR_LED1
20.01uFCapacitor_SMD:C_0805_2012MetricC_U3_VCP1, C_U4_VCP1
2100kΩResistor_SMD:R_0805_2012MetricR_EN_PULLUP1, R_GATE_PD1
210uFCapacitor_SMD:C_0805_2012MetricC_ESP32_BULK1, C_VBAT1
22.2uFCapacitor_SMD:C_0805_2012MetricC_U3_VINT1, C_U4_VINT1
2TestPointTestPoint:TestPoint_Pad_D1.5mmT_DRV1, T_DRV2
10.1uFCapacitor_SMD:C_0603_1608MetricC_SS1
10.1uF 16VCapacitor_SMD:C_0805_2012MetricC_MOTOR_100N1
10kΩResistor_SMD:R_0805_2012MetricR_BNO_SA0
112V Zener diodeDiode_SMD:D_SOD-123D_GS_ZENER1
11uFCapacitor_SMD:C_0805_2012MetricC_BNO_1U1
12.2uHLQH44PN2R2MP0L:IND_LQH44PN2R2MP0LL_3V3
1221kΩResistor_SMD:R_0805_2012MetricR_FB_BOTTOM1
122uFCapacitor_SMD:C_0805_2012MetricC_3V3_OUT1
13300pFCapacitor_SMD:C_0603_1608MetricC_FF1
1470uFCapacitor_THT:CP_Radial_D8.0mm_P3.50mmC_BAT_BULK1
1470uF 16VCapacitor_THT:CP_Radial_D8.0mm_P3.50mmC_MOTOR_BULK1
147uFCapacitor_SMD:CP_Elec_6.3x5.8C_VBAT_BULK1
15A fuseFuse:Fuse_Blade_ATO_directSolderF_BAT1
1698kΩResistor_SMD:R_0805_2012MetricR_FB_TOP1
1BNO086IC_BNO086:IC_BNO086U2
1Boot buttonButton_Switch_SMD:SW_SPST_TL3342SW_BOOT1
1Buck InputTerminalBlock_Phoenix:TerminalBlock_Phoenix_MKDS-1,5-2-5.08_1x02_P5.08mm_HorizontalJ_MOTOR_BUCK_IN1
1Buck OutputTerminalBlock_Phoenix:TerminalBlock_Phoenix_MKDS-1,5-2-5.08_1x02_P5.08mm_HorizontalJ_MOTOR_BUCK_OUT1
1Conn_01x02TerminalBlock_Phoenix:TerminalBlock_Phoenix_MKDS-1,5-2-5.08_1x02_P5.08mm_HorizontalJ_BAT1
1DRV8833_M1_M2digikey-footprints:TSSOP-16-1EP_W4.40mmU_DRV2
1DRV8833_M3digikey-footprints:TSSOP-16-1EP_W4.40mmU_DRV1
1ESP32-WROOM-32ERF_Module:ESP32-WROOM-32EU1
1LEDLED_SMD:LED_0805_2012MetricD_VMOTOR_LED1
1Motor 1 + EnconderConnector_JST:JST_XH_B6B-XH-A_1x06_P2.50mm_VerticalJ_MOTOR1
1Motor 2 + EncoderConnector_JST:JST_XH_B6B-XH-A_1x06_P2.50mm_VerticalJ_MOTOR2
1Motor 3 + EncoderConnector_JST:JST_XH_B6B-XH-A_1x06_P2.50mm_VerticalJ_MOTOR3
1Optional SensorConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalI2C1
1Programming Header 1x6Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalJ_PROG1
1Q_PMOS_GDSPackage_TO_SOT_SMD:TO-252-3_TabPin2Q1
1Raspberry Pi / AI Signal ConnectorConnector_PinHeader_2.54mm:PinHeader_1x08_P2.54mm_VerticalJ_AI1
1Reset buttonButton_Switch_SMD:SW_SPST_TL3342SW_RESET1
1SPST power switchConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalSW_MAIN1
1TLV62150 buck regulatorPackage_DFN_QFN:VQFN-16-1EP_3x3mm_P0.5mm_EP1.6x1.6mmTLV62150RGTT1
1VMOTOR_6VTestPoint:TestPoint_Pad_D1.5mmTP_VMOTOR1

More from BrandonC27-Engineer/Bloopy-Robot

1
  • 2 layers110 × 59.8 mmBloopyPrototype, the printed circuit board in 3D

    BloopyPrototype

    BrandonC27-Engineer/Bloopy-Robot

    Bloopy is a personal AI companion robot prototype integrating custom PCB designs, ESP32 sensors, Raspberry Pi processing, interactive OLED animations, and an AI-powered companion app.

    10 parts

Similar boards

  • 4 layers90 × 50 mmIkeda MainBoard, the printed circuit board in 3D

    Ikeda MainBoard

    ararobo/ROBOCON_2025_A_PCB

    164 parts3MIT
  • 2 layers57.6 × 40 mmMushak pcb, the printed circuit board in 3D

    Mushak pcb

    gautam-dev-maker/mushak

    It is a Micromouse, maze solving bot.

    117 parts62MIT
  • 2 layers35 × 39 mmNex, the printed circuit board in 3D

    Nex

    dialgorithm/nex

    esp32 swarm bots

    60 parts1
  • 2 layers350 × 235 mmDogrudan sdr C, the printed circuit board in 3D

    Dogrudan sdr C

    kocer/direct-sampling-sdr

    Direct-sampling SDR transceiver with four phase-coherent channels, and a class-A power amplifier for 1.8 to 54 MHz.

    406 parts1
  • 4 layers131 × 89.5 mmMecha pico mcb, the printed circuit board in 3D

    Mecha pico mcb

    wubneh/MCTR260-pico-firmware

    Raspberry Pi Pico W robot controller firmware for MCTR 260 Mechatronics Design. Dual-core BLE architecture with mecanum drive, stepper/DC motor support, and configurable motion profiles.

    85 parts1MIT
  • 2 layers80 × 79 mmMM Power Subsystem, the printed circuit board in 3D

    MM Power Subsystem

    ALECIA13/EEE3088F-2025

    This repository contains the Power Module for a Micro-Mouse robot project, developed as part of the EEE3088F (2025) course.

    110 parts
  • 4 layers62 × 42 mmHybrid Controller, the printed circuit board in 3D

    Hybrid Controller

    DesignStraub/ringwheel-hybrid-drone

    A 5-inch FPV drone whose prop ducts fold down and become wheels. Design study in Fusion 360 and KiCad, CC BY-NC-SA 4.0.

    103 parts
  • 2 layers76 × 53 mmEEE3088F Project PCB, the printed circuit board in 3D

    EEE3088F Project PCB

    GoldenExperienceR/EEE3088F-Project-PCB-Files-Group-36-TRKJON002-MTMTAD006

    EEE3088F Project Power PCB KiCad Design

    52 parts

Questions

How big is the BloopyHardware PCB?

It measures 73.1 × 99.9 mm and has 2 copper layers, 1.6 mm thick.

What parts does the BloopyHardware use?

72 parts, built around the ESP32-WROOM-32E, DRV8833PWPR and BNO086. 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 BloopyHardware KiCad files?

From the BrandonC27-Engineer/Bloopy-Robot repository on GitHub, at the commit this page was made from: the board is PCB-Additional-Schematics/BloopyHardware/BloopyHardware.kicad_pcb and its schematic PCB-Additional-Schematics/BloopyHardware/BloopyHardware.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the BloopyHardware design in my own project?

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