Hallo zusammen,
nachdem ich hier schon seit einem halben Jahr täglich im Forum stöbere, hab ich mir gedacht, ich muss den Read-Only-Modus endlich mal beenden und etwas beisteuern.
Vorab großes Lob an die Projekte SmartHome.py und SmartVISU. Sehr durchdacht und vielversprechend.
Da sich meine KNX-Installation noch in der Planungsphase befindet, habe ich versucht die Projekte mit meinen aktuellen Spielzeug-Komponenten (Homematic, Allnet, etc.) zu testen. Dabei sind ein paar PlugIns entstanden, die vielleicht auch anderen helfen. Hier zunächst das Allnet-PlugIn.
Aber kurz zur Abgrenzung ;-) : In meiner Umgebung funktioniert der aktuelle Stand der PlugIns sehr gut und sie tun, was sie sollen. Allerdings beschäftige ich mich erst seit wenigen Tagen mit SH.py und kann daher nicht mit Sicherheit sagen, dass meine PlugIns dem gewünschten Standard entsprechen. Außerdem bin ich eher Integrator als Entwickler (bislang schon mal gar nicht mit Python). Daher freue ich mich über jede Kritik und jeden Fehler oder auch Schönheitsfehler, den ihr findet.
Das PlugIn unterstützt aktuell die folgenden Komponenten:
Allnet ALL3000 (Link)
Allnet ALL4000 (Link)
Allnet ALL4000V2 (baugleich mit ALL4000, durch Metallgehäuse aber keine Ansteuerung der Funkdosen möglich)
Prinzipiell sollten damit auch die neueren Geräte ALL3500, ALL4500 und ALL5000 integrierbar sein. Falls jemand Bedarf hat und mir einen Auszug der XML-Seite zuschickt, kann ich das gerne noch integrieren.
Zum Testen des PlugIns einfach in dem PlugIn-Verzeichnis einen Unterordner ‚allnet‘ anlegen und die angefügten Files in das Verzeichnis kopieren (bei dem Raspberry-Image /usr/smarthome/plugins/allnet/).
Die Konfiguration muss angepasst werden, wie folgt:
PlugIn-Konfiguration - /usr/smarthome/etc/plugin.conf
Beispiele für das Anlegen von Items:
nachdem ich hier schon seit einem halben Jahr täglich im Forum stöbere, hab ich mir gedacht, ich muss den Read-Only-Modus endlich mal beenden und etwas beisteuern.
Vorab großes Lob an die Projekte SmartHome.py und SmartVISU. Sehr durchdacht und vielversprechend.
Da sich meine KNX-Installation noch in der Planungsphase befindet, habe ich versucht die Projekte mit meinen aktuellen Spielzeug-Komponenten (Homematic, Allnet, etc.) zu testen. Dabei sind ein paar PlugIns entstanden, die vielleicht auch anderen helfen. Hier zunächst das Allnet-PlugIn.
Aber kurz zur Abgrenzung ;-) : In meiner Umgebung funktioniert der aktuelle Stand der PlugIns sehr gut und sie tun, was sie sollen. Allerdings beschäftige ich mich erst seit wenigen Tagen mit SH.py und kann daher nicht mit Sicherheit sagen, dass meine PlugIns dem gewünschten Standard entsprechen. Außerdem bin ich eher Integrator als Entwickler (bislang schon mal gar nicht mit Python). Daher freue ich mich über jede Kritik und jeden Fehler oder auch Schönheitsfehler, den ihr findet.
Das PlugIn unterstützt aktuell die folgenden Komponenten:
Allnet ALL3000 (Link)
Allnet ALL4000 (Link)
Allnet ALL4000V2 (baugleich mit ALL4000, durch Metallgehäuse aber keine Ansteuerung der Funkdosen möglich)
Prinzipiell sollten damit auch die neueren Geräte ALL3500, ALL4500 und ALL5000 integrierbar sein. Falls jemand Bedarf hat und mir einen Auszug der XML-Seite zuschickt, kann ich das gerne noch integrieren.
Zum Testen des PlugIns einfach in dem PlugIn-Verzeichnis einen Unterordner ‚allnet‘ anlegen und die angefügten Files in das Verzeichnis kopieren (bei dem Raspberry-Image /usr/smarthome/plugins/allnet/).
Die Konfiguration muss angepasst werden, wie folgt:
PlugIn-Konfiguration - /usr/smarthome/etc/plugin.conf
Code:
[allnet] class_name = Allnet class_path = plugins.allnet host0 = 192.168.50.200 # IP-Adresse der Allnet Sensorbox host1 = 192.168.50.201 # aktuell unterstützt das PlugIn maximal 3 Geräte #host2 = 0.0.0.0 type0 = ALL4000 # mögliche Optionen sind 'ALL3000' und 'ALL4000' type1 = ALL3000 #type2 = none cycle = 15 # Zeitintervall, in dem die Sensorbox abgefragt wird # Angabe in Sekunden, Werte unter 5 Sek. können zu einer hohen CPU-Last der Box führen.
Code:
[AllnetDemo] name = AllnetDemo [[Temperatur]] name = Temperatur type = num # Das Erfassen von Messdaten setzt 'type = num' voraus allnet_host = 0 # ID der Sensorbox laut plugin.conf, hier host0 allnet_sensor_id = 8 # ID des Sensor-Ports, Zählweise beginnt bei 0 (ALL3000: 0 bis 7, ALL4000: 0 bis 15) [[Luftfeuchtigkeit]] name = Luftfeuchtigkeit type = num # Das Erfassen von Messdaten setzt 'type = num' voraus allnet_host = 1 # ID der Sensorbox laut plugin.conf, hier host1 allnet_sensor_id = 2 # ID des Sensor-Ports, Zählweise beginnt bei 0 (ALL3000: 0 bis 7, ALL4000: 0 bis 15) [[Funkschalter]] name = Light type = bool # Das Schalten von Ports setzt 'type = bool' voraus allnet_host = 0 # ID der Sensorbox laut plugin.conf, hier host0 allnet_switch_id = 1 # ID des Schalt-Ports, Zählweise beginnt bei 0 (ALL4000 Funkschalter: 0 bis 15) allnet_switch_type = 2 # Typ des Ports, der geschaltet werden soll # Mögliche Werte für 'allnet_switch_type': # 0 - Default (2 - Funksteckdosen) # 1 - Interne Relais (nach Relaisnummer 0..3) 0 oder 1 # 2 - Funksteckdosen (nach Dosennummer 0...15) 0 oder 1 # 3 - I2C Einzel-Ausgänge (Portweise numeriert von 0...7) 0 oder 1 --> mit diesem PlugIn bisher ungetestet # 4 - I2C 8-fach-Ausgänge (Portweise numeriert von 0...7) 0...255 --> mit diesem PlugIn bisher ungetestet # 5 - interne TTL-Ausgänge (Chipweise numeriert von 0..7) 0...255 --> mit diesem PlugIn bisher ungetestet
Kommentar