SmartLab: Unterschied zwischen den Versionen
Anlumo (Diskussion | Beiträge) |
Anlumo (Diskussion | Beiträge) |
||
Zeile 178: | Zeile 178: | ||
Weiters waere RS232 vermutlich wesentlich besser als das ganze ueber Ethernet zu machen, weil die Ansteuerung via HTTP ist ein ziemlicher Hack (im Endeffekt wurde das Webinterface reverse engineert). Nachdem der Home Assistant-Computer direkt drueber im Rack steht, reicht ein einfaches Kabel. [[User:anlumo|anlumo]] verhandelt momentan mit einer chinesischen Firma, ob sie ihm nicht das 4P4C-zu-USB-Kabel einfach fixfertig herstellen koennten (es gibt zwar gleichartige Kabel fuer ein paar Hobbyteleskope, allerdings verwenden die ein anderes Pinout am 4P4C-Stecker). | Weiters waere RS232 vermutlich wesentlich besser als das ganze ueber Ethernet zu machen, weil die Ansteuerung via HTTP ist ein ziemlicher Hack (im Endeffekt wurde das Webinterface reverse engineert). Nachdem der Home Assistant-Computer direkt drueber im Rack steht, reicht ein einfaches Kabel. [[User:anlumo|anlumo]] verhandelt momentan mit einer chinesischen Firma, ob sie ihm nicht das 4P4C-zu-USB-Kabel einfach fixfertig herstellen koennten (es gibt zwar gleichartige Kabel fuer ein paar Hobbyteleskope, allerdings verwenden die ein anderes Pinout am 4P4C-Stecker). | ||
− | |||
− | |||
− | |||
− | |||
== Lichtklingel == | == Lichtklingel == |
Version vom 23. Mai 2022, 22:11 Uhr
SmartLab | |
Gestartet: | 01.05.2019 |
Involvierte: | User:Uberhaxlor, User:hmw, User:m68k, User:cube, User:luto, User:anlumo and others |
Status: | in progress |
Beschreibung: | On premises Smarthome stuff for the Metalab |
Shutdownprozedur: | |
Zuletzt aktualisiert: | 2022-05-23 |
- Dashboard on smart.metalab.at!
- Sources on https://github.com/metalab-smartlab
- Home Assistant
- MQTT
- MetaPanel (broken!)
- Devices
- Sonoff Tasmota
- Integrations
- Slackomatic
- Blinkenwall via SmartLab/Blinkenbridge
- Umbrellas
- RedAlert notification for daily cleanup
SmartLab-Hardware
Das Setup laeuft momentan auf einem Up Squared mit 8GB RAM und 64GB eMMC. IP-Adresse ist statisch definiert als 10.20.30.97 (zusaetzlich zu DHCP).
Softwarestack
Alles laeuft als Docker-Container:
- Portainer als Docker-Web-UI
- nginx als reverse proxy fuer Home Assistant und Zigbee2MQTT
- Keycloak fuer User Auth (momentan nur fuer Portainer in Verwendung)
- PostgreSQL fuer Home Assistant fuer die History und fuer Keycloak
- Mosquitto als MQTT Broker
- Zigbee2MQTT fuer unser Zigbee-Gateway
- Visual Studio Code for Web fuer das Editieren der Config-Files (nginx, home assistant und Zigbee2MQTT)
Es gibt noch Moeglichkeiten, andere Services auf dem Geraet laufen zu lassen. Dafuer einfach mit anlumo reden.
Home Assistant
User-Account: metalab/metalab
http://smart.metalab.at/ Home Assistant Dashboard
- Home Assistant companion app on the iOS App Store
- Home Assistant companion app on the Google Play Store
- Home Assistant companion app on the F-Droid App Repository
(Achtung: Wenn man sich einloggt mit der App, exponiert diese Daten wie Akkustand und SIM-Kartenzustand des Handies an den Home Assistant, zumindest wenn man den Admin-Account dazu verwendet.)
Metapanel
Ist ein Webinterface auf einem Raspberry Pi, von Harald entwickelt.
Die Integration mit Home Assistant funktioniert ueber ein Login Token, das auf der SD-Karte abgelegt ist (/data/srv/hass/homeassistant.token).
Momentan funktioniert der Shutdown-Button im Webinterface nicht, der Grund ist unbekannt.
Momentan wird einfach das Home Assistant-Webinterface darauf angezeigt. Funktioniert gut mit Touchscreen.
Zigbee Adapter
Zigbee LAN coordinator CC2652P SMLIGHT SLZB-05 (10.20.30.110) um ZigBee auf TCP/IP umzusetzen. Wir nur von der Zigbee2MQTT-Software angesprochen. Auf Port 80 läuft ein spartantisches Web-Interface. Alles weitere passiert im Home Assistant bzw. im Zigbee2MQTT Webinterface.
Sonoff
Blinkenbridge Github Repo (ist bereits in Produktion)
List of all sonoff modules currently in use
- http://loungeinvaders.lan Nr.4 (unknown situation)
- http://loungepony.lan Nr.5
- http://loungesquarelamp.lan Nr.6
- http://loungefan.lan Nr.7 (aka Master Shutdown Button im Serverkammerl)
- http://hauptraumeins.lan Nr.11 (aka 2. Schirm-Reihe im Hauptraum)
- http://printerpower.lan Nr.12
- http://kassomat.lan Nr.13
- http://metanudel.lan Nr.14
Power Meters
Wir haben im Metalab zwei Wattmeter eingebaut, Type Orno OR-WE-517. Diese besitzen eine RS485-Schnittstelle, ueber die man via modbus-Protokoll alle Daten abfragen kann.
Home Assistant hat eine modbus-Integration, d.h. theoretisch muss man nur einen RS485-Adapter an den Pi anhaengen und das konfigurieren (Thread dazu). anlumo sieht sich das noch genauer an.
Network Traffic
Theoretisch ist es moeglich, den aktuell verwendete Netzwerkbandbreite in den Home Assistant als Sensor zu integrieren. Datacop wurde dazu ueberredet, sich das mal anzusehen.
Sensoren
Zigbee ermoeglicht es sehr leicht, sinnlos viele Sensoren im Lab zu verteilen und in den Home Assistant zu integrieren. Die meisten brauchen nur eine Knopfzelle, da Zigbee sehr energieeffizient arbeitet.
anlumo hat schon damit angefangen, und ein paar Dinge auf AliExpress bestellt. Dazu gehoeren Xiaomi Aqara Wireless Mini Switches um EUR11.60/Stueck, um Dinge zu aktivieren.
Es gibt auch noch Bewegungsmelder und Fenster/Tueroeffnungstatus-Sensoren, die vielleicht auch interessant sein koennten. Weiters gibt es Schalter mit etwas mehr als nur ein/aus, die vielleicht ueberlegenswert waeren.
anlumo hat drei SONOFF SNZB-02 ZigBee Temperature And Humidity Sensoren im Metalab installiert, einen in der Bibliothek (neben dem Serverrack an der Wand), einen im WEL (neben dem Fenster bei den 3D-Druckern) und einen in der HM (am Sicherungskasten). Sie sind im Lovelace (Dashboard) von Home Assistant angelegt.
Cleanup Alert
anlumo hat die Inselloesungen fuer den Cleanup Alert jetzt auf den Home Assistant zentralisiert. Es gibt eine Automation namens "Cleanup", die als Trigger die Uhrzeit 20:00 jeden Tag angegeben hat. Diese fuehrt zuerst die Szene "Cleanup" aus, welche alle Alarme auf on stellt. Dann wartet sie 5 Minuten und dann fuehrt sie die Szene "Cleanup over" aus, welche alle Alarme auf off stellt.
Die Alarme sind in einer Gruppe namens mp_grp_alarm zusammengefasst, d.h. wenn man weitere hinzufuegen will, muessen die nur beim entsprechenden Eintrag in groups.yaml eingetragen werden.
Sonoff/ESP-Integration
Die neueste Version von Tasmota, der ESP-Firmware fuer smart home, hat eine Integration mit Home Assistant. Damit wird die Sache viel einfacher einzustellen. Daher bitte die neueste Version verwenden, und nicht mehr lokal an der MQTT-Config herumspielen (ausser Server-IP und Login), sondern stattdessen einfach in den Home Assistant mappen (sollte automatisch erkannt werden) und dort konfigurieren.
Wichtig: Bei der Geraettype nicht Generic (0), sondern Generic (18) (ganz unten!) verwenden. Generic (0) ist ein Template fuer neue Geraettypen und sollte nicht direkt verwendet werden. Weiters nicht vergessen, den Geraetenamen in "Configure Other" umzustellen.
Der Anti-Shutdown-Button ist auf diese Art schon bearbeitet worden und aktiviert jetzt einfach eine Szene im Home Assistant, die alles gewuenschte aufdreht.
Bereits aktualisierte Sonoffs und ESPs:
- Anti-Shutdown-Button
- Shutdownbutton
- Hauptraumeins
- Hauptraumzwei umbenannt in Printerpower
- Werbelicht (der ist ein neuer Sonoff S26)
- Kassomat
- Metanudel
- Oeffimonitor (neuer Sonoff S26, schaltet nur den Bildschirm)
- Hauptraumalarm
- Bibliotheksalarm
- Welalarm
- Loungepony
- Metafridge
- Metadate
TODO:
- Cellaralarm
- WEL Power (unbekannt, was das ist)
- WEL Benchlights Left (out of order?)
- WEL Benchlights Right
- Loungelights (gibts das noch?)
- Lounge Square Lamp (gibts das noch?)
- MQTTStrip (custom firmware!)
- Blinkeninvaders (gibts das noch?)
- Stage Light 5 (Left)
- Stage Light 8 (Right)
Audio Setup
Das Audio Setup (Verstaerker etc) im Hauptraum sind etwas kompliziert zum Aufdrehen und Abdrehen momentan. Das alte System mit einem Master Power Switch war nett, aber der Inrush Current hat haeufig zum Ausloesen der Sicherung gefuehrt, und das Abschalten hat zu einem lauten Knall in den Lautsprechern gefuehrt (angeblich kein Problem fuer die Hardware, ist allerdings ein Problem fuer die Wetware).
Die Idee ist jetzt, das ganze ueber die Home Automation geregelt ein- und auszuschalten. Dazu hat anlumo einen ePowerSwitch 8M und einen 8S gekauft, das sind rackmountable Stromschalter (Mikrocontroller, die Relais ansteuern), mit denen man 8 Leitungen separat ansteuern kann. Das ganze funktioniert ueber Ethernet oder RS232, anlumo hat bereits eine Home Assistant-Integration (ein custom_component in Python) geschrieben. Der 8M hat beide Schnittstellen, der 8S hat nur RS232 (mit einem unpraktischen 4P4C-Stecker). Ueber diese kann man das Timing dann im Home Assistant programmieren und das ganze wieder auf ein einfaches ein/aus reduzieren fuer die Benutzer:innen.
Aktueller Stand
Home Assistant-Integration funktioniert, aber nachdem die Geraete nur mit C14-Buchsen (male und female) ausgestattet ist, muessen ein paar Adapterkabeln angeschafft werden. Die AliExpress-Bestellungen sind unterwegs.
Weiters waere RS232 vermutlich wesentlich besser als das ganze ueber Ethernet zu machen, weil die Ansteuerung via HTTP ist ein ziemlicher Hack (im Endeffekt wurde das Webinterface reverse engineert). Nachdem der Home Assistant-Computer direkt drueber im Rack steht, reicht ein einfaches Kabel. anlumo verhandelt momentan mit einer chinesischen Firma, ob sie ihm nicht das 4P4C-zu-USB-Kabel einfach fixfertig herstellen koennten (es gibt zwar gleichartige Kabel fuer ein paar Hobbyteleskope, allerdings verwenden die ein anderes Pinout am 4P4C-Stecker).
Lichtklingel
Dieser Sensor hat eine eigene Wiki-Seite. Ist im Home Assistant ganz normal integriert, verwendet allerdings nicht Tasmota, weil die Erkennung der Klingel etwas komplexer ist (weil AC-Signal). Stattdessen wird eine Arduino-Library fuer den Home Assistant verwendet, die ihn automatisch via MQTT als Sensor anmeldet.
Abrechnung
Im 2022-03-09_Jour_Fixe wurde ein Budget von EUR500 fuer SmartLab allokiert. Hier sind die Rechnungen, die bisher ausbezahlt wurden:
Anzahl + Name | Preis |
4x Xiaomi Mini Switches | €46,37 |
3x Sonoff Temperatur/Luftfeuchtigkeitssensoren | €27,73 |
3x RS485-Adapter für Power Meter | €3,36 |
2x Sonoff Dual R3 | €24,50 |
3x Tuya Temperatur/Luftfeuchtigkeitssensoren (wide range) | €27,88 |
4x Sonoff S26 | €38,22 |
Bisher gesamt: EUR168.06