All Projects → leonsio → Yahm

leonsio / Yahm

Licence: cc0-1.0
Yet Another Homematic Management - Skripte zur Einrichtung der Homematic CCU Oberfläche in einem LXC Container unter Debian Jessie auf ARM CPU (z.B.: Raspberry Pi & Co)

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Yahm

Briarids
An All-In-One home intrusion detection system (IDS) solution for the Raspberry PI.
Stars: ✭ 187 (+65.49%)
Mutual labels:  raspberry-pi, raspberrypi, raspbian
Piwheels
Python package repository providing wheels (pre-built binaries) for Raspberry Pi
Stars: ✭ 180 (+59.29%)
Mutual labels:  raspberry-pi, raspberrypi, raspbian
Crankshaft
Crankshaft: A turnkey GNU/Linux solution that transforms a Raspberry Pi to an Android Auto head unit.
Stars: ✭ 1,703 (+1407.08%)
Mutual labels:  raspberry-pi, raspberrypi, raspbian
Q3lite
Q3lite, an OpenGL ES port of Quake III Arena for embedded Linux systems.
Stars: ✭ 64 (-43.36%)
Mutual labels:  raspberry-pi, raspberrypi, raspbian
Mobilenet Ssd Realsense
[High Performance / MAX 30 FPS] RaspberryPi3(RaspberryPi/Raspbian Stretch) or Ubuntu + Multi Neural Compute Stick(NCS/NCS2) + RealSense D435(or USB Camera or PiCamera) + MobileNet-SSD(MobileNetSSD) + Background Multi-transparent(Simple multi-class segmentation) + FaceDetection + MultiGraph + MultiProcessing + MultiClustering
Stars: ✭ 322 (+184.96%)
Mutual labels:  raspberry-pi, raspberrypi, raspbian
Cattlepi
effortlessly boot, configure, update and monitor your raspberry pi ☁️
Stars: ✭ 250 (+121.24%)
Mutual labels:  raspberry-pi, raspberrypi, raspbian
Gumcp
Web Control Panel for Raspberry Pi
Stars: ✭ 124 (+9.73%)
Mutual labels:  raspberry-pi, raspberrypi, raspbian
My Pihole Blocklists
Create custom pi-hole blocklists
Stars: ✭ 269 (+138.05%)
Mutual labels:  raspberry-pi, raspberrypi, raspbian
Raspberrypi tempmon
Raspberry pi CPU temperature monitor with many functions such as logging, GPIO output, graphing, email, alarm, notifications and stress testing. Python 3.
Stars: ✭ 52 (-53.98%)
Mutual labels:  raspberry-pi, raspberrypi, raspbian
Nwjs rpi
[NW.js port for Raspberry Pi] binary compiled for the ARMv6 used in Raspberry Pi (compatible with RPi 2 and RPi 3)
Stars: ✭ 91 (-19.47%)
Mutual labels:  raspberry-pi, raspberrypi, raspbian
Inkyshot
Get a daily random inspirational quote delivered direct to your desk with Inkyshot. Build multiple Inkyshots and share the inspiration with your friends, family and loved ones ❤️
Stars: ✭ 72 (-36.28%)
Mutual labels:  raspberry-pi, raspberrypi
Homekitcam
A project to make a Raspberry Pi driven, HomeKit Enabled camera.
Stars: ✭ 69 (-38.94%)
Mutual labels:  raspberry-pi, raspberrypi
Mic hat
2 Mic Array for Raspberry Pi
Stars: ✭ 69 (-38.94%)
Mutual labels:  raspberry-pi, raspberrypi
Rpi Vk Driver
VK driver for the Raspberry Pi (Broadcom Videocore IV)
Stars: ✭ 1,160 (+926.55%)
Mutual labels:  raspberry-pi, raspberrypi
Hassctl
Simple command line utility to help debug Home Assistant configuration
Stars: ✭ 77 (-31.86%)
Mutual labels:  raspberry-pi, raspbian
Gopigo3
The GoPiGo3 is a Raspberry Pi Robot!
Stars: ✭ 74 (-34.51%)
Mutual labels:  raspberry-pi, raspbian
Check Mk Arm
Checkmk for Raspberry Pi.
Stars: ✭ 79 (-30.09%)
Mutual labels:  raspberry-pi, raspbian
Balena Sound
Build a single or multi-room streamer for an existing audio device using a Raspberry Pi! Supports Bluetooth, Airplay and Spotify Connect
Stars: ✭ 1,306 (+1055.75%)
Mutual labels:  raspberry-pi, raspberrypi
Gpiozero
A simple interface to GPIO devices with Raspberry Pi
Stars: ✭ 1,302 (+1052.21%)
Mutual labels:  raspberry-pi, raspberrypi
Client
An Opensource Alternative to the Elgato Stream Deck for the Raspberry Pi
Stars: ✭ 67 (-40.71%)
Mutual labels:  raspberry-pi, raspbian

