NEWS
Mit Shelly Button einen Datenpunkt ändern
-
Anwendungsbeschreibung
Begriffsklärung
- Generation 1: Shelly Button1: https://shelly-api-docs.shelly.cloud/gen1/#shelly-button1
Überblick
Der Shelly Button ist im lokalen WiFi Netz angemeldet und stellt eine eigene WebSite zur Konfiguration bereit. Diese funktioniert am Besten, wenn der Shelly Button geladen wird. Andernfalls schläft der Shelly Button sehr schnell wieder ein, um Energie zu sparen.
Komponenten
iobroker RasPi 4
(keine SD-Karte, kein USB Stick)
Plattform linux, Betriebssystem linux- Architektur arm64, CPUs 4, Geschwindigkeit 1500 MHz, Modell Cortex-A72, RAM 3.7 GB
- OS: 2023-02-21-raspios-bullseye-arm64-lite.img.xz
- ETCHER FOR WINDOWS (X86|X64) (PORTABLE): https://www.balena.io/etcher#download-etcher
- Node.js v18.17.0, NPM 9.6.7
- USB3 Hub inkl Netzteil: SSD Datenträgergröße 60 GB
- log2ram https://linuxhint.com/improve-sd-card-lifespan-log2ram-raspberry-pi/
- Aktive Instanzen 19
Instanzen
- Admin v6.13.16
- shelly.0 v6.8.0
- Allgemeine Einstellungen
- Shelly Protokoll: MQTT (und HTTP)
- HTTP-Benutzername: admin
- HTTP-Password: Dein_Password
- MQTT Einstellungen
- MQTT-Listen-IP: Zugriff von allen IPs zulassen
- Port: 1882
- MQTT-Benutzername: shelly
- MQTT-Password: Dein_Password
- Allgemeine Einstellungen
- simple-api.0 v2.7.2
- IP: Zugriff von allen IPs zulassen
- Port: 8087
Ziel
Mit dem Shelly Button möchte ich einen Datenpunkt im ioboker zwischen "true" und "false" umschalten. Die erweiterte Aufgabe des Datenpunktes im iobroker ist es unsere Wallbox zwischen "voll laden" = false und "mit Sonne laden" = true umzuschalten. Das funktioniert sehr komfortabel aus der KücheKurzbeschreibung der Lösung
Der Shelly button hat die Möglichkeit "Aktionen" zu definieren, z.B.- 1x schnell drücken
- 2x schnell drücken
Außerdem kann man dieser Aktion eine URL hinterlegen, die dann auf den iobroker "simple-api" Adapter zeigt. Und unsere Wallbox hat genau so einen Datenpunkt zum umschalten.
Natürlich gibt es auch gleiches per MQTT zu realisieren. Fand ich hier aber zu aufwendig und bin bei der simple-api geblieben.
Konfiguration Shelly Button 1 per Access Point
-->Den Button mit einem Ladekabel verbinden!<--
Der Resetbutton befindet sich hinter dem Deckel auf der Rückseite und unter dem Akku. Diesen drückt man ~10sec und der button beginnt zu blinken und schaltet in den Access Point mode. Jetzt mit einem Mobiltelefon/Tablet/Notebook mit dem AP verbinden und IP Adresse 192.168.33.1 in der Adresszeile eingeben (Siehe Beschreibung https://shelly-api-docs.shelly.cloud/gen1/#wifi-modes)Konfiguration Shelly Button 1 über die WebOberfläche
IP des Button in der Adresse eintragen, eventuelles Password eingeben und schon geht es los.Internet & Security
-
RESTRICT LOGIN
- HTTP-Benutzername: admin
- HTTP-Password: Dein_Password
-
SNTP Server
- Server: fritz.box
-
Advanced - Developer Settings
- check: Enable MQTT
- Username: shelly
- Password: Dein_Password
- Server: heimgarten.fritz.box:1882
Min reconnect timeout 2, Max reconnect timeout: 60, Keep alive: 60
check: Clean Session
no check: Retain
Max QoS 0
WARNING: If you enable MQTT - actions via Cloud connection will be disabled!
- check: Enable MQTT
SAVE
REBOOT NOWiobroker log
shelly.0 2024-11-05 16:58:11.159 info [MQTT] Device with client id "shellybutton1-485519F098AA" connected!
Settings
-
Firmware Update
Current version: 20230913-113105/v1.14.0-gcb84623
You have latest version on your device! -
LED LIGHT CONTROL
Check: Disable Wi-Fi status light.
Actions
Die Aktionen des Shelly Button zeigen direkt auf den simple-api Adapter per URL.
Der hier verwendete Datenpunkt im iobroker "kecontact.0.automatic.photovoltaics" wird zwischen true und false umgeschaltet. Dies beeinflusst, ob sofort direkt geladen wird (false) oder auf überschüssige Sonnenenergie gewartet wird (true). Diese Funktion stellt der Adapter für die Wallbox zur Verfügung und wird hier nicht näher erklärt.Actions : Button short pressed url = Direkt laden
http://heimgarten.fritz.box:8087/set/kecontact.0.automatic.photovoltaics?value=false&prettyPrint
Actions : Button 2x short pressed url = Mit Sonne laden
http://heimgarten.fritz.box:8087/set/kecontact.0.automatic.photovoltaics?value=true&prettyPrint
Verfügbare Datenpunkte des shelly button in der Instanz shelly.0
simple-api Hilfe
http://heimgarten.fritz.box:8087/help
{
"getPlainValue": "http://heimgarten.fritz.box:8087/getPlainValue/stateID",
"get": "http://heimgarten.fritz.box:8087/get/stateID/?prettyPrint",
"getBulk": "http://heimgarten.fritz.box:8087/getBulk/stateID1,stateID2/?prettyPrint",
"set": "http://heimgarten.fritz.box:8087/set/stateID?value=1&prettyPrint",
"toggle": "http://heimgarten.fritz.box:8087/toggle/stateID&prettyPrint",
"setBulk": "http://heimgarten.fritz.box:8087/setBulk?stateID1=0.7&stateID2=0&prettyPrint",
"setValueFromBody": "http://heimgarten.fritz.box:8087/setValueFromBody?stateID1",
"objects": "http://heimgarten.fritz.box:8087/objects?pattern=system.adapter.admin.0*&prettyPrint",
"states": "http://heimgarten.fritz.box:8087/states?pattern=system.adapter.admin.0*&prettyPrint",
"search": "http://heimgarten.fritz.box:8087/search?pattern=system.adapter.admin.0*&prettyPrint",
"query": "http://heimgarten.fritz.box:8087/query/stateID1,stateID2/?dateFrom=2019-06-06T12:00:00.000Z&dateTo=2019-06-06T12:00:00.000Z&noHistory=false&aggregate=minmax&count=3000&prettyPrint"
}