Giter VIP home page Giter VIP logo

frdm_shed_lights's Introduction

Shed Light Control

This project is to put The Shed's lighting controls on the internet, and to monitor the air quality in The Shed throughout the day.

You will want to make this point to your server. To do this, change MQTT_HOST and MQTT_PORT as defined in mqtt_client.h.

Features

  • MQTT support
  • Sensor data reported once per 5s over MQTT_PORT
  • Light state may be changed by publishing mesasges to the sjc80/set_lights topic
  • Sensors available:
  • DHT22 Humidity and Temperature sensor
  • GP2Y10 Particle Counter (experimental)

There is no security built in. You can run this on a LAN only, which is preferential to exposing the light switch over the internet; however to keep the client simple (all js speaking to MQTT) adding authentication was not a sensible design option.

Building

With the gcc arm tools available on your path, you should be able to do:

make -j4

# modify for wherever you mount your mbed
cp ./frdm_shed_lights.bin /media/mbed

to build and deploy to an FRDM K64F development board.

On Windows, I suggest installing Cygwin with GNU Make to execute the Makefile.

MQTT

Sensors

Sensor Endpoint
DHT22 MQTT Published sjc80/dht22
Particle count MQTT Published sjc80/particle_count

State

Sensor Endpoint
State MQTT Published sjc80/light_state

Control

Sensor Endpoint
Set lights MQTT Subscribes sjc80/set_lights

License

Parts of this work are © The University of Kent and Simon Cooksey. Various libraries are under separate licenses and have individual copy right holders.

frdm_shed_lights's People

Watchers

James Cloos avatar Simon Cooksey avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.