Apple Homekit: die Hoffnung stirbt zuletzt

Begonnen von eldrik, 23 Januar 2015, 13:57:07

Vorheriges Thema - Nächstes Thema

Marie

Zitat von: justme1968 am 26 Juli 2015, 16:48:05
@Marie: die readings sind zur zeit nicht konfigurierbar und hard kodiert.

gibt es einen grund warum es temperatur1 heisst und nicht nur temperatur?

die schnelle lösung ist wenn du dir ein user reading anlegst das temperatur1 nach temperatur dupliziert. das mapping zu konfigurieren kommt noch.

gruss
  andre

Nein da gibt es keinen Grund für, außer das der von fhem beim erkennen des Sensors automatisch so angelegt wurde...

Das Mapping werde ich mal probieren....

Banana Pi & FHEM2FHEM Raspberry,RS485 Modbus Stromzähler UMG96, diverse Schaltsteckdosen 433 MHz, 868 MHz, MYSENSORS Temperatursensoren , Smartvisu, Homekit & Siri, Geofency, Zwave Rauchmelder & Steckdosen & Garagensteuerung, TabletUi mit BananaPi M2Ultra im Wohnmobil, Homebridge usw.usw.

dev0

@Pazekal: Weiss dem init script keinen runlevel zu und starte es verzögert (sleep) aus rc.local.

justme1968

letzter update für heute :)...

hier http://forum.fhem.de/index.php/topic,32652.msg314166.html#msg314166 gibt es noch mal eine neue version.


- fs20 dimmer handling verbessert

- sonos volume eingebaut

- die dim, volume und pct kommandos für rolläden werden jetzt 1-1.5 sekunden verzögert bevor sie tatsächlich an fhem gesendet werden. d.h. man kann relativ in ruhe die slider und buttons in eve verwenden um den gewünschten wert einzustellen ohne das dauernd alle zwischenwerte gesendet werden.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

andiw

nach dem Hinzufügen von meinem HM-WDS10-TH-O und anschliessendem Abfragen mit EVE stürtz homebridge ab: (wird der Sensor evtl. noch nicht unterstützt?)

[FHEM] query: temperature
[FHEM]   not cached
[FHEM]   querying: http://127.0.0.1:8084/fhem?cmd=%7BReadingsVal(%22AussenTemp%22,%22temperature%22,%22%22)%7D&XHR=1
[FHEM]   result: 20.6
[FHEM]   mapped: 20.6
  caching: AussenTemp-temperature: 20.6 as number
Characteristics.js:valueForUpdate(): called, Siri has asked for the accessory's status: returning 20.6
{ characteristics: [ { aid: 1, iid: 9, ev: true } ] }
Characteristics.js:updateCharacteristicEvent(): Enable Event: true
Characteristics.js:valueForUpdate(): called, Siri has asked for the accessory's status
Characteristics.js:valueForUpdate(): invoking callback
[FHEM] query: true
[FHEM]   not cached
[FHEM]   querying: http://127.0.0.1:8084/fhem?cmd=%7BReadingsVal(%22AussenTemp%22,%22true%22,%22%22)%7D&XHR=1
[FHEM]   result:
/root/homebridge/platforms/FHEM.js:686
                     } else if(reading.match(/-motor$/)) {
                                       ^
TypeError: undefined is not a function
    at Request._callback (/root/homebridge/platforms/FHEM.js:686:40)
    at Request.self.callback (/root/homebridge/node_modules/request/request.js:373:22)
    at Request.emit (events.js:110:17)
    at Request.<anonymous> (/root/homebridge/node_modules/request/request.js:1318:14)
    at Request.emit (events.js:129:20)
    at IncomingMessage.<anonymous> (/root/homebridge/node_modules/request/request.js:1266:12)
    at IncomingMessage.emit (events.js:129:20)
    at _stream_readable.js:908:16
    at process._tickCallback (node.js:355:11)

npm ERR! Linux 3.4.43-sun7i
npm ERR! argv "node" "/usr/bin/npm" "run" "start"
npm ERR! node v0.12.7
npm ERR! npm  v2.13.2
npm ERR! code ELIFECYCLE
npm ERR! homebridge@0.0.0 start: `node app.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the homebridge@0.0.0 start script 'node app.js'.
npm ERR! This is most likely a problem with the homebridge package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node app.js
npm ERR! You can get their info via:
npm ERR!     npm owner ls homebridge
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /root/homebridge/npm-debug.log

justme1968

bitte zeig mal ein list auf das device.

gruß
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

dev0

#215
Zitat von: andiw am 27 Juli 2015, 11:37:54

/root/homebridge/platforms/FHEM.js:686
                     } else if(reading.match(/-motor$/)) {
                                       ^

Vielleicht ist es egal, aber du scheinst nicht die aktuelle Version zu benutzen.

Edith hatte noch etwas auszusetzen :-)

SlvrStrko4

Hallo Andre,

ich versuche gerade die Rollladensteuerung zu realisieren.
Ich nutze hierfür ein dummy Device mit "genericDeviceType" = "blind".
Ich hab aus deiner FHEM.js rausgelesen dass er für Rolläden den aktuellen Stand aus "state" ausliest (da this.hasPct = False).
Sehe ich das richtig dass dort etwas ala "dim50%" erwartet wird? Wenn ich den Wert in Eve ändere steht im state Reading allerdings etwas wie "pct 50".
Leider bin ich noch nicht ganz durch die FHEM.js durchgestiegen, welche Readings jetzt in welchem Format erwartet werden.
Die Readings und Kommandos vom dummy kann ich beliebig setzen, kannst du mir sagen was alles erwartet wird?
Ebenso für den Positionsstatus (der steht nur auf "Gestoppt").

Danke & Gruß

andiw

#217
Zitat von: justme1968 am 27 Juli 2015, 11:45:31
bitte zeig mal ein list auf das device.

Internals:
   DEF        16F6BA
   HMLAN1_MSGCNT 227
   HMLAN1_RAWMSG E16F6BA,0000,1FA7515A,FF,FFB4,83867016F6BA00000000CF3B
   HMLAN1_RSSI -76
   HMLAN1_TIME 2015-07-27 12:09:35
   IODev      HMLAN1
   LASTInputDev HMLAN1
   MSGCNT     227
   NAME       AussenTemp
   NR         206
   NTFY_ORDER 50-AussenTemp
   STATE      T: 20.7 H: 59
   TYPE       CUL_HM
   lastMsg    No:83 - t:70 s:16F6BA d:000000 00CF3B
   protLastRcv 2015-07-27 12:09:35
   rssi_at_HMLAN1 lst:-76 min:-84 cnt:227 max:-68 avg:-74.67
   Readings:
     2014-04-03 19:18:06   D-firmware      1.2
     2014-04-03 19:18:06   D-serialNr     
     2015-07-27 12:09:35   battery         ok
     2015-07-27 12:09:35   humidity        59
     2015-07-27 12:09:35   state           T: 20.7 H: 59
     2015-07-27 12:09:35   temperature     20.7
   Helper:
     HM_CMDNR   131
     mId        003D
     rxType     132
     Io:
       newChn     +16F6BA,00,00,00
       nextSend   1437991775.64466
       prefIO
       rxt        0
       vccu
       p:
         16F6BA
         00
         00
         00
     Mrssi:
       mNo        83
       Io:
         HMLAN1     -74
     Prt:
       bErr       0
       sProc      0
     Q:
       qReqConf   00
       qReqStat
     Role:
       chn        1
       dev        1
     Rssi:
       At_hmlan1:
         avg        -74.6740088105727
         cnt        227
         lst        -76
         max        -68
         min        -84
Attributes:
   IODev      HMLAN1
   autoReadReg 4_reqStatus
   expert     2_full
   firmware   1.2
   fp_Grundriss 308,1391,4,AussenTemp,
   group      Temperatur
   model      HM-WDS10-TH-O
   peerIDs    00000000,
   room       Aussen
   serialNr   
   subType    THSensor


ach ja, was muss man Siri sagen, damit sie die Jalousien (HomeMatic) steuert?

SlvrStrko4

@andiw:
Ich sehe gerade du hast einen HM Jalousieaktor?
Magst du mir mal ein list auf diesen schicken, dann kann ich das mit meinem dummy Device abgleichen (s.o.) ;-)
Danke!

dev0

Zitat von: SlvrStrko4 am 27 Juli 2015, 12:09:55
Ich hab aus deiner FHEM.js rausgelesen dass er für Rolläden den aktuellen Stand aus "state" ausliest
Bin zwar nicht Andre, aber benutze einfach das reading pct (0-100, step 1). So verstehe ich den Code.

andiw

Zitat von: SlvrStrko4 am 27 Juli 2015, 12:22:31
@andiw:
Ich sehe gerade du hast einen HM Jalousieaktor?
Magst du mir mal ein list auf diesen schicken, dann kann ich das mit meinem dummy Device abgleichen (s.o.) ;-)
Danke!

there you go .. ;-)

Internals:
   DEF        18215F
   HMLAN1_MSGCNT 21
   HMLAN1_RAWMSG E18215F,0000,1E555AEC,FF,FFAC,0D841018215F0000000601C800
   HMLAN1_RSSI -84
   HMLAN1_TIME 2015-07-27 06:00:29
   IODev      HMLAN1
   LASTInputDev HMLAN1
   MSGCNT     21
   NAME       JalousieAZ
   NR         42
   NTFY_ORDER 50-JalousieAZ
   STATE      on
   TYPE       CUL_HM
   lastMsg    No:0D - t:10 s:18215F d:000000 0601C800
   offtime    1437991152
   oldenergy  0
   oldenergytime 1437957199
   ontime     1437991152
   peerList   Handsender1_Btn_01,
   protLastRcv 2015-07-27 06:00:29
   protSnd    20 last_at:2015-07-27 06:00:00
   protState  CMDs_done
   rssi_HMLAN1 lst:-91 max:-85 avg:-89.33 cnt:3 min:-92
   rssi_at_HMLAN1 cnt:21 min:-93 max:-83 avg:-87.61 lst:-84
   Readings:
     2015-07-27 06:00:00   CommandAccepted yes
     2014-04-03 19:18:06   D-firmware      1.6
     2014-04-03 19:18:06   D-serialNr     
     2015-07-27 05:55:33   PairedTo       
...
     2015-07-27 06:00:29   deviceMsg       on (to broadcast)
     2015-07-27 06:00:29   level           100
     2015-07-27 06:00:29   motor           stop:on
     2015-07-27 06:00:29   pct             100
     2015-07-27 05:55:34   peerList        Handsender1_Btn_01,
     2015-07-26 23:59:16   power-daily     0
     2015-07-26 23:59:16   power-daily-last 0
     2015-07-27 11:59:12   power-hourly    0
     2015-07-27 11:59:12   power-hourly-last 0.0
     2015-06-30 23:59:12   power-monthly   0
     2015-06-30 23:59:12   power-monthly-last 0
     2015-07-26 23:59:16   power-weekly    0
     2015-07-26 23:59:16   power-weekly-last 0
     2015-07-27 05:55:01   powerOn         2015-07-27 05:55:01
     2015-07-27 06:00:29   recentStateType info
     2015-07-27 06:00:29   state           on
     2015-07-27 06:00:29   timedOn         off
   Helper:
     HM_CMDNR   13
     cSnd       
     dlvlCmd    ++
     mId        0053
     peerIDsRaw ,1BA6F201,00000000
     rxType     1
     Dir:
       cur        stop
       rct        up
     Io:
       newChn     +18215F,00,00,00
       nextSend   1437969629.67313
       prefIO
       rxt        0
       vccu
       p:
         18215F
         00
         00
         00
     Mrssi:
       mNo        0D
       Io:
         HMLAN1     -82
     Prt:
       bErr       0
       sProc      0
       Rspwait:
     Q:
       qReqConf
       qReqStat
     Role:
       chn        1
       dev        1
       prs        1
     Rssi:
       Hmlan1:
         avg        -89.3333333333333
         cnt        3
         lst        -91
         max        -85
         min        -92
       At_hmlan1:
         avg        -87.6190476190476
         cnt        21
         lst        -84
         max        -83
         min        -93
     Shadowreg:
Attributes:
   IODev      HMLAN1
   autoReadReg 4_reqStatus
   devStateIcon on:fts_shutter_10 off:fts_shutter_100 halb:fts_shutter_50 .*:unknown
   eventMap   100:hoch 0:runter stop:stop 60:halb
   expert     2_full
   firmware   1.6
   fp_Grundriss 127,1369,8,:,
   genericDisplayType blind
   group      Fenster
   model      HM-LC-BL1-PB-FM
   peerIDs    00000000,1BA6F201,
   room       AndreasZimmer,Overview
   serialNr   
   subType    blindActuator
   webCmd     hoch:halb:runter:stop

SlvrStrko4

#221
Zitat von: dev0 am 27 Juli 2015, 12:26:10
Bin zwar nicht Andre, aber benutze einfach das reading pct (0-100, step 1). So verstehe ich den Code.

Das hatte ich auch erst gedacht, aber das funktioniert so nicht.
Ich habe dann gesehen das wenn "reading = state" und "orig_reading = pct", dass er dann in state etwas ala "dim30%" erwartet.
Wenn ich das setze nimmt er den Wert sogar an, allerdings macht er kein Update (holt den Wert immer wieder aus dem Cache) und wenn ich den Wert ändern will steht in "state" etwas wie "pct 29".

edit: @andiw: Danke vielleicht kann ich damit noch was anstellen ;-)

dev0

Zitat von: SlvrStrko4 am 27 Juli 2015, 12:34:03
und wenn ich den Wert ändern will steht in "state" etwas wie "pct 29".
Dann ist dein 98_dummy.pm nicht aktuell oder Du hast das Attribut readingList des Dummies nicht (korrekt) gesetzt.

SlvrStrko4

Meine 98_dummy.pm ist aktuell (26.07.) aber das Attribut "readingList" ist gar nicht gesetzt  :-X
Es ist aber auch nicht in der Liste der verfügbaren Attribute?

dev0

Das Attribut wurde mit v 8809 eingeführt:
# $Id: 98_dummy.pm 8809 2015-06-23 18:02:33Z rudolfkoenig $