300 ist ja auch heftig, ich hatte so mit 10-20 getestet. Mehr wird vermutlich nie zeitgleich angesteuert.
Davon abgesehen, das ich meine PHP-Slot eh auf 50 stehen habe. Ist aber auch kein Pi o.ä. sondern eine VM mit ordentlich Leistung
Michael
300 ist ja auch heftig, ich hatte so mit 10-20 getestet. Mehr wird vermutlich nie zeitgleich angesteuert.
Davon abgesehen, das ich meine PHP-Slot eh auf 50 stehen habe. Ist aber auch kein Pi o.ä. sondern eine VM mit ordentlich Leistung
Michael
Nein, nicht mit 300. Habe auch nur 20 abgeschickt. Allerdings bei 10 Threads.
Gibt es bei Alexa ein einstellbares Delay zwischen 2 Befehlen? 50-100ms reichen für einen stabilen Lauf.
Gibt es leider nicht. Was meinst du mit Abstürzen? Ist der Dienst dann komplett weg oder Hängen die Threads wie im anderen Beitrag beschrieben? Hast du mal die PHP Threads probiert in den Spezial Schaltern zu erhöhen?
paresy
ja, habe ich probiert. Normalerweise habe ich 50 Slots eingestellt. Dann kann ich ca. 10 RequireAction zeitgleich absetzen. Mit den voreingestellten 10 Slots sind es 2. Der 3. RequestAction + der 7 phprequire_once füllen dann die Slots komplett.
Als WorkAround kann mal also sicherlich auf 50 Slots stellen. Letzendlich möchte ich das Problem aber besser lösen.
Viele Grüße
Jürgen
Ich habe den Code nur etwas überflogen, aber du vervielfältigst selber die Threads, und sorgst für Locks.
Im Gateway bei ForwardData versendest du die Daten über SendToDeconz, gibst aber die Antwort nicht per Return an den Child zurück, sondern stattdessen ruft SendToDeconz ein SendDataToChildren auf.
Das ist sehr schlecht, da der Child noch auch die Antwort von ForwardData wartet, du aber im gleichen Thread mit SendDataToChildren die Antwort an alle Childs versendest.
SendDataToParent im Child wartet immer auf die Antwort der Funktion ForwardData im Parent.
Sprich, du kannst die Antwort direkt im ForwardData mit Return an den Child zurückgeben.
Außerdem nutzt du keinen ReceiveFilter in den Childs.
Somit wird bei jedem Aufruf von SendDataToChildren ein ReceiveData in jedem Child aufgerufen.
SendDataToChildren übergibt die Daten aber jeweils in einem neuen Thread, da hier niemals eine Antwort vom Child kommt.
Wenn du also 20 Geräte/Childs hast, dann werden 20 Solts belegt!
Michael
@Nall-chan
Danke Michael für Deine sehr hilfreichen Hinweise. Dadurch habe ich die Zusammenhänge erheblich besser verstanden. Super, dass Du Dir die Mühe gemacht hast, meinen Quellcode näher unter die Lupe zu nehmen.
Mit 50 Slots schaffe ich jetzt 30 RequestAction-Aufrufe stabil.
@MrTree84
Mit der aktuellen Beta-Version 1.06 sollten Deine Alexa-Probleme behoben sein. Magst Du bitte mal probieren und hier eine Rückmeldung geben?
@epogo
Sorry für die späte Rückmeldung. Ich wollte mich erstmal um die Abstürze kümmern. Jetzt kommt aber Dein Thema auf die Tagesordnung. Ich habe allerdings noch nicht ganz verstanden, wo das Problem liegt. Hast Du einen Sensor mit 3 Kanälen, die in IPS als 3 Sensoren angezeigt werden? Wenn das so ist, brauche ich mal einen Hinweis zur Geräte-ID. Ist der vordere Teil der Geräte-ID bei den 3 Sensoren gleich und nur die letzten 4 Ziffern unterschiedlich?
Viele Grüße
Jürgen
Leider hat sich in die Version 1.06 ein kleiner aber fataler Fehler eingeschlichen, sodass nach dem Symcon Neustart das Modul nicht mehr funktioniert. Der ist mit Version 1.07 behoben.
Bitte V1.06 nicht verwenden.
Viele Grüße
Jürgen
Hallo Jürgen,
danke für den echt super schnellen Support.
Ich habe die Version 1.07 ausprobiert und diese verursacht den, von mir oben beschriebenen, Fehler mit Alexa nun nicht mehr.
Habe dein Modul schon mit verschiedenen weiteren Sensoren, Fernbedienungen und Lampen getestet und es läuft bisher super und echt zuverlässig.
Danke nochmal für die Arbeit.
Grüße
Holger
Hallo,
ich bin aus zeitlichen Gründen bisher nicht dazu gekommen, mich weiter mit dem Modul zu beschäftigen, zumal ich auch nicht weiss, ob die IKEA-Lampen Einzug bei uns halten werden.
Mir ist mehrfach aufgefallen, das meine beiden Lampen ( GU10-Spots ) im ausgeschalteten Zustand ( Dimmer = 0 ) leicht flackern, besser gesagt, die blitzen immer wieder ganz schwach auf, so alle 5 sec.
Ist mir heute nacht wieder aufgefallen.
Woher das kommt, weiss ich nicht, werde ich mal als erstes ergründen und wenn das von den Lampen selber kommt, fliegen die raus.
Die anderen 4 Testlampen zeigen das Verhalten nicht ( E14 & E27 weiss, dimmbar ), aber die sind derzeit auch nicht am RaspBee eingebunden.
Von meinem Modul kann das nicht kommen. Bei Dimmer = 0 schalte ich den Switch auf „off“. Probiere mal bitte die anderen Lampen am RaspBee.
Viele Grüße
Jürgen
Ich denke das kommt eher von RaspBee, ich teste gerade die beiden E17 Lampen, bisher noch keine Auffälligkeiten.
Für die E27 habich gerade keine passende Lampe.
Das kann geauso von den Lampen selbst kommen. Ich kenne das Phänomen bei meinen Lampen am Raspbee nicht.
Viele Grüße
Jürgen
Module works more than perfect, thanks!
Will there be a future release with scene support for Hue and Tradfri?
Regards Ruus
Hey Ruus,
Some times ago, i toke a look, but i didn’t find any advantage with scences. So i do not plan scene support. If you see advantages, let me know them, so that i give scene support a second try.
Best Regards
Jürgen
@epogo,
ich habe einige Details im Konfigurator ergänzt. Gucke mal bitte, ob es das ist, was Dir gefehlt hat.
@Ruus,
in V1.08 group and scene support is added. Please take a look, if its what your are looking for.
@all,
In der Version 1.08 werden jetzt Gruppen unterstützt. Im Webfront lassen sich nun Gruppen als Ganzes an- und ausschalten.
Darüber hinaus werden im Webfront jetzt auch die verfügbaren Licht-Szenen angezeigt und können angesteuert werden. Da DeConz aber keine Rückmeldung gibt, ob eine Szene aktiv ist, kann ich das auch nicht im WebFront anzeigen. Ich bin gespannt auf Eure Rückmeldung.
Viele Grüße
Best Regards
Jürgen
Sorry… Bin gerade etwas beschäftigt. Hab aber eben getestet. Perfekt … Genauso hab ich mir das vorgestellt .
Vielen Dank für das Modul. Bin mega Begeistert!
Lg
Stephan
Version 1.09 ist jetzt im Store und auf Git verfügbar. Auf Anregung von Georg habe ich besonderes Augenmerk auf eine verbesserte Unterstützung von großen Installationen gelegt. Die Performance sollte jetzt besonders bei Installation sehr vieler Zigbee-Komponenten spürbar besser und die Rechnerauslastung geringer sein.
Darüber hinaus wurden einige Bugs z.B. beim Anlegen von Devices aus dem Konfigurator behoben und zusätzliche Attribute wie Sensitivity und Offset eingeführt.
Vielleicht noch ein Hinweis zum Ansteuern von ganzen Gruppen:
Gruppen lassen sich genauso ansteuern wie Devices.
Z2D_DimSet(12345, 50);
dimmt alle Lampen der Gruppe 12345 auf 50 Prozent. Genauso funktioniert das mit dem Schalten etc.
Die komplette Funktionsübersicht für Gruppen findet Ihr in der Doku.
Viele Grüße
Jürgen
Hallo liebe Forumsmitglieder,
bei mir funktioniert die Verbindung der Phoscon APP mit dem Zigbee-DeCONZ Modul nicht. Vielleicht kann mir jemand weiterhelfen.
Der CONBEE2 Stick ist auf dem gleichen Windows 10 Rechner installiert auf dem auch IPS läuft. Die Deconz Software ist installiert und über die Phoscon APP habe ich einen Aqara Sensor hinzugefügt. Funktioniert einwandfrei.
Anschließend habe ich das Zigbee-Deconz Modul in IPS installiert.
Bei der Instanzkonfiguration des DECONZ Gateways habe ich folgendes hinterlegt:
DeCONZ-Url: 127.0.0.1
Port: 80
In der Phoscon-APP habe ich APP VERBINDEN ausgeführt und in IPS API-KEY ANFORDERN.
Hier ist der Debug vom DECONZGATEWAY:
31.08.2019, 09:28:43 | API-Key Response | [{„success“:{„username“:„CC7942A99F“}}]
31.08.2019, 09:28:43 | API-Key | set successfully
31.08.2019, 09:28:43 | GetDeconzConfiguration | {„config“:{„UTC“:„2019-08-31T07:28:43“,„apiversion“:„1.16.0“,„backup“:{„errorcode“:0,„status“:„idle“},„bridgeid“:„00212EFFFF04DB75“,„datastoreversion“:„60“,„devicename“:„ConBee II“,„dhcp“:true,„factorynew“:false,„fwversion“:„0x264a0700“,„gateway“:„192.168.178.1“,„internetservices“:{„remoteaccess“:„disconnected“},„ipaddress“:„192.168.178.31“,„linkbutton“:true,„localtime“:„2019-08-31T09:28:43“,„mac“:„70:85:c2:53:84:f8“,„modelid“:„deCONZ“,„name“:„Phoscon-GW“,„netmask“:„255.255.255.0“,„networkopenduration“:60,„panid“:1627,„portalconnection“:„disconnected“,„portalservices“:false,„portalstate“:{„communication“:„disconnected“,„incoming“:false,„outgoing“:false,„signedon“:false},„proxyaddress“:„none“,„proxyport“:0,„replacesbridgeid“:null,„rfconnected“:true,„starterkitid“:"",„swupdate“:{„checkforupdate“:false,„devicetypes“:{„bridge“:false,„lights“:,„sensors“:},„notify“:false,„text“:"",„updatestate“:0,„url“:""},„swupdate2“:{„autoinstall“:{„on“:false,„updatetime“:""},„bridge“:{„lastinstall“:„2019-08-26T21:57:04“,„state“:„noupdates“},„checkforupdate“:false,„install“:false,„lastchange“:"",„lastinstall“:"",„state“:„noupdates“},„swversion“:„2.5.67“,„timeformat“:„12h“,„timezone“:null,„uuid“:„f331ed6f-0928-48ff-961b-85e53fa5af82“,„websocketnotifyall“:true,„websocketport“:443,„whitelist“:{„3E99245E0D“:{„create date“:„2019-08-30T20:31:45“,„last use date“:„2019-08-30T20:58:34“,„name“:„Phoscon#B1536x754“},„4FFE5AFD1A“:{„create date“:„2019-08-31T07:04:46“,„last use date“:„2019-08-31T07:28:40“,„name“:„Phoscon#B1536x754“},„80AD0841E9“:{„create date“:„2019-08-30T20:55:49“,„last use date“:„2019-08-30T20:58:34“,„name“:„Phoscon#B1536x754“},„AE54B1DA10“:{„create date“:„2019-08-31T07:13:32“,„last use date“:„2019-08-31T07:25:27“,„name“:„ips“},„CC7942A99F“:{„create date“:„2019-08-31T07:28:43“,„last use date“:„2019-08-31T07:28:43“,„name“:„ips“},„D06BC430B7“:{„create date“:„2019-08-30T20:08:32“,„last use date“:„2019-08-30T20:08:50“,„name“:„Phoscon#B1536x754“},„E8652D890D“:{„create date“:„2019-08-31T06:56:25“,„last use date“:„2019-08-31T07:01:00“,„name“:„Phoscon#B1536x754“}},„zigbeechannel“:15},„groups“:{},„lights“:{},„resourcelinks“:{},„rules“:{},„scenes“:{},„schedules“:{},„sensors“:{„1“:{„config“:{„configured“:true,„on“:true,„sunriseoffset“:30,„sunsetoffset“:-30},„etag“:„ce895f39ce522850c7dc3e8ea51879aa“,„manufacturername“:„Philips“,„modelid“:„PHDL00“,„name“:„Daylight“,„state“:{„dark“:false,„daylight“:true,„lastupdated“:„2019-08-31T05:17:01“,„status“:160},„swversion“:„1.0“,„type“:„Daylight“,„uniqueid“:„00:21:2e:ff:ff:04:db:75-01“},„2“:{„config“:{„battery“:98,„on“:true,„reachable“:true,„temperature“:3300},„ep“:1,„etag“:„331aacc0d490b76bb790a4564c26e09b“,„manufacturername“:„LUMI“,„modelid“:„lumi.sensor_magnet.aq2“,„name“:„Fenster- / Türkontaktsensor“,„state“:{„lastupdated“:„2019-08-31T06:53:07“,„open“:false},„swversion“:„20161128“,„type“:„ZHAOpenClose“,„uniqueid“:„00:15:8d:00:02:bf:61:77-01-0006“}}}
Es wird keine Verbindung geöffnet. Was mache ich falsch?
Vielen Dank im Voraus.
Jürgen
Hallo Jürgen,
das sieht soweit ganz gut aus. Hast Du im übergeordneten Client Socket die Verbindung geöffnet? Wenn ja, dann bitte da auf die Debug-Seite gucken, ob etwas ankommt.
Wenn ja, ist alles gut. Wenn nein, dann bitte mal den Namen oder die IP, unter dem DeCONZ im Hausnetz erreichbar ist, im Konfigurtationsformular des Gateway eintragen.
Dann einen Konfigurator installieren und mit diesem die Geräte anlegen.
Viele Grüße
Jürgen
Client Socket, mit Port 8088 ist auch da?
Gruß Helmut