Probleme mit der Homematic Einbindung auf Raspbian

Danke für die Info.
Unter Fhem kann ich den HMLan Adapter einbinden. Vielleicht kann man das ganze mit diesem Socket realisieren.
Mal schauen.

Nur wenn FHEM die XML-RPC vom BidCos unterstützt. Sonst wird das mit IPS Bordmitteln nix.
Michael

Danke. Werde mal googeln.

Andere Möglich wäre noch zusätzlich auf einem Raspi die CCU2 zu emulieren.

Ich will mir eine CCU sparen. Noch ein Gerät.???

Ich war happy zu lesen, das IPS jetzt auch unter UNIX läuft.

Ist das nicht ein Minus Punkt, wenn ich zwar IPS unter Unix am rennen habe, aber für die HM Geräte doch wieder ein zusätzliches Gerät benötige.

Ich habe jetzt schon zwei kleine Server am laufen
IPS unter Windows
ein EIBD Server unter Debian

Das wollte ich alles zusammenfüheren und ein Raspi verwenden.

Mal sehen, was die Zukunft bringt.

Gruß dittrg

Andere sehen das als Pluspunkt :smiley:
So geht zumindest noch mehr wenn IPS/RPi mal nicht läuft. Ist halt immer eine Glaubensfrage 100% die Ideal Lösung gibt es nicht. Mein Server wird dennoch laufen, egal ob IPS auf RPi oder nicht. Jeder hat halt andere Wünsche und Vorstellungen; bei mir z.B. wegen lokaler Website, Mail, Sqeezebox und Sat-TV Dienste.
Michael

Ja, die CCU2 kannst du auf einem Raspberry installieren:

Wichtig ist jedoch, dass du zur Nutzung auch eine CCU2 besitzen solltest, da du die Software sonst nutzen darfst.

PS: Linux ist kein Unix. Es ist ein Unix Nachbau (Abkürzung LINUX = Linux Is Not UniX)

LG,
Peter

Wenn Du die CCU2 FW auf einem RASPI laufen lässt benötigst Du auf jeden Fall zusätzlich zum RASPI und der Speicherkarte einen LAN Adapter (~ 80 €) das heißt die kosten liegen hier höher als bei einer reinen CCU2 installation (Die CCU 2 hat den Funk Teil und den Speicher bereits mit eingebaut)
Falls Du aus anderen Gründen die CCU2 auf dem RASPI laufen lassen willst gibt es in der Tat eine hervorragende Lösung die Du hier findest : http://www.lxccu.com/lxccu-manual

Ok, kommen wir zurück zum Thema;)

Auch bei mir hilft die Anleitung von SnakeCybernet um den Rückkanal zu aktivieren. Auffällig ist, dass ich den Homematic Socket zwar über die Console schließen kann, aber nicht anschließend wieder öffnen kann. Beim Öffnen kommt es zur Fehlermeldung „Invokation Error“ in der IPS Console.

Auf der Rasbian Console kommt die Fehlermeldung

[2014-08-21 21:47:47] [info] asio listen error: system:98 (Address already in use)

Somit ist der derzeitige Status (Version vom 18.8.14):

  • der Homematic Konfigurator ist weiterhin leer
  • die Statusvariablen werden nur aktualisiert, wenn nach dem Rezept von SnakeCybernet vorgegangen wird. Ein Schließen und Öffnen über die Console ist nicht möglich.
  • gelöst
  • die Homematic Profile sind vorhanden (aber mit englischen Assoziationen)

Viele Grüße

Burkhard

Hallo zusammen,
ich habe auch ein/das Problem mit dem Rückkanal von der CCU2 zum Raspberry. Bei der Parallelinstallation auf dem Windows-Rechner funktioniert es dagegen. Wenn ich es richtig verstehe, führt der Symcon-Server nach dem Start ein SSDP discovery durch und schickt einen Broadcast ins Netz:

