Ruuvi Gatewayn avulla RuuviTagit Home Assistantiin

Ruuvi Gatewayn avulla RuuviTagit Home Assistantiin

RuuviTagien käyttö onnistuu tavallisella älypuhelimella tai esimerkiksi kotiautomaatiojärjestelmän Bluetooth -yhteyden avulla. Näiden kuuluvuudessa voi kuitenkin olla jossain tilanteissa toivomisen varaa. Parempaa kuuluvuutta tavoitteleville on saatavilla tehokkaalla apila-antennilla varustettu Ruuvi Gateway.

Ruuvi Gateway
Ruuvi Gateway

Ruuvi Gatewayn asennus on helppoa. Laite kytketään mukana tulevalla kaapelilla lähiverkkoon ja yhdistetään USB-virtalähteeseen. Muuta ei käytännössä tarvita. Laite välittää RuuviTagien tiedot automaattisesti samassa verkossa olevalle puhelinsovellukselle. Tarvittaessa laite on mahdollista liittää myös langattomaan verkkoon. Ruuvi tarjoaa myös pilvipalvelua RuuviTagien tilastojen etätarkastelua varten.

Ruuvi Station pilvessä
Ruuvi Station pilvessä

Toistaiseksi Ruuvi Gatewaylle ei ole suoraa integraatiota Home Assistantiin. Laitteen asetuksissa on kuitenkin mahdollista määritellä oma MQTT -palvelin, jonne RuuviTagien tiedot lähetetään. Omaksi MQTT -palvelimeksi Home Assistant suosittelee Mosquitto MQTT Brokeria. Sen voi asentaa järjestelmästä riippuen esimerkiksi Home Assistantin Add-onina tai omaan Docker-konttiin:

# docker-compose.yaml for Mosquitto
version: '3.3'
services:
  eclipse-mosquitto:
    image: eclipse-mosquitto
    container_name: mosquitto
    ports:
      - 1883:1883
      - 9001:9001
    volumes:
      - ./:/mosquitto/:rw
    restart: unless-stopped
# mosquitto.conf

listener 1883


## Authentication ##
password_file /mosquitto/config/password.txt

Tämän lisäksi Home Assistantiin tarvitaan MQTT -integraatio, jonka avulla MQTT -palvelimelle syötetyt tiedot saadaan Home Assistantin käyttöön. Ruuvi Gatewayn tapauksessa Home Assistant ei kuitenkaan tunnista antureita MQTT-palvelimen kautta suoraan. Tätä varten Home Assistantiin täytyy vielä asentaa Pyscript integraatio HACS:n avulla ja siihen sopiva scripti. Skriptin tehtävä on lukea Ruuvi Gatewayn syöttämät tiedot MQTT-palvelimelta ja kirjoittaa ne sinne uudelleen Home Assistantin ymmärtämässä muodossa. Pyscriptille on lisäksi kerrottava antureiden MAC -osoitteet ja miten uudet tiedot muodostetaan. Esimerkkiskriptistä hieman muokattu versio:

pyscript:
  allow_all_imports: true
  apps:
    ruuvi-gateway:
      mqtt_topic_prefix: ruuvi
      ruuvitags:
        ab01cdef23f4: Piha
      measurements:
        temperature:
          config:
            stat_t: homeassistant/sensor/<MAC>/temperature/state
            json_attr_t: homeassistant/sensor/<MAC>/temperature/attributes
            name: Lämpötila
            unit_of_meas: "\u00b0C"
            dev_cla: temperature
            uniq_id: ruuvitag_<MAC>_temperature
            device:
              ids: ruuvitag-<MAC>
              mf: Ruuvi Innovations
              mdl: RuuviTag
              name: <TAG_NAME>
          attributes:
            Ruuvitag: <MAC>
            Measure: Lämpötila
            Unit: "\u00b0C"
          source_metric: temperature
          precision: 1

Huom! Home Assistantin versiosta 2023.2 alkaen on ollut mahdollista käyttää natiivia integraaitiota, minkä ansiosta asennus on erittäin helppoa. MQTT:tä tai Pyscriptiä ei tällöin tarvita lainkaan. Myös pelkät RuuviTagit toimivat nykyisellään natiivisti Home Assistantin kanssa. Tällöin tosin tarvitaan erillinen Bluetooth vastaanotin.

4 thoughts on “Ruuvi Gatewayn avulla RuuviTagit Home Assistantiin

  1. Moikka! Kiitoksia mahtavasta blogistasi. Ollut suurena innoittajana omiinkin projekteihin!

    Oletko kokeillut millaisen etäisyyden päähän gateway osaa lukea antureita? Yritin katsoa äkkiä valmistajan sivuilta, mutten äkkiseltään löytänyt mitään lukemaa.

    Itse olen käyttänyt vastaavana gatewaynä ESP32:sta ESPHomella joka on sijoitettu keskelle taloa. Tämä pystyy hyvin lukemaan saunaan sijoitetun ruuvitagin sekä huoneiden seinillä olevat Xiaomin lämpömittarit, ja välittämään tiedot Home Assistenttiin.

    Mietin että onnistuisikohan muutaman kymmenen metrin päässä olevan rantasaunan antureiden lukeminen Ruuvin gateway:n avulla.

    1. Kiitos kommenteista! Oma tarve gatewaylle tuli kun erillinen BT-dongle jatkojohdon päässä ei saanut luettua luotettavasti erillisessä autotallissa olevaa tagia. Välissä kaksi puurakenteista ulkoseinää ja etäisyyttä n. 10m. Gatewayn kanssa ei minkäänlaista ongelmaa saada yhteyttä. Voisinkin testata tuota maksimia jossain vaiheessa tarkemmin.

      1. Pikaisella epätieteellisellä testauksella en löytänyt omalta tontilta tagille paikkaa, mikä ei olisi kuulunut. Esim. ulkoseinä ja 45m etäisyyttä sekä ulkoseinä, 4 väliseinää ja 30m etäisyyttä toimivat vielä luotettavasti.

        1. Hienoa! Kiitos tästä! Taidampa itsekin kokeilla tätä gatewaytä.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *