OpenHAB
This page is a collection of information around the OpenHAB installation here at ElectricBrain. During the installation process OpenHAB moved from version 2.5.9 to version 3.0.0 just before christmas 2020. The information here hasn't been updated to reflect the 3.0.0 update yet.
Both versions were installed and ran in parallel for about a month. However, with the deployment of the new lights, switch and GPOs OH2.5.9 wasn't updated with the new "things" and so was finally decommisioned Feb 2021 leaving only OH3.0.0 running.
- Docker Swarm Portainerized installation
- Container OpenHAB
- EXTRA_JAVA_OPTS:
- -Duser.timezone=Australia/Melbourne
- -Dhttp.proxyHost=httpdproxy
- -Dhttp.proxyPort=80
- -Dhttps.proxyHost=httpdproxy
- -Dhttps.proxyPort=80
- -Dftp.proxyHost=httpdproxy
- -Dftp.proxyPort=80"
- Internet access via
- httpd proxy dmz-external-network
- ftp proxy dmz-openhab-network
- AddOn
- JSONPath Transformation
- RegEx Transformation
- EXTRA_JAVA_OPTS:
-
- Bindings
- BOM Binding
- MQTT Binding
- Fronius Binding
- Link each Fronius Inverter channel to an item using the auto-naming.
- Link each Fronius Inverter channel to an item using the auto-naming.
- Bindings


-
- Persistence
# the database url like 'jdbc:mysql://<host>:<port>/<database>' (without quotes) #url= url=jdbc:mysql://db.dmz-openhab-network:3306/openhab?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Australia/Melbourne # the database user #user= user=openhab # the database password #password= password=xxxxxxxxxxxxxxxx # the reconnection counter #reconnectCnt= # the connection timeout (in seconds) #waitTimeout= # Use MySQL Server time to store item values (=false) or use openHAB Server time (=true). # For new installations, its recommend to set "localtime=true". # (optional, defaults to false) #localtime=true
- Persistence
- Container MySQL
- Container phpMyAdmin
- Container RabbitMQ
- enabled_plugins
[rabbitmq_management,rabbitmq_prometheus,rabbitmq_mqtt,rabbitmq_auth_backend_ldap].
- rabbitmq.conf
loopback_users.guest = false
total_memory_available_override_value = 536870912
listeners.tcp.default = 5672
management.tcp.port = 15672
auth_backends.1 = ldap
auth_backends.2 = internal
auth_ldap.servers.1 = ldapproxy.dmz-openhab-network
auth_ldap.port = 636
auth_ldap.user_dn_pattern = cn=${username},ou=People,dc=lan,dc=localdomain
auth_ldap.dn_lookup_bind.user_dn = cn=bind_ro_rabbitmq,dc=lan,dc=localdomain
auth_ldap.dn_lookup_bind.password = RabbitMQ
auth_ldap.use_ssl = true
auth_ldap.port = 636
auth_ldap.log = false
#
# auth_ldap.log = network_unsafe
- advanced.config
[{rabbitmq_auth_backend_ldap,[
{ssl_options, [
{cacertfile,"/etc/rabbitmq/certs/ca-certs.crt"}
]},
{tag_queries, [
{administrator, {in_group, "cn=Administrators,ou=RabbitMQ,dc=lan,dc=localdomain"}},
{management, {in_group, "cn=Managers,ou=RabbitMQ,dc=lan,dc=localdomain"}}
]}
]}].
- enabled_plugins
Tasmota
- Set TZ:
Backlog TimeZone +11; timeDST 1,1,10,1,2,660; timeSTD 1,1,4,1,2,600 - WiFi - choose strongest on reboot:
SetOption56 On - Power on always:
PowerOnState 4
SetOption0 On (default)
SetOption63 Off (default)