Making a radio controlled tank – Part 2 – PCBs

With the mechanics somewhat decided on, the control circuitry was the next on the list. After ‘mastering’ radio control, temperature sensing and internet connectivity, I was pretty well versed with the Arduino ecosphere, and felt pretty comfortable making my own PCBs with the help of OSHPark.

I felt the tank needed multiple separate boards, not only to compartmentalize functionality but to work around the maximum board size in the free version of Eagle I was using to design the circuit boards. After much deliberation, I settled on 4 boards; control, connectivity, LED, and power.

Continue reading Making a radio controlled tank – Part 2 – PCBs

Making a radio controlled tank – Part 1 – Mechanics

I’ve tried my hand – literally – at quadcopters, submarines, and RC buggies, and now its time to make a tank. Hmmm, I guess more of a tracked box but we’ll call it a tank.

While searching for information on the subject, I ran across a website describing how he had made the treads out of bike chain and acrylic, the motors were ripped from cordless drills, and the chassis was essentially adult Meccano. All of this looks to be within the realm of possibility, and has the potential for being massively over-engineered – the best way to engineer.

Continue reading Making a radio controlled tank – Part 1 – Mechanics

CRC8 – Arduino and PHP implementation

For my tank project, I’ll be sending parameters over radio to control the motors so the data packets¬†should be checked to see if they’re valid or if the transmission was corrupted. This is a widely used concept in computing – almost every transaction comes with a checksum which lets you know whether the data that was sent is the same data that you received. If you’ve ever seen a cyclic redundancy check error on older versions of Windows, you’ve seen a bad checksum; the hard drive transmitted something that the operating system checked and found it wasn’t correct.

Data-Error-Cyclic-Redundancy-Check

EDIT

Looks like someone has beaten me to it, and created something much better. Here is an implementation which uses the built-in CRC module on the Teensy 3 to improve CRC calculation speed, and also creates 32 bit checksums.

Continue reading CRC8 – Arduino and PHP implementation