VVS-Ballers-RoboCup

Public

@kushal-sachdeva78

Share VVS-Ballers-RoboCup

Check access before sharing the link.

Who can open this board

Anyone can open this board. No sign-in is required.

This link opens the latest version. Copying it does not grant additional access.

Loading 3D model… large boards can take a moment.

README

VVS Ballers: RoboCupJunior Soccer

Autonomous RoboCupJunior Soccer robots by Team VVS Ballers, designed and iterated across multiple seasons, from EV3 regional robots to a custom Teensy-based international platform.
Firmware (C++) · multi-board electronics (KiCad) · mechanical design (Fusion 360).


Results

  • RoboCup 2026, Incheon, South Korea (International): 9th place, RoboCupJunior Soccer (IR League). Two self-built robots, designed, wired, and programmed by a team of two.
  • RoboCupJunior India, 2025-26 season: came up through the Indian regional and national rounds to qualify for RoboCup 2026. The trophy and finals footage from the national event are in the Nationals gallery.

Press and media


Seasons

SeasonWhat's inside
RoboCup Internationals 2025-26 ⭐ currentTwo autonomous Soccer-Infrared robots (attacker + defender): a Teensy 4.1 multi-board stack with an IR ball ring, line ring, ultrasonic, OpenMV goal camera, and 48 V solenoid kicker. Firmware + KiCad PCBs + Fusion CAD.
RoboCup Nationals 2025-26Nationals build: EV3 robot program (HiTechnic IR seeker and compass), an Arduino relay-driven solenoid kicker, 3D-printed chassis parts, the season poster, and the trophy and finals gallery.
RoboCup Regionals 2025-26EV3 holonomic robot (diamond omni drive, dual underside colour sensors, side IR distance, IR seeker, compass heading hold) + an Arduino ultrasonic-triggered kicker + printable parts + poster.
RoboCup 2024-25Prior season: international Team Description Paper, posters, and earlier EV3 reference designs.

The Internationals 2025-26 robots are the current flagship, and the rest of this page focuses on them. The full detail lives in that folder's detailed README and a complete technical deep-dive. Competition media: TDP · poster · TDP video · photo gallery.

Code-span paths below (e.g. Firmware/Attacker) are relative to RoboCup Internationals 2025-26/.

Earlier-season highlights

  • Regionals 2025-26 (EV3): EV3 motors driving omni wheels in a diamond layout; underside colour sensors for white-line and goal-area avoidance; side IR sensors for walls; an IR seeker for ball tracking; and a compass for heading correction. An external Arduino kicker (TB6612FNG H-bridge + gearmotor, ultrasonic ball detect) steps through kick, hold, retract, and cooldown phases.
  • Nationals 2025-26 (EV3): the same EV3 sensing platform, upgraded with a relay-driven solenoid kicker triggered by an ultrasonic capture sensor. The custom Teensy and KiCad electronics stack was developed next, for the Internationals robots.

Internationals 2025-26: the robots at a glance

Both robots share one electronics stack and one chassis; only the role firmware on the main board differs.

AttackerDefender (goalkeeper)
JobWin the ball, aim, and shoot the open cornerHold the goal mouth and clear the ball
Main firmwareFirmware/Attacker/Attacker_Chase_Aim_Kick_LineFirmware/Defender/Defender_Full
BallIR ring (16 sensors)IR ring
Staying in boundsLine ring + ultrasonic fused boundary escapeLine keeps it on the goal-area ("D") line; ultrasonic cross-check
Goal / aimOpenMV camera to open-corner bearing(camera optional)
Kicker48 V solenoid, camera-gatedShort clearing kick

Electronics: the boards

A multi-board design: each subsystem has its own microcontroller, and the boards talk to the main board over compact UART links (CRC-8-framed, bar the plain-ASCII IR link), keeping the fast sensor loops off the main control CPU.

BoardMCUDoesKiCadFirmware
MainTeensy 4.1Drive (4x DRV8263H), BNO055 IMU, capture sensor, kicker relay, all linksPCB/MainFirmware/Attacker, Firmware/Defender
IR ringTeensy 4.116x TSSP58038 for ball bearing and distancePCB/IRFirmware/IR_Ball_Sensor
Line ringTeensy 4.14x QTR-MD-05A (18 ch) for white-line detectionPCB/LineFirmware/Line_Sensor
UltrasonicArduino Nano Every4x HC-SR04 for wall distancesPCB/UltrasonicFirmware/Ultrasonic
CameraOpenMV H7Goal / keeper / open-corner vision-Firmware/Camera
Power-12 V / 5 V / 3.3 V rails + 48 V solenoid boostPCB/Power-
Motor-current (optional)Arduino Nano EveryDRV8263H stall / over-current watchdog-Firmware/Motor_Current

Human-readable wiring PDFs for the Main, Power, IR, and Line boards are in PCB/Wiring/.

How it plays: design choices vs. the game

Everything is built around what actually wins (and loses) a RoboCupJunior Soccer match. (A goal counts when the ball touches the back wall of the goal; touching a wall or driving fully into the marked penalty area is an out-of-bounds penalty.)

  • Score in the goal. The IR ring gives the ball's bearing; the main board chases it with an omni-wheel drive held straight by a BNO055 heading PID. Once the ball is captured, the OpenMV camera finds the goal, picks the open corner (dodging the keeper), and the chassis turns in place until that corner is dead ahead before the solenoid fires. Aiming for the open corner instead of the goal centre is how you beat a keeper.

  • Never cross the line (the expensive mistake). The attacker treats a side as the field boundary only when the line ring and the ultrasonics agree (white line seen and wall within 300 mm), then flees away from it. Two independent sensors must concur, so one noisy reading can't make the robot dart out of bounds.

  • Keep the keeper on its line, not inside the box. No robot may be fully inside the penalty area, so the defender uses the line ring to ride the edge of the goal area ("the D") while tracking the ball laterally and clearing it on contact.

  • Stay legal in the Infrared league. IR-emitting rangefinders (ToF, LiDAR, IR distance sensors) are banned because they'd swamp other robots' IR ball sensors. That is why walls are ranged with ultrasonic HC-SR04s here, not IR.

  • Power within the rules. The rules cap robot power at 48 V DC; the solenoid kicker runs from a 48 V boost converter (right at the legal ceiling, for the hardest legal kick) while logic and motors run from 3.3 V / 5 V / 12 V rails.

  • Referee start/stop. The main board pins out the RoboCupJunior Communication Module GO/STOP inputs, with firmware support toggled via USE_COMMS in the defender build.

The binary inter-board links (ultrasonic, line, camera to main) are short frames, each guarded by an identical CRC-8 (poly 0x07); the IR link is plain delimited ASCII. Full byte-level layouts are in the technical deep-dive.

Team

MemberRoles
Kushal Sachdeva (Team Leader)Electrical, Software & CAD
Darsh GoelMechanical & CAD

Region: India · League: RoboCupJunior Soccer Infrared

Sponsors

Our thanks to Amazon · DLF · Havells · OpenMV · Magnum Ventures · Budtree Management, and to our mentors, school, and the RoboCup Junior community for their support.

License

Released under the MIT License; see LICENSE. © 2026 VVS Ballers (Kushal Sachdeva, Darsh Goel). You're welcome to learn from and build on this work; please keep the attribution.

Comments

No comments yet. Be the first to ask about this board.

Ask about this board

Sign in to BoardRepo

New here? Signing in creates your account; there is no separate sign-up.