Skip to main content

Ruuvi Sensor Module

Description

The "ruuvi" module connects via Bluetooth LE to sensors from Ruuvi Innovations Ltd in Finland. It supports the "RuuviTag Pro Sensor" and "RuuviTag Sensor" sensor types. The following signal values are recorded by the smartCORE module from a sensor:

NameUnitName in measurement data (OSF/MQTT)Data type
Temperature°C<"name">.TemperatureFloat
Humidity%<"name">.HumidityFloat
Air PressurehPa<"name">.PressureFloat
Received Signal Strength Indicator (RSSI)dBm<"name">.RSSIInteger
Battery voltageV<"name">.BatteryVoltageFloat
Sensor MAC address-<"name">.MacAddressString

Interfaces and Protocols Used

  • Bluetooth LE

JSON Configuration Example (Demo)

The following section shows a demo configuration of the module.

    {
"modules": [
{
"config": {
"pollingIntervalMs": 2000,
"sensors": [
{
"mac": "C5:01:03:50:AF:9A",
"name": "Ruuvi.Motor"
},
{
"mac": "CB:9D:CB:4B:EB:A0",
"name": "Ruuvi.ventilation"
}
]
},
"factory": "ruuvi",
"module": "ruuvi"
}
],
"plugins": [
"ruuvi"
],
"timeout": 10000
}

The configuration results in the following signal names for the two sensors:

  • Ruuvi.Motor.Temperature

  • Ruuvi.Motor.Humidity

  • Ruuvi.Motor.RSSI

  • Ruuvi.Motor.Pressure

  • Ruuvi.Motor.MacAddress

  • Ruuvi.Motor.BatteryVoltage

  • Ruuvi.ventilation.Temperature

  • Ruuvi.Ventilation.Humidity

  • Ruuvi.Ventilation.RSSI

  • Ruuvi.Ventilation.Pressure

  • Ruuvi.Ventilation.MacAddress

  • Ruuvi.Ventilation.BatteryVoltage

Module Parameters

Parameter NameRequiredData TypeValid RangeDefaultDescription
pollingIntervalMsNoINT2000 (2 s)Interval [ms] for the periodic transmission of measurement values.
sensorsYesArrayList of sensors to be included. Assigned based on the MAC address.

Configuration "sensors"

Parameter NameRequiredData TypeDescription
macYesSTRINGThe MAC address of the sensor.
nameYesSTRINGThe name/identifier of the sensor, which is used as a prefix for all signal names (MQTT/Osf) of the sensor.

Remote Procedure Call (RPC)

The module’s RPC interface can be used to query which sensors are currently available or have been found via Bluetooth LE. A JSON structure is returned as the result.

The call has the following structure:

  • <"module">:GetSensors

The result looks like this:

{
"result": 0,
"sensors": [
{
"mac": "CB:9D:CB:4B:EB:A0",
"name": "CB-9D-CB-4B-EB-A0",
"rssi": -88
},
{
"mac": "C5:01:03:50:AF:9A",
"name": "C5-01-03-50-AF-9A",
"rssi": -66
}
]
}

Example

Request:    ruuvi:GetSensors
Response: <JSON structure>

Module Information

InformationValue
AuthoroptiMEAS GmbH
Since smartCORE2.6
Module typeProducer
Dependencies-