Back to Combined Projects

Toadstool

In Progress

Toadstool is an offseason robotics mini bot created for the 2026 season.

4/25/26

Overview

Toadstool is a mini bot that I am creating with one of my friends on another team (8230), it has a 15" x 15" frame, so its around half the frame size as the 2026 9033 Robot. When the bumper is applied, its total size gains around 7 inches, making it around 22" x 22"


Toadstool Engineering Drawing

Project Background & Rationale

The main reason for creating this bot was to have a platform to test out new ideas and designs for the 2026 season, as well as to have a fun project to work on with a friend. The mini bot size allows us to experiment with different designs and components without having to worry about the constraints of a full-size robot, and also allows us to keep costs down.

Note

This project is still in development, and as such, the page is.. also in development. I will update this page as I make progress on the project, same thing with Quokka.

Design of components

One of the things that let us make Toadstool so small was the custom swerve modules, aptly named ToadSwerves. Almost every part in this design is 3d printed, expect for the bearings, motors, and screws. The gears are resin printed (through JLC3DP), and everything else is printed on my home printers (Neptune 4 Max, and Modded Ender 3). The motors we decided to go with is the base CIM motor, which are brushed DC motors, which get controlled by Victor SPX's


Victor SPX's are not my first choice for motor controllers, but we were given a bunch for free by neighboring teams, same with the CIM motors (and some mini CIM motors). Another thing that let us keep cost down was using AS5600 Absolute Encoders, through SPI, as that let us avoid the really expensive CANCoders used on main season robots. For what its doing, the code for the encoders is pretty simple:


java
public static class AS5600Encoder {
    private final I2C i2c;
    private static final int AS5600_ADDR = 0x36;
    private static final int ANGLE_REG = 0x0E;

    public AS5600Encoder(I2C.Port port, int address) {
      this.i2c = new I2C(port, address);
    }

    public double getAngleDegrees() {
      byte[] rawData = new byte[2];
      i2c.read(ANGLE_REG, 2, rawData);

      int raw12bit = ((rawData[0] & 0xFF) << 4) | ((rawData[1] & 0xFF) >> 4);

      return (raw12bit / 4095.0) * 360.0;
    }
  }

Toad Swerve Model

*This file had to be exported as coarse to run on mobile devics, check the onshape for a higher quality render

Loading 3D model... 0%