Hi,
i’m pretty new to openhab, have a EIB/KNX bus connected and would like to add Blauberg devices :-),
anything availible ? here the wep page http://blaubergventilatoren.de/en/series/vento-expert-a50-1-pro
The Units are connected via W-Lan and can be controlled via UDP
Protocol description is here http://blaubergventilatoren.de/uploads/download/ventoexpertduowsmarthousev11en2.pdf
Thanks
Thomas
There is the TCP/UDP Binding. It isn’t super easy to work with but in this case you at least have a published API and don’t have to reverse engineer it.
Thanks Rich,
is there a new binding for TCP/UDP binding for OH2 ?
thanks
Thomas
No. There is only the 1.x version.
Hi Thomas!
I have programmed two Python scripts which together monitor and control the Blauberg Vento Expert wifi fans as well as Vents Twinfresh Expert Wifi fans by using the MQTT protocol.
These scripts are avilable in my netshop:
http://bit.do/exscg
or
Regards Roger
Hi Thomas!
Did you manage to connect Blauberg vent with UDP binding?
If you did, could you share the code?
Hi, I wrote some scripts using python udp function, didn’t had time to continue…
Blauberg.things
Thing exec:command:Blauberg_status [command="/srv/openhab2-conf/scripts/get_blauberg_status.sh status", interval=15, timeout=5]
Blauberg.items
String Blauberg_status "Blauberg [MAP(Blauberg.map):%s]" { channel="exec:command:Blauberg_status:output", autoupdate="true" }
Switch Blauberg_on "Lüftung Schlafzimmer + Jonathan [MAP(Blauberg.map):%s]" <pump> (Status)
Blauberg.rules
rule "Blauberg AN"
when
Item Blauberg_on changed to ON
then
if( Blauberg_status.state.toString == '00' )
executeCommandLine("/srv/openhab2-conf/scripts/send_blauberg_on.sh")
Blauberg_status.postUpdate('01'.toString)
end
rule "Blauberg AUS"
when
Item Blauberg_on changed to OFF
then
if( Blauberg_status.state.toString == '01' )
executeCommandLine("/srv/openhab2-conf/scripts/send_blauberg_on.sh")
Blauberg_status.postUpdate('00'.toString)
end
Scripts
[15:47:22] root@openhab:/etc/openhab2/scripts# more ON.py
import socket
STATUS = "mobile\03\04\01\r\n"
HOST = '192.168.0.20' # The remote host
PORT = 4000 # The same port as used by the server
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.connect((HOST, PORT))
sock.sendall(STATUS)
data = sock.recv(2048)
ONOFF = data[7] # 0=OFF,1=ON
SPEED = data[19] # 0=LOW,1=MED,2=HIGH
MODE = data[23] # 0=VENTILATE,1=RECOVERY,2=INTAKE
print('POWER', (ONOFF))
[15:47:30] root@openhab:/etc/openhab2/scripts# more *
::::::::::::::
get_blauberg_status.sh
::::::::::::::
python /srv/openhab2-conf/scripts/ONOFF.py |sed 's/[^0-9]*//g'
::::::::::::::
LUEFTEN.py
::::::::::::::
import socket
STATUS = "mobile\03\04\01\r\n"
HOST = '192.168.0.20' # The remote host
PORT = 4000 # The same port as used by the server
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.connect((HOST, PORT))
sock.sendall(STATUS)
data = sock.recv(2048)
ONOFF = data[7] # 0=OFF,1=ON
SPEED = data[19] # 0=LOW,1=MED,2=HIGH
MODE = data[23] # 0=VENTILATE,1=RECOVERY,2=INTAKE
print('POWER', (ONOFF))
::::::::::::::
ONOFF.py
::::::::::::::
# get Status ONOFF
import socket
STATUS = "mobile\01\r\n"
HOST = '192.168.0.20' # The remote host
PORT = 4000 # The same port as used by the server
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.connect((HOST, PORT))
sock.sendall(STATUS)
data = sock.recv(2048)
ONOFF = data[7] # 0=OFF,1=ON
SPEED = data[19] # 0=LOW,1=MED,2=HIGH
MODE = data[23] # 0=VENTILATE,1=RECOVERY,2=INTAKE
print('POWER', (ONOFF))
::::::::::::::
ON.py
::::::::::::::
import socket
STATUS = "mobile\03\04\01\r\n"
HOST = '192.168.0.20' # The remote host
PORT = 4000 # The same port as used by the server
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.connect((HOST, PORT))
sock.sendall(STATUS)
data = sock.recv(2048)
ONOFF = data[7] # 0=OFF,1=ON
SPEED = data[19] # 0=LOW,1=MED,2=HIGH
MODE = data[23] # 0=VENTILATE,1=RECOVERY,2=INTAKE
print('POWER', (ONOFF))
::::::::::::::
::::::::::::::
send_blauberg_on.sh
::::::::::::::
python /srv/openhab2-conf/scripts/ON.py |sed 's/[^0-9]*//g'
::::::::::::::
Status.py
::::::::::::::
# Echo client program
import socket
ON = "mobile\03\04\01\r\n"
STATUS = "mobile\01\r\n"
HOST = '192.168.0.20' # The remote host
PORT = 4000 # The same port as used by the server
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.connect((HOST, PORT))
sock.sendall(STATUS)
data = sock.recv(1024)
print('Received', repr(data))
::::::::::::::
WRG.py
::::::::::::::
import socket
STATUS = "mobile\03\04\01\r\n"
HOST = '192.168.0.20' # The remote host
PORT = 4000 # The same port as used by the server
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.connect((HOST, PORT))
sock.sendall(STATUS)
data = sock.recv(2048)
ONOFF = data[7] # 0=OFF,1=ON
SPEED = data[19] # 0=LOW,1=MED,2=HIGH
MODE = data[23] # 0=VENTILATE,1=RECOVERY,2=INTAKE
print('POWER', (ONOFF))
::::::::::::::
ZULUFT.py
::::::::::::::
import socket
STATUS = "mobile\03\04\01\r\n"
HOST = '192.168.0.20' # The remote host
PORT = 4000 # The same port as used by the server
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.connect((HOST, PORT))
sock.sendall(STATUS)
data = sock.recv(2048)
ONOFF = data[7] # 0=OFF,1=ON
SPEED = data[19] # 0=LOW,1=MED,2=HIGH
MODE = data[23] # 0=VENTILATE,1=RECOVERY,2=INTAKE
print('POWER', (ONOFF))
[15:48:22] root@openhab:/etc/openhab2/scripts#
Hello,
i have start to write a bridge service between vent und mqtt.
Look here: https://github.com/mhbosch/vent_to_mqtt
Help welcome!