Projektvorstellung: pmatic (Homematic + Python)

diverse Zusatzsoftware

Moderator: Co-Administratoren

LaMi
Beiträge: 16
Registriert: 09.02.2016, 20:00

Re: Projektvorstellung: pmatic (Homematic + Python)

Beitrag von LaMi » 18.03.2016, 20:09

Hallo Joe,
Ich versuche das gerade auf meiner neu eingerichteten LXCCU auf Raspi1, produktiv habe ich noch ne CCU1 :roll: .
Allerdings scheint da die Installation nicht richtig zu laufen, der pmatic_manager ist nicht erreichbar?!
Theoretisch ja. Allerdings habe ich selbst keine LXCCU-Installation und auch keine CCU1. Daher ist pmatic auf den Plattformen noch nicht getestet. Feedback und Patches nehme ich natürlich dankend an. Vielleicht finde ich mal Zeit eine LXCCU-Installation zu machen, dann kann ich das mal durchspielen. Eine CCU1 werde ich mir dafür nicht extra kaufen. Vielleicht hat ja jemand eine übrig und für gute Zwecke abzugeben? 8)

Ich bin mir relativ sicher, dass die vermutlich nötigen Anpassungen nicht so wild sein werden. Aber wie das halt so ist, das was nicht getestet ist, das funktioniert auch nicht :wink: .

bnz99
Beiträge: 7
Registriert: 21.03.2016, 09:25
Danksagung erhalten: 1 Mal

Re: Projektvorstellung: pmatic (Homematic + Python)

Beitrag von bnz99 » 21.03.2016, 09:36

Tolles Projekt und kommt mir wie gerufen. Auch ich bin gerade erst durch den Homematic-Script Pushover Versuch durch und habe denselben Schmerz erlebt.

LaMi
Beiträge: 16
Registriert: 09.02.2016, 20:00

Re: Projektvorstellung: pmatic (Homematic + Python)

Beitrag von LaMi » 06.04.2016, 23:16

Hi zusammen,

inzwischen hat sich einiges getan, so dass ich heute die Version 0.2 freigegeben habe. Die Liste der Änderungen findet ihr im Changelog.

StefanH
Beiträge: 66
Registriert: 31.01.2016, 11:25

Re: Projektvorstellung: pmatic (Homematic + Python)

Beitrag von StefanH » 07.04.2016, 21:53

Hallo und guten Abend!

Mich würde das pmatic sehr interessieren.
Auf der CCU habe ich es auch installiert bekommen, was ja kein Problem ist.

Um auszuprobieren und zu testen habe ich Python 2.7 auf Win10 installiert. Dann habe ich versucht pmatic zu installieren.
Das Paket pmatic-0.2.tar.gz (md5) habe ich heruntergeladen, mit WinRAR als Admin entpackt und dann versucht zu installieren. Leider ohne Erfolg:
Dateianhänge
Unbenannt.PNG
Unbenannt.PNG (7.3 KiB) 3749 mal betrachtet

LaMi
Beiträge: 16
Registriert: 09.02.2016, 20:00

Re: Projektvorstellung: pmatic (Homematic + Python)

Beitrag von LaMi » 08.04.2016, 20:08

Hi Stefan,

danke für den Hinweis. Da steckt noch ein Fehler in der Paketierung drin. Ich gucks mir an.

Du kannst dir in der Zwischenzeit auch z.B. von GitHub einen Snapshot des aktuellen Master-Branches ziehen (https://github.com/LarsMichelsen/pmatic ... master.zip). Da ist die Datei dann mit dabei.

StefanH
Beiträge: 66
Registriert: 31.01.2016, 11:25

Re: Projektvorstellung: pmatic (Homematic + Python)

Beitrag von StefanH » 09.04.2016, 00:12

Super!
Vielen Dank! Funktioniert!

Jetzt kann ich mal anfangen mich rein zu wühlen. :-)

Gesendet von meinem Alife P1 Pro mit Tapatalk

eismann
Beiträge: 2
Registriert: 09.04.2016, 14:43

Re: Projektvorstellung: pmatic (Homematic + Python)

Beitrag von eismann » 09.04.2016, 15:36

Hallo Lars!
Vorneweg erstmal ein ganz dickes Lob für dieses Projekt!
Tolle Arbeit, die da der Allgemeinheit zur Verfügung stelltst.
Da ich meinen Userstatus als ambitionierter Linux-User beschreiben würde, bin ich voller Hochachtung, wenn ich sehe was Ihr
(du und andere Programmierer) so leisten.
Bzgl. der CCU1, kann ich Dir weiterhelfen (... mein Betrag zu Deinem Projekt): Ich habe hier noch eine rumliegen.
Schicke mir Deine Adresse und ich schicke sie Dir zu.

Ich habe pmatic auf meiner LXCCU (stable) die auf einem Cubietruck läuft installiert, aber leider ist die Seite des pmatic-Managers auch nicht erreichtbar.
Liegt als nicht an der unstable Version von Joe.
Ich habe mich dann per ssh eingelogt und versucht den pmatic-manager von der Kommandozeile zu starten:

