Giter Site home page Giter Site logo

mtackes / wifitemphumiditysensor Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 0.0 180 KB

An honors project for Madison College. Uses an Arduino, wifi module, and temperature/humidity sensor to record data from multiple locations in a household.

License: GNU Affero General Public License v3.0

C++ 0.63% Arduino 0.18% JavaScript 98.82% HTML 0.36%

wifitemphumiditysensor's Introduction

Wifi Temp and Humidity Sensor

An honors project for Madison College.

Second place winner in Madison College Honors Competition, December 2015.

Uses an Arduino, wifi module, and temperature/humidity sensor to record data from multiple locations in a household to a Node.js server.

The Arduino code relies on two third-party libraries:

The Node server relies on Express and MongoDB (links in package.json), while the client uses jQuery and the non-commercial version of Highcharts.

Project Notes

Now that I'm done with the honors program at Madison College, this project will likely receive no more updates (I had to hand the hardware back to the school).

The Arduino code is relatively solid, not that I did anything super fancy with it, though I never figured out a particular issue where the device would occasionally fail to connect to its designated server address (despite many, many hours lost). The (small) library that I wrote to wrap the wifi and DHT libraries was mostly an exuse to learn just a little C++.

The Node server, on the other hand, is a bit more lacking. In order to get things working by my deadline with the relatively little time I could spare for the project, things are bolted together in strange ways. I'm particularly unhappy with the integration of MongoDB, something I wanted to try because my only experience had been with more traditional SQL databases. Specifically, I had trouble getting the connection object to the code that needed it and efficiently getting JSON out to the client. Both of these are rooted, at least partially, in the async nature of Node. If I had more time, I would have liked to research how others handled these issues, and maybe used a higher level Mongo connection library.

Regardless of the issues and headaches along the way, I had a lot of fun working with hardware like this, something that I really never had the chance to try before, although I probably won't be trying to take on a project like this single-handedly again.

wifitemphumiditysensor's People

Contributors

mtackes 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.