Skip to the content
PCBKitNew board
2 layers60 × 40 mmAva carrier, the printed circuit board in 3D

Built by Aalind Tiwari, with AI-assisted CAD and development.

Size
60 × 40 mm
Copper layers
2
Thickness
1.6 mm
Parts
18
Nets
23
Pads
60
Tracks, vias
61, 0
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
5 Oct 2026
Updated
18 Oct 2026

Overview

Ava carrier is an open-source printed circuit board by AalindOg, from the AalindOg/AVA-Robot- repository on GitHub. It is a 2-layer board of 60 × 40 mm with 18 parts on 23 nets, routed with 61 tracks and 0 vias.

Its parts include 5 connectors, 3 ICs, 2 resistors, 2 diodes and 1 switch. It belongs with the ESP32 boards of this library.

README

README.md

AVA — an AI companion with a physical body

A wheeled robot project for Half Life by Hack Club.

Built by Aalind Tiwari, with AI-assisted CAD and development.

Explore the CAD · Download STEP · View STL · Development journal

AVA — front, three-quarter and rear views of the current CAD

Actual renders of the current model. Not photographs of a fabricated robot.

What I’m building

AVA is a mobile AI companion: a screen for expression and interaction, cameras and microphones for sensing, speakers for responses, and a wheeled body. The longer-term goal is to connect that body to Hermes Agent, with a small controller handling the hardware interface and a computer handling higher-level processing.

This repository brings together three parts of that project: the exterior CAD, the carrier-board design, and the firmware/server prototypes. They are at different stages. The integrated, moving robot is not finished.

Current milestone: a new body from the original references

The earlier STL attempt did not match the intended robot. Instead of polishing the wrong shape, this version was rebuilt from the original purple robot images and the surviving video views. The older meshes are not imported by the new model.

The design keeps the features that made the reference worth building:

  • A closed, rounded head with a broad teal screen and thick bezel.
  • Circular side grilles, flat antenna tabs and a low roof-mounted sensor housing.
  • A curved torso with a narrower upper section, rounded lower body and dark panel trim.
  • Two large treaded wheels with swept-spoke hubs.
  • A small central twin-wheel caster, short side pods and a circular chest detail.

Approved reference images alongside the rebuilt CAD

Reference and reconstruction side by side. Fine seams, hidden surfaces and small hardware details are still approximate.

[!IMPORTANT] This is an exterior design prototype, not a print-ready robot kit. The STL files are real geometry exports, but the dimensions are image-based assumptions. Motor mounts, electronics packaging, joints, tolerances and print orientations still need engineering and physical tests. Do not print the complete assembly expecting a working robot.

Get the files

FileUse it for
Full STEP assemblyImport named, coloured solid components into FreeCAD, Fusion or Onshape.
Full STL assemblyInspect the complete geometry; this is a multi-component assembly, not one fused print.
Individual STL componentsInspect or modify separate shell sections, wheels, trim and other components.
Coloured GLB modelOpen in a compatible 3D viewer. Uses metres and +Y up.
CadQuery sourceEdit the construction and regenerate the geometry.
Design notesRead the assumptions, interpretation choices and verification scope.
Printing statusSee what must be resolved before a physical prototype.

For everything, use GitHub’s Code → Download ZIP, or clone this repository. STEP/STL use millimetres. STEP contains editable solids; the procedural construction lives in the Python source, not a native CAD feature-history tree.

What has actually been checked

The current CAD export contains 38 component instances. They include visual stand-ins for screens, sensors and axles—not 38 fabrication-ready parts.

CheckRecorded resultEvidence
Solid geometryAll 38 component instances valid, with positive volumeGeometry report
Component clashesNo intersections above the 0.5 mm³ reporting threshold; no check errorsPairwise check
STL qualityEvery individual STL is watertight, consistently wound, finite and positive-volumeMesh report
STEP round tripRe-imported successfully; solid count and volume comparison passedRound-trip result
Viewer exportGLB re-imported with all 38 componentsViewer check
Visual reviewFront and angled views compared with the approved imagesComparison sheet

