node-ruuvitag v5.1.0
node-ruuvitag
Node.js module for reading data from a Ruuvitag weather station.
Tested on Raspberry Pi 3. Depends on noble. See instructions on how to enable BLE on RasPi and how to run without root.
Installation
npm install node-ruuvitagUsage example
const ruuvi = require('node-ruuvitag');
ruuvi.on('found', tag => {
console.log('Found RuuviTag, id: ' + tag.id);
tag.on('updated', data => {
console.log('Got data from RuuviTag ' + tag.id + ':\n' +
JSON.stringify(data, null, '\t'));
});
});
ruuvi.on('warning', message => {
console.error(new Error(message));
});Events
found
Module ruuvi emits a found event, when a new RuuviTag
is discovered. Event's payload is a ruuviTag object (see below)
warning
Module relays noble's warning events (see below)
API
ruuvi.findTags()
Finds available ruuvitags. Returns a promise which is resolved with an
array of ruuviTag objects or rejected with an error if no tags were
found.
If you call findTags multiple times, it always returns all
found RuuviTags this far.
ruuviTag object
Is an eventEmitter .
Properties:
id: id of beaconaddress: address of beaconaddressType: addressType of addressconnectable: flag if beacon is connectable
Events:
updated: emitted when weather station data is received.
Object data has
following properties (depending on data format):
url-- original broadcasted url if anytemperaturepressurehumidityeddystoneId-- in data format 4rssibattery(battery voltage)accelerationXaccelerationYaccelerationZtxPower-- in data format 5movementCounter-- in data format 5measurementSequenceNumber-- in data format 5mac-- in data format 5
See data formats for info about RuuviTag sensor values.
1 year ago
2 years ago
3 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago