Create your first connected light using Raspberry Pi. Control and monitor a connected light from mobile, tablet and desktop using Lelylan & MQTT. It takes 15 minutes | $36 (eth) or $44 (WiFi) in hardware | basic level.
Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.
Step 1: Hardware
For this tutorial you need a Raspberry Pi connected to the Internet, either via ethernet (Model B) or via WiFi using a compatible WiFi USB dongle. To configure the network access on your Raspberry Pi have a look at this tutorial. To complete this tutorial you need the following components.
Step 2: Software
python-mosquitto. This library enables the communication between Lelylan and the Rasp by creating a MQTT client in Python.$ sudo apt-get install python-mosquitto
Step 3: Hardware Setup
This schema represents the led, resistor and pushbutton setup. With this setup each time you press the button, the LED is turned on and off.
Step 4: Software Setup
1) Set a meaningful name (e.g. bedroom light).
2) Choose the device type. For this tutorial choose Basic Light. What is a type? A type defines what a device is by defining its properties, functions and statuses. For this tutorial you do not need to now more about.
3) Choose "Connect with MQTT" as connectivity option. In this tutorial we'll use MQTT, a publish subscribe protocol for the Internet of Things.
4) Get the Device ID and Device Secret. Once the device is created, click the settings link (placed under the device name) and get the device ID and device secret. You'll need them in the next section.
Step 5: Code
Once the (virtual) device is defined on Lelylan you need to make it communicate with the Raspberry Pi. Copy the Python sketch below and change , and with your device credentials. Save the sketch in a file named lelylan_light.pyand run it as super user: $ sudo python lelylan_light.py.
Step 6: You Are Done
Step 7: Learn More
If you want to better understand how the code works checkout the code explenation code explenation section.