Für einen intelligenten Stromspeicher benötigt man häufig einen Shelly 3em Pro. Wer aber einen Tasmota IR Lesekopf hat, kann einen virtuellen Shelly 3em Pro einrichten. Dieser ist sogar genauer als ein originaler Shelly, da per IR der Stromzähler direkt ausgelesen wird.
apt-get install openjdk-17-jre
wget https://github.com/sdeigm/uni-meter/releases/download/1.1.14/uni-meter-1.1.14.tgz
tar xzvf uni-meter-1.1.14.tgz -C /opt
ln -s /opt/uni-meter-1.1.14 /opt/uni-meter
cp /opt/uni-meter/config/uni-meter.conf /etc/uni-meter.conf
nano /etc/uni-meter.conf
Hier eine Beispielkonfiguration. Uni-Meter holt sich die aktuellen Daten direkt von einem Tasmota IR Lesekopf.
Eventuell muss man den Json Pfad an den eigenen Lesekopf etwas anpassen.
Alternativ könnte man die Daten auch von einem MQTT Broker holen.
uni-meter {
output = "uni-meter.output-devices.shelly-pro3em"
input = "uni-meter.input-devices.tasmota"
http-server {
port: 80
}
output-devices {
shelly-pro3em {
mac = "BC4F21763886"
hostname = "shellypro3em"
port = 80
udp-port = 1010
udp-interface = "0.0.0.0"
}
}
input-devices {
tasmota {
url = "http://192.168.1.100/cm?cmnd=Status%2010"
power-json-path = "$.StatusSNS.MT681.Power_cur"
power-scale = 1.0 # default, can be omitted
energy-consumption-json-path = "$.StatusSNS.MT681.Total_in"
energy-consumption-scale = 1.0 # default, can be omitted
energy-production-json-path = "$.StatusSNS.MT681.Total_out"
energy-production-scale = 1.0 # default, can be omitted
power-phase-mode = "mono-phase"
power-phase = "l1"
}
}
}
Damit der virtuelle Shelly im Netzwerk gefunden werden kann, benötigen wir noch einen avahi-daemon:
apt install avahi-daemon
systemctl enable --now avahi-daemon
Jetzt nur noch das ganze als Dienst einrichten, damit es auch automatisch startet:
ln -s /opt/uni-meter/config/systemd/uni-meter.service /etc/systemd/system/uni-meter.service
systemctl enable uni-meter
systemctl start uni-meter
Das war es dann auch. Ich empfehle einen Neustart und dann sollte der virtuelle Shelly unter der IP Adresse wo es installiert wurde auf Port 80 bereits laufen.