The assumed exterior envelope is approximately 232 × 147 × 394 mm (width × depth × height). Head width was set to 190 mm as a scaling choice, not a measurement from a physical robot.

These checks establish coherent files. They do not establish strength, stability, printability, electronics fit or successful motion.

What changed during this iteration

  • Closed the head rather than reproducing the rejected open-top shape.
  • Refined the lower-body curve, screen opening, wheel scale, antenna angle and sensor placement against the references.
  • Replaced side-pod geometry that produced non-watertight STL exports.
  • Fixed a shell-splitting operation that returned an empty result despite reporting valid topology.
  • Used matching numerical integration tolerances when comparing STEP export/import volumes.

The useful outcome is not just a better render: the source, exported solids and validation reports are all here to inspect.

Carrier board and electronics

The existing v1 carrier-board design is retained alongside the new CAD. It includes a battery input and power switching, a buck-module connection, a TB6612FNG motor-driver module socket, a XIAO ESP32-S3 Sense socket, motor connectors and an I²C expansion connector.

Carrier PCB layout

The carrier board and the new enclosure have not been physically integrated or fit-tested. The board files and fabrication exports are design artifacts, not evidence that a board was manufactured or powered successfully. Check component ratings and footprints before ordering or connecting a battery.

The CAD component inventory is separate from the electronics BOM: it lists visual model instances, not parts to purchase.

Software direction

The repository also retains:

  • firmware/ — PlatformIO/Arduino sources for the ESP32-S3 sensing and bridge work.
  • server/ — Python audio-receiver, transcription, dashboard and intelligence experiments.

The intended division is simple: the controller handles device I/O; the computer handles processing and agent behaviour. These are prototype sources, not proof of a working end-to-end robot. Their runtime and physical integration were not revalidated as part of this CAD update.

Rebuild the CAD

Tested with Python 3.12 and CadQuery 2.8.0. From the repository root on Linux/macOS:

sh
cd cad/reference-rebuild
python3 -m venv .venv
.venv/bin/python -m pip install -r requirements.txt

# Generate parts, assembly and geometry checks
.venv/bin/python cad/build_robot.py

# Check all meshes, re-import STEP and export GLB
.venv/bin/python cad/validate_meshes.py

# Render the actual exported geometry and compare with references
.venv/bin/python cad/render_robot.py
.venv/bin/python cad/compare.py

The model is editable procedural CAD, not a fully constrained configurator. Major dimensional changes also require checking the inner shell, openings and neighbouring components. Rerun the checks after edits. More details: CAD README.

Next steps toward a physical robot

  • Select and measure the actual display, motors, battery and controller boards.
  • Add motor mounts, bearings, electronics mounts and battery retention.
  • Design shell fasteners and access to the hardware inside.
  • Resolve the caster mount, swivel clearance and wheel-to-shaft interfaces.
  • Check wiring paths, ventilation and battery/power safety.
  • Slice individual parts and print fit-test pieces before a full enclosure.
  • Assemble, test movement and connect the hardware to the software stack.

Half Life journal and credits

The development journal and funding tracker are mirrored from Half Life. Those files are managed by the platform; this update leaves them unchanged. The CAD rebuild is documented here and in design notes, rather than inventing hours or modifying past entries.

AI assistance is part of this work. Aalind selected the reference design, rejected the earlier model and directed the rebuild. Ava/Hermes assisted with procedural CAD generation, debugging, validation, rendering and documentation. This repository does not claim the generated work was completed unaided, that it has already been accepted for a particular week, or that the physical robot has been built.

The source images are kept separately in references so readers can distinguish the design references from the new model renders. Provenance notes describe the surviving source copies; their original author/license is not independently established here.

Repository map

