Bluetooth – MQTT Gateway
Gateway Bluetooth MQTT
Sul mercato esistono numerosi dispositivi Bluetooth e Bluetooth Low Energy, conosciuto anche come Bluetooth LE o BLE, di interesse per la domotica ed in particolare per Home Assistant, in questo articolo vedremo come poter integrare alcune tipologie di dispositivi attraverso l’uso di un gateway che potremo mettere in una posizione a nostro scelta diversa da quella dove gira HA o Hass.io.
In particolare BLE è una tecnologia wireless personal area network progettata e commercializzata per nuove applicazioni nel settore dell’assistenza sanitaria, fitness, per i beacon, per la sicurezza, per l’industria dell’intrattenimento domestico e per le industrie automobilistiche e dell’automazione. Rispetto al classico Bluetooth, il Bluetooth Low Energy ha lo scopo di fornire un consumo energetico e un costo notevolmente ridotto, mantenendo un intervallo di comunicazione simile.
Ultima nota tecnologica BLE opera nella stessa gamma di frequenze (la banda ISM 2.400-2.4835 GHz) della tecnologia Bluetooth classica e di altri protocolli come WiFi e ZigBee, ma utilizza un diverso insieme di canali.
Ritornando ad Home Assistant in molti avrete notato che l’antenna Bluetooth integrata nei Raspberry come Pi3b e successivi non copre una distanza particolarmente elevata, da qui è nata l’esigenza di trovare un modo per estendere la portata del Bluetooth e poter utilizzare in tutta tranquillità una serie di dispositivi che hanno un costo tutto sommato abbordabile rispetto ad altri analoghi ma con diversa tecnologia trasmissiva.
Ho quindi effettuato una “software & hardware selection” basandomi su una serie di requisiti tra cui la possibilità di interfacciarsi con tutti i sensori bluetooth che ho, questa fase di analisi mi ha portato a scegliere sia l’HW che il SW da utilizzare:
- Raspberry PizeroW: apparato dal costo abbordabile, circa 20 euro, possibilità di installare una distro linux come Raspbian o DietPi e poter utilizzare sia Wifi che Bluetooth. Disponibilità di molte librerie in grado di interfacciarsi con dispositivi domotici BT.
- bt-mqtt-gateway: pacchetto software ideato da Zewelor (https://github.com/zewelor/bt-mqtt-gateway) che realizza lo strato software deputato a inserire i dati recuperati da molteplici dispositivi bluetooth in MQTT.
La libreria bt-mqtt-gateway ha alcune caratteristiche interessanti:
- non si preoccupa di interfacciarsi direttamente con i dispositivi che vogliamo monitorare ma lascia questo compito a librerie specializzate.
- è stato pensata per essere facilmente estensibile: in pratica se qualcuno ha sviluppato una libreria per leggere i dati trasmessi da qualche apparato bluetooth, posso, tramite la realizzazione in Python di un “worker”, integrarlo con il gateway.
Una volta configurato il Raspberry PizeroW con il gateway, questo manderà i dati attraverso il protocollo MQTT al broker Mosquitto che normalmente è installato come add-on di Hass.io (o come software a sé stante con Home Assistant).
Gli apparati che bt-mqtt-gateway al momento gestisce sono i seguenti:
- Valvole termostatiche EQ3 Bluetooth grazie alla lib python-eq3bt
- Xiaomi Mi Scale
- Linak Desk grazie alla lib linak_bt_desk
- MySensors
- Xiaomi Mi Flora grazie alla lib miflora
- Termometro Xiaomi Aqara grazie alla lib mithermometer
- Beacon/Tag BLE attraverso la lib bluez
- Oral-B spazzolino con bluetooth
Personalmente sto utilizzando le valvole EQ3 (ne ho 4) che si trovano su Amazon ad un prezzo competitivo (circa 20 Euro), i sensori piante MiFlora (2) e i Nut Beacon (2).
La funzionalità di verifica della presenza di beacon/tag BLE non era presente quando ho individuato bt-mqtt-gateway, però mi interessava implementarla, sono partito quindi a scrivere un ”worker” in Python che riusciva a leggere un singolo beacon BLE, poi ho coinvolto un professionista come Elvio Sebastianelli (https://github.com/elviosebastianelli, @elvioseba su Telegram) che ha fatto un gran lavoro per rendere perfettamente fruibile la funzionalità di scansione di BLE multipli.
N.B.: come prerequisito per tutte le operazioni di configurazione ed installazione occorre avere una certa familiarità con il S.O. e i comandi Linux.
Installazione del gateway
Come detto occorre un Raspberry PiZeroW con distro linux come DietPi o Raspbian completo di Python versione 3.5 o superiori e pip (Python Package installer):
Da terminale occorre quindi digitare i seguenti comandi:
1 2 3 4 |
sudo apt-get install git python3 python3-pip bluetooth bluez git clone https://github.com/zewelor/bt-mqtt-gateway.git cd bt-mqtt-gateway sudo pip3 install -r requirements.txt |
Configurazione del gateway
Tutte le configurazioni dei vari “worker” devono essere presenti nel file configuration.yaml contenuto nella cartella bt-mqtt-gateway, di default è presente un esempio di configurazione che può essere usato come base di partenza:
1 2 3 |
cp config.yaml.example config.yaml sudo nano config.yaml #per editare la configurazione ./gateway.py -d #per avviare il gateway, con debug abilitato |
Configurazione del servizio con Systemd
Quando saranno finiti i test e le prove è molto più comodo definire un servizio che avvia in automatico il gateway: sempre nella solita cartella bt-mqtt-gateway creata in fase di installazione è presente un esempio da configurare con il path corretto.
1 2 3 4 5 6 |
sudo cp bt-mqtt-gateway.service /etc/systemd/system/ sudo nano /etc/systemd/system/bt-mqtt-gateway.service sudo systemctl daemon-reload sudo systemctl start bt-mqtt-gateway sudo systemctl status bt-mqtt-gateway sudo systemctl enable bt-mqtt-gateway |
Aggiornamento Liberia Bluez
La distro Raspbian Stretch che a sua volta deriva da Debian Stretch ha come default della libreria Bluez per la gestione del Bluetooth la versione 5.43, per aggiornarla alla 5.50 che presenta correzioni di numerosi bug occorre compilare i sorgenti; i passaggi da fare sono i seguenti:
1 2 3 4 5 6 |
sudo apt-get update sudo apt-get install libdbus-1-dev libglib2.0-dev libudev-dev libical-dev libreadline-dev -y wget www.kernel.org/pub/linux/bluetooth/bluez-5.50.tar.xz tar xvf bluez-5.50.tar.xz && cd bluez-5.50 ./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var --enable-experimental make -j4 sudo make install |
Completata la compilazione riavviate il PiZeroW e controllate la versione di Bluez installata:
1 2 |
sudo reboot now bluetoothctl -v |
Configurazione Valvole EQ3
Innanzitutto occorre installare la libreria python-eq3bt con il seguente comando.
1 |
pip install python-eq3bt |
Qui https://github.com/rytilahti/python-eq3bt trovate la libreria e alcuni comandi di test.
Nel file configuration.yaml occorre inserire i mac-address BT delle varie valvole nella sezione thermostat.
1 2 3 4 5 6 7 8 |
thermostat: args: devices: bedroom: 00:11:22:33:44:55 kitchen: 00:11:22:33:44:66 topic_prefix: thermostat topic_subscription: thermostat/+/+/set update_interval: 60 |
Configurazione Mi Flora
Innanzitutto occorre installare la libreria miflora con il seguente comando:
1 |
pip install miflora |
Qui https://github.com/open-homeautomation/miflora trovate la libreria.
Nel file configuration.yaml occorre inserire i mac-address BT dei sensori nella sezione miflora.
1 2 3 4 5 6 |
miflora: args: devices: herbs: 00:11:22:33:44:55 topic_prefix: miflora update_interval: 300 |
Configurazione BLE Scan
Non ci sono librerie da installare perché la funzionalità si basa sulla libreria bluez, occore solo configurare il gateway editando nel file configuration.yaml la sezione blescanmulti.
1 2 3 4 5 6 7 |
blescanmulti: args: devices: beacon: 00:11:22:33:44:55 smartwath: 00:11:22:33:44:55 topic_prefix: blescan update_interval: 60 |
Configurazioni per Home Assistant
Sempre nel file configuration.yaml sul PizeroW occorre editare la sezione iniziale con i parametri MQTT:
1 2 3 4 5 6 7 8 |
mqtt: host: 192.168.1.1 port: 1883 username: user password: password topic_prefix: hostname # All messages will have that prefix added, remove if you dont need this client_id: bt-mqtt-gateway availability_topic: lwt_topic |
I parametri host, port, user, password vanno personalizzati secondo quanto configurato nell’addon Mosquitto o in generale nel server MQTT, topic_prefix è un parametro a vostra scelta, ovviamente ne va tenuto conto in fase di configurazione su HA.
Configurazione Sensori su Home Assistant
Una volta configurato il gateway e riavviato il servizio sul Raspberry PiZeroW, il gateway manderà al server MQTT i dati dei sensori/attuatori bluetooth, occorre quindi configurare dei componenti in HA:
Per le valvole EQ3 sipuò configurare il componente climate e il sensore di apertura della valvola:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
climate: - platform: mqtt qos: 1 name: Bedroom Thermostat current_temperature_topic: thermostat/bedroom/current_temperature temperature_state_topic: thermostat/bedroom/target_temperature temperature_command_topic: thermostat/bedroom/target_temperature/set mode_state_topic: thermostat/bedroom/mode mode_command_topic: thermostat/bedroom/mode/set away_mode_state_topic: thermostat/bedroom/away away_mode_command_topic: thermostat/bedroom/away/set payload_on: 'on' payload_off: 'off' modes: - heat - manual - boost - eco sensors: - platform: mqtt name: "Bedroom eq3 valve state" state_topic: "thermostat/bedroom/valve_state" unit_of_measurement: "%" |
Per i sensori Xiaomi Mi Flora si possono configurare i sensori e il componente plant:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
plant: herbs: sensors: moisture: sensor.miflora_herbs_moisture battery: sensor.miflora_herbs_battery temperature: sensor.miflora_herbs_temperature conductivity: sensor.miflora_herbs_conductivity brightness: sensor.miflora_herbs_light min_moisture: 20 max_moisture: 60 min_battery: 17 min_conductivity: 500 min_temperature: 15 sensor: - platform: mqtt state_topic: miflora/herbs/temperature name: "MiFlora Temperature" unit_of_measurement: "°C" - platform: mqtt state_topic: miflora/herbs/moisture name: "MiFlora Moisture" unit_of_measurement: "%" - platform: mqtt state_topic: miflora/herbs/light name: "MiFlora Light" unit_of_measurement: "lux" - platform: mqtt state_topic: miflora/herbs/conductivity name: "MiFlora Conductivity" unit_of_measurement: "us/cm" - platform: mqtt state_topic: miflora/herbs/battery name: "MiFlora Battery" unit_of_measurement: "%" |
Per il tracking dei dispositivi BLE (beacon) come i Nut (www.nutspace.com) è possibile monitorare due parametri:
- la presenza o meno del beacon BLE nel raggio di rilevazione del gateway
- il parametro Received Signal Strenght Indication (RSSI) da cui si può, in maniera approssimata, ricavare la distanza del beacon dal gateway (con la formula Distance = 10 ^ ((Measured Power – RSSI)/(10 * N)) dove Measured Power è un parametro che dovrete adattare e N=2)
Di seguito ho inserito la configurazione dei sensori, aggiungendo anche il sensore “realisti RSSI” che effettua una azione di filtraggio dei valori RSSI ricevuti dal gateway, su “realistic RSSI” si basa il calcolo della distanza.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
- platform: mqtt name: "Beacon RSSI" state_topic: blescan/presence/beacon/rssi unit_of_measurement: "dBm" - platform: mqtt name: "Beacon Presence" state_topic: blescan/presence/beacon - platform: filter name: "Realistic Beacon RSSI" entity_id: sensor.beacon_rssi filters: - filter: outlier window_size: 4 radius: 4.0 - filter: lowpass time_constant: 10 precision: 2 - platform: template sensors: beacon_distance: friendly_name: "Distanza Beacon" value_template: > {% if is_state("sensor.beacon_presence", "1") %} {{(10**((-60-(states.sensor.realistic_beacon_rssi.state | int)) / 30)) | round(2)}} {% endif %} unit_of_measurement: 'm' icon_template: mdi:counter |
23 risposte
Ciao, grazie della preziosa guida. Cercavo una cosa del genere da molto tempo! Mi sapresti indicare dove reperire l’elenco delle librerie necessarie per i vari workers? In particolare mi serve quello per la mi scale. Grazie
Ciao, nel GitHub di bt-mqtt-gateway ci sono i link alle librerie necessarie. Per Mi Scale non c’è link ma andando a vedere il codice del worker dice che c’è bisogno solo di bluepy, che è già installata, comunque ti consiglio di chiedere sul GitHub se ci sono indicazioni diverse.
Potresti anche dare un’occhiata a questa discussione:
https://community.home-assistant.io/t/integrating-xiaomi-mi-scale/9972
grazie, non avevo fatto caso… e dire che ho girato nella pagina e non li vedevo
ciao, va bene anche per il Raspberry Pi 3?
grazie
Sì, sto usando in questo momento un rp3. Funziona anche con un pc con debian 9 e un adattatore bluetooth ble su usb supportato da linux
Comunque c’è un errore grossolano in tutti gli state_topic! Non sono miflora/herbs/temperature ma hostname/miflora/herbs/temperature
Ovviamente se cambiate, come ho fatto io, il topic_prefix dovete cambiare il topic di conseguenza. Io ho messo btgateway quindi il mio state_topic è btgateway/miflora/herbs/temperature
non è un errore grossolano, come è scritto tutte le configurazionisono da personalizzare: # All messages will have that prefix added, remove if you dont need this
Ho un problema con home assistant che mi disconnette il gateway, come mai?
Ho abilitato per ora solo miflora
log mosquitto:
1565709944: New client connected from 192.168.2.129 as bt-mqtt-gateway (p2, c0, k60, u’mqtt_user’).
1565709945: Socket error on client bt-mqtt-gateway, disconnecting.
Difficile dire cosa possa essere con così pochi dati. Il gateway BT2MQTT sta funzionando? User e password mqtt sono corretti?
Il gateway sembra funzionare e i dati del miflora vengono letti da home assistant (user e pw sono corretti) solo se lancio manualmente il gateway, allego il debug del gateway:
pi@raspberrypi:~/bt-mqtt-gateway $ ./gateway.py -d
2019-08-13 20:44:48,206 INFO bt-mqtt-gw gateway.py:39: – Starting
2019-08-13 20:44:48,213 DEBUG bt-mqtt-gw.mqtt mqtt.py:28:__init__ – Setting LWT to: btgateway/lwt_topic
2019-08-13 20:44:56,349 INFO bt-mqtt-gw.workers.miflora miflora.py:16:_setup – Adding 1 miflora devices
2019-08-13 20:44:56,352 DEBUG bt-mqtt-gw.workers.miflora miflora.py:18:_setup – Adding miflora device ‘herbs’ (C4:7C:8D:6A:5C:90)
2019-08-13 20:44:56,355 DEBUG bt-mqtt-gw.workers_manager workers_manager.py:60:register_workers – Added miflora config with a 2 seconds timeout
2019-08-13 20:44:56,363 DEBUG bt-mqtt-gw.workers_manager workers_manager.py:65:register_workers – Added miflora worker with 300 seconds interval and a 60 seconds timeout
2019-08-13 20:44:56,420 DEBUG bt-mqtt-gw.mqtt mqtt.py:97:callbacks_subscription – Subscribing to: btgateway/miflora/update_interval
2019-08-13 20:44:56,429 DEBUG bt-mqtt-gw.mqtt mqtt.py:97:callbacks_subscription – Subscribing to: btgateway/homeassistant/status
2019-08-13 20:44:56,460 DEBUG bt-mqtt-gw.workers_manager workers_manager.py:36:execute – Execution result of command MifloraWorker.config: [{‘topic’: ‘sensor/C4-7C-8D-6A-5C-90/miflora_herbs_temperature/config’, ‘payload’: ‘{“unique_id”: “bt-mqtt-gateway/C4-7C-8D-6A-5C-90/miflora_herbs_temperature”, “state_topic”: “miflora/herbs/temperature”, “name”: “miflora_herbs_temperature”, “device”: {“identifiers”: [“C4:7C:8D:6A:5C:90”, “bt-mqtt-gateway/C4-7C-8D-6A-5C-90/miflora_herbs”], “manufacturer”: “Xiaomi”, “model”: “MiFlora”, “name”: “miflora_herbs”}, “device_class”: “temperature”, “unit_of_measurement”: “\\u00b0C”}’}, {‘topic’: ‘sensor/C4-7C-8D-6A-5C-90/miflora_herbs_moisture/config’, ‘payload’: ‘{“unique_id”: “bt-mqtt-gateway/C4-7C-8D-6A-5C-90/miflora_herbs_moisture”, “state_topic”: “miflora/herbs/moisture”, “name”: “miflora_herbs_moisture”, “device”: {“identifiers”: [“C4:7C:8D:6A:5C:90”, “bt-mqtt-gateway/C4-7C-8D-6A-5C-90/miflora_herbs”], “manufacturer”: “Xiaomi”, “model”: “MiFlora”, “name”: “miflora_herbs”}, “icon”: “mdi:water”, “unit_of_measurement”: “%”}’}, {‘topic’: ‘sensor/C4-7C-8D-6A-5C-90/miflora_herbs_light/config’, ‘payload’: ‘{“unique_id”: “bt-mqtt-gateway/C4-7C-8D-6A-5C-90/miflora_herbs_illuminance”, “state_topic”: “miflora/herbs/light”, “name”: “miflora_herbs_light”, “device”: {“identifiers”: [“C4:7C:8D:6A:5C:90”, “bt-mqtt-gateway/C4-7C-8D-6A-5C-90/miflora_herbs”], “manufacturer”: “Xiaomi”, “model”: “MiFlora”, “name”: “miflora_herbs”}, “device_class”: “illuminance”, “unit_of_measurement”: “lux”}’}, {‘topic’: ‘sensor/C4-7C-8D-6A-5C-90/miflora_herbs_conductivity/config’, ‘payload’: ‘{“unique_id”: “bt-mqtt-gateway/C4-7C-8D-6A-5C-90/miflora_herbs_conductivity”, “state_topic”: “miflora/herbs/conductivity”, “name”: “miflora_herbs_conductivity”, “device”: {“identifiers”: [“C4:7C:8D:6A:5C:90”, “bt-mqtt-gateway/C4-7C-8D-6A-5C-90/miflora_herbs”], “manufacturer”: “Xiaomi”, “model”: “MiFlora”, “name”: “miflora_herbs”}, “icon”: “mdi:leaf”, “unit_of_measurement”: “\\u00b5S/cm”}’}, {‘topic’: ‘sensor/C4-7C-8D-6A-5C-90/miflora_herbs_battery/config’, ‘payload’: ‘{“unique_id”: “bt-mqtt-gateway/C4-7C-8D-6A-5C-90/miflora_herbs_battery”, “state_topic”: “miflora/herbs/battery”, “name”: “miflora_herbs_battery”, “device”: {“identifiers”: [“C4:7C:8D:6A:5C:90”, “bt-mqtt-gateway/C4-7C-8D-6A-5C-90/miflora_herbs”], “manufacturer”: “Xiaomi”, “model”: “MiFlora”, “name”: “miflora_herbs”}, “device_class”: “battery”, “unit_of_measurement”: “%”}’}]
2019-08-13 20:44:56,522 DEBUG bt-mqtt-gw.workers_manager workers_manager.py:116:update_all – Updating all workers
2019-08-13 20:44:56,530 INFO bt-mqtt-gw.workers.miflora miflora.py:76:status_update – Updating 1 miflora devices
2019-08-13 20:44:56,535 DEBUG bt-mqtt-gw.workers.miflora miflora.py:79:status_update – Updating miflora device ‘herbs’ (C4:7C:8D:6A:5C:90)
2019-08-13 20:44:58,222 DEBUG bt-mqtt-gw.workers_manager workers_manager.py:36:execute – Execution result of command MifloraWorker.status_update: [{‘topic’: ‘miflora/herbs/temperature’, ‘payload’: 31.5}, {‘topic’: ‘miflora/herbs/moisture’, ‘payload’: 61}, {‘topic’: ‘miflora/herbs/light’, ‘payload’: 22}, {‘topic’: ‘miflora/herbs/conductivity’, ‘payload’: 375}, {‘topic’: ‘miflora/herbs/battery’, ‘payload’: 100}]
oggi mi sono messo a configurare tutto seguendo passo passo le istruzioni ma facendo partire il GTW in debug mi da il seguente errore
2019-08-24 23:34:22,573 DEBUG bt-mqtt-gw.workers_manager workers_manager.py:65:register_workers – Added miflora worker with 300 seconds interval and a 35 seconds timeout
Could not install packages due to an EnvironmentError: [Errno 2] File o directory non esistente: ‘/tmp/pip-req-tracker-_nnp9u7w/b335028404f826f5fc2a92fa2aa1cfd9faf38302a8e05ea0cb3032ee’
Traceback (most recent call last):
File “./gateway.py”, line 45, in
manager.register_workers(global_topic_prefix).start(mqtt)
File “/home/pi/bt-mqtt-gateway/workers_manager.py”, line 57, in register_workers
worker_obj = klass(command_timeout, global_topic_prefix, **worker_config[‘args’])
File “/home/pi/bt-mqtt-gateway/workers/base.py”, line 7, in __init__
self._setup()
File “/home/pi/bt-mqtt-gateway/workers/mithermometer.py”, line 15, in _setup
from mithermometer.mithermometer_poller import MiThermometerPoller
ModuleNotFoundError: No module named ‘mithermometer’
sembra ci sai qualche errore con mithermometer, hai installato la libreria giusta? trovi i dettagli nel github del gateway: https://github.com/zewelor/bt-mqtt-gateway
Scusate una soluzione per Hass.io.. ovvero esiste un addon (bt-mqtt-gateway) installabile direttamente su Hassio?? Grazie
non esiste un add-on già pronto, aggiungo anche che non avrebbe molto senso visto che potresti usare il bluetooth dell’host dove gira hass.io. ciao
ciao ho un pizero dove gira già dà un pò il ble gateway,ora volevo aggiungere più dispositivi da monitorare nel configuration.yaml .questo è il mio :
blescanmulti:
args:
devices:
beacon: F4:60:E2:XX:XX:XX
smartwath: F4:60:E2:XX:XX:XX
topic_prefix: blescan
available_payload: home
unavailable_payload: not_home
available_timeout: 0
unavailable_timeout: 60
scan_timeout: 10
scan_passive: true
update_interval: 60
ho fatto delle prove ma senza risultati non capisco dove aggiungere un nuovo MAC da monitorare .
grazie a chi mi dà una mano.
Sotto la direttiva “devices”
ciao a tutti!!! articili perfetto per quello che devo fare!!!! GRAZIE MILLE!!!!
durante la configurazione mi sono bloccatto al settaggio del config.yaml
il mio home assistant e’ accessibile da remote e per questo ho usato supervidor-> add-on -> DuckDNS (genera anche certificato SSL)
da intranet, ho due modi di accedere:
1) https://192.168.1.100:8123 –> e prima di accedere mi da un erroire di certificato ssl
oppure
2) https://my-home.duckdns.org –> e quest non mi da alcun proiblema di certificato….
MQTT blocker e’ installato come Supervisor-> add.on -> MQTT broker ed il mio dubbio e’ su come configurare mqtt nel config del gateway:
mqtt:
host: 192.168.1.100
port: 1883
username: user
password: password
#ca_cert: /etc/ssl/certs/ca-certificates.crt # Uncomment to enable MQTT TLS, update path to appropriate location.
#ca_verify: False # Verify TLS certificate chain and host, disable for testing with self-signed certificates, default to True
topic_prefix: hostname # All messages will have that prefix added, remove if you dont need this.
client_id: bt-mqtt-gateway
availability_topic: lwt_topic
– dove specifico https?
– nell’host, specific IP o external URL?
– come configure la CA?
mmmm sono bloccato qua 😛
Non é necessario usare una configurazione mqtt “crittografata”, nel caso tu volessi, ti conviene seguire una guida ad hoc.
ciao, ci sono possibilità di usare i sensori allagamento Xiaomi MiFlood BLE ? grazie
Puoi controllare qui i dispositivi supportati:
https://github.com/zewelor/bt-mqtt-gateway
Salve, se io volessi utilizzare dei sensori collegati ad Arduino e che tramite bluetooth possono inviare i dati al gateway, cosa devo modificare nel file configuration.yaml ?
Il gateway funziona solo con quanto previsto qui: https://github.com/zewelor/bt-mqtt-gateway
Per altri utilizzi devi programmarti il “worker” in Python
Salve,
il mio Hassio è in un nuc con proxmox, potrebbe funzionare anche creando una VM dedicata e inserendo un adattatore bluethoot?