switch adapted Wild Thing with Firefly Go To Seat

Reverse Engineered Wild Thing

UPDATE: you can see the latest version of our Wild Thing here.

I recently came across a Wild Thing Modification by the Barstow School and FRC Team 1939. They did a really amazing job and the end result looks great and is very functional. Seeing what they had done I was inspired to get a Wild Thing, see how it worked and begin to explore what else I could push it to do including remote control and eye gaze control.

For the Barstow School project they opted to completely replace all the of the toy’s electronics including motor driver. There are some advantages to that approach including no need for reverse engineering and also having complete and direct control of motor drive parameters including the ramping up and down of speed. But still, I thought it would be informative to see how far one could get by keeping most of the toy’s electronics in place and just emulating the joystick sensors to control the Wild Thing. After getting this working it deserved a real test so I added remote control:

Having already worked out everything about the controls to get that working, it was trivial to switch adapt the toy as shown below. Speed, ramping, momentary vs latching, etc. can all be tweaked as desired.

Lastly for this round of tests I hooked the Wild Thing up to eye gaze based driver controls I created. In the video below the eye gaze setup and myself as the driver are outside the vehicle, but of course the eye gaze could be mounted to the toy itself allowing the rider to drive using only their eyes.

Pictures of the unmodified Wild Thing including the control electronics under the seat in the battery compartment:

 

Looking at the wiring my first surprise was how many wires were on the joystick ports on the main board. I thought each joystick would be a pot, which would be 3 wires, but instead I saw 5. Taking apart the joysticks I saw that they used a combination of magnetic pins with sensors and a flex sensor for each joystick. These same magnetic pins with sensors were used in the seat switch, surprising me again as I would have thought they would have just used a mechanical button or microswitch.

Pictures of the joystick electronics:

 

Pictures of the seat sensor electronics:

 

After first working out GND, I probed the voltages on each of the other joystick wires as I moved the joystick through its full range. To do this and to set myself up to later inject signals I cut and stripped the wires and soldered on header pins.

 

Having worked out all the sensor output voltages it was easy to emulate the joysticks with 2 DAC outputs each and the seat sensor directly with a GPIO. DAC was the simplest way to go for the joystick wires since one of them was not high impedance and would sink 3 mA at the center voltage.

JOYSTICK:

  • yellow = GND
  • black = mag sensor
  • green = flex sensor
  • white = indirect 3.3 V
  • red = 3.3 V
  • CENTER: black = 1.49 V, green = 1.65 V
  • FULL FORWARD: black = 2.68 V, green =3.03 V
  • FULL BACK: black = 2.68 V, green = 0.01 V
  • Anywhere In Between: black = 3.28 V, green = proportional value in between (eg. mid forward = 2.3 V)
  • NOTE: for the second joystick the range is reversed.

SEAT SWITCH and SPEED SELECT BUTTON:

  • black = GND
  • red = Battery +, around 13 V
  • white = Speed Sel button (high Z input: 3.3V released, 0V pressed)
  • green = Seat switch (high Z input: 3.3V released, 0V pressed)

For sake of completeness, I’ll also document that the motor driver uses 30 kHz PWM and that the motors can pull a total upwards of 6 A under strain.

This toy definitely proved to be very hackable and versatile. Please note that these control modifications (remote control, switches, eye gaze) are not limited to this modification method. They could have just as easily been implemented on top of replacing the motor driver if desired.

Eye-Gaze controlled Wild Thing

11 thoughts on “Reverse Engineered Wild Thing

  1. Bob, I freaking love your work man! Do you have any familiarity with transparent eye-gaze controllers? If the screen were transparent it would prevent the rider from having to choose between steering and seeing where they are going. Really awesome work as always! Thanks for sharing!

    1. Thanks man! I haven’t seen transparent eye-gaze controller package but 2 alternate methods I’m aware of include:
      *showing the view from a forward facing cam as the screen background
      *doing eye tracking without a screen, just the eye-tracker camera
      I seen other projects using variations of those and some of my future work will explore those options as well. To your original idea, there are transparent screens by LG and others that may be more of an option as the price comes down and they’re more mainstream.

  2. Great work and explanations Bob. I’ve been working on making the Wild Thing more accessible too, but your electronics skills are far superior. Thanks for sharing your work, do you have kids in mind who will utilize it?

    1. Thank you very much for your comment! Yes, we currently have kids in the NYC area using an updated version. This toy is a really great base to build off of.

  3. Wow- I’m a physical therapist and I freakin love engineers! Are you planning to distribute your schematics to somewhere like UCD Go Baby Go?

    1. Thank you for your comment! Do you work with any families that need one? We are currently customizing and selling them. We would be happy to talk with GoBabyGo if they were interested but this is a level of electronics and customization far beyond what they currently perform. We configure these for eye gaze, voice control, EMG, etc.

  4. Can I ask where you got your added back seat or what it’s called? We purchased a wild thing for our son with SMA and he will need a bit more head and truck support and the blue seat in the photos looks perfect. Thanks for any advice/info!

  5. Bob, thank you for posting your progress. I am in the process of adapting a wild thing for a student at my school. Working on making child control mode and parent (remote) mode. Your ideas have really helped me organiz my thoughts on this! Great work.

    1. Thank you for your comment Matthew! I hope all is well. If you run into any issues please do not hesitate to reach out.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.