text
cad/reference-rebuild/
├── cad/                # Build, render, compare, validate and package scripts
├── exports/            # STEP, STL, GLB, inventory and validation reports
│   └── parts/          # Individual component-instance STLs
├── images/             # Current renders and reference comparison
├── references/         # Source reference views, kept distinct from outputs
├── DESIGN-NOTES.md
└── PRINTING.md
hardware/               # Existing carrier schematic, PCB and fabrication exports
firmware/               # Existing microcontroller prototypes
server/                 # Existing Python prototypes
bom.csv                 # Carrier-board parts list
BOM.md                  # Half Life-managed funding tracker
JOURNAL.md              # Half Life-managed devlog

License and reference assets

The project’s existing MIT declaration applies to its original code and design contributions. Supplied reference images are not being relicensed by this update; their provenance and usage rights should be checked before reuse outside this project.

Parts

18
QtyValueFootprintReferences
4M3MOUNT_M3M1, M2, M3, M4
11kR1_SOCKETR1
11kR2_SOCKETR2
1Buck 5V/5A ModuleU1_SOCKETU1
1I2C ExpansionJ4_SOCKETJ4
1LED +5VD1_SOCKETD1
1LED VBATD2_SOCKETD2
1LiPo 2S In (JST-PH)J1_SOCKETJ1
1Motor A (JST-PH)J2_SOCKETJ2
1Motor B (JST-PH)J3_SOCKETJ3
1Polyfuse 5AF1_SOCKETF1
1Power SwitchSW1_SOCKETSW1
1SBC 5V Feed (JST-VH)J5_SOCKETJ5
1TB6612FNG Motor DriverU2_SOCKETU2
1XIAO ESP32-S3 SenseU3_SOCKETU3

Questions

How big is the Ava carrier PCB?

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

What parts does the Ava carrier use?

18 parts. 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 Ava carrier KiCad files?

From the AalindOg/AVA-Robot- repository on GitHub, at the commit this page was made from: the board is hardware/ava-carrier.kicad_pcb and its schematic hardware/ava-carrier.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Ava carrier design in my own project?

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

Similar boards

  • 2 layers27.9 × 16.5 mmPowerSSO-24 breakout, the printed circuit board in 3D

    PowerSSO-24 breakout

    rusefi/rusefi

    rusefi - GPL internal combustion engine control unit

    18 parts1.2k
  • 2 layers42.7 × 13.7 mmStm32-mini12864, the printed circuit board in 3D

    Stm32-mini12864

    VoronDesign/Voron-Hardware

    Cool Hardware designed by the Voron Design group

    18 parts1.1kGPL-3.0
  • 2 layers41.2 × 46.6 mmThumb cluster left, the printed circuit board in 3D

    Thumb cluster left

    JesusFreke/lalboard

    A 3D-printed keyboard inspired by the DataHand

    18 parts993
  • 2 layers44 × 51.3 mm4272MAVcoder R4, the printed circuit board in 3D

    4272MAVcoder R4

    hackclub/OnBoard

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

    18 parts915
  • 2 layers28.3 × 14.3 mmTap Photosensor PCB, the printed circuit board in 3D

    Tap Photosensor PCB

    VoronDesign/Voron-Tap

    Tap is a nozzle-based z-probe for the V2 and Trident printer designs. The entire toolhead moves to trigger an optical switch. Tap offers many advantages:

    18 parts716GPL-3.0
  • 2 layers20.3 × 15.2 mmL0 stepper driver, the printed circuit board in 3D

    L0 stepper driver

    Luos-io/luos_engine

    Open-source and real-time orchestrator for cyber-physical-systems, to easily design, test and deploy embedded applications and digital twins.

    18 parts546MIT
  • 2 layersMooltipass, the printed circuit board in 3D

    Mooltipass

    limpkin/mooltipass

    Github repository dedicated to the mooltipass project

    18 parts531
  • 2 layers42.5 × 28.8 mmC5VRX JACK DIY V2, the printed circuit board in 3D

    C5VRX JACK DIY V2

    Twotoz/C5VRX

    Ultra-minimal, zero-CPU 5.8 GHz analog FPV video receiver using ESP32-C5 Wi-Fi 6 PHY MODEM_DIAG, BitScrambler WBFM demodulation & resistor DAC CVBS

    18 parts515GPL-3.0