There are a variety of ways to build your version of SixPotatoe. There are other methods of construction and other options for the electronics and microprocessor. Some of these options are listed below. The list starts out with the most likely changes that you might want to make. If you come up with some good options yourself, please let me know. I would love to hear about them.
- Switch and LED Location. The switch is and LED are a little more convenient to the top plate, where they are more easily accessible and visible. I like the LED push button switches that Adafruit sells. Also, the Qwiic Button from Sparkfun looks quite convenient since it can just connect to the IMU on the top plate.
- Bumper. The standard bumper is relatively difficult to make since it requires cutting out a complex shape on a band saw or with a coping saw. Other simpler shapes would probably work just fine. Also, you could possibly make a bumper using wheels of some kind. The bumper design is unlikely to have any impact on the performance of the robot.
- Face. A face is completely unnecessary for the operation of SixPotatoe but the addition of a good face will make a huge difference in how people react to it. I urge you to come up with a creative solution. Those lucky people with 3D printers have a particular obligation to come up with a good face. SixPotatoe’s current face is made from a painted ball with a face I found by googling “cartoon faces”.
- Wheels. The current. wheels are ideal for running over varied terrain and taking modest jumps but there are many other wheels that would probably work. It would be nice to use 1/8 scale wheels that have a greater diameter since it would add a little speed and more cushioning and therefore bigger jumps. 1/5 scale wheels might even be better in that respect. However, I don’t know of a good way to mount these larger wheels on these motors. Servo City used to offer mounts that work on 1/8 scale wheels but these are no longer available. Bainbot makes some very nice wheels that grip well but are not cushioned, so large jumps are not recommended.
- Batteries. Some people may be nervous about running 12V motors at 25V. Lower voltage batteries will work just fine; the top speed will be proportionally lower. Larger or smaller capacity batteries can also be substituted which will only affect the run time. A larger capacity battery will also be heavier giving the robot better performance in some situations.
- Motor controllers. All of the Pololu G2 High-power motor drivers should work. I am unaware of any other controllers that are comparable. Pololu’s dual controllers should work but I have has some difficulty with motor spikes causing the Teensy to crash. Some appropriate line filtering should solve this problem.
- Different Mechanical Design. This robot could be built a number of different ways. I have used a variety of materials in the past including wood (baltic birch), and phenolic plastic. The whole thing can be held together in a variety of ways instead of using the current threaded rods. I urge you to use materials and techniques that you are familiar with. The only constraint is that the frame needs to be quit stiff and there needs to be enough weight located well above the axles. After you build the robot, try to drive it over rough terrain and up steep slopes. If it is unable to do these things to your satisfaction, just make the robot a little taller so that more weight is concentrated higher up. If you plan on running your robot over flat surfaces, the robot can be made quite short and compact. One advantage of a short robot is that it is very difficult to knock down and it can easily get up while lying down.
- Different Processor. In my opinion, the Teensy 4.0 is almost ideal for this application. It’s incredible computing power and low cost are hard to beat. Whatever processor you use must be able to handle 8 or so interrupts as well as do the AHRS computations. Many Arduinos do not have this capability. I have always wondered if a Raspberry Pi, Up Board or some such powerful processor could do the computation but I have never given it a try. I have always worried that the real time I/O requirements would be hard to meet. If you decide to give it a try, I would be interested in hearing the results.
- Co-Processor. If you decided to add other sensors coupled with, artificial intelligence, vision processing, spacial analysis, etc., then you will want to add a Linux or Windows-based co-processor. TwoPotatoe does this and and an earlier version of SixPotatoe had this capability as well. There is plenty of room for another platform to hold this added equipment. If this interests you, my advice is to just do it. The Teensy can take care of all of the real-time processing while the co-processor communicates with it via SPI, I2C, or serial.
- Breadboard or Prototyping board. If you don’t want to use the PCB to hold the circuitry, you could just hand wire it using a breadboard or a prototyping board. Earlier versions of SixPotatoe used these two methods. If you know how to do this, the schematic should give you all the information you need.