[alexa-fhem] Fehler (nur) in der Alexa App

Begonnen von Gary, 30 Mai 2025, 19:41:15

Vorheriges Thema - Nächstes Thema

Gary

Hallo,
ich verwende den FHEM Connector für Amazon Alexa schon seit vielen Jahren mit vielen unterschiedlichen Geräten und die Sprachsteuerung über die Echo-Devices (habe ich in den meisten Räumen) funktioniert wunderbar. Ich bin sehr dankbar für das Modul!

Die Alexa App verwende ich tatsächlich nicht so oft, und daher ist mir erst seit kurzem aufgefallen, dass es dort massive Probleme mit fast allen Gerätetypen gibt - und zwar in den Gerätedetailansichten. Ich weiß, dass das alles schon mal funktioniert hat und kann leider nicht sagen, seit wann nicht mehr oder gar was der Auslöser war.

  • Meine Schalter, Lampen und Dimmer melden in der Detailansicht "Ein Problem ist aufgetreten". Bei Dimmer "springen" die Werte sporadisch zwischen 0% und 100% oder den tatsächlich (in FHEM) eingestellten Dimmerwerte.
  • Jalousien zeigen nicht den Prozentwerte der Beschattung, sondern springen direkt in die Geräteeinstellungen.
  • Thermometer zeigen keinen Wert an und ebenfalls "Ein Problem ist aufgetreten"

Ich habe jetzt schon sehr viel Zeit verbracht nach der Ursache zu forschen und eine Lösung zu finden, aber es gelingt mir einfach nicht. Ich möchte nochmals darauf hinweisen, dass die Sprachsteuerung bei allen Geräten ohne Probleme funktioniert. "Schalte ein/aus", "setze auf %", "wie ist die Temperatur in" geht klaglos. In der Geräteübersicht der Alexa App kann ich Lichter mit dem Button auch ein- und ausschalten. Aber die Detailansichten spielen verrückt. Ich habe Screenshots angehängt.

Meine Vermutung ist, dass beim Sprung in die Detailansicht die App auf irgendeine Bestätigung des Connectors wartet und wenn die nicht kommt, einen Fehler meldet oder mit den Werten verwirrt ist. Möglicherweise liegt es aber auch an irgendwelchen Connector-Einstellungen. Oder es hat sich tatsächlich seitens Amazon etwas verändert, was im Connector noch nicht nachgezogen worden ist.

