A simple library for parsing Bluetooth advertisements from Ruuvi tags. Primarily focused on Arduino, but is platform independent.
class RuuviTagAdvertisementCallback: public BLEAdvertisedDeviceCallbacks {
void onResult(BLEAdvertisedDevice advertisedDevice) {
RuuviMeasurement measurement;
if (parser.parseRuuviMeasurement(advertisedDevice.getManufacturerData(), &measurement)) {
if ((measurement.macAddress & RUUVI_MAC_SUFFIX) == RUUVI_MAC_SUFFIX) {
Serial.println("Temperature is " + String(measurement.temperature));
}
}
}
};
MIT license.
Just send a PR!