Spenden Falls Sie dieses Projekt unterstützen möchten, würde ich mich über einen Pull-Request oder eine Spende: Spenden freuen.

YAHM

Yet Another Homematic Management - Skripte zur Einrichtung der Homematic CCU2 Oberfläche in einem LXC Container unter Debian basierten Distribution auf ARM-Basis (x86 experimentell).

Bitte lesen Sie diese Dokumentation bis zum Ende durch, bevor Sie die Anwendung installieren

Zur Zeit wurde dieses Skript auf folgender Hardware erfolgreich getestet:

  • Rapsberry Pi 2/3
  • ASUS Tinker Board
  • Odroid XU4 (ohne Homematic-IP)
  • Orange PI Plus 2 (ohne Homematic-IP)
  • Experimentell: x86

Folgende Betrebssysteme werden aktuell unterstützt:

  • Debian Jessie/Stretch (ARM/x86)
  • Raspbian Jessie/Stretch
  • Armbian (Debian) Stretch
  • Experimentell: Ubuntu 16.04

(* Die automatische Einrichtung des HM-MOD-RPI-PCB erfolgt ->aktuell<- ausschließlich auf Rapsberry Pi 2/3 und ASUS Tinker Board)

Weitere Informationen und Anleitungen können dem Wiki bzw. dem Homematic-Forum entnommen werden.

Installation:

Automatisiert:

Es wird automatisch ein aktuelles CCU2 Image installiert und das Netzwerk konfiguriert. Diese Installation ist für wenig erfahrene Benutzer auf einem frischen minimalen Debian/Raspbian empfehlenswert. Die frisch installierte CCU2 wird eine IP per DHCP abrufen, diese kann durch sudo yahm-ctl info nach dem Start des Containers angezeigt werden.

wget -nv -O- https://raw.githubusercontent.com/leonsio/YAHM/master/yahm-init | sudo -E  bash -s quickinstall -

Hinweis: Für die Unterstützung von Homematic-IP ist Funkmodul (HM-MOD-RPI-PCB) FW-Version ab 2.0.0 notwendig. Falls die Unterstützung nicht gebraucht wird, besteht die Möglichkeit Homematic-IP zu deaktivieren. Eine automatisierte Aktualisierung der HM-MOD-RPI-PCB Modul Firmware erfolgt nicht.

UI Modus:

"Grafisches" Installationswerkzeug. Diese Möglichkeit ist für wenig bis erfahrene Benutzer geeignet.

wget -nv -O- https://raw.githubusercontent.com/leonsio/YAHM/master/yahm-init | sudo -E  bash -s ui -

Angepasst:

Mit dieser Methode wird lediglich die aktuelle YAHM Version runtergeladen und unter /opt/YAHM/bin installiert, anschließend muss mit Hilfe von YAHM Tools ein LXC Container mit der jeweiligen gewünschten CCU2 Version angelegt und das Netzwerk konfiguriert werden. Sollten Sie bereits andere Anwendungen und Tools installiert haben, bzw. eine angepasste Netzerkkonfiguration besitzen/wünschen ist diese Möglichkeit genau das richtige für Sie.

wget -nv -O- https://raw.githubusercontent.com/leonsio/YAHM/master/yahm-init | sudo -E  bash -

Folgende Schritte sind mindestens notwendig um ein CCU2 Image innerhalb von YAHM zu installieren. Bitte beachten Sie hierfür die Hinweise im Wiki. Mit diesen Schritten wird ein YAHM-LXC Container in der aktuellsten Version installiert (yahm-lxc install), eine neue Bridge (yahmbr0) angelegt (yahm-network create_bridge) und die Bridge einem Container zugewiesen (yahm-network attach_bridge).

