Chad Stachowicz and myself are currently working on a “Smart Garage” device that is an IOT (Internet of Things) device that uses a home Wifi connection. The Smart Garage module allows the user to login to the webservice and find out if the door is open or closed as well as operate the door as necessary from anywhere in the world. The webservice uses WebSockets for real-time communication between device and server for both monitoring and control.
The hardware is an Arduino Mega microcontroller with an Adafruit CC3000 Wifi shield. It also has a blue LED to indicate of Wifi access and a red one to indicate the door is open as well as a button to operate the door manually.
I now have an Up Plus 2 3D printer (that I love) that my wonderful wife got me for Xmas. I measured the Arduino and shield carefully with digital calipers (a requirement for 3D printing) and then designed a special enclosure for the project in SketchUp. It needed to be able to contain all the parts with just the USB and Power connectors sticking out as well as have mounts for the indicator LED’s and the button.
Video demo of the functionality of the Smart Garage Opener:
3d Printing Files to Download
Here is the enclosure base image:
Smart Garage Base SketchUp File
Smart Garage Base STL File
Here is the enclosure top image:
Smart Garage Top SketchUp File
Smart Garage Top STL File
Hardware Used in the Project
Arduino Mega:
http://arduino.cc/en/Main/arduinoBoardMega2560
CC3000 Shield:
http://adafru.it/1491
3D Printer: Up Plus 2
http://www.amazon.com/UP-Plus-Desktop-Printer-100-240V/dp/B00E5OQEUC
WebSockets using the CC3000:
https://github.com/chadstachowicz/socket_io_arduino_cc3000
Here are some more pictures of the case and the printing process:
|
![]() |
![]() |
![]() |
![]() |
![]() |
Pingback: “Smart Garage” Device with 3D Printed Enclosure Built Around Adafruit CC3000 #arduino #3DThursday #3DPrinting « adafruit industries blog
Pingback: Community Corner: Mightiest TV-B-Gone Rig, Hidden in Plain Sight, Weeping Angel Cosplay Costumes, and Other Delights from the Adafruit Community « adafruit industries blog
Pingback: Community Corner: This Past Week in the Adafruit Community « adafruit industries blog
Hello, thank you for sharing your project.
I am doing a project with the same Hardware (except for the 3D Printer hehe), but I am stuck with the Websocket’s communication, so I tried to use the same library as you did, but I dont know how to use it…. not even the example.
So I was wondering if you could please help me. Thank you =)
My partner (Chad Stachowicz) on this project set this up but I can give you the basics of what he did. He has a node.js app that can communicate using websockets on the server side. That is connected to a Redis datastore I think that holds the account, device data.
I dont have access to his server side code, but conceptually its not complex. The code example he posted allows the Arduino to use WebSockets with the CC3000 shield. His library is here on GitHub:
https://github.com/chadstachowicz/socket_io_arduino_cc3000
You still need to write a Node.js app, we use Heroku because its free and easy. Their documentation on hot to setup and run a Node.js app is here:
https://devcenter.heroku.com/articles/getting-started-with-nodejs
(its pretty easy to follow, step by step)
Pingback: Smart Garage with Spark Core | MAKE
Pingback: 스파크 코어(Spark Core)로 만드는 스마트 차고 | Make: Korea