# ./pmatic-manager -g
2016-04-09 15:30:26,487 [INFO] ------------------------------------------
2016-04-09 15:30:26,493 [INFO] Starting up (Version 0.2)
2016-04-09 15:30:26,496 [INFO] ------------------------------------------
2016-04-09 15:30:26,575 [INFO] Initializing connection with CCU...
Traceback (most recent call last):
File "./pmatic-manager", line 182, in <module>
manager.init_ccu()
File "/usr/local/etc/config/addons/pmatic/python/lib/python2.7/pmatic/manager.py", line 2312, in init_ccu
credentials=Config.ccu_credentials)
File "/usr/local/etc/config/addons/pmatic/python/lib/python2.7/pmatic/ccu.py", line 78, in __init__
self.api = pmatic.api.init(**kwargs)
File "/usr/local/etc/config/addons/pmatic/python/lib/python2.7/pmatic/api.py", line 91, in init
return RemoteAPI(**kwargs)
File "/usr/local/etc/config/addons/pmatic/python/lib/python2.7/pmatic/api.py", line 350, in __init__
self._set_address(address)
File "/usr/local/etc/config/addons/pmatic/python/lib/python2.7/pmatic/api.py", line 358, in _set_address
raise PMException("Please specify the address of the CCU.")
pmatic.exceptions.PMException: Please specify the address of the CCU.


Ich hoffe Du kannst etwas damit anfangen.

Gruß

Thomas

LaMi
Beiträge: 16
Registriert: 09.02.2016, 20:00

Re: Projektvorstellung: pmatic (Homematic + Python)

Beitrag von LaMi » 09.04.2016, 21:31

Hallo Thomas,

wow, danke für dir Blumen :-). Ich hoffe, dass pmatic seinen Nutzen erfüllt und eine angenehme Umgebung zum Scripten wird. Bis dahin ist allerdings noch einiges zu tun.
Bzgl. der CCU1, kann ich Dir weiterhelfen (... mein Betrag zu Deinem Projekt): Ich habe hier noch eine rumliegen.
Schicke mir Deine Adresse und ich schicke sie Dir zu.
Der Hammer! Ich schreibe dir gleich eine PN.
Ich habe pmatic auf meiner LXCCU (stable) die auf einem Cubietruck läuft installiert, aber leider ist die Seite des pmatic-Managers auch nicht erreichtbar.
Liegt als nicht an der unstable Version von Joe.
Ich habe mich dann per ssh eingelogt und versucht den pmatic-manager von der Kommandozeile zu starten:

# ./pmatic-manager -g
2016-04-09 15:30:26,487 [INFO] ------------------------------------------
2016-04-09 15:30:26,493 [INFO] Starting up (Version 0.2)
2016-04-09 15:30:26,496 [INFO] ------------------------------------------
2016-04-09 15:30:26,575 [INFO] Initializing connection with CCU...
Traceback (most recent call last):
File "./pmatic-manager", line 182, in <module>
manager.init_ccu()
File "/usr/local/etc/config/addons/pmatic/python/lib/python2.7/pmatic/manager.py", line 2312, in init_ccu
credentials=Config.ccu_credentials)
File "/usr/local/etc/config/addons/pmatic/python/lib/python2.7/pmatic/ccu.py", line 78, in __init__
self.api = pmatic.api.init(**kwargs)
File "/usr/local/etc/config/addons/pmatic/python/lib/python2.7/pmatic/api.py", line 91, in init
return RemoteAPI(**kwargs)
File "/usr/local/etc/config/addons/pmatic/python/lib/python2.7/pmatic/api.py", line 350, in __init__
self._set_address(address)
File "/usr/local/etc/config/addons/pmatic/python/lib/python2.7/pmatic/api.py", line 358, in _set_address
raise PMException("Please specify the address of the CCU.")
pmatic.exceptions.PMException: Please specify the address of the CCU.


Ich hoffe Du kannst etwas damit anfangen.
Der Manager kann sowohl direkt auf der CCU, als auch auf einem Remote-System eingesetzt werden. Das gilt auch für die pmatic-Library insgesamt. Um Entscheiden zu können wie der Manager die CCU ansprechen soll, also lokal ohne Credentials oder von remote mit der konfigurierten IP und den Credentials, wird die Funktion

Code: Alles auswählen

pmatic.utils.is_ccu()
genutzt. Vermutlich erkennt die Funktion die LXCCU nicht. Du kannst das mit dem Aufruf hier testen:

Code: Alles auswählen

python -c "import pmatic.utils; print(pmatic.utils.is_ccu())"
Eigentlich müsste dieser liefern. Bei dir wird da vermutlich

Code: Alles auswählen

False
zurück kommen.

Auf den bisherigen Systemen hat es der Funktion gereicht sich die Ausgabe von "uname" anzugucken. Du kannst mir mal die Ausgabe dieses Befehls posten:

Code: Alles auswählen

