Introduction: Robot Gong: Ultimate Hackaton Project Idea for Sales and Product Geeks (No Coding Required)
Let's build a robotic musical gong triggered by email. This allows you to setup automated email alerts to fire off the gong... (via SalesForce, Trello, Basecamp...)
Your team will never again forget to "GONGGG" when new code releases, a deal closes, or when lunch is ready!
No Time to DIY? Visitwww.robotgong.com and sign up to buy one.
Step 1: Materials Needed
We will need...
Step 2 to 8: Setting up the electric motor
- 1x Sparkfun servo trigger board
- 1x Servo motor (I used the HS-625MG)
- 1x On/Off Switch
- 1x 5V power supply
- 1x Female Barrel jack adapter
- 1x A 3-pin section of a snappable male header
- 1x Roll of solder (I use lead-free ones like this)
- 2x Electrical hookup wires of different colors
- Tools...
- Solder iron
- A small screwdriver
- Wire Stripper
- (Optional) Third hand to help hold stuff when we solder
Step 9 to 12: Attaching motor to the GONG
- 1x 12" GONG, mallet and stand
- 2x medium size zip ties (get more if you're error prone like me)
- 1x 3M Command double-sided stickers
- (Optional) 1x Electronic project enclosure to hold the circuit board and wires
- Tools...
- Electric drill to make a hole in the mallet (here's my favorite drill, although total overkill)
Step 13 to 17: Setting up the email trigger
- 1x Wemo smart plug
- IFTTT user account
Step 2: Solder Wires to the On/off Switch
Cut two electrical hookup wires of different colors and solder them to the on/off switch.
If you've never soldered before, check out these tutorials: video tutorial 1; video tutorial 2; instructables tutorial.
Step 3: Attach Wires to Barrel Jack Adapter
Use a small screwdriver to attach two other electrical hookup wires of different colors to the femalebarrel jack adapter.
Step 4: Solder Barrel Jack Adapter Wires to Servo Trigger Board
Now solder the free ends of the barrel jack adapter wires to the VCC and GND pads on Sparkfun Servo Trigger board. You'll note two sets of VCC/GND on opposite sides of the board - it doesn't matter which side you choose to solder onto as both will work.
Make sure to have the wires come through the top of the circuit board, and solder on the back side. I recommend to have the red wire pointed to VCC and black wire to GND as standard practice.
Step 5: Solder On/off Switch Wires to Servo Trigger Board
Solder the free ends of the on/off switch electrical wires to the IN and GND Sparkfun Servo Trigger board.
Again, make sure to have the wires come through the top of the circuit board, and solder on the back side. I recommend to have the red wire pointed to IN and black wire to GND as standard practice.
Step 6: Solder a 3-pin Header to the Servo Trigger Board
Use a utility knife to cut off a 3-pins header from the break away headers. Solder it onto the 3 pads at the end of the Sparkfun Servo Trigger board. This will help connect our servo motor later.
Step 7: Test Motor
We're now ready to test our Servo Trigger Board setup and see if it'll power our motor.
- Plug the Servo Motor electrical wires into the 3-pin header on the board. Align the yellow wire to SGI; Red wire to VCC; Black wire to GND.
- Adjust the trimpots (white A, B, C screws) on the Sparkfun Servo Trigger board:
- A sets the position the servo motor sits in while the on/off power switch is open. Turn A fully counter-clockwise.
- B sets the position the servo motor moves to when the on/off power switch is closed. Turn B fully clockwise, so the motor moves a complete 90 degrees from its start position.
- T sets the time it takes to get from A to B and back. Set T to the middle.
- (Feel free to play with these settings after you confirm the motor/board setup works.)
- Make sure the on/off switch is in the OFF position.
- Connect the 5V Power Supply to the Barrel Jack Adapter to power up the board.
- Now set the on/off switch to ON and see if the motor moves a complete 90 degree. Switch it back to OFF and see if it'll come back to its starting position.
- Unplug the power supply.
Step 8: Come Back to Starting Position Automatically
We're now going to make a change to how the Sparkfun Servo Trigger board controls the motor.
As you've seen in the previous step, the motor currently comes back to its starting position when we set the switch to off. Instead, we want the motor to come back automatically without having to turn the switch. This'll allow us to leave the switch in ON position and let our Wemo power supply trigger the motor (more on Wemo stuff later...)
To do this: Simply solder shut the SJ1 solder jumpers at the back of the Sparkfun Servo Trigger board. This is a great tutorial on soldering / closing solder jumpers.
Now when the switch is turned on, the servo motor will move from A to B to A. By itself.
Connect the power supply back and test.
Step 9: Mount Motor to Gong Frame
Unplug the motor if it's still attached to the trigger board.
Position the motor on the top bar of the gong frame, with the rotor perpendicular to the gong's surface. Slightly off-center from the gong's center-point (this allows the mallet to hit the center once we attach it to the rotor). Finally, ensure the rotor can turn freely without hitting the frame (With an X shaped arm horn attached).
To secure the motor in place, first put a 3M double-sided sticker between the motor and the frame. Then attach a zip-tie to secure it to the gong frame.
Step 10: Adjust Rotor Starting Point
Before attaching the mallet to the X shaped rotor, let's make sure the rotor starting point is where we want it.
- Plug the motor back into the Sparkfun Servo Trigger board.
- Connect the power supply back to the trigger board as well. The motor will automatically go to its starting position.
- The X rotor should sit flat against the ground as starting position. In other words, you should read x (not +) by looking at it from the side. If the rotor isn't in the desired position, unscrew the center screw on the motor/rotor, detach the rotor from the motor (keep a hand on the motor so it doesn't move), and re-attach it in the desired position.
- Unplug the motor from the trigger board.
Step 11: Attach Mallet to Motor
- Set the mallet against the rotor surface. Then adjust the mallet vertical position so the head (padded area we hit the gong with) is right at the center of the gong.
- Mark with a pencil the spot where the mallet touches the center of the rotor. This is where we're going to drill a hole to attach the mallet to the motor.
- Drill a hole through the mallet at the marked spot. Use a drill bit that's similar in diameter as the zip tie you plan to use to attach it to the rotor.
- Attach the gong mallet to the rotor using a zip-tie per image above. A zip-tie works better than screwing the mallet to the motor as it allows a more flexible movement, mimicking a natural hit to the gong.
Step 12: Test Your Robot Gong!
Plug the motor back into the trigger board. Test your robot gong by turning the switch to ON.
As an optional, step, you can put all the electrical components in an enclosure and stick it to the side of the gong. This keeps things tidy. There are many tutorials on how to craft an enclosure: Here's one.
Step 13: Setup Wemo and IFTTT
We're now ready to setup the email trigger that'll power up the gong.
- Setup your Wemo smartplug as per Belkin's included instructions.
- Then plug in your gong's power supply into the Wemo Smart Plug
- You can test the setup by manually pushing the Wemo's power button. Your gong should go off every time the Wemo Plug turns on.
- Sign up for an account at ifttt.com, and make sure it also works at https://platform.ifttt.com (that's where we'll build an our trigger applet). There's no need for a paid/partner account for our purposes.
- Link your Wemo smart plug to your IFTTT account as per these instructions.
Step 14: Setup Email Trigger (Part A: Turn On)
- Go to https://ifttt.com/services/maker_webhooks/setting... and find Your Key, which is the last part of the URL after ".../use/" - We will require this key later below.
- Go to https://platform.ifttt.com/maker/ and click on "New Applet"
- As Trigger, choose "Email" and "Send IFTTT an email tagged". Then set the tag value to #WemoOn
- Then add an Action, choosing "Wemo Smart Plug" as services and "Turn On" as action.
- Finally add a second Action, choosing "Webhooks" as services and "Make a web request" as action.
- Set the URL Field Label to: http://lab.grapeot.me/ifttt/delay?event=WemoOff&t=0.1&key=YOUR KEY FROM STEP 1 ABOVE
- Set the Content Type Field Label to Text/Plain
- Save the applet once you're done.
- Click "Enable it on IFTTT.com" and Turn On
NOTE: The URL in step 4 allows us to ask a web service to turn off our Wemo Smartplug after a delay. More info from our friend here: https://grapeot.me/adding-a-delay-to-ifttt-recipes.html
Step 15: Setup Email Trigger (Part B: Delayed Turn Off)
Once our email trigger turned on the Wemo smart plug, and the mallet has hit the gong, we're now going to turn the Wemo off. This will require a second applet.
- Go to https://platform.ifttt.com/maker/ and click on "New Applet"
- As Trigger, choose "Webhooks" as service and "Make a web request." Then type in the Default Value as "WemoOff."
- As Action, choose "Wemo Smart Plug" as service, and "Turn Off" as action.
- Save the applet once you're done.
- Click "Enable it on IFTTT.com" and Turn On
Our Wemo is now configured to turn on and then off after a delay once we send an email to IFTTT, using the email address associated with our IFTTT user account. Give it a try by sending an email to trigger@applet.ifttt.com with the subject line "#WemoOn." Make sure your outgoing email address is the one used to setup the IFTTT account. The Wemo Smart Plug should turn on and then off after a brief delay. Feel free to connect the gong for more sound effect :)
Step 16: Change IFTTT Email Address That Triggers Wemo
We may want a different email address to trigger our IFTTT Email based applet. For example, we may want SalesForce or another CRM to directly email trigger@ifttt.com and set off our gong system. That email will be different from our user account email.
To change the email address that IFTTT recognizes as action trigger, simply go to https://ifttt.com/email and click on "Settings."
Step 17: Setup Automated Email Alert / Trigger
We're finally on the step of setting up the automated email event that'll trigger our gong system. Let's explore a couple options:
- Celebrate Sales: Fire off an email when you convert a lead or close an opportunity in SalesForce.
- To do this, setup a Salesforce Workflow Rule that fires off an email when a lead is converted. Make sure your email template sends the email to trigger@ifttt.com with the subject line "#WemoOn".
- Here's a general tutorial on how to automatically trigger an email in SalesForce using Workflow Rules. Again, make sure the sender email address from SalesForce is set as your IFTTT Email Applet address, else IFTTT won't know what to do.
- Celebrate a Completed Task: Fire off an email when a project or task is complete.
- To do this, you could use a service such as Zapier and send an email when a specific event happens in your project management tool.
- For example, this Trello - Email Zap could send an email every time a Trello task is moved to the Complete column.
These are just some ideas. What we've built is a robot GONG that can be triggered by an email. When and how your automated email is sent is a wild card. Cheers!