Introduction: Modified Wild Thing - Joystick Steering - New and Improved

About: B.S.E.E. undergrad. Tinkerer & musician.

Update 8/1/2019: Two years after completing this project, I've designed and manufactured several circuit boards to ease in converting these wheelchairs. The first circuit board is almost the same as the custom protoboard soldered up here, but instead is a professionally-manufactured board that takes an Arduino Nano. There is also a drop-in replacement for the original stock control board (it has on-board motor driver circuitry), as well as a board that plugs into the stock control board and emulates its joysticks, thereby making them much easier to use. Here is all the info for those boards: If you want one of these boards, please contact me via my blog and we can go from there:

This manual was written by Willem Hillier, a student at Champlain Valley Union High School, located in Hinesburg, VT. This project was completed inside and outside of the Design Tech and Engineering Robotics classes taught by Olaf Verdonk.

In late March of 2017, a local physical therapist contacted the high school and asked if we would be capable of modifying a Fisher Price Wild Thing to single joystick use, by following this Instructable:

We took those instructions, and improved the design where we could. The areas where we improved included:

  • Electronics mounting/wiring
  • Code
  • Joystick and joystick mount
  • PVC mounting system
  • Backrest, headrest and other support structures
  • Caster wheel

We didn't use a sonar sensor and piezo beeper in our build like the original did.

On the final build day, when we fitted the final support structures and presented the project to the girl, the local press was present. They filmed and interviewed several people, and after being in the local news, the video was featured on the national news, as well as in countless places online.

These instructions are not comprehensive like the original Instructable is, but rather are an "add-on" that addresses only the areas we changed.

Apologies for the sub-par photos throughout this Instructable. I had an iPhone 5 during this project and it doesn't have the best camera...

DISCLAIMER: Champlain Valley Union High School or any if its students, faculty, and staff are not responsible for any injuries to any person or damages to any object including the car caused by the modifications. Any type of modification will also void the warranty provided by the manufacturer of the car.

Step 1: Parts and Supplies

While mostly the same as the original Instructable's parts list, there are some differences.

Many of these parts can be bought locally at Home Depot, Lowe's or your local hardware store. All prices are those listed at the time of posting.

PVC Frame:

  • 3/4" PVC pipe
  • Nuts, bolts, and washers for through-bolting
  • 90 degree PVC elbows - x4
  • 30 degree PVC elbows - x2

Approximate Framing Cost: $30-40


Total Electronics Cost: $190.69

Total Estimated Modification Cost: $200-300

Step 2: Electronics Mounting/wiring

Instead of soldering all the necessary wires directly to the Adafruit Trinket Pro, I opted to build a PCB that had all the necessary connections broken out.

I used perfboard, and soldered female headers for the Trinket Pro. I used male headers for the power, servo, and joystick connections. The speed potentiometer is soldered directly onto this control board, as opposed to the original design where the speed adjustment potentiometer was external to the control board. This is significantly more reliable (as opposed to a connector) and is simpler to fabricate.

Additionally, there are two switches that control which joystick header is active. One switch switches the x-axis signal between the two headers, and the other switches the y-axis signal. Each header is wired "opposite" the other - e.g. ground and VCC are switched in position from the other header. This allows the joystick to be switched between left and right hand operation by simply switching the joystick header and flipping two switches, without reprogramming of the controller.

Step 3: Code

Upon trying the original code, I discovered that it was extremely laggy. After some research/testing, it was determined that the sonar code made the control loop run very slowly when no sonar sensor was attached. This was because the Arduino would send out a "ping" to the sonar sensor, and wait for the time to receive a "ping" back from the sonar sensor. When there is no sonar sensor attached, it never gets a ping back, but waits for a while to receive one before eventually timing out.

After removed that code as well as other unnecessary code (specifically code designed to run a car with a steering servo), it ran quite well.

Step 4: Joystick and Joystick Mount

The original design used a standard 2-axis potentiometer joystick from a remote control for a plane, etc. While these work, they are often not of especially high quality, and additionally the handle is not ideal, as it is made to be used with a single thumb. We opted to use a 2-axis joystick with a ball handle for ease of use. I designed and 3D printed a mount for the joystick. Total, it went through 4 print revisions before being satisfactory.

There are several things to note about the joystick mount:

  • It uses two through-hole bolts to clamp-mount to 1" PVC. In order to determine the exact size needed for this, we printed a set of "test rings" with slightly different inside diameters (see above photo).
  • This particular file needs supports to print best - I printed it on an Ultimaker 3. I suppose it might print on a side, but it probably wouldn't come out super well. I've attached a no-supports-needed model as well.
  • There is a U-shaped channel cut out of the interior that allows the cable to go between the exit hole and the other potentiometer.
  • My design uses a laser-cut acrylic top cover, that could easily be 3D-printed instead

Step 5: PVC Mounting System

Like the original design, we used PVC to build a frame around the vehicle. This frame provides more protection for the user, as well as convenient mounting points for other parts like the joystick and headrest.

We used through-bolts to secure the PVC frame to the existing frame at four points (see above image; mounting points are circled in red).

Step 6: Backrest, Headrest and Other Support Structures

Considering that we're building a wheelchair, support structure and making the product ergonomic is very important. There were three areas that were drastically improved from the original Wild Thing.

1. Backrest

We used a foam kickboard, with two triangle-shaped wood wedges between it and the original seat, so that the backrest was a steeper angle. Elevator bolts were used to secure the whole setup.

2. Side Trunk Support Structures

We used a piece of sheet metal mounted to the back orange frame that wrapped around the sides of the waist of the user. Foam was wrapped around the "tips" of this metal piece. See photos.

3. Headrest

The kickboard backrest is good in terms of back support, but it wasn't tall enough to support the user's head in our case. Because of this, a headrest was added. We took the headrest off of the user's existing (manual) wheelchair, and simply bolted it onto the kickboard.

Step 7: Caster Wheel

The original caster wheel and its supporting structure was plastic, had way too much play, and didn't roll well at all. (see above photo for a disassembled view). We opted to replace this caster wheel with a swivel rubber caster wheel designed for use on the bottom of rolling carts, etc.

I designed two plates in Fusion 260 that would fit on the top and bottom of the plastic swivel hub on the back of the vehicle (see photo). These plates were cut out on a CNC plasma cutter. A small piece of steel tubing was welded into each hole on these plates. Bolts went through the top plate, bottom plate, and then holes in the mounting plate on the caster wheel.

Thanks for reading this Instructable, and vote for it in the PVC Contest and Make It Move Contest!

Make It Move Contest 2017

First Prize in the
Make It Move Contest 2017

PVC Contest 2017

Participated in the
PVC Contest 2017