Ich habe hier noch exemplarisch ein List von einem einfachen Homematic-Schalter - ohne Homebridgemapping oder irgendwelche Prozentwerte beim State.
Internals:
  DEF        769DFC
  FUUID      61facf8a-f33f-7b17-d60e-dc00781c6d07ceaf
  HMLAN1_MSGCNT 41
  HMLAN1_RAWMSG R21FF3825,0001,04E300BD,FF,FFCD,D38002769DFC2CD7B2010100004B
  HMLAN1_RSSI -51
  HMLAN1_TIME 2025-05-30 18:21:03
  HMWLAN1_MSGCNT 1
  HMWLAN1_RAWMSG 0500004BC78002769DFC2CD7B2010100004B
  HMWLAN1_RSSI -75
  HMWLAN1_TIME 2025-05-29 19:12:13
  IODev      HMLAN1
  LASTInputDev HMLAN1
  MSGCNT    42
  NAME      Bad_Abluft
  NR        642
  NTFY_ORDER 48-Bad_Abluft
  STATE      off
  TYPE      CUL_HM
  chanNo    01
  disableNotifyFn 1
  eventCount 73
  lastMsg    No:D3 - t:02 s:769DFC d:2CD7B2 010100004B
  peerList  self01,self02
  protLastRcv 2025-05-30 18:21:03
  protRcv    40 last_at:2025-05-30 18:21:03
  protSnd    41 last_at:2025-05-30 18:21:03
  protState  CMDs_done
  rssi_HMLAN1 cnt:35 min:-80 max:-74 avg:-76.17 lst:-75
  rssi_at_HMLAN1 cnt:41 min:-56 max:-50 avg:-51.85 lst:-51
  rssi_at_HMWLAN1 cnt:1 min:-75 max:-75 avg:-75 lst:-75
  READINGS:
    2025-05-30 18:21:03  CommandAccepted yes
    2022-02-02 20:42:18  D-firmware      2.8
    2022-02-02 20:42:18  D-serialNr      SEQ2044590
    2025-05-30 18:21:03  IODev          HMLAN1
    2025-03-30 18:40:40  PairedTo        0x2CD7B2
    2022-02-03 14:09:38  R-intKeyVisib  visib
    2022-02-02 19:38:11  R-localResDis  off
    2022-02-02 20:42:22  R-pairCentral  0x2CD7B2
    2022-02-02 19:38:12  R-powerUpAction off
    2022-02-03 14:09:41  R-self01-lgActionType jmpToTarget
    2022-02-03 14:09:41  R-self01-lgCtDlyOff geLo
    2022-02-03 14:09:41  R-self01-lgCtDlyOn geLo
    2022-02-03 14:09:41  R-self01-lgCtOff geLo
    2022-02-03 14:09:41  R-self01-lgCtOn geLo
    2022-02-03 14:09:41  R-self01-lgCtValHi 100
    2022-02-03 14:09:41  R-self01-lgCtValLo 50
    2022-02-03 14:09:41  R-self01-lgMultiExec on
    2022-02-03 14:09:41  R-self01-lgOffDly 0 s
    2022-02-03 14:09:41  R-self01-lgOffTime unused
    2022-02-03 14:09:41  R-self01-lgOffTimeMode absolut
    2022-02-03 14:09:41  R-self01-lgOnDly 0 s
    2022-02-03 14:09:41  R-self01-lgOnTime unused
    2022-02-03 14:09:41  R-self01-lgOnTimeMode absolut
    2022-02-03 14:09:41  R-self01-lgSwJtDlyOff off
    2022-02-03 14:09:41  R-self01-lgSwJtDlyOn off
    2022-02-03 14:09:41  R-self01-lgSwJtOff off
    2022-02-03 14:09:41  R-self01-lgSwJtOn dlyOff
    2022-02-03 14:09:41  R-self01-shActionType jmpToTarget
    2022-02-03 14:09:41  R-self01-shCtDlyOff geLo
    2022-02-03 14:09:41  R-self01-shCtDlyOn geLo
    2022-02-03 14:09:41  R-self01-shCtOff geLo
    2022-02-03 14:09:41  R-self01-shCtOn geLo
    2022-02-03 14:09:41  R-self01-shCtValHi 100
    2022-02-03 14:09:41  R-self01-shCtValLo 50
    2022-02-03 14:09:41  R-self01-shMultiExec off
    2022-02-03 14:09:41  R-self01-shOffDly 0 s
    2022-02-03 14:09:41  R-self01-shOffTime unused
    2022-02-03 14:09:41  R-self01-shOffTimeMode absolut
    2022-02-03 14:09:41  R-self01-shOnDly 0 s
    2022-02-03 14:09:41  R-self01-shOnTime unused
    2022-02-03 14:09:41  R-self01-shOnTimeMode absolut
    2022-02-03 14:09:41  R-self01-shSwJtDlyOff off
    2022-02-03 14:09:41  R-self01-shSwJtDlyOn off
    2022-02-03 14:09:41  R-self01-shSwJtOff off
    2022-02-03 14:09:41  R-self01-shSwJtOn dlyOff
    2022-02-03 14:09:40  R-self02-lgActionType jmpToTarget
    2022-02-03 14:09:40  R-self02-lgCtDlyOff geLo
    2022-02-03 14:09:40  R-self02-lgCtDlyOn geLo
    2022-02-03 14:09:40  R-self02-lgCtOff geLo
    2022-02-03 14:09:40  R-self02-lgCtOn geLo
    2022-02-03 14:09:40  R-self02-lgCtValHi 100
    2022-02-03 14:09:40  R-self02-lgCtValLo 50
    2022-02-03 14:09:40  R-self02-lgMultiExec on
    2022-02-03 14:09:40  R-self02-lgOffDly 0 s
    2022-02-03 14:09:40  R-self02-lgOffTime unused
    2022-02-03 14:09:40  R-self02-lgOffTimeMode absolut
    2022-02-03 14:09:40  R-self02-lgOnDly 0 s
    2022-02-03 14:50:50  R-self02-lgOnTime 1800 s
    2022-02-03 14:09:40  R-self02-lgOnTimeMode absolut
    2022-02-03 14:09:40  R-self02-lgSwJtDlyOff on
    2022-02-03 14:09:40  R-self02-lgSwJtDlyOn on
    2022-02-03 14:09:40  R-self02-lgSwJtOff dlyOn
    2022-02-03 14:09:40  R-self02-lgSwJtOn on
    2022-02-03 14:09:40  R-self02-shActionType jmpToTarget
    2022-02-03 14:09:40  R-self02-shCtDlyOff geLo
    2022-02-03 14:09:40  R-self02-shCtDlyOn geLo
    2022-02-03 14:09:40  R-self02-shCtOff geLo
    2022-02-03 14:09:40  R-self02-shCtOn geLo
    2022-02-03 14:09:40  R-self02-shCtValHi 100
    2022-02-03 14:09:40  R-self02-shCtValLo 50
    2022-02-03 14:09:40  R-self02-shMultiExec off
    2022-02-03 14:09:40  R-self02-shOffDly 0 s
    2022-02-03 14:09:40  R-self02-shOffTime unused
    2022-02-03 14:09:40  R-self02-shOffTimeMode absolut
    2022-02-03 14:09:40  R-self02-shOnDly 0 s
    2022-02-03 14:50:41  R-self02-shOnTime 900 s
    2022-02-03 14:09:40  R-self02-shOnTimeMode absolut
    2022-02-03 14:09:40  R-self02-shSwJtDlyOff on
    2022-02-03 14:09:40  R-self02-shSwJtDlyOn on
    2022-02-03 14:09:40  R-self02-shSwJtOff dlyOn
    2022-02-03 14:09:40  R-self02-shSwJtOn on
    2022-02-02 19:38:12  R-sign          off
    2022-02-02 19:38:12  R-statusInfoMinDly 2 s
    2022-02-02 19:38:12  R-statusInfoRandom 1 s
    2022-02-02 19:38:12  R-transmitTryMax 6
    2025-05-26 22:32:37  cfgState        ok
    2025-05-30 18:21:03  commState      CMDs_done
    2025-05-30 18:21:03  deviceMsg      off (to vccu)
    2025-05-30 18:21:03  level          0
    2025-05-30 18:21:03  pct            0
    2025-05-26 22:32:58  peerList        self01,self02
    2025-03-30 18:40:37  powerOn        2025-03-30 18:40:37
    2025-05-30 18:21:03  recentStateType ack
    2025-05-30 18:21:03  state          off
    2025-05-30 18:21:03  timedOn        off
    2025-05-30 18:21:03  trigLast        fhem:02
  helper:
    HM_CMDNR  211
    cSnd      112CD7B2769DFC0201C80000,112CD7B2769DFC0201000000
    dlvlCmd    ++A0112CD7B2769DFC0201000000
    lastMsgTm  1748622063.41666
    mId        0069
    peerFriend peerSens,peerVirt
    peerIDsState complete
    peerOpt    3:switch
    regLst    0,1,3p
    rxType    1
    supp_Pair_Rep 0
    tmplChg    0
    ack:
    cmds:
      TmplKey    self01,self02:no:1748291578.85981
      TmplTs    1748291578.85981
      cmdKey    1:1:0::Bad_Abluft:0069:01:self01,self02
      cmdLst:
        assignHmKey noArg
        clear      [({msgErrors}|msgEvents|rssi|attack|trigger|register|oldRegs|readings|all)]
        deviceRename -newName-
        eventL    -peer- -cond-
        eventS    -peer- -cond-
        fwUpdate  -filename- [-bootTime-]
        getConfig  noArg
        getDevInfo noArg
        getRegRaw  (List0|List1|List2|List3|List4|List5|List6|List7) [-peerChn-]
        getVersion noArg
        inhibit    [(on|{off})]
        off        noArg
        on        noArg
        on-for-timer -ontime-
        on-till    -time-
        pair      noArg
        peerBulk  -peer1,peer2,...- [({set}|unset)]
        peerIODev  [IO] -btn- [({set}|unset)] 'not for future use'
        peerSmart  -peerOpt-
        press      [(long|{short})] [(-peer-|{self01})] [(-repCount-|{0})] [(-repDelay-|{0.25})]
        pressL    [(-peer-|{self01})]
        pressS    [(-peer-|{self01})]
        raw        -data- [...]
        regBulk    -list-.-peerChn- -addr1:data1- [-addr2:data2-]...
        regSet    [(prep|{exec})] -regName- -value- [-peerChn-]
        reset      noArg
        sign      [(on|{off})]
        statusRequest noArg
        toggle    noArg
        tplDel    -tplDel-
        tplSet_0  -tplChan-
        tplSet_self01 -tplPeer-
        tplSet_self02 -tplPeer-
        unpair    noArg
      lst:
        condition  slider,0,1,255
        peer      self01,self02
        peerOpt    HM_3D5DC8_Btn_01,HM_3D5DC8_Btn_02,HM_3D5DC8_Btn_03,HM_3D5DC8_Btn_04,HM_3D5DC8_Btn_05,HM_3D5DC8_Btn_06,HM_3D5DC8_Btn_07,HM_3D5DC8_Btn_08,HM_5B6FB0_Btn_01,HM_5B6FB0_Btn_02,HM_5B6FB0_Tr,HM_5B6FDC_Btn_01,HM_5B6FDC_Btn_02,HM_5B6FDC_Tr,HM_7379FF_Btn_01,HM_7379FF_Btn_02,HM_77B002_Btn_01,HM_77B002_Btn_02,HM_77B002_Btn_03,HM_77B002_Btn_04,HM_77B002_Btn_05,HM_77B002_Btn_06,HM_77B084_Btn_01,HM_77B084_Btn_02,HM_77B084_Btn_03,HM_77B084_Btn_04,HM_77B084_Btn_05,HM_77B084_Btn_06,HM_785926_Btn_01,HM_785926_Btn_02,HM_785926_Tr,Rauchmelder_Team,vccu,wz_Bewegungsmelder
        tplChan   
        tplDel   
        tplPeer    SwCondAbove_long,SwCondAbove_short,SwCondBelow_long,SwCondBelow_short,SwOff_long,SwOff_short,SwOnCond_long,SwOnCond_short,SwOn_long,SwOn_short,SwToggle_long,SwToggle_short,autoOff_long,autoOff_short,motionOnSw_long,motionOnSw_short
      rtrvLst:
        cmdList    [({short}|long)]
        deviceInfo [({short}|long)]
        list      [({normal}|full)]
        param      -param-
        reg        -addr- -list- [-peerChn-]
        regList    noArg
        regTable  noArg
        regVal    -addr- -list- [-peerChn-]
        saveConfig [-filename-]
        tplInfo    noArg
    expert:
      def        1
      det        1
      raw        0
      tpl        0
    io:
      flgs      0
      newChn    +769DFC,00,01,00
      nextSend  1748622063.50464
      rxt        0
      vccu      vccu
      p:
        769DFC
        00
        01
        00
      prefIO:
    mRssi:
      mNo        D3
      io:
        HMLAN1:
          -45
          -45
        HMWLAN1:
    peerIDsH:
      00000000  broadcast
      769DFC01  self01
      769DFC02  self02
    prt:
      bErr      0
      sProc      0
      tryMsg:
    q:
      qReqConf 
      qReqStat 
    role:
      chn        1
      dev        1
      prs        1
    rssi:
      HMLAN1:
        avg        -76.1714285714286
        cnt        35
        lst        -75
        max        -74
        min        -80
      at_HMLAN1:
        avg        -51.8536585365854
        cnt        41
        lst        -51
        max        -50
        min        -56
      at_HMWLAN1:
        avg        -75
        cnt        1
        lst        -75
        max        -75
        min        -75
    shadowReg:
    tmpl:
