ECE · VIT Bhopal · PCB + robotics

DivyarthJain

I build robots and the boards that run them. Click the hexapod to spin it around, or make it dance.

Loading robot 0%
18 servos · 3 per leg

Real leg IK, live in your browser · click the robot to rotate and zoom

Hexapod v1 · 1st year · Feb – Oct 2024

From a wire mess
to first steps

18 servos, six legs, a lot of jumper wire. Inverse kinematics written from scratch, tuned until it stood up and walked across the lab.

Video
WalkingTripod gait across the lab floor.
Hexapod with an Arduino on a breadboard and bundles of servo wires, dated 11 March 2024.
11 March 2024Every servo wired. Nothing moves yet.
Hexapod on a lab desk beside a laptop running code.
Debug daysGait code on the laptop, robot on the bench.
Video
Bench testSix legs, 18 servos, one very busy wiring harness.
The hexapod standing on a table, viewed from above.
Standing poseBody level, all six feet down.
Video
The workbenchThe wired-up hexapod next to the lab workstation.
Video
Servo test rigPropped on a box, legs driven from a 16-channel PWM driver.

Hexapod v2 · Dec 2024 – Aug 2025 (approximate)

Less spaghetti,
more spider

Second build, done properly: a printed frame, split power, a heads-up display and an Xbox controller. Originally Android-based open-source hexapod firmware, ported to run on an ESP32 plus an RP2040, with smoother gaits added on top.

Video
Walking, from aboveWalking across a tiled floor.
Video
Floor testWalking test at home.
Black 3D-printed hexapod with red braided cables standing on a wooden table.
Standing18 servos, red braided power runs.
Hexapod seen from above: body cover with a window onto the controller board, six legs spread out.
From aboveController visible through the body window.
RP2040Zero runs the gait engine
2×PCA9685 boards drive 18 servos
ESP32for the HUD and Xbox controller link
3UBECs to keep the servo supply stable

PCB design · EasyEDA + KiCad

Boards I
designed

A 4-layer ESP32-S3 development board built to JLCPCB's design rules, and a six-servo driver board that does more than move joints. It measures every servo's angle and motor current and streams both back to a Raspberry Pi, so the robot can sense load, contact and stalls, not just position.

Prometheus S3

4-layer ESP32-S3 dev board
3D render of the Prometheus S3 board: purple 4-layer PCB with two USB-C ports, an ESP32-S3 module, boot and reset buttons and two rows of header pins. Prometheus S3
Prometheus S3ESP32-S3 module, two USB-C ports, boot and reset, 40 breadboard pins.
PCB layout of the Prometheus S3 board, top copper and silkscreen. Layout · 4 layers
LayoutAntenna kept clear of copper, USB pairs routed short.
Schematic of the Prometheus S3: power regulator, ESP32-S3 module, header pins, USB-C OTG and USB-to-UART ports with ESD protection, CP2102N UART bridge and auto-programmer. Schematic
SchematicPower · SoC · two USB-C paths with ESD · CP2102N bridge · auto-programmer.
4layers, built to JLCPCB's stack-up and design rules
2× USB-Cnative USB (OTG) and a CP2102N USB-to-UART port
ESDTVS diodes on both ports, Schottky OR-ing of the two 5 V inputs
0buttons needed to flash: auto-programmer drives boot and reset

Six-servo driver + sensor feedback

KiCad 10 · schematic Rev 3
KiCad schematic of the six-servo driver and sensor-feedback board. Schematic Rev 3
Six-servo driver + sensor feedbackPCA9685 drive · MCP6004 current sensing · two MCP3008 ADCs · reverse-polarity and surge protection.
6servos driven over I²C
12feedback channels: angle + current per joint
3.02 Vat 1 A: 0.15 Ω shunt × gain of 20.1
~1 mAcurrent resolution per ADC step
Signal chain: servo current and position into ADCs and the Raspberry Pi, which drives the PCA9685.
Signal chainI²C out to the servos, SPI back from the sensors.

Capstone · world models · 2026

A world model
that fits on a Pi

A world model learns how the world behaves, so a robot can imagine what an action will do before it moves. I'm taking a JEPA world model (LeWorldModel, about 15 M parameters), quantizing it to run on a Raspberry Pi 4B, and letting it keep learning on the robot when the world changes.

Inside the world model

Runningonce per camera frame

Encode

Camera frame → a compact latent state: 192 numbers that describe the scene.

Runningevery step

