El dispositivo envía los datos del sensor de bateria como un entero en dos bytes con valores entre [0,4096]. La conversión del valor a voltaje se realiza a partir del diagrama de circuito Heltec, donde se muestra que el módulo tiene un divisor de voltaje incorporado.
El divisor de voltaje y su equivalente de la ecuación es:
\frac{R12}{R10+R12} V_{BAT} = \frac{ADC}{4096}(3.3-0.7) V_{BAT} = \Big[ \frac{ADC}{4096}(3.3-0.7) \Big] \frac{R10+R12}{R12} V_{BAT} = 0.00203125*ADCDecodificador de Trama – ChirpStack/Device-Profile
function Decode(fPort, bytes, variables) { // usando entero var unalectura = (bytes[1] << 8) |(bytes[0]); unalectura = unalectura*0.00203125; unalectura = +unalectura.toFixed(2); var appData = {'Bateria_V': unalectura} return appData; }
En la salida de monitor-Serie se obtiene: Voltaje Batería (V): 2136
que decodificado en applications de chirpstack_ es: Bateria_V: 4.34
que es el valor que se envia por Mqtt.
Configuración en Home-Assistant
La configuración se realiza en el archivo configuration.yaml con la instrucción:
sudo nano /home/homeassistant/.homeassistant/configuration.yaml
al archivo se añade en la sección de sensores las instrucciones de cada lectura.
El tópico a observar se construye tomando los datos de chirpstack para cada dispositivo, observando el número de aplicación y el identificador de dispositivo.
Los valores de los sensores se decodificaron en un diccionario, que se transfirió como un valor tipo texto, por lo que primero se lo convierte en un diccionario antes de seleccionar el valor a usar. La selección del valor se realiza en value_template.
- platform: mqtt name: 'Bateria_S02' unit_of_measurement: 'V' state_topic: 'application/2/device/c5db5e2b64eefcae/event/up' value_template: "{% set valores = value_json.objectJSON |from_json %} {{valores.Bateria_V}}"
Referencia: WiFi_Kit_series/SchematicDiagram/WiFi_LoRa_32(V2)/WIFI_LoRa_32_V2(868-915).PDF. https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/blob/master/SchematicDiagram/WiFi_LoRa_32(V2)/WIFI_LoRa_32_V2(868-915).PDF
Heltec Wifi LoRa V2 battery management. http://community.heltec.cn/t/heltec-wifi-lora-v2-battery-management/147/36