Skip to content

Latest commit

 

History

History
68 lines (56 loc) · 6.01 KB

diy.md

File metadata and controls

68 lines (56 loc) · 6.01 KB

How to make your own rover

This is a guide on how to make your own version of the defense digital rover. We'll go over the hardware, 3D printed files, and software needed. Feel free to use everything to either recreate the rover we made, or spin off and make your own thing.

Hardware

The hardware list for the rover is fairly light and consists of the following:

  • Bogie Runt Rover
    • Be careful where you order the kit from, some amazon sellers like to markup the price by a lot
  • Raspberry Pi 4
    • In our setup we don't use the pi to run OBS, so any model will work. If you want to simplify the design and run OBS within the rover, use one of the versions with more ram so that you can run both OBS and the rover python script
  • Raspberry Pi HQ Camera Module
    • We liked the smaller form factor of the new pi camera module, so we used this one. Feel free to use a webcam if you already have one
  • Raspberry Pi HQ Camera Lens - 6mm Wide Angle
    • We chose this lens because it was the cheaper of the two that come with the camera module, feel free to use a different lens if you want to
  • SparkFun Auto pHAT
    • This is the motor controller for the rover. It has a lot of extra features like servo controllers and a 9DoF sensor we don't use, but maybe next year we'll get to really push the board. Note that there is a small trace near the USB C port labeled Pi ISO that you will need to cut. This will force you to power both the pi and hat separately, but will get rid of the low voltage warning. If you don't cut this trace, you will see a low voltage warning when you plug in the pi, and the pi will sometimes reset when the motors are running at full speed.
  • Amperka Octoliner
    • This is the line sensor we used to keep the rover in the play area. It's a great sensor when your carpet is a nice solid color and not an art piece
  • Anker PowerCore+ 26800mAh
    • This is the battery pack that we used. It's overkill for the rover because we originally planned on running the rover 24 hours a day and just swap the battery in the mornings.
  • Tripod Screw Adapter
    • This is used to hold the pi camera in place.
  • MatterHackers Silky Gold Filament
    • This is the filament we used to print the 3D printed parts. It's a great filament for printing, and it's not too expensive. It also has a really nice finish that makes the rover look real.
  • Raised3D Black PLA
    • This is the filament we used for the fake solar panels on the roof of the rover. You can use any black filament that you prefer, we just had this on hand.

3D printed parts

All the parts were printed in PLA on a Raised3D E2. Note that pretty much any printer will work for these parts, you do not need an expensive or large printer to print them.

We used the Silky Gold filament for the external parts, because it gave the rover a realistic look. The solar panel pieces were printed in black, and the internal pieces were printed in whatever colors we had loaded at the time.

This is the list of printed parts we used:

Software

One key thing to note is that TwitchIO is used to connect to the Twitch streams. For the version played at defcon, we used TwitchIO version 1.2.3 to connect to the twitch streams. This version is incompatible with the newer version 2.0 of the API. I will be releasing a 2.0 compliant version soon, but for now keep in mind that you will need to use an older version of that API.

The rover is controlled by running driverBot, which handles controlling the rovers' chatbot and driving the rover around. The ground station is controlled by running gsBot on whichever computer will be running OBS. This can be a laptop or even another pi. The reason we run OBS on a separate computer is that it is easy for the pi to get overwhelmed when doing scene changes in OBS. The rover has four of those, represented by the theme command options.