LogoLogo
  • Ruuvi Developer Documentation
  • Ruuvi Hardware
    • RuuviTag B
    • RuuviTag Pro
    • Ruuvi Gateway
    • Ruuvi DevShield
    • Ruuvi Connector Kit
    • TMP 117 External Sensor
  • Ruuvi Connector System
    • Introduction
    • Expansion boards
    • Cables
    • Connectors
  • Ruuvi Sensor Firmware
    • 1.2.12
    • 2.5.9
    • 3.X
      • 3.x Sensors
      • 3.x Heartbeat
    • Device Firmware Update (DFU)
  • Ruuvi Gateway Firmware
    • GW Getting Started
    • GW Web-UI
      • Greeting window
      • Internet connection settings
        • Connection via Wi-Fi
        • Connection via Ethernet
      • Software update
      • Automatic configuration download
      • Automatic updates
      • Access Settings from LAN
      • Cloud Options
        • Backend: HTTP(s)
        • Backend: MQTT(s)
        • Backend: Statistics
      • Time Synchronisation Options
      • Bluetooth Scanning Settings
      • Configuration completion
      • Authentication when accessing from LAN
    • GW Install custom firmware
    • GW nRF52811 Firmware
      • GW nRF52811 selftest
      • GW nRF52811 scanning
      • GW nRF52811 repeating
      • GW nRF52811 UART communication
  • GW ESP32 Firmware
    • GW ESP32 WiFi Hotspot
    • GW ESP32 Button
    • GW ESP32 LED
    • GW ESP32 HTTP Client
    • GW ESP32 MQTT client
  • GW Data formats
    • HTTP: Time-stamped data from Bluetooth-sensors
    • HTTP: Data from Bluetooth-sensors without timestamps
    • MQTT: Time-stamped data from Bluetooth-sensors
    • MQTT: Data from Bluetooth-sensors without timestamps
    • HTTP GET /history (with timestamps) and decoding
    • HTTP: Gateway status
    • Gateway configuration
  • GW Examples
    • Polling mode
    • Poll endpoint "/metrics"
    • Configuration update via API
    • Firmware update via API
    • Configuration download from a remote server via API
    • MQTT examples
    • Home Assistant
    • MQTT+AWS IoT Core
  • Communicate with RuuviTag devices via Bluetooth
    • Bluetooth advertisements
      • Data format 3 (RAWv1)
      • Data format 4 (URL)
      • Data format 5 (RAWv2)
      • Data format C5 (Cut-RAWv2)
      • Data format 8 (Encrypted environmental)
    • Bluetooth connection
      • DIS (Device Information Service)
      • NUS (Nordic UART Service)
        • Heartbeat transmissions
        • Read logged history
    • Real Time Transfer (RTT)
  • Communicate with Ruuvi Cloud
    • Ruuvi Cloud
      • User API
      • Gateway API
      • Internal API
      • Alerts
      • Cloud stored app settings
  • Ruuvi Community projects
    • Integrations
Powered by GitBook
On this page
Edit on GitHub
  1. GW Data formats

MQTT: Time-stamped data from Bluetooth-sensors

Immediate relaying of Bluetooth data (with timestamps) to MQTT server.

PreviousHTTP: Data from Bluetooth-sensors without timestampsNextMQTT: Data from Bluetooth-sensors without timestamps

Last updated 1 year ago

The JSON data format description is provided in JSON schema format (), which provides clear human- and machine-readable documentation with examples.

The format of relayed messages is described here

{
  "$schema": "https://json-schema.org/draft/2019-09/schema",
  "$id": "http://ruuvi.com/schemas/ruuvi_mqtt_data_with_timestamps.schema.json",
  "title": "Time-stamped data from Bluetooth-sensors relayed via MQTT",
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "gw_mac": {
      "title": "MAC-address of Ruuvi Gateway",
      "type": "string",
      "pattern": "^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$",
      "examples": [
        "C8:25:2D:8E:9C:2C"
      ]
    },
    "rssi": {
      "title": "RSSI",
      "type": "integer",
      "examples": [
        -26
      ]
    },
    "aoa": {
      "title": "???",
      "type": "array",
      "default": [],
      "items": {},
      "examples": [
        []
      ]
    },
    "gwts": {
      "title": "Timestamp (Unix-time) when the message from Bluetooth-sensor was relayed by Gateway",
      "type": "string",
      "examples": [
        "1653668027"
      ]
    },
    "ts": {
      "title": "Timestamp (Unix-time) when the message from Bluetooth-sensor was received by Gateway",
      "type": "string",
      "examples": [
        "1653668027"
      ]
    },
    "data": {
      "title": "Relayed message from Bluetooth-sensor in hex encoding",
      "type": "string",
      "examples": [
        "0201061BFF99040515AE4C6DC6D7000CFFF803F4ADB6AD697FF41F0C28CBD6"
      ]
    },
    "coords": {
      "title": "GPS-coordinates of Ruuvi Gateway (optional)",
      "type": "string",
      "examples": [
        ""
      ]
    }
  },
  "examples": [
    {
      "gw_mac": "C8:25:2D:8E:9C:2C",
      "rssi": -26,
      "aoa": [],
      "gwts": "1653668027",
      "ts": "1653668027",
      "data": "0201061BFF99040515AE4C6DC6D7000CFFF803F4ADB6AD697FF41F0C28CBD6",
      "coords": ""
    }
  ]
}
https://json-schema.org
https://docs.ruuvi.com/communication/bluetooth-advertisements