Predict

Latent state + action → the next latent state. Chain it forward and the robot imagines the future.

Nextbefore each move

Plan in imagination

Try many action sequences inside the model, keep the one whose imagined outcome lands nearest the goal.

Why latent space: it predicts compact features, not pixels, which is what makes imagining cheap enough for a Pi.

Keeps learning on the robot

Imagined vs real

Every step, the prediction is checked against what actually happened.

Gate

When the model is right, nothing is trained. Compute is spent only when the world shifts.

Validated in sim

On-board update

Only a small slice of the predictor is retrained on the robot: 1.33 M of 10.79 M weights.

Where it plugs in · the robot stack

Planned

Planner · VLM

Goal + camera → subgoals

In progress

Policy · VLA

Subgoal → arm motion

Working in sim

Controller

Joints → ST3215-HS servos

The world model sits beside all three: it checks each step against reality and is the only part that learns on the robot.

Target: Raspberry Pi 4B · 8 GB

Imagine one step ahead9–23 ms
Encode one camera frame0.35–0.93 s
One learning step0.55–1.48 s
00.5 s1.0 s1.5 s

That is roughly 40–110 imagined steps per second before any quantization. Full-precision (fp32) estimates from a compute count, scaled to an assumed 3–8 GFLOPS on the Pi's four Cortex-A72 cores. Not measured on the board yet.

Why quantize

Memory
Not the limit: the predictor is ~43 MB in fp32, the Pi has 8 GB.
Compute
The limit: seeing a frame and learning from it each take up to a second.
  1. Measure the real timings on the Pi 4B.
  2. Quantize the encoder and predictor to INT8 and check prediction quality holds.
  3. Keep learning on the small slice only, so updates fit between control ticks.
Work in progress
The arm: next buildHardware locked: ST3215-HS bus servos, Raspberry Pi 4B, Pi Camera 2. The brain is tested in sim; the build is underway.
Sim · 4× speed
Pick and placeMotor current tells the brain which box it holds: the heavy box is relearned in 2 trials, the light one needs none.
Sim · 4× speed
Box strikeWith current sensing it sees a heavier box coming and learns an icy floor in 1 trial instead of 6.
~4×less training compute than learning all the time
2.7×lower surprise after a sudden change than a frozen model
0drift while nothing changes
10random seeds per result (simulation)

Research · chips

Below the
transistor

Poster: stability-aware NC-CMOS logic design. Paper accepted
NC-CMOS logicOne sizing rule for ferroelectric transistors, checked in 2,270 transistor-level runs.
Poster: an adaptive FPGA AI accelerator that spends compute only where needed. Poster
Adaptive FPGA acceleratorCuts compute about 7× with under 1% accuracy loss (emulated).

Accepted · to appear

Stability-Aware NC-CMOS Logic Design Through Ferroelectric Capacitance Matching: A Landau–Khalatnikov-Based Parametric Study

A. Chouksey, D. Joshi, D. Jain, A. Beohar, et al. · Paper ID 2381

Experience · 2 internships

Shipping AI
to real users

5 May – 6 Jul 2026 · Indore

AI Product Intern · Multi-agent AI

QSC Solutions · project: An Autonomous Multimodal Multi-Agent Framework for Applications in Government and Commercial Sectors

  • Worked on a multilingual AI avatar that answers callers in their own dialect, and an autonomous, personalised voice-outreach system.
  • Fine-tuned the language models behind it, including parameter-efficient fine-tuning.
  • Explored how multimodal, multi-agent systems apply across government and commercial use cases.
Internship certificate from QSC Solutions for AI Product Intern, 5 May 2026 to 6 July 2026, project: An Autonomous Multimodal Multi-Agent Framework for Applications in Government and Commercial Sectors. Certificate
Internship certificateQSC Solutions, signed by the partner.

1 May – 16 Jun 2025 · Indore

AI Product Intern · Video Personalization

QSC Cloud, a subsidiary of QSC Solutions

Worked on AI Video Avatar, a product that turns one message into personalised videos for mass communication.

  • Integrated AI models into the video pipeline.
  • Improved the personalization logic behind each avatar video.
  • Helped build the machine-learning training module.
  • Turned usage data into insights that shaped the product.
Internship certificate from QSC Solutions dated 24 June 2025, for AI Product Intern, Video Personalization at QSC Cloud, 1 May to 16 June 2025. Certificate
Internship certificateIssued by QSC Solutions, 24 June 2025.