sudo yahm-lxc install
sudo yahm-network create_bridge
sudo yahm-network attach_bridge

Hinweis: Das Verhalten der jeweiligen Befehle kann durch verschiedene Parameter z.B.: "yahm-lxc -b 2.17.16 install" an eigene Bedürfnisse angepasst werden, siehe hierzu die Beschreibung der Parameter in Wiki.

Anschließend kann mit sudo yahm-ctl start das Container gestartet werden

Updates

Mit sudo yahm-ctl update kann YAHM Installation (nicht CCU2 Firmware) jederzeit aktualisiert werden. Für die Aktualisierung der CCU2 Installation, siehe LXC Container

EQ3 HM-MOD-RPI-PCB Funkmodul

Nach der erfolgreichen Installation von YAHM kann das Funkmodul aktiviert werden, für weitere Informationen siehe YAHM-Module

yahm-module -m pivccu-driver enable

Achtung: Im Zuge der Installation wird ein Reboot benötigt

Hinweis: Die automatische Konfiguration des Funkmoduls durch das pivccu-driver Modul, erfolgt ->aktuell<- ausschließlich auf einem Raspberry Pi und ASUS Tinker Board. Für die Installation auf einer anderen Hardware sind die Installationsschritte im Wiki hinterlegt. In Zukunft ist eine Unterstützung für weitere Hardware durch pivccu-driver vorgesehen.

Homematic-IP

Die aktuelle CCU2 Firmware (ab 2.15.x) beinhaltet standardmäßig die Unterstützung für Homematic-IP. Die Unterstützung in YAHM wird ab der YAHM Version 1.7 durch das Homematic-IP Modul und ab der Version 1.9 durch das pivccu-driver realisiert.
Die Aktivierung der Unterstützung kann je nach Bedarf erfolgen, wird die Unterstützung für Homematic-IP nicht benötigt kann die CCU2 Homematic-IP Funktionalität deaktiviert werden.

Aktivierung von Homematic-IP

  • Es existieren aktuell zwei Treiber, die eine Unterstütztung für Homematic-IP ermöglichen. Hinsichtlich des Funktionsumfang unterscheiden sich die Treiber nicht, nur durch die Art der Installation.
  • Bei dem alten "homematic-ip" Modul wird das im Raspbian Kernel einkopilierte PL011 UART Treiber durch eine gesharte Version ersetzt, hierzu ist es notwendig den Kernel neu zu kompilieren. Anschließend werden die für den Raspberry Pi bzw. Broadcom Chipsatz erstellte Homematic-IP Module installiert. Dieses Modul unterstützt ausschließlich Raspberry Pi Systeme (Broadcom Chipsatz), somit wird dieser Ansatz nicht länger verfolgt.
  • Bei dem neuen "pivccu-driver" wird das bestehende Kernel nicht angefasst, sondern mit Hilfe des Device-Trees das vorhandene PL011 UART Treiber überschrieben. Auf diese Weise ist es nicht länger notwendig das vorhandene Kernel neu zu kompilieren. Auf diese Weise verkürzt sich die Installation von 3-4 Stunden auf 5-10 Minuten. Durch einen generichten Treiber können weitere SoC unterstützt werden, für eine Liste unterstützter Geräte siehe das piVCCU Projekt

pivccu-driver Modul

Mit pivccu-driver wird ein generischer Treiber für verschiedene Plattformen installiert, der die Homematic-IP Unterstützung mitbringt, es wird hierbei kein neuer Kernel benötigt, die Installationsdauer beträgt etwa 5-10 Minuten. Es werden jedoch Kernel-Souren benötigt, damit die Treiber gebaut werden können.

Achtung: Im Zuge der Installation wird ein Reboot benötigt

sudo yahm-module -m pivccu-driver enable

homematic-ip Modul (deprecated)

Für die Unterstützung der Homematic-IP muss das Raspberry Pi Kernel neu kompiliert werden, um das vorhandene PL011 Treiber zu ersetzen, sowie müssen einige Kernel Module eingebunden werden. Alle Schritte werden durch das Homematic-IP Modul automatisch durchgeführt. Eine Interaktion seitens des Benutzers ist nicht notwendig.