Attributes:
  IOgrp      vccu
  alexaName  Abluft
  alexaRoom  Badezimmer
  autoReadReg 4_reqStatus
  cmdIcon    on:general_an off:general_aus
  devStateIcon .*on.*:vent_ventilation_level_3@yellow:off .*off.*:vent_ventilation:15min set.*:vent_ventilation_level_3
  event-on-change-reading state,level,overheat,overload
  eventMap  /on-for-timer 1800:30min/on-for-timer 900:15min/
  expert    allReg
  firmware  2.8
  genericDeviceType switch
  group      Lueftung
  icon      Ventilator_fett
  model      HM-LC-SW1PBU-FM
  peerIDs    00000000,769DFC01,769DFC02
  room      Alexa,Home
  serialNr  SEQ2044590
  subType    switch
  webCmd    15min:30min:on:off

Hat jemand von euch ein ähnliches Problem? Oder andersherum gefragt: Wenn es bei dir funktioniert, also sowohl die Voicecommands als auch die Alexa App vorzugsweise mit Homematic Geräten, dann wäre ich sehr dankbar für das Konfigurationsbeispiel.

Der Vollständigkeit halber noch beispielhaft Auszüge aus dem Alexa-Log zum obigen Schalter:
Discover Response:
{
    "event": {
        "header": {
            "namespace": "Alexa.Discovery",
            "name": "AddOrUpdateReport",
            "payloadVersion": "3",
            "messageId": "56dbfb54-eeb3-4c74-8e92-e90c6779f182"
        },
        "payload": {
            "endpoints": [{
                    "endpointId": "SEQ2044590",
                    "manufacturerName": "CUL_HM",
                    "description": "n: Bad_Abluft, r: badezimmer",
                    "friendlyName": "abluft",
                    "displayCategories": ["SWITCH"],
                    "additionalAttributes": {
                        "manufacturer": "FHEM",
                        "model": "HM-LC-SW1PBU-FM"
                    },
                    "capabilities": [{
                            "type": "AlexaInterface",
                            "interface": "Alexa",
                            "version": "3"
                        }, {
                            "type": "AlexaInterface",
                            "interface": "Alexa.PowerController",
                            "version": "3",
                            "properties": {
                                "supported": [{
                                        "name": "powerState"
                                    }
                                ],
                                "proactivelyReported": false,
                                "retrievable": true
                            }
                        }
                    ],
                    "cookie": {
                        "device": "Bad_Abluft",
                        "fuuid": "61facf8a-f33f-7b17-d60e-9999999999999999"
                    }
                }
            ],
            "scope": {
                "type": "BearerToken",
                "token": "access-token-from-Amazon"
            }
        }
    }
}

