Hydrocarbon92
Rock Crawler
I recently got into the crawler hobby with a Redcat Everest-10 I purchased from scottyshobby.com, along with the parts needed to make it 4WS and some Proline Interco TSL SX tires. Initially I just used my old Clodbuster rear servo (MG996R), which is modded for reverse rotation. The place I crawl at has some tight corners & ledges, so I either had to ditch 4WS or buy a controller. I decided to just build my own!
I started with an Arduino, which uses an Atmega328 chip running at 16mHz. To put that in perspective, the original Playstation ran at 33.8mHz. The biggest problem was reading the receiver (FlySky FS-GT3C). I figured out how to use an old library (backend code) for reading it, then wrote more code to alter the outputs sent the servos. I looked at the Bastens and HeyOK controllers for ideas.
Here's a video of the original controller:
https://www.youtube.com/watch?v=tmHEIJZGIFA
The original has 3 modes: 2WS (default), 4ws, and crab-walk. RWS isn't on it because this version only controls the rear servo. To change the mode, I just press the 3rd channel button. On this controller it's a 2-position channel, so the controller just senses if the position has been changed. There is zero lag due to how the signals are read & sent.
I got another Arduino to add to my Clodbuster, which let me re-write the code a bit. First I changed it for a reverse rotation servo, second I added RWS mode (directly controls both serovs), third I got it to read the steering trim. That was one of the reasons I didn't choose one of the off-the-shelf controllers. The HeyOK has manual trim pots and the Bastens only applies new trims to the rear after a power-cycle. My new code lets me adjust it while in 4WS mode, applying it instantly to that mode. I still have to power-cycle it for the other modes, but I have plans for that.
The wiring between the body posts is the UBEC and lighting power supply, the bundle past the battery strap is for the steering. It can take up to 3S voltage and I protected it against reverse polarity too.
I started with an Arduino, which uses an Atmega328 chip running at 16mHz. To put that in perspective, the original Playstation ran at 33.8mHz. The biggest problem was reading the receiver (FlySky FS-GT3C). I figured out how to use an old library (backend code) for reading it, then wrote more code to alter the outputs sent the servos. I looked at the Bastens and HeyOK controllers for ideas.
Here's a video of the original controller:
https://www.youtube.com/watch?v=tmHEIJZGIFA
The original has 3 modes: 2WS (default), 4ws, and crab-walk. RWS isn't on it because this version only controls the rear servo. To change the mode, I just press the 3rd channel button. On this controller it's a 2-position channel, so the controller just senses if the position has been changed. There is zero lag due to how the signals are read & sent.
I got another Arduino to add to my Clodbuster, which let me re-write the code a bit. First I changed it for a reverse rotation servo, second I added RWS mode (directly controls both serovs), third I got it to read the steering trim. That was one of the reasons I didn't choose one of the off-the-shelf controllers. The HeyOK has manual trim pots and the Bastens only applies new trims to the rear after a power-cycle. My new code lets me adjust it while in 4WS mode, applying it instantly to that mode. I still have to power-cycle it for the other modes, but I have plans for that.
The wiring between the body posts is the UBEC and lighting power supply, the bundle past the battery strap is for the steering. It can take up to 3S voltage and I protected it against reverse polarity too.