python -c "import platform; print(platform.uname())"
Damit kann ich, sofern die Ausgabe eine nützliche Info enthält, dann die Erkennung anpassen.

Unabhängig von der Erkennung sollte der Manager aber auch nicht beim Starten aufgrund von Verbindungsproblemen oder fehlender Konfiguration abschmieren. Das habe ich soeben im Git behoben. Im aktuellen Snapshot von https://larsmichelsen.github.io/pmatic/ sollte das nun erledigt sein.

Grüße
Lars

eismann
Beiträge: 2
Registriert: 09.04.2016, 14:43

Re: Projektvorstellung: pmatic (Homematic + Python)

Beitrag von eismann » 10.04.2016, 14:06

Hallo Lars!

Wow, das war schnell!
Das Deinstallieren unter Seite "Zusatzsoftware" brachte zwar eine Fehlermeldung, daß das fehlgeschlagen sei, aber nach einem Neustart war der pmatic-Manager trotzdem
weg. Weil ich etwas skeptisch war, habe ich mich dann mit SSH eingelogt und der pmatic-Manager war deinstalliert.
Dann Deinen Snapshot auf gespielt und ... taataa!! - läuft.
Super! Danke!
Der Aufruf python -c "import pmatic.utils; print(pmatic.utils.is_ccu())" bringt aber trotzdem ein "False" ?
python -c 'import pmatic' läuft ohne Melduung durch.

python -c "import platform; print(platform.uname())" bringt folgendes:
('Linux', 'homematic-ccu2', '3.4.106-cubieboard', '#2 SMP PREEMPT Tue Feb 17 06:16:56 CET 2015', 'armv7l', '')

Jetzt habe ich nur noch Schwierigkeiten mit dem Installieren der Module auf meinem lokalen Rechner (Ubuntu 14.04 -x86_64).
Der Aufruf: python setup.py install
bricht ab mit der Meldung: [Errno 13] Permission denied: '/usr/local/lib/python2.7/dist-packages/test-easy-install-2898.write-test'
Ich habe die Module dann in das gleiche Verzeichnis wie ein paar runtergeladene Beispielskripte von Dir gepackt und die unter Geany gestartet.
Laufen auch.
Hast Du wegen der Fehlermeldung einen Tip für mich?
In dem Verzeichnis konnte ich neulich zusätzliche Module von "Tinkerforge" installieren, deshalb bin ich ein wenig ratlos.

Grüße

Thomas

LaMi
Beiträge: 16
Registriert: 09.02.2016, 20:00

Re: Projektvorstellung: pmatic (Homematic + Python)

Beitrag von LaMi » 10.04.2016, 15:13

Wow, das war schnell!
Das Deinstallieren unter Seite "Zusatzsoftware" brachte zwar eine Fehlermeldung, daß das fehlgeschlagen sei, aber nach einem Neustart war der pmatic-Manager trotzdem
weg. Weil ich etwas skeptisch war, habe ich mich dann mit SSH eingelogt und der pmatic-Manager war deinstalliert.
Dann Deinen Snapshot auf gespielt und ... taataa!! - läuft.
Super! Danke!
Der Aufruf python -c "import pmatic.utils; print(pmatic.utils.is_ccu())" bringt aber trotzdem ein "False" ?
Ja, war zu erwarten. Pmatic läuft also im Remote-Modus. d.h. es versucht sich per IP+User+Passwort mit der CCU zu verbinden. Schöner wäre es das im local-Modus zum Laufen zu bekommen. Da arbeitet pmatic dann auch ohne die Angabe von IP+User+Passwort.
python -c "import platform; print(platform.uname())" bringt folgendes:
('Linux', 'homematic-ccu2', '3.4.106-cubieboard', '#2 SMP PREEMPT Tue Feb 17 06:16:56 CET 2015', 'armv7l', '')
Habe ich mir gedacht. Anhand der Daten kann pmatic nicht vernünftig entscheiden, dass es sich hierbei um eine "CCU" handelt. Eventuell müssten wir für die Erkennung noch andere Angaben, als uname benutzen. Man könnte z.B. gucken ob eine CCU spezifische Datei vorhanden ist, z.b. /bin/ReGaHss. Die Datei müsste ja bei dir auch da sein, oder?

Jetzt habe ich nur noch Schwierigkeiten mit dem Installieren der Module auf meinem lokalen Rechner (Ubuntu 14.04 -x86_64).
Der Aufruf: python setup.py install
bricht ab mit der Meldung: [Errno 13] Permission denied: '/usr/local/lib/python2.7/dist-packages/test-easy-install-2898.write-test'
Wie du siehst versucht die Installationsroutine pmatic nach /usr/local/lib/python2.7/dist-packages/ zu installieren. Dort hast du mit einem normalen Nutzeraccount kein Schreibrecht. Du musst also "sudo python setup.py install" ausführen.

Alternativ kannst du, falls du den Befehl installiert hast, kannst du pmatic auch über "pip install pmatic" installieren.

Grüße
Lars

Antworten

Zurück zu „Sonstige Addons“