NOTIFY * HTTP/1.1
HOST: 239.255.255.250:1900
NTS: ssdp:alive
NT: upnp:rootdevice
USN: uuid:xxxxx-xxxx-3xxxx-xxxx-xxxxxxx::upnp:rootdevice
LOCATION: http://192.168.1.47:3777/upnp/index.xml
CACHE-CONTROL: max-age=1800
SERVER: SymconBox/1.0 UPnP/1.1 IP-Symcon/3.50

DIesen machen der Raspberry und der Windows-PC in gleicher Weise. Abweichend vom Raspberry schickt der Windows-PC vorher aber schon ein

Bin…:…init…http://192.168.1.235:5544…IPSBin…

per TCP an die CCU2.

Wenn ich nun die im Broadcast genannte URL „LOCATION: http://192.168.1.47:3777/upnp/index.xml“ aufrufe, sehe ich im XML-File eine Abweichung bei der dort aufgeführten URL:

WIndows liefert zurück: http://192.168.1.47:3777
Raspberry liefert: http://::ffff:192.168.1.47:3777

Wenn ich dann eine Homematic-Action auslöse, sckickt die CCU2 gar nichts an den Raspberry. ich sehe in den Traces nur „Bin…logLevel…Bin…“, aber dies scheint nicht durch die HM-Aktion ausgelöst zu sein. Kann es sein, dass die „ffff“ in der obigen URL falsch sind und die CCU2 damit ihre Probleme hat?

Die initiale Kommunikation mit der CCU nach dem Start des Symcon-Servers ist mir nocht nicht ganz klar. Wird das SSDP-Discovery überhaupt benötigt oder reicht die init-Message (die nur der Windows-Server sendet) aus, um den Symcon-Server der CCU2 bekannt zu machen?

Gruß
Peter

Eigentlich sollte der Raspberry auch das Init schicken. Das SSDP ist für HomeMatic nicht relevant. Wird das Init korrekt gesendet, wenn du den HM Socket schließt und wieder öffnest?

paresy