Turn-On-Directive, Response, StateReport
{
    "directive": {
        "header": {
            "messageId": "7ec4ed33-5f3f-44ce-99e9-55ab6d4f55ba",
            "namespace": "Alexa.PowerController",
            "name": "TurnOn",
            "payloadVersion": "3",
            "correlationToken": "-"
        },
        "endpoint": {
            "scope": {
                "type": "BearerToken",
                "token": "XXXXXXXX-XXXXXXXXXXXXXXXX"
            },
            "endpointId": "SEQ2044590",
            "cookie": {
                "device": "Bad_Abluft",
                "fuuid": "61facf8a-f33f-7b17-9999999999999999"
            }
        },
        "payload": {}
    }
}


{
    "context": {
        "properties": [{
                "namespace": "Alexa.PowerController",
                "name": "powerState",
                "value": "ON",
                "timeOfSample": "2025-05-30T16:20:59.379Z",
                "uncertaintyInMilliseconds": 500
            }
        ]
    },
    "event": {
        "header": {
            "namespace": "Alexa",
            "name": "Response",
            "payloadVersion": "3",
            "messageId": "a19c48ab-a210-4a43-9c55-9f7756a6b5de",
            "correlationToken": "-"
        },
        "endpoint": {
            "scope": {
                "type": "BearerToken",
                "token": "XXXXXXXX-XXXXXXXXXXXXXXXX"
            },
            "endpointId": "SEQ2044590"
        },
        "payload": {}
    }
}


{
    "context": {
        "properties": [{
                "namespace": "Alexa.PowerController",
                "name": "powerState",
                "value": "OFF",
                "timeOfSample": "2025-05-30T16:21:03.816Z",
                "uncertaintyInMilliseconds": 500
            }
        ]
    },
    "event": {
        "header": {
            "namespace": "Alexa",
            "name": "StateReport",
            "payloadVersion": "3",
            "messageId": "c232ce8b-fd04-4f90-8993-b6ea8c151db1",
            "correlationToken": "-"
        },
        "endpoint": {
            "scope": {
                "type": "BearerToken",
                "token": "8A121735-D634001DB46223EE"
            },
            "endpointId": "SEQ2044590"
        },
        "payload": {}
    }
}