pjbroad / pi_sensors Goto Github PK
View Code? Open in Web Editor NEWClient side sensor code, running on one or more Raspberry Pi computers that push sensor readings to one or more servers.
License: GNU General Public License v3.0
Client side sensor code, running on one or more Raspberry Pi computers that push sensor readings to one or more servers.
License: GNU General Public License v3.0
The generated config file uses /tmp for the spool directory. However, /tmp is cleaned out on reboot so all buffered readings are lost. /tmp is not a good default location.
At start-up the web UI calls the server API to get the list of rooms. When switching room, the web UI calls the server API to get the list of sensors for that room. The current API implements this function using the mongo DB distinct() function; this gets slower as the database grows.
Instead, build a small collection that just has the list of rooms and the room sensors, and use this to fulfil the room list and room sensors API query. The collection can be populated when a new reading is received from an unknown room/sensor, and/or by another API call that would be called by user action.
If starting the sensor client automatically at boot time, the python-requests library could fail with the error "getrandom() initialization failed". This issue is fixed by installing the rng-tools package using: sudo apt install rng-tools
. The package should be included in the set-up instructions.
If a server send fails, the record is buffered for next time. These build up and each can take 60 seconds to time out when retrying This can cause us to miss the next record loop, Instead, if a send fails once to a URL, do not try that URL again until next time round. Instead buffer the record immediately.
There have been updates to the JavaScript libraries used in the README so test the current releases and updated the README.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.