La idea es monitorizar el estado de una bateria a traves del bluetooth de la bms , en este caso es una Daly Bms. Le pasaremos los datos a un broker mqtt mcon el objetivo de luego integrarlo en Venus OS como si fuese una bateria virtual.
Empezamos instalando mosquitto y batmon.ha
sudo apt install mosquitto
git clone https://github.com/fl4p/batmon-ha
cd batmon-ha
python3 -m venv ./venv
./venv/bin/pip3 install -r requirements.txt
nano options.json
options.json:
"devices": [
{
"address": "C6:6C:09:02:0B:3C",
"type": "daly",
"alias": "daly1"
}
],
"keep_alive": true,
"mqtt_broker": "localhost",
"mqtt_user": "",
"mqtt_password": "",
"concurrent_sampling": false,
"sample_period": 1.0,
"publish_period": 1.0,
"invert_current": false,
"expire_values_after": 20,
"verbose_log": false,
"watchdog": false
}
./venv/bin/python3 main.py
Una vez instalado, creamos un servicio para que arranque automaticamente:
nano /etc/systemd/system/batmon.service
[Unit]
Description=Batmon
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
Restart=always
RestartSec=5s
User=carlos
WorkingDirectory=/opt/batmon-ha
ExecStart=/opt/battmon-ha/venv/bin/python3 main.py
[Install]
WantedBy=multi-user.target
Lo enableamos y lo arrancamos, ahora ya tenemos los datos de la bateria en nuestro broker mqtt