Meine Openhabian installation hatte nach ein wenig rumspielen kein Netzwerk mehr. Die Meldung die ich vom PI dazu bekommen habe war immer etwas in die Richtung "*there was an error running option s1 wireless lan*".
Um den Fehler zu beheben müssen wir den PI an einen Monitor und eine Tastatur anschließen. Nach dem Starten gehen wir mit
``` BASH
sudo raspi-config
```
in die Konfiguration auf "6 Advanced Options" gehen.
![Advanced Options](https://cschmidt.eu/Blog/GetImage/97?w=825)
Dann auf "AA Network Config"
![AA Network Config](https://cschmidt.eu/Blog/GetImage/96?w=825)
Und dort wählen wir dann "1 dhcpcd" aus
![dhcpcd](https://cschmidt.eu/Blog/GetImage/98?w=825)
Nun ein neustart und alles läuft wieder
9/7/2023 10:26:35 AM
by Chris 495
Die Birne muss in Zigbee2Mqtt eingebunden sein, siehe ![ZigBee2Mqtt Birne](https://cschmidt.eu/Blog/GetImage/93?w=825)
Dann in Openhab ein Thing anlegen:
1. mqtt binding
2. generic mqtt thing
3. bridge = mqtt broker
4. thing erstellen
5. channels
6. add channel
7. mqtt state topic zigbee2mqtt/Retrobirne2
8. mqtt command topic zigbee2mqtt/Retrobirne2/set
9. costom on open value ON
10. costom off closed value OFF
11. show advanced
12. incoming value transformations JSONPATH:$.state
Alternativ können / müssen die Channels per Hand angelegt werden. Das muss am Ende dann so aussehen ![](http://cschmidt.eu/Blog/GetImage/94?w=825)
Die Werte wären für den Dimmer als Beispiel:
* type: dimmer
* state: zigbee2mqtt/Retrobirne2/brightness
* command: zigbee2mqtt/Retrobirne2/set/brightness
* min 0
* max 254
8/16/2023 11:06:04 PM
by Chris 489
Was wir brauchen:
* Ein Androidhandy https://amzn.to/3FQOuCr
* Raspberry Pi 4 mit allen Teilen https://amzn.to/3C7hNik
* Raspberry Pi 4 einzeln https://amzn.to/3Anip2j
* Raspberry Pi 4 Netzteil https://amzn.to/3Ppu4St
* Raspberry Pi 4 Gehäuse https://amzn.to/3Qjjmhz
* M.2 fürs Argon Gehäuse https://amzn.to/3JSvYdf
Um die Openhab App auf Android zum laufem zu bekommen benötigt man zuerst einen Token.
Dieser wird über das Webinterface von Openhab unter "Admin" -> "Erstelle neuen API Token" erzeugt.
![](/upload/images/-1440416692openhabian%20token%20erstellen%201.webp)
Hier nun den User, Passwort und einen Tokennamen angeben und "Neuen Token erstellen" drücken.
![](/upload/images/2099139082openhabian%20token%20erstellen%202.webp)
Nun wird der Token angezeigt und wir können diesen aufs Handy kopieren, z.B. per Signal, Whatsapp oder Telegram.
![](/upload/images/1364449347openhabian%20token%20erstellen%203.webp)
Die App gibt es im Playstore unter https://play.google.com/store/apps/details?id=org.openhab.habdroid
Wenn man nun die App startet, wird im WLAN erstmal nach einem Server gesucht
![](/upload/images/168247786openhab%20app%201.webp)
Bei mir hat er nie einen gefunden, also rechts auf den Hamburger und Einstellungen auswählen
![](/upload/images/1679838476openhab%20app%202.webp)
Unter Einstellungen nun auf Server hinzufügen
![](/upload/images/-787988997openhab%20app%203.webp)
Dann auf "Lokal"
![](/upload/images/211000987openhab%20app%204.we
... <a href="/Blog/ViewPosting/16/openhab-app-auf-android-einrichten">(Weiterlesen)</a>
12/13/2022 9:11:08 PM
by Chris 1585
Was wir brauchen:
* Fritzbox https://amzn.to/3Pm0zCF
* Raspberry Pi 4 mit allen Teilen https://amzn.to/3C7hNik
* Raspberry Pi 4 einzeln https://amzn.to/3Anip2j
* Raspberry Pi 4 Netzteil https://amzn.to/3Ppu4St
* Raspberry Pi 4 Gehäuse https://amzn.to/3Qjjmhz
* M.2 fürs Argon Gehäuse https://amzn.to/3JSvYdf
Zuerst müssen wir das [EXEC Binding](https://www.openhab.org/addons/bindings/exec/) installieren.
Dann die Whitelist öffnen
``` BASH
sudo nano /etc/openhab/misc/exec.whitelist
```
und um diesen Befehl erweitern
``` BASH
sh /home/openhabian/fritzboxreboot.sh
```
Nun legen wir die Rebootdatei an
``` BASH
sudo nano /home/openhabian/fritzboxreboot.sh
```
Der Code ist dreist bei Nico Hartung geklaut
``` BASH
#!/bin/bash
#######################################################
### Autor: Nico Hartung <nicohartung1@googlemail.com> #
#######################################################
# Skript sollte ab FritzOS 6.0 (2013) funktioneren - also auch für die 6.8x und 6.9x
# Dieses Bash-Skript nutzt das Protokoll TR-064 nicht die WEBCM-Schnittstelle
# http://fritz.box:49000/tr64desc.xml
# https://wiki.fhem.de/wiki/FRITZBOX#TR-064
# https://avm.de/service/schnittstellen/
# Thanks to Dragonfly (https://homematic-forum.de/forum/viewtopic.php?t=27994)
###=======###
# Variablen #
###=======###
IPS="192.168.0.1"
FRITZUSER="FritzHub"
FRITZPW="FritzPass"
###====###
# Skript #
###====###
location="/upnp/control/
```
... <a href="/Blog/ViewPosting/12/fritzbox-reboot-aus-openhabian-per-regel">(Weiterlesen)</a>
12/8/2022 11:29:28 PM
by Chris 1038
In meinem Fall per SSH auf Openhabian
``` BASH
ssh user@ip
```
Dann die mosquitto.conf anpassen
``` BASH
sudo nano /etc/mosquitto/mosquitto.conf
```
Am Ende hinzufügen
``` BASH
#=========================================================
# Bridges
#=========================================================
connection openWB
address 192.168.0.13:1883
topic openWB/# both 2
start_type automatic
local_clientid rem.mosquitto
```
Speichern und neu starten
``` BASH
/etc/init.d/mosquitto restart
```
Fertig
![MQTT Explorer](/upload/images/661879472MQTTExplorer.webp)
12/7/2022 11:45:42 PM
by Chris 913
Teile:
Raspberry Pi 4 mit allen Teilen: https://amzn.to/3C7hNik
Raspberry Pi 4 einzeln: https://amzn.to/3Anip2j
Raspberry Pi 4 Netzteil: https://amzn.to/3Ppu4St
Raspberry Pi 4 Gehäuse: https://amzn.to/3Qjjmhz
M.2 fürs Argon Gehäuse: https://amzn.to/3JSvYdf
D1 Mini ESP32 für Fornotron / Tronferno-Mcu: https://amzn.to/3QFhn6W
Trigger: When LokaleZeit_DateTime changed
Skript:
``` JS
var telegram = Java.type('org.openhab.core.model.script.actions.Things').getActions('telegram', 'telegram:telegramBot:189b9xxxxxx');
var time = new Date();
var storedStatusRolllaeden = 'storedStatusRolllaeden';
var storedStatusRunterJonas = 'Rolllaeden_StatusRunterJonas';
var storedStatusRunterAlle = 'Rolllaeden_StatusRunterAlle';
var storedStatusHochAlle = 'Rolllaeden_StatusHochAlle';
var kinderzimmer = 'TFMCU_RollaedenKinderzimmer';
var gaestezimmer = 'TFMCU_RollaedenGaestezimmer';
var kueche = 'TFMCU_RollaedenKueche';
var schlafzimmer = 'TFMCU_RollaedenSchlafzimmer';
var wohnzimmer = 'TFMCU_RollaedenWohnzimmer';
if (typeof this.storedValues === 'undefined') {
this.storedValues = [];
}
var StatusRolllaedenAlleHoch = 0;
var StatusRolllaedenJonasRunter = 1;
var StatusRolllaedenAlleRunter = 2;
if( this.storedValues[storedStatusRolllaeden] != StatusRolllaedenJonasRunter
&& this.storedValues[storedStatusRolllaeden] != StatusRolllaedenAlleRunter
&& this.storedValues[storedStatusRolllaeden] !
```
... <a href="/Blog/ViewPosting/6/rolläden-über-openhab-steuern">(Weiterlesen)</a>
7/5/2022 10:22:21 PM
by Chris 2054
Teile:
Raspberry Pi 4 mit allen Teilen: https://amzn.to/3C7hNik
Raspberry Pi 4 einzeln: https://amzn.to/3Anip2j
Raspberry Pi 4 Netzteil: https://amzn.to/3Ppu4St
Raspberry Pi 4 Gehäuse: https://amzn.to/3Qjjmhz
M.2 fürs Argon Gehäuse: https://amzn.to/3JSvYdf
Shelly Plug S für Strommessung: https://amzn.to/3phUrz1
Shelly Plus 1PM 2er Pack https://amzn.to/3Ct9EoT
**Admin** -> **Einstellungen** -> **Rules** -> +
Name eingeben
No template
Trigger: ShellyPlugSSpuehlmaschine_Leistung oder SP112_WaschmaschineENERGYPower und changed \
Then: Run Script -> Design with Blockly
Regel wie gewünscht zusammenklicken.
Ich hab ein if do else if in dem die leistung auf > 2 geprüft wird. dann wird eine variable auf 1 gesetzt. im else if wird auf leistung < 2 und variable == 1 geprüft. wenn das zutrifft wird variable wieder auf 0 gesetzt. dazwischen kann man die notifys machen. speichern und einmal als code anzeigen lassen, dann sollte alles als ECMA Skript zu sehen sein. bei mir war jetzt das problem das die leistung / power immer mit Watt / W am ende war. Das korrigieren wir jetzt im ECMA Skript / JavaScript.
Am Ende sollte das so aussehen. FYI hier ist das Telegrambinding installiert.
``` js
var status2;
var things = Java.type('org.openhab.core.model.script.actions.Things');
var state = itemRegistry.getItem('ShellyPlugSSpuehlmaschine_Leistung').getState();
var watt = parseFloat(state);//.replace("W", "");
if (watt > 2) {
things.getActions('telegram', 'telegram
```
... <a href="/Blog/ViewPosting/1/openhabian-benachrichtung-bei-waschmaschine---spühlmaschine---trockner-fertig">(Weiterlesen)</a>
6/30/2022 10:22:21 PM
by Chris 1115