Achtung: Die Installation kann zwischen 1 und 4 Stunden dauern

Achtung: Im Zuge der Installation wird ein Reboot benötigt

sudo yahm-module -m homematic-ip enable

Deaktivierung von Homematic-IP

Damit in der CCU2 Oberfläche keine Fehlermeldungen hinsichtlich HMIP-RF bzw. VirtualDevices auftauchen und kein Bedarf an der Homematic-IP Unterstützung bestehen, wird empfohlen die Unterstützung von Homematic-IP durch YAHM zu deaktivieren. Alternativ kann die Modul-Firmware auf die Version 2.0.0 und höher aktualisiert werden, in diesem Fall muss das pivccu-driver Modul aktiviert werden.

sudo yahm-module -f -m homematic-ip disable

Hinweise

Mehrfaches Ausführen eines Befehls

Alle Skripte sind so ausgelegt, dass nur fehlende Operationen durchgeführt werden. So wird z.B. das erneute Aktivieren des Homematic-IP Moduls keine Kompilierung des Kernels durchführen, falls die Module bereits vorhanden sind.

Da es jedoch passieren kann, dass bei der Durchführung einiger Operationen Fehler aufkommen, ist es im ersten Selbsthilfe-Schritt möglich die Skripte ggf mit -f Switch auszuführen. Oft sind damit alle Probleme bereits behoben.

Migration von RaspberryMatic > 2.15 zu YAHM

RaspberryMatic aktualisiert automatisch die FW des Funkmoduls auf die Version 2.x inkl. Homematic-IP Support. Damit dieser Funkmodul unter YAHM funktioniert, muss zwingenderweise die Homematic-IP Unterstützung aktiviert werden.

Migration CCU2/LXCCU zu YAHM

Für die Migration von CCU2 bzw. LXCCU zu YAHM bitte folgenden Wiki-Eintrag beachten. Es müssen keine Geräte neu angelernt werden. Sollten LAN-Gateways im Betrieb sein, muss einmalig unter EINSTELLUNGEN - SYSTEMSTEUERUNG - LAN GATEWAY die Zuordnung überprüft/angepasst werden

Kostenfaktor

Dieses Projekt wurde nicht dafür entworfen die Anschaffungskosten einer CCU2 zu reduzieren. Eine Kalkulation mit einen Raspberry Pi (35€) zuzüglich des Funkmoduls (30€), sowie Gehäuse/Netzteil (15€) übersteigt oder gleicht sich den Anschaffungskosten einer CCU2 (ca. 70€).

Für erfahrene Benutzer mit mehreren hundert Geräten/Programmen reicht die Leistung einer CCU2 nicht aus, für diese Zielgruppe wurde diese Anwendung primär entworfen. Für unerfahrene Benutzer wird weiterhin empfohlen die CCU2 zu erwerben.

Credits

Die Arbeit/Idee basiert auf der Arbeit von bullshit bzw. des LXCCU Projektes, welches nicht länger aktiv ist.
Overlay und generischer UART Treiber by piVCCU

Wesentliche Unterschiede zu piVCCU:

  • [x] Unterstützung aktueller/älterer CCU2 Firmware (Liste unterstützer CCU2-Versionen)
  • [x] Die Installation kann manuell gesteuert werden und wird nicht durch DEB-Installer vorgenommen
  • [x] Modulare Bauweise, es können beliebige Module und weitere Anwendungen durch vorhandene und von Community beigesteuerte Module eingebunden werden
  • [x] Skript und GUI-Basierte Installation/Konfiuration
  • [x] Unterstützung für jeden Raspbian Kernel (per deb oder rpi-update)
  • [x] Eingebaute Backup und Restore Funktionen
  • [x] Installationsroutine für Einsteiger
    • [x] Ein-Klick-Installation (frisches Raspbian vorausgesetzt)
    • [x] Skriptgesteuerte Netzwerkkonfiguration
  • [ ] Aktuell Unterstützung des HM-MOD-RPI-PCB (ohne IP) nur für Raspberry Pi
  • [ ] Keine fertigen SD Images
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].