- Required Use of old software that had bugs, was no longer maintained and was poorly documented
- Delicate, expensive components
- Required a middleman controller to translate
- System involved maintaining 3 separate libraries in 2 languages on 3 devices
- massive time investment
- In addition, motor controllers and arduino had custom instruction sets we had to use
- encoders:
- Previous system used hardware PID controllers
- pid doesn't give much benefit when moving in sand/dust which shifts
- encoders sometimes break,
- making PID controller panic and stop the entire system from moving
- we couldn't change this behavior as it's a part of the hardware
- We can eliminate the arduino from our control system
- this makes programming and electrical's jobs easier, reduces power consumption, complexity, etc.
- We can do everything in Python
- C++ is hard to teach
- New system is super cheap compared to old
- Can use same motor controllers and Tinkerboard (raspberry pi)
- Software starting from scratch more or less
- Some components from old system will go unused
- kangaroos will go unused
- arduino will likely be repurposed