Close
0%
0%

Motion-Triggered Hypnotoad with Sound

ALL GLORY TO THE HYPNOTOAD!

Similar projects worth following
With Halloween approaching I wanted to put together a fun project for tricker-treaters and since we’ve been re-watching Futurama, making an interactive Hypnotoad seemed perfect. It also seemed like a great combo of general scary/weird but with an easter-egg aspect for fans of Futurama. A quick search on Thingiverse led me to Jason Sly’s ‘Realistic Hypnotoad’ (https://www.thingiverse.com/thing:2993116) and I was on my way. I ultimately ended up with a remote motion-sensor that triggers a 3D printed Hypnotoad with Neopixels in the eyes as well as plays his signature (noise/sound/music?).

I’ve been playing with Particle 3rd Generation Mesh devices lately (Argon/Boron/Xenon). Since I knew I wanted a remote motion sensor, a pair of Xenons seemed perfect (albeit admittedly quite overkill). I simultaneously started working on modifying the 3D model of Hypnotoad I found on Thingiverse to allow for getting Neopixel LEDs in each of the eyes as well as making a simple motion sensor.

For the model, there may well be a better way via a different software package but since all I had were STLs I found that designing the cavity in Fusion 360, exporting it as an STL and performing a Boolean difference operation in Meshmixer worked well-enough (although it did take a while since it was an iterative process getting the cavity designed properly). For the motion sensor, the only sensor I had handy that would work was an ultrasonic sensor. While not perfect, it would do the job. Putting together a working prototype was easy enough, however I found the code more difficult than anticipated.

I started off breadboarding with a Photon I had handy and got it working quite well using the library ‘New_Ping’. After switching to a Xenon (to make a battery-powered sensor more feasible as well as be able to utilize mesh networking), I found that library not to work due to the 3rd generation devices currently not supporting another commonly used library ‘SparkIntervalTimer’. Ultimately, I had to read from the sensor in a much simpler way that while usually works, also gives me intermittent short distance readings (of half or even less than the actual distance). Since I was going to have the sensor trigger when someone walks in front of it, this proved to be a problem. However, after further testing I was able to calibrate/position it such that it rarely if ever gave a false-positive (since this was just for 1 night of the year, I also wasn’t too worried about a few false-positives).

Next was to put together the controller for the Hypnotoad that would manage the Neopixel LEDs in the eyes as well as play music. I already have some wireless speakers on my front porch that I normally have connected to a Chromecast Audio for listening to music, so I only needed to play the music via a headphone jack. I went with an Adafruit Music Maker FeatherWing for this purpose. The libraries for this device are great, making it super-easy to output whatever audio you want and have complete control over it (although for this project, I didn’t need or use any of the more advanced functions). 

After a bit of soldering and heat-shrinking, I ended up with a functional board and Neopixel wiring harness.

Unfortunately, I forgot to include a level-shifter since the Xenon only talks in 3.3V. Once I realized my error, and since I didn’t have one handy, I decided to alter things and just run them off of 3.3V. I couldn’t tell a meaningful difference in brightness and it meant I could get it working right then rather than in a week. I’m sure the fact that I’m only running two Neopixels helped with the brightness issue as well.

The Hypnotoad model was already in two pieces (body and head) and since I only needed the eyes to be clear/translucent I printed the head with some translucent PLA and the body in white.

The code for controlling the eyes was quite simple, I kept the color constant (yellow) and just altered the brightness with time such that they both ‘breathed’ but exactly out of sync. For painting, I simply covered the eyes in painter’s tape and spray painted everything else black to act as a primer.

Since I have no skills painting and a good friend of mine does, I got him to do it for me. I was quite happy with the finished project.

Hypnotoad.mp3

Looped clip I created for use in the project.

mp3 - 167.80 kB - 10/29/2019 at 18:08

Download

Hypnotoad_Short.mp3

Short clip I found online.

mp3 - 27.00 kB - 10/29/2019 at 18:08

Download

  • 2 × Particle Xenons
  • 1 × Adafruit Music Maker FeatherWing - MP3 OGG WAV MIDI Synth Player
  • 1 × Female Headers I used these on all of the components as I figured I’d likely scavenge from this project in the near future, since it’s mainly for Halloween
  • 1 × Zip-ties (or screws/nails) For the Motion Sensor
  • 1 × 4-wire Phone Wire For wiring up the LEDs

View all 15 components

  • 1
    Order and Print Components

    The first thing you’ll want to do is order and print all of the necessary components. The printed components are all available on Thingiverse here. On the motion sensor, I included slots for both zip-ties and holes for screws/nails

  • 2
    Solder up the boards and make the wiring harness for the LEDs

    For both boards, I used small PCB proto boards I had handy. I assume they’re standard sizes, but you might need to adjust the models accordingly. For other projects, I’ve put together wiring diagrams but since this project is so simple, I didn’t. If you decide to make it and would find a diagram helpful, let me know and I’d be happy to throw one together for you.

  • 3
    Assemble both devices

    With the finished boards and the printed enclosures, assemble everything. 

View all 5 instructions

Enjoy this project?

Share

Discussions

Keith wrote 10/19/2023 at 15:45 point

How about ferrofluid irises cycling from + to - under control of electromagnets? :-)

  Are you sure? yes | no

teraz wrote 12/12/2021 at 17:46 point

add more mechatronic and short time working

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates