Introduction: Scent-imental Notification System
I have to start off by telling you that this is my first electronics project. I found it challenging, but a really fun learning experience. With the help of how easy littleBits are for beginners to use and some amazing co-workers, I am proud to present to you the Scent-imental Notification System!
I feel like the nose has been left out of this whole tech revolution and wanted to give it a way to get involved.
Using the littleBits cloudBit (among others) and IFTTT (If This Then That), this device notifies me when friends take pictures for me on Instagram via the release of assigned scents. It's designed for three different scents that are triggered by three different tags. In my case: #pupsforpaige, #cheekynature, and #snickersnort. All things I love - cute dogs, nature taking back the city, and anything funny!
Each tag triggers a designated littleBits servo to squeeze one-two drops of scent out of a dropper that go onto a heated glass surface, where it is diffused up into the air and then fanned my way by a servo fan that's behind the glass. (I wanted the device to look mechanical, which is why I chose to make my own servo fans instead of using the fan modules.)
Don't worry, you can get personal and program the device to be triggered by anything you'd like, that is supported by If This Then That.
Ok, let's get started!
Step 1: Wooden Housing Supplies
Materials:
(x1) 36" x 24" x 3/16" plywood
(x1) 4" x 12" x 1/2" plywood
(x1) 3" x 8" x 1/8" craft plywood*
wood glue
newsprint or scrap paper
*This is actually for the building out the Little Bits servos, but it's best to do all the laser cutting at once.
Tools:
laser cutter
table saw
90 degree square tool (adjustable or engineers)
pencil
sandpaper
palm sander (optional)
Step 2: Cutting Stuff With Lasers
Prep all your wood pieces for being laser cut by covering one side of each with masking tape. (This will keep the laser from burning the backside of the wood, which will end up being the front faces of all the cut pieces.)
Cut the attached file titled 'Parts File A' out of the 3/16" plywood.
Cut the attached file titled 'Parts File B' out of the 1/2" plywood.
Cut the attached file titled 'Parts File C' out of the 1/8" plywood.
Remove the masking tape from all your parts.
Step 3: Making the Sliding Back Panel Slots
Before gluing the housing together, you'll need to cut a slot in each of the side panels that the back piece will slide into. To do this, take your pencil and carry the cut line around to the top of the opposite side.
Lower the blade on the table saw so that it's half the hight of your wood.
Place the piece on the table so that the right hand side of the blade lines up with your pencil line. Adjust the guide accordingly.
Put on your safety glasses and do one a cut pass on that piece only. Move the guide a teensy bit to the right and do another cut pass. Repeat these minor adjustments until you have a channel that is 'just' wider than 3/16".
Repeat all the above steps to the other side panel piece.
Step 4: Get Supported
Glue the smaller support pieces onto their corresponding spots on the side panels and mid top piece.*
*It helps to use another one of the larger pieces to make sure the supports aren't sticking out over the edges. (see second picture above)
Step 5: Gluing Up
Once the supports' glue has dried, place the piece marked 'bottom' on a piece of newsprint or scrap paper.
It's time to glue the side panels onto the bottom piece. (Yay!)
Put glue on the underside of both 'bottom support's and the bottom bits of the inside faces and set in place. (like pictured)
Use the square to make sure the side panels are perpendicular to the work surface.
Then glue on the 'top top' with the writing facing inside.
Let sit for 5 minutes.
Step 6: Gluing Down
Next, flip the housing upside down and glue the 'under overhang' into place (like pictured) with the writing facing down.
Let sit for 5 minutes. (but not much more)
Step 7: Slip and Slide
Put 180 grit sandpaper into a palm sander and gently sand both sides of the long edges of the back panel. This will allow it to slide into place easier.
Flip the housing back upright and insert the back panel. The will be just set, but not completely, so that putting in the back panel will help square up the box.
Let dry for at least 1/2 hour before going on the next step.
Step 8: Fronting
After a 1/2 hour, lay the box down on it's back (leaving the back panel in) and glue on the 'front' panel, writing facing in. Put a piece of scrap paper on top of the front panel and weight it down to dry.
Step 9: Light/Heat/Scent Maker Supplies
Materials:
10 feet lamp cord
(x3) 1-1/2" phenolic candelabra socket with cardboard insulator and 1/8ip hickey
(x1) plug
(x1) ON-OFF nickel plated 3/8in long bushing metal toggle switch with 6in wire leads
(x3) small wire nuts
(x3) 7 watt clear nite lite candelabra bulbs (not pictured)
(x1) 1/4ips male white bushing (not pictured)
(x3) 3/4" threaded nipples
(x6) lock washers
(x3) hex nuts
(x3) 50 ml glass beakers (not pictured)
laser cut insert w/ small holes (made in step 2)
electrical tape (not pictured)
(x3) glass pipets (eye droppers)
(x6) 7" zip ties
Tools:
wire strippers/cutter
phillips head screwdriver
small flat head screwdriver
small adjustable wrench or channel locks
needle nose pliers (not pictured)
Step 10: Piece (it) Out
Cut two 6" lengths of cord. Separate the ends about 1 1/2" and use the wire stripper to strip 3/4" of wire on both wires, on both ends of each.
Twist both wires on one end of only one 6" length.
Step 11: Socket Two Me (ok, Three)
Remove the cardboard insulators from the sockets.
Pick up one socket and screw a nipple in until it lines up with the top of the sockets hickey, or collar. (like pictured in first image above)
Slide a lock washer onto the threaded nipple, and then put the end through one of the holes on the laser cut wood piece. Add another lock washer and secure it into place with a hex nut, using your adjustable wrench or channel locks.
Repeat for the other two sockets.
It's important to line the screw posts of the socket up with the long edge of the wood piece - all nickel on one side and all brass on the other. (like pictured in last image above)
Step 12: Wired - Part I
The smooth side of the cord is the 'hot' side and that corresponds with the brass screw post on the socket. The ribbed side of the cord is the 'neutral' side and goes to the nickel (silver) screw post on the socket.
Lay the socket/wood part unit down so that the brass screws are facing up.
Put the twisted ends of the first cut piece up the left threaded nipple, oriented so that the smooth side is lined up with the brass screw.
Use needle nose players to reach in and grab the twisted wires, one at a time, bringing the hot side up to meet the brass screw, and the neutral side to meet the nickel screw on the other side of the socket.
Unscrew the brass screw all the way and wrap the twisted 'hot' wire around the screw clockwise. Use the tiny flat head screw driver to tuck it in and tidy it up. Screw the screw in tightly, making sure to keep as much of the wire under the screw head as possible.
Repeat for the nickel / neutral side.
Step 13: Wired - Part II
Take the second piece of 6" wire and twist the ends of the first one to ends of the second one, being careful to connect hot to hot and neutral to neutral. Try not to twist the wire ends in any weird way so that they can lay neatly back to back. This will make inserting it into the second nipple much easier.
Repeat the wiring process for the second socket.
Attach the end of the second wire section to the end of the rest of the wire/cord.
Repeat the insertion/ wiring process for the third socket.
Step 14: Safety First
Cut and wrap approx. 2 1/2" electrical tape around the bottom of the socket starting at the very bottom and going up just past the screw posts.
Slide the cardboard insulators (sleeves) back into place over the tape.
Step 15: Switch It!
To add the on/off switch for the lights, cut the cord 6-8" from the base of the last socket. Loosely twist the neutral/ribbed wires together and add a wire nut, twisting it on until it's difficult to twist anymore.
The switch has two black wires coming out of it. Connect them, individually, to the hot ends of the lamp wire/cord.
Add wire nuts and tape to both of those as well.
Step 16: On/Off Install
Slide your shiny new light/heating system into the back of the wooden housing, with the switch and long cord on the left side. The wood piece should nestle down into the cutouts of the bottom supports.
Remove the nickel knurl nut and little on/off plaque from the threads of the switch. Then put the switch through the right hand hole with the black wires facing up and replace the sign and nut from the outside, securing the switch in place.
Step 17: Beat Around the Bushing
Using thumb force, press the bushing into the other hole from the outside.
Thread the end of the long length of lamp wire through the bushing from the inside out.
Step 18: Plugged Up
Strip and twist the ends of the lamp wire.
Remove the screws from the plug and pull out the 'guts'.
Slide the plug cove down over wire ends and pull it out of the way, about 2-3 feet up the wire.
Wire up the plug: smooth/'hot' to brass screw and ribbed/'neutral' to nickel screw.
Pull the plug cover back up and over the plug 'guts' and replace the screws, securing the two plug halves together.
Step 19: Testing Testing
If you have a voltage meter, it's a good idea to test your wiring before moving forward. If you don't, but are confident that you were careful with matching up the hots and neutrals, you shouldn't have any problems.
From the front, lower in the wood support piece with the larger holes, rastered hole lines facing up. It will nestle into the top supports.
Screw in the three 7w light bulbs.
Add the upside-down beakers that will act as your heated scent 'dishes'.
Slip the wood piece with the three long slots in it into the back of the cut out and press fit in the 'mid top'.
Plug in your cord and flip the switch!
Step 20: Zip It
Now it's time to make the dropper holsters. Following along with the images above, use zip ties to create the little holsters.
Hold the a dropper in place and slowly tighten the zip ties around it, so that the dropper isn't to wiggly, but the zip ties aren't too tight. Try and find the sweet spot in between.
Repeat for the other two droppers. Trim the tails of the ends in the back.
I used different colored ties for each dropper, but that's not necessary for function, so no probs if you just have one color.
Step 21: Electronics + Moving Parts Supplies
Materials:
(x6) littleBits servos
(x3) littleBits wires
(x1) littleBits arduino
(x1) littleBits cloudBit
(x1) littleBits power adapter + cable
(x1) littleBits USB power
(x1) littleBits button
(x1) littleBits power
(1) littleBits battery + cable(x12) 8-1" wood screws
(x24) washers
(x12) 0-80 x 1/4" pan head screws (see pictured above)
(x12) 0-80 hex nuts
(x3) 'P' shaped wood pieces (cut in step 2)
(x3) 'Y' shaped wood pieces ( " )
thin painters tape
Tools:
philips head screw driver
tiny philips head screw driver
needle nose pliers
5 minute epoxy
thin mixing sticks (wooden coffee stir sticks work great)
scrap cardboard for mixing glue
pencil
Step 22: Prepping the Servos
Each servo comes with a selection of attachments.
We're going to be using (and modifying) the single arm ones. (like pictured)
In preparation, unscrew and remove the double arm attachments for all six servos.
Step 23: Building Small Machines
On three servos, attach the 'P' shaped arms using the teeny tiny nuts and bolts. Follow the images above for correct bolt/hole placement. Tighten the nuts using needle nose pliers.
*DO NOT replace the screws at the pivot point of the servos yet.
Step 24: Aligning the Servo Arms
The reason I didn't have you replace the servo screws yet is that the placement of the arms needs to be tested and adjusted until they are in the right place.
For an easy way to test the movements, connect the littleBits 9-volt power module to the button module.
Connect one of servos with the 'P' arm attachment to the power source. Make sure the servo movement is switched to 'turn'.
Get a small bowl of water.
Holding the wooden piece with the zip ties, so the the backs of the zip ties are facing you and cut outs at the top. Put one of the droppers in place in the left front zip ties. Fill it with some of the water. Then put the servo flat against the wood with the arm going through the left cutout and the wires on the right hand side. (like pictured above)
Hold the setup so that the dropper is over the bowl of water. Test the placement of the servo arm by hitting the button once and seeing whether or not it's pushing on the eye dropper in the right place. A very small amount of water should come out. If it's too much water, move the servo a tiny bit to the left. If it's not enough (like no) water, move the servo a bit to the right.
Once you have found the correct placement, trace the servo onto the wood so you know exactly where to glue it.
Repeat this process for the other two slots/droppers.
The fulcrum of the bottom three 'fan' servos with the 'Y' arm attachment should be placed in the center of the slots. (as in the last picture above) These servos should be set to 'swing'.
Step 25: Securing Servos
Glue the servos in place using 5 minute epoxy.
TIP: I found that by laying the wood pieces on stacks of other wood leaving a channel for the servo arms to go down into made the gluing process much easier.
Step 26: The Backups
As a back up to the glue, use the 1" screws, with two washers on each, to screw the brackets into place. (like pictured)
Step 27: Get Gluey With It
Once you've screwed the brackets on, it's time to glue on the top front panel. (The one with the 'P' arm attachments and zip ties)
Press fit in the under mid panel (the one with the 'Y' arm attachments), slots closer to the bulbs.
Remove the beakers and set aside.
Place the unit on it's back and put glue along the front edge of the top panel space.
Lower in the servo modules, with the zip ties closest to the bulbs, the servos closest to the top, and press in place.
Use painters tape to "clamp" the piece in place while it dries.
Step 28: Everything in It's Place
Turn the unit right side up and replace both the glass beakers and their corresponding wood top.
Step 29: Air Flow In
Put a little dab of wood glue in the fan slots and glue them into place.
Step 30: Get Your Head in the Cloud
Power up the cloudBit by connecting it the USB power bit. Configure the cloudBit using the easy-to-follow initialization walkthrough on the littleBits website.
Step 31: Programming the Arduino
Now that your housing is built, it's time to give it some life. (aka, program the arduino)
Plug the Arduino Bit into the USB port and also plug the USB power bit into another USB port. Connect the USB power bit to one of the inputs on the Arduino.
In the Arduino software, set the board to "Arduino Leonardo" and the USB port to the one that matches the Arduino Bit.
Program the Arduino with the following code:
/* Scentamental Notification System Made with Little Bits This example code is in the public domain. */ int cloudValue = 0; //Give unique names to the 3 digital output pins of the Arduino int scent1 = 1; int scent2 = 5; int scent3 = 9; // The setup routine sets up the Arduino and runs once void setup() { // Initialize the digital pins as output pins. pinMode(scent1, OUTPUT); pinMode(scent2, OUTPUT); pinMode(scent3, OUTPUT); //uncomment the line below for debugging //Serial.begin(9600); } // The loop routine runs over and over forever void loop() { //Read the analog input from the Cloudbit cloudValue = analogRead(A0); //Convert the analog value of 0 to 1023 to a number between 0 and 100 cloudValue = map(cloudValue, 0, 1023, 0, 100); //uncomment the line below for debugging //Serial.println(cloudValue); //Check for values from the Cloudbit //If the number is 25, trigger scent 1 if((cloudValue > 10) && (cloudValue < 33)){ digitalWrite(scent1, HIGH); digitalWrite(scent2, LOW); digitalWrite(scent3, LOW); } //If the number is 50, trigger scent 2 else if((cloudValue >= 33) && (cloudValue < 66)){ digitalWrite(scent1, LOW); digitalWrite(scent2, HIGH); digitalWrite(scent3, LOW); } //If the number is 75, trigger scent 3 else if((cloudValue >= 66) && (cloudValue < 100)){ digitalWrite(scent1, LOW); digitalWrite(scent2, LOW); digitalWrite(scent3, HIGH); } //If the number is 0, trigger nothing else if(cloudValue <= 10){ digitalWrite(scent1, LOW); digitalWrite(scent2, LOW); digitalWrite(scent3, LOW); } }
Step 32: Building the Circuit
Connect the following bits in series:
USB Power Bit (P3) --> Cloud Bit --> Arduino
--> d1 --> 'Y' servo 1 --> wire (w1) --> 'P' servo 1
--> d5 --> 'Y' servo 2 --> wire (w1) --> 'P' servo 2
--> d9 --> 'Y' servo 3 --> wire (w1) --> 'P' servo 3
*Make doubly sure that the three bottom 'Y' servos are switched to 'swing' and the top 'P' servos are switched to 'turn'.
Step 33: Baby's Got Back
Once you've got all the littleBits connected and tucked into place, slide in the back panel until it's almost all the way down. Put the end of the USB power cord through the hole from the inside and pull it all the way through and out, being careful not to disconnect the power module from the cloud bit.
Slide the panel the rest of the way.
You're now ready to set up 'If This Then That' to get your scents assigned to Instagram tags and do some real life testing!
Step 34: Setting Up 'If This Then That'
I set my device up to have each scent be triggered by a different Instagram tag:
Scent 1 - #pupsforpaige (cute dogs)
Scent 2 - #cheekynature (nature being funny)
Scent 3 - #snickersnort (other things being funny)
You can of course decide to use any trigger you'd like, that is offered by If This Then That. You need to sign up for both If This Then That and littleBits on their sites in order to do this.
If you'd like to use Instagram tags too, follow the directions in the photos above.
Step 35: Get Scent-imental!
With your light/heat source switched on (which should be done at the beginning of the day, then off at the end), and your dropper filled with your desired scents, every time a friend uses one of the tags, it will trigger the corresponding 'P' arm to squish the eye dropper once, releasing a drop or two of scent onto the heated glass. As it evaporates the fan will waft it your way, letting you know you need to check Instagram for some cute/funny.
Your nose will thank you!!!