Wenn ich den Socket in „/usr/share/symcon/settings.json“ schließe ("Open= true), den Symcon-Server auf dem Raspberry dann wieder starte und in der Console den Socket wieder öffne, schickt der Raspberry dann auch einen „init“ los. Die Status werden aber trotzdem nicht aktualisiert. Ich muss mir jetzt noch mal die Kommunikation zwischen Raspberry (Symcon-Server) und Windows-PC (Symcon-Console) anschauen…

Gruß
Peter

Wenn ich auf dem Raspberry trace, sehe ich, wie die Updates von der CCU2 reinkommen:

<?xml version=„1.0“?><methodResponse><params><param><value><array><data><value><string></string></value></data></array></value></param></params></methodResponse>POST /RPC2 HTTP/1.1
User-Agent: XMLRPC++ 0.7
Host: 192.168.1.47:5544
Content-Type: text/xml
Content-length: 439
<?xml version=„1.0“?>
<methodCall><methodName>system.multicall</methodName>
<params><param><value><array><data><value><struct><member><name>methodName</name><value>event</value></member><member><name>params</name><value><array><data><value>IPS</value><value>IEQxxxxxxxx:2</value><value>STATE</value><value><boolean>1</boolean></value></data></array></value></member></struct></value></data></array></value></param></params></methodCall>

Ich sehe auch, dass die auf dem Windows-PC laufende Console alle 500ms den Status vom Raspberry pollt:

POST /api/ HTTP/1.1
Connection: Keep-Alive
Content-Type: application/json
Content-Length: 72
Host: 192.168.1.47:3777
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8
Accept-Encoding: identity
User-Agent: Mozilla/3.0 (compatible; Indy Library)
Authorization: Basic UGV0ZXIaaa9uYXNAZ214LmRlOmVsY2hmcmVk
{„method“:„IPS_GetSnapshotChanges“,„params“:[68],„id“:1,„jsonrpc“:„2.0“}HTTP/1.1 200 OK
Connection: Close
Content-Length: 36
Content-Type: application/json; charset=utf-8
Server: WebSocket++/0.3.0-alpha4

Der Raspberry antwortet daraufhin:

Connection: Close
Content-Length: 36
Content-Type: application/json; charset=utf-8
Server: WebSocket++/0.3.0-alpha4
{„jsonrpc“:„2.0“,„result“:,„id“:1}

Die rote Zeile ist bei allen Antworten immer gleich. Ich vermute, dass bei result eigentlich ein Wert zurückgeliefert werden müsste (?).

Immerhin seid ihr viel weiter.

Folgende Konfig:

Rasperry 192.168.12.245/24
CCU2 FW 2.9.12 192.168.12.243/24

an der CCU2 sind noch keine Geräte angemeldet.

sobald ich den Homematic Socket öffne

Egal welcher Modus
als Host die 192.168.12.243
als EreignissServer die 192.168.12.245

Ports sind unverändert.

Und Peng ist der IPS Service tot :frowning:

Im Logfile symcon… steht gar nichts

Die Console ist so nett und sagt die Verbindung wurde erfolgreich geschlossen und sagt ip ist nicht erreichbar.

Screenshot 2014-08-29 15.09.48.pngScreenshot 2014-08-29 15.09.55.png

Aktuelle Consolen Version von heute 29.08.2014

Das passiert bei mir meistens auch, wenn ich in der Console den Socket aus/einschalte. Kannst Du in der Datei /usr/share/symcon/settings.json auf dem Rasberry unter Homematic „open“ auf true setzen, wie es weiter oben im Thread beschrieben ist? Wenn Du dann die Console startest, ist der Haken beim Socket schon gesetzt und zu brauchst den Server nicht abzuschießen :wink:

Gruß
Peter

Ich hatte es geschafft den HAcken auch so zu setzen aber mit der falschen ip :slight_smile:

Ich hab die richtige IP eingetragen und den IPS dienst gestartet.

Aber ist das euer ernst das ist doch keine Lösung ?

Ich weiß auch wieso sich der Socket nicht nach einem Reboot öffnet.

Schaut mal beim Booten zu

  1. startet IPS
  2. dann startet das netzwerk :frowning:

Ich habe gemerkt das der Socket geschlossen sein muss um die Konfiguration einzutragen, IP etc. Dann erst übernehmen und im zweiten Schritt den Socket öffnen, also nie in einem Schritt. Dann hat er sich bei mir auch immer weggehängt und ich konnte ihn nur durch manuelles schließen über die settings.json wieder zum Laufen überreden…

Allerdings kommen bei mir auch keinerlei Daten über homematic rein, kann nur senden

Ok Manuell den Socket öffnen Funktioniert wirklich.

Aber ich hab auch das Problem trotz richtig gesetzten EreignissServer es wird nichts an IPS gemeldet.

http://192.168.12.243:5544/ <-- ist der PI ergibt leider nur ein

„Resource not found“ im Browser

http://192.168.12.240:5544/ <-- ist der Windows Rechner ergibt leider nur ein

Leeres Browser Fenster

Ok Manuell den Socket öffnen Funktioniert wirklich.
Aber ich hab auch das Problem trotz richtig gesetzten EreignissServer es wird nichts an IPS gemeldet.
http://192.168.12.243:5544/ <-- ist der PI ergibt leider nur ein
„Resource not found“ im Browser

Das bedeutet aber auch nichts, denn der Browser versucht damit einen http-Server auf Port 5544 zu erreichen. Den gibt’s aber auf dem Port nicht. Wenn Du es mit Telnet („telnet 92.168.12.243:5544“) versuchst, sollte sowas wie

Connected to 192.168.12.243.
Escape character is ‚^]‘.

gemeldet werden und damit zeigen, dass der Port erreicht werden kann.

Gruß
Peter

also wenn dann mit

telnet 192.168.12.243 5544

und da kommt folgendes:

HTTP/1.1 400
Server: WebSocket++/0.3.0-alpha4

Verbindung zu Host verloren.

Hast du die Variante von SnakeCybernet schon probiert? Damit funktioniert es bei mir und ich bekomme Rückmeldungen. Das Vorgehen ist jedoch bei jedem Pi Neustart notwendig.

Ich habs nun echt mal der Reihe nach gemacht und nun werden wirklich Werte zurückgeliefert :o

Aber das sollte echt behoben werden.