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:
| Name | Unit | Name in measurement data (OSF/MQTT) | Data type |
|---|---|---|---|
| Temperature | °C | <"name">.Temperature | Float |
| Humidity | % | <"name">.Humidity | Float |
| Air Pressure | hPa | <"name">.Pressure | Float |
| Received Signal Strength Indicator (RSSI) | dBm | <"name">.RSSI | Integer |
| Battery voltage | V | <"name">.BatteryVoltage | Float |
| Sensor MAC address | - | <"name">.MacAddress | String |
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 Name | Required | Data Type | Valid Range | Default | Description |
|---|---|---|---|---|---|
| pollingIntervalMs | No | INT | 2000 (2 s) | Interval [ms] for the periodic transmission of measurement values. | |
| sensors | Yes | Array | List of sensors to be included. Assigned based on the MAC address. |
Configuration "sensors"
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| mac | Yes | STRING | The MAC address of the sensor. |
| name | Yes | STRING | The 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
| Information | Value |
|---|---|
| Author | optiMEAS GmbH |
| Since smartCORE | 2.6 |
| Module type | Producer |
| Dependencies | - |