Modul 48_SST zum Einbinden von Samsung SmartThings

Begonnen von pasp, 25 August 2020, 19:39:47

Vorheriges Thema - Nächstes Thema

pasp

#90
Neue Version 0.7.19

Bereinigte Bugs:

  • Zeitstempelberchnung
  • Logging von Einheiten ohne Werte
  • Erkennung von Optionen für die setList
  • Fehlender Ausschluß von deaktivierten Capabilities
  • diverse Fehler in der Dokumentation

Änderungen:

  • Neues Attribut readings_map eingeführt
    Die tatsächlichen Werte (z.B. on) können so sowohl für die Anzeige des Readings, als auch für den set Befehl übersetzt werden (z.B. an oder aktiv oder eingeschaltet).
    Achtung: die Werte dürfen keine Leerzeichen enthalten!
    Beispiele:
switch:on=eingeschaltet,off=ausgeschaltet
washerCycle:1B=Baumwolle_60

    Auf längere Sicht sollen hier das Mapping zwischen zu setzenden und anzugeigenden Werten stattfinden.[/li]
  • Dokumentation aktualisiert

Wie immer: bitte testen und hoffentlich Erfolg vermelden ;D
FHEM auf RPi 4
Eingesetzte Systeme: MQTT2, Shelly, HUE, FritzBox, Synology, WifiLight
Verwaltete Module: SST

felskrone

#91
Hallo PASP,


ich habe heute mein FHEM geupdated und nach einem "Shutdown Restart" sowohl "get Status" als auch "get x_Options" ausgeführt.
Die Setlist wurde wie beschrieben geändert auf


switch:on,off



       
  • set TheFrame switch on
  • set TheFrame switch off
funktionieren beide. Das ist ja schonmal super.
Leider löst das noch nicht meinen größten Traum, gezielt zwischen

       
  • on
  • Bilderrahmen
  • off
um zu schalten.


Aber es wird immer besser! Danke dafür.


Gruß, fk
___________________________
FHEM 5.8 auf Raspi 1B und HMLAN

Firetic

Nabend 😊
Das Update ist eingespielt und die ungewollten
Log Meldungen sind verschwunden...

Die Zeitstempel muss ich mir nochmal bei der nächsten Wäsche angucken.
Auf jeden Fall schonmal vielen Dank

pasp

Erstmal danke fürs Testen.

Zitat von: felskrone am 21 Oktober 2020, 18:02:48
Leider löst das noch nicht meinen größten Traum, gezielt zwischen

       
  • on
  • Bilderrahmen
  • off
um zu schalten.
Ich vermute, daß das nicht über (den selben) switch geht...
Schick mir doch bitte mal die Ausgabe von
set TheFrame verbose 5
get TheFrame status

Und danach wieder
set TheFrame verbose 3
ausführen nicht vergessen!

Ich finde auch
Zitat von: felskrone am 21 Oktober 2020, 18:02:48switch:on,off
etwas dürftig, da hätte ich deutlich mehr erwartet. :o
FHEM auf RPi 4
Eingesetzte Systeme: MQTT2, Shelly, HUE, FritzBox, Synology, WifiLight
Verwaltete Module: SST

felskrone

gerne:






$VAR1 = {
  "components" => {
    "main" => {
      "audioMute" => {
        "mute" => {
          "timestamp" => "1970-01-19T06:32:34.515+0000",
          "value" => "unmuted"
        }
      },
      "audioVolume" => {
        "volume" => {
          "timestamp" => "1970-01-19T06:32:34.515+0000",
          "unit" => "%",
          "value" => 17
        }
      },
      "custom.accessibility" => {},
      "custom.error" => {
        "error" => {
          "timestamp" => "2020-06-02T17:17:30.961+0000",
          "value" => undef
        }
      },
      "custom.launchapp" => {},
      "custom.picturemode" => {
        "pictureMode" => {
          "timestamp" => "2019-11-02T22:04:16.350+0000",
          "value" => "HDR+"
        },
        "supportedPictureModes" => {
          "timestamp" => "2019-11-02T22:04:16.360+0000",
          "value" => [
            "HDR+"
          ]
        },
        "supportedPictureModesMap" => {
          "timestamp" => "2020-08-26T16:01:17.368+0000",
          "value" => undef
        }
      },
      "custom.recording" => {},
      "custom.soundmode" => {
        "soundMode" => {
          "timestamp" => "2019-11-02T22:04:16.549+0000",
          "value" => "Standard"
        },
        "supportedSoundModes" => {
          "timestamp" => "1970-01-19T06:32:34.515+0000",
          "value" => [
            "Standard",
            "Optimiert",
            "Verst\x{e4}rken"
          ]
        },
        "supportedSoundModesMap" => {
          "timestamp" => "2020-08-26T10:32:37.307+0000",
          "value" => undef
        }
      },
      "custom.tvsearch" => {},
      "execute" => {
        "data" => {
          "data" => {},
          "timestamp" => "2020-06-03T04:01:04.731+0000",
          "value" => undef
        }
      },
      "mediaInputSource" => {
        "inputSource" => {
          "timestamp" => "2020-07-11T17:51:21.206+0000",
          "value" => "HDMI4"
        },
        "supportedInputSources" => {
          "timestamp" => "1970-01-19T07:24:12.509+0000",
          "value" => [
            "digitalTv",
            "HDMI4"
          ]
        }
      },
      "mediaPlayback" => {
        "playbackStatus" => {
          "timestamp" => "2020-06-03T04:01:04.892+0000",
          "value" => undef
        },
        "supportedPlaybackCommands" => {
          "timestamp" => "1970-01-19T06:32:34.513+0000",
          "value" => [
            "play",
            "pause",
            "stop",
            "fastForward",
            "rewind"
          ]
        }
      },
      "mediaTrackControl" => {
        "supportedTrackControlCommands" => {
          "timestamp" => "2020-06-02T17:17:30.693+0000",
          "value" => undef
        }
      },
      "ocf" => {
        "di" => {
          "timestamp" => "2019-10-06T14:12:18.224+0000",
          "value" => "7052f469-4f5b-4975-9728-689a977cc472"
        },
        "dmv" => {
          "timestamp" => "2019-10-06T14:12:18.254+0000",
          "value" => "res.1.1.0,sh.1.1.0"
        },
        "icv" => {
          "timestamp" => "2019-10-06T14:12:18.211+0000",
          "value" => "core.1.1.0"
        },
        "mndt" => {
          "timestamp" => "2019-10-06T14:12:18.111+0000",
          "value" => "2018-01-01"
        },
        "mnfv" => {
          "timestamp" => "2020-04-28T20:25:37.372+0000",
          "value" => "T-KTM2DEUC-1290.4"
        },
        "mnhw" => {
          "timestamp" => "2019-10-06T14:12:18.251+0000",
          "value" => "0-0"
        },
        "mnml" => {
          "timestamp" => "2019-10-06T14:12:18.209+0000",
          "value" => "http://www.samsung.com"
        },
        "mnmn" => {
          "timestamp" => "2019-10-06T14:12:18.145+0000",
          "value" => "Samsung Electronics"
        },
        "mnmo" => {
          "timestamp" => "2019-10-06T14:12:18.133+0000",
          "value" => "UE65LS03N"
        },
        "mnos" => {
          "timestamp" => "2019-10-06T14:12:18.156+0000",
          "value" => "4.1.10"
        },
        "mnpv" => {
          "timestamp" => "2019-10-06T14:12:18.167+0000",
          "value" => "Tizen 4.0"
        },
        "mnsl" => {
          "timestamp" => "2019-10-06T14:12:18.121+0000",
          "value" => "http://www.samsung.com/sec/tv/overview/"
        },
        "n" => {
          "timestamp" => "2019-10-06T14:12:18.239+0000",
          "value" => "[TV] Samsung Frame Series (65)"
        },
        "pi" => {
          "timestamp" => "2019-10-06T14:12:18.221+0000",
          "value" => "7052f469-4f5b-4975-9728-689a977cc472"
        },
        "st" => {
          "timestamp" => "2019-12-08T12:51:04.978+0000",
          "value" => "2019-12-08T13:44:07Z"
        },
        "vid" => {
          "timestamp" => "2019-10-06T14:12:18.235+0000",
          "value" => "VD-STV_2018_K"
        }
      },
      "refresh" => {},
      "samsungtv.firmwareVersion" => {
        "firmwareVersion" => {
          "timestamp" => "2020-09-15T17:49:51.944+0000",
          "value" => "2.4.0"
        }
      },
      "samsungtv.supportsPowerOnByOcf" => {
        "supportsPowerOnByOcf" => {
          "timestamp" => "2020-01-12T13:24:18.880+0000",
          "value" => "true"
        }
      },
      "switch" => {
        "switch" => {
          "timestamp" => "2020-10-22T20:49:26.865+0000",
          "value" => "off"
        }
      },
      "tvChannel" => {
        "tvChannel" => {
          "timestamp" => "2020-04-28T20:59:40.367+0000",
          "value" => ""
        },
        "tvChannelName" => {
          "timestamp" => "2020-05-02T21:40:43.681+0000",
          "value" => "art"
        }
      }
    }
  }
};


___________________________
FHEM 5.8 auf Raspi 1B und HMLAN

dogexan

Hallo pasp,

hier meine Erkenntnisse nach Update auf Version 0.7.19:

Die Zeitstempelberechnung scheint nun korrekt zu sein :D Habs zwar noch keinen Waschgang gestartet gehabt, aber der forecast "completionTime" passt nun schon mal.

get status ergibt folgendendes:
{
  "components" => {
    "main" => {
      "custom.disabledCapabilities" => {
        "disabledCapabilities" => {
          "timestamp" => "2020-10-16T10:00:39.823+0000",
          "value" => [
            "samsungce.softenerOrder",
            "samsungce.softenerState"
          ]
        }
      },
      "custom.jobBeginningStatus" => {
        "jobBeginningStatus" => {
          "timestamp" => "2020-10-16T10:00:39.276+0000",
          "value" => "None"
        }
      },
      "custom.supportedOptions" => {
        "supportedCourses" => {
          "timestamp" => "2020-10-16T10:06:38.723+0000",
          "value" => [
            "1C",
            "1B",
            "1E",
            "1D",
            "1F",
            25,
            26,
            33,
            24,
            32,
            20,
            22,
            23,
            "2F",
            21,
            "2A",
            "2E",
            "2D",
            30,
            27,
            28,
            29
          ]
        }
      },
      "custom.washerAutoDetergent" => {
        "washerAutoDetergent" => {
          "timestamp" => "2020-10-16T10:00:41.043+0000",
          "value" => undef
        }
      },
      "custom.washerAutoSoftener" => {
        "washerAutoSoftener" => {
          "timestamp" => "2020-10-16T11:23:21.740+0000",
          "value" => undef
        }
      },
      "custom.washerRinseCycles" => {
        "supportedWasherRinseCycles" => {
          "timestamp" => "2020-10-16T10:00:38.159+0000",
          "value" => [
            0,
            1,
            2,
            3,
            4,
            5
          ]
        },
        "washerRinseCycles" => {
          "timestamp" => "2020-10-22T08:09:18.252+0000",
          "value" => 2
        }
      },
      "custom.washerSoilLevel" => {
        "supportedWasherSoilLevel" => {
          "timestamp" => "2020-10-16T11:43:21.752+0000",
          "value" => undef
        },
        "washerSoilLevel" => {
          "timestamp" => "2020-10-16T11:43:21.752+0000",
          "value" => undef
        }
      },
      "custom.washerSpinLevel" => {
        "supportedWasherSpinLevel" => {
          "timestamp" => "2020-10-16T10:00:38.159+0000",
          "value" => [
            "rinseHold",
            "noSpin",
            400,
            800,
            1000,
            1200,
            1400
          ]
        },
        "washerSpinLevel" => {
          "timestamp" => "2020-10-23T10:24:33.038+0000",
          "value" => 1400
        }
      },
      "custom.washerWaterTemperature" => {
        "supportedWasherWaterTemperature" => {
          "timestamp" => "2020-10-16T10:00:38.159+0000",
          "value" => [
            "none",
            "cold",
            20,
            30,
            40,
            60,
            90
          ]
        },
        "washerWaterTemperature" => {
          "timestamp" => "2020-10-22T08:09:18.251+0000",
          "value" => 40
        }
      },
      "execute" => {
        "data" => {
          "data" => {
            "href" => "/realtimenotiforclient/vs/0"
          },
          "timestamp" => "2020-10-23T10:26:22.029+0000",
          "value" => {
            "payload" => {
              "if" => [
                "oic.if.baseline",
                "oic.if.a"
              ],
              "rt" => [
                "x.com.samsung.da.realtimenotiforclient"
              ],
              "x.com.samsung.da.periodicnotisubscription" => "true",
              "x.com.samsung.da.timeforshortnoti" => 0
            }
          }
        }
      },
      "ocf" => {
        "di" => {
          "timestamp" => "2020-10-16T10:00:38.122+0000",
          "value" => "234be440-ec75-6963-ade7-a735231781a1"
        },
        "dmv" => {
          "timestamp" => "2020-10-16T10:00:38.122+0000",
          "value" => "res.1.1.0,sh.1.1.0"
        },
        "icv" => {
          "timestamp" => "2020-10-16T10:00:38.122+0000",
          "value" => "core.1.1.0"
        },
        "mndt" => {
          "timestamp" => "2020-10-16T11:18:37.800+0000",
          "value" => undef
        },
        "mnfv" => {
          "timestamp" => "2020-10-16T10:00:38.122+0000",
          "value" => "0.1.0"
        },
        "mnhw" => {
          "timestamp" => "2020-10-16T10:00:38.122+0000",
          "value" => "1.0"
        },
        "mnml" => {
          "timestamp" => "2020-10-16T10:00:38.122+0000",
          "value" => "http://www.samsung.com"
        },
        "mnmn" => {
          "timestamp" => "2020-10-16T10:00:38.122+0000",
          "value" => "Samsung Electronics"
        },
        "mnmo" => {
          "timestamp" => "2020-10-16T10:00:38.122+0000",
          "value" => "TP2X_WM_COM_19K|20260041|200101020014113502A3020700000000"
        },
        "mnos" => {
          "timestamp" => "2020-10-16T10:00:38.122+0000",
          "value" => "TizenRT2.0"
        },
        "mnpv" => {
          "timestamp" => "2020-10-16T10:00:38.122+0000",
          "value" => "0.1.0"
        },
        "mnsl" => {
          "timestamp" => "2020-10-16T10:00:46.810+0000",
          "value" => undef
        },
        "n" => {
          "timestamp" => "2020-10-16T10:00:38.122+0000",
          "value" => "[washer] Samsung"
        },
        "pi" => {
          "timestamp" => "2020-10-16T10:00:38.122+0000",
          "value" => "234be440-ec75-6963-ade7-a735231781a1"
        },
        "st" => {
          "timestamp" => "2020-10-16T11:19:03.306+0000",
          "value" => undef
        },
        "vid" => {
          "timestamp" => "2020-10-16T10:00:38.122+0000",
          "value" => "DA-WM-WM-000001"
        }
      },
      "powerConsumptionReport" => {
        "powerConsumption" => {
          "timestamp" => "2020-10-23T10:11:59.082+0000",
          "value" => {
            "deltaEnergy" => 0,
            "end" => "2020-10-23T10:11:59Z",
            "energy" => 5000,
            "energySaved" => 0,
            "persistedEnergy" => 0,
            "power" => 0,
            "powerEnergy" => 0,
            "start" => "2020-10-23T10:03:15Z"
          }
        }
      },
      "refresh" => {},
      "remoteControlStatus" => {
        "remoteControlEnabled" => {
          "timestamp" => "2020-10-23T10:14:28.976+0000",
          "value" => "false"
        }
      },
      "samsungce.autoDispenseDetergent" => {
        "amount" => {
          "timestamp" => "2020-10-16T11:33:21.761+0000",
          "value" => undef
        },
        "density" => {
          "timestamp" => "2020-10-16T11:33:21.761+0000",
          "value" => undef
        },
        "supportedAmount" => {
          "timestamp" => "2020-10-16T11:33:21.761+0000",
          "value" => undef
        },
        "supportedDensity" => {
          "timestamp" => "2020-10-16T11:33:21.761+0000",
          "value" => undef
        }
      },
      "samsungce.autoDispenseSoftener" => {
        "amount" => {
          "timestamp" => "2020-10-16T11:38:21.801+0000",
          "value" => undef
        },
        "density" => {
          "timestamp" => "2020-10-16T11:38:21.801+0000",
          "value" => undef
        },
        "supportedAmount" => {
          "timestamp" => "2020-10-16T11:38:21.801+0000",
          "value" => undef
        },
        "supportedDensity" => {
          "timestamp" => "2020-10-16T11:38:21.801+0000",
          "value" => undef
        }
      },
      "samsungce.detergentOrder" => {
        "alarmEnabled" => {
          "timestamp" => "2020-10-16T10:00:38.355+0000",
          "value" => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' )
        },
        "orderThreshold" => {
          "timestamp" => "2020-10-16T10:00:38.355+0000",
          "unit" => "cc",
          "value" => 0
        }
      },
      "samsungce.detergentState" => {
        "detergentType" => {
          "timestamp" => "2020-10-16T10:03:42.244+0000",
          "value" => undef
        },
        "dosage" => {
          "timestamp" => "2020-10-16T10:00:38.355+0000",
          "unit" => "cc",
          "value" => 0
        },
        "initialAmount" => {
          "timestamp" => "2020-10-16T10:00:38.355+0000",
          "unit" => "cc",
          "value" => 0
        },
        "remainingAmount" => {
          "timestamp" => "2020-10-16T10:00:38.355+0000",
          "unit" => "cc",
          "value" => 0
        }
      },
      "samsungce.driverVersion" => {
        "versionNumber" => {
          "timestamp" => "2020-10-16T10:00:38.159+0000",
          "value" => 20092501
        }
      },
      "samsungce.kidsLock" => {
        "lockState" => {
          "timestamp" => "2020-10-16T10:00:39.274+0000",
          "value" => "unlocked"
        }
      },
      "samsungce.softenerOrder" => {
        "alarmEnabled" => {
          "timestamp" => "2020-10-16T10:06:38.723+0000",
          "value" => $VAR1->{"components"}{"main"}{"samsungce.detergentOrder"}{"alarmEnabled"}{"value"}
        },
        "orderThreshold" => {
          "timestamp" => "2020-10-16T10:06:38.723+0000",
          "unit" => "cc",
          "value" => 0
        }
      },
      "samsungce.softenerState" => {
        "dosage" => {
          "timestamp" => "2020-10-16T10:06:38.723+0000",
          "unit" => "cc",
          "value" => 0
        },
        "initialAmount" => {
          "timestamp" => "2020-10-16T10:06:38.723+0000",
          "unit" => "cc",
          "value" => 0
        },
        "remainingAmount" => {
          "timestamp" => "2020-10-16T10:06:38.723+0000",
          "unit" => "cc",
          "value" => 0
        },
        "softenerType" => {
          "timestamp" => "2020-10-16T10:06:38.723+0000",
          "value" => "unknown"
        }
      },
      "samsungce.washerCycle" => {
        "washerCycle" => {
          "timestamp" => "2020-10-22T09:15:47.364+0000",
          "value" => "Table_02_Course_1C"
        }
      },
      "switch" => {
        "switch" => {
          "timestamp" => "2020-10-23T10:24:33.050+0000",
          "value" => "off"
        }
      },
      "washerOperatingState" => {
        "completionTime" => {
          "timestamp" => "2020-10-23T10:24:33.107+0000",
          "value" => "2020-10-23T13:02:33Z"
        },
        "machineState" => {
          "timestamp" => "2020-10-22T09:15:47.356+0000",
          "value" => "stop"
        },
        "supportedMachineStates" => {
          "timestamp" => "2020-10-16T11:28:21.738+0000",
          "value" => undef
        },
        "washerJobState" => {
          "timestamp" => "2020-10-22T09:15:47.566+0000",
          "value" => "none"
        }
      }
    }
  }
}


Die Erkennung von Optionen für die setList funktioniert nicht automatisch. Es wird nur switch:on,off (ich glaube mit switch kann man bei ner Waschmaschine nichts anfangen) angelegt und die manuell hinzugefügten Werte überschrieben.

Hier die Werte von setList_hint:


main_custom.washerRinseCycles:0,1,2,3,4,5
main_custom.supportedOptions:1C,1B,1E,1D,1F,25,26,33,24,32,20,22,23,2F,21,2A,2E,2D,30,27,28,29
main_custom.washerSpinLevel:rinseHold,noSpin,400,800,1000,1200,1400
main_custom.washerWaterTemperature:none,cold,20,30,40,60,90


Ich habe die Werte dann wieder manuell unter setList eingetragen.

Die Befehle tauschen dann zwar unter "set" auf, aber es lässt sich nichts an die Waschmaschine schicken.

Folgenden Befehl habe ich abgesetzt:
set Waschmaschine main_custom.washerSpinLevel 1200

Folgende Fehlermeldung erscheint:
Could not identify internal name for value main_custom.washerSpinLevel!

Das gilt auch für die anderen Optionen.


Generell möchte ich dazu folgendes erwähnen:

Ich vergleich das nun mal mit der Samsung SmartThings App.

Ist der Fernstart der Waschmaschine deaktiviert (in FHEM das reading remoteControlEnabled false bzw. true) werden die Optionen wie Schleudern, Temperatur, Spülgänge oder halt das entsprechende Waschprogramm mit dem Button "An Waschmaschine senden" übermittelt. Die Eingestellten Optionen werden auf der Waschmaschine angezeigt/eingestellt. Starten muss man dann noch selber vor Ort.

Anders verhält sich das ganze, wenn der Fernstart aktiviert ist.
Hier müssen alle gewünschten Optionen in der App ausgewählt werden, danach auf den Button "Start" drücken und Waschmaschine beginnt mit ihrem Waschprogramm. Den Button "An Waschmaschine senden" gibt es dort nicht mehr.

Worauf ich hinaus will ist, dass man bei der nicht Fernstartvariante noch theoretisch jede einzelne Option via "set" an die Waschmaschine senden kann, aber bei der Fernstartvariante das ganze zwangläufig gesammelt übergeben werden muss.


Wenn ich eine Liste zusammen habe, zwecks der Übersetzung der Waschprogramme, werde ich es dich hier wissen lassen. Wie du schon sagtest, hoffentlich sind Angaben bei allen Waschmaschinen gleich. :o

Gruß Alex

Firetic

Ich habe  mal meine Waschprogramme zusammengestellt - so wie ich das verstehe wird da nicht die Gradzahl oder ähnliches mit verschlüsselt... Bin mir natürlich nicht sicher und lasse mich da gerne eines Besseren belehren ;-)

washerCycle:Table_00_Course_5B=Baumwolle,Table_00_Course_65=Wolle,Table_00_Course_5C=Schnelle_Wäsche,Table_00_Course_63=Trommelreinigung,Table_00_Course_67=Synthetik

Gruß Firetic

pasp

Zitat von: Firetic am 23 Oktober 2020, 13:33:04
Ich habe  mal meine Waschprogramme zusammengestellt - so wie ich das verstehe wird da nicht die Gradzahl oder ähnliches mit verschlüsselt... Bin mir natürlich nicht sicher und lasse mich da gerne eines Besseren belehren ;-)

washerCycle:Table_00_Course_5B=Baumwolle,Table_00_Course_65=Wolle,Table_00_Course_5C=Schnelle_Wäsche,Table_00_Course_63=Trommelreinigung,Table_00_Course_67=Synthetik
Habe das so jetzt erstmal als default definiert (ist aber noch nicht veröffentlicht).

Zitat von: dogexan am 23 Oktober 2020, 13:10:18
Wenn ich eine Liste zusammen habe, zwecks der Übersetzung der Waschprogramme, werde ich es dich hier wissen lassen. Wie du schon sagtest, hoffentlich sind Angaben bei allen Waschmaschinen gleich. :o
Passen denn die, die Firetic geschickt hat?

Zitat von: dogexan am 23 Oktober 2020, 13:10:18
Die Erkennung von Optionen für die setList funktioniert nicht automatisch. Es wird nur switch:on,off (ich glaube mit switch kann man bei ner Waschmaschine nichts anfangen) angelegt und die manuell hinzugefügten Werte überschrieben.
On/off ist in der Tat etwas dürftig :(

Zitat von: dogexan am 23 Oktober 2020, 13:10:18
Hier die Werte von setList_hint:


main_custom.washerRinseCycles:0,1,2,3,4,5
main_custom.supportedOptions:1C,1B,1E,1D,1F,25,26,33,24,32,20,22,23,2F,21,2A,2E,2D,30,27,28,29
main_custom.washerSpinLevel:rinseHold,noSpin,400,800,1000,1200,1400
main_custom.washerWaterTemperature:none,cold,20,30,40,60,90


Ich habe die Werte dann wieder manuell unter setList eingetragen.

Die Befehle tauschen dann zwar unter "set" auf, aber es lässt sich nichts an die Waschmaschine schicken.

Folgenden Befehl habe ich abgesetzt:
set Waschmaschine main_custom.washerSpinLevel 1200

Folgende Fehlermeldung erscheint:
Could not identify internal name for value main_custom.washerSpinLevel!
Ich denke das main_custom. ist zuviel, probier doch bitte mal
set Waschmaschine washerSpinLevel 1200
set Waschmaschine washerWaterTemerature 40
...


Zitat von: dogexan am 23 Oktober 2020, 13:10:18
Generell möchte ich dazu folgendes erwähnen:

Ich vergleich das nun mal mit der Samsung SmartThings App.
...
Das stelle ich jetzt erstmal hintan.
FHEM auf RPi 4
Eingesetzte Systeme: MQTT2, Shelly, HUE, FritzBox, Synology, WifiLight
Verwaltete Module: SST

pasp

Zitat von: felskrone am 23 Oktober 2020, 10:16:17gerne:
...
Kannst Du mir das vielleicht nochmal 3 mal schicken (am Besten als PM)?

  • einmal, während der Fernseher aus ist,
  • einmal, während der Fernseher an ist (ggf. mit Programmname),
  • einmal, während der Fernseher auf Bilderrahmen eingestellt ist
Da muß ich mal die Unterschiede untersuchen.
FHEM auf RPi 4
Eingesetzte Systeme: MQTT2, Shelly, HUE, FritzBox, Synology, WifiLight
Verwaltete Module: SST

dogexan

Zitat von: pasp am 23 Oktober 2020, 20:22:08
Ich denke das main_custom. ist zuviel, probier doch bitte mal

set Waschmaschine washerSpinLevel 1200
set Waschmaschine washerWaterTemerature 40
...


Mit set Waschmaschine washerSpinLever 1200 kommt folgende Meldung:
Command failed:
ConstraintViolationError: The request is malformed.
Command has results:
{"commands":[{"component":"main",
"command":"setWasherSpinLevel",
"arguments":[1000],
"capability":"custom.washerSpinLevel"}]}
{"requestId":"0BF31297-CB15-4B5F-BBB4-42FC585D3778",
"error":{"code":"ConstraintViolationError",
"message":"The request is malformed.",
"details":[{"code":"UnprocessableEntityError",
"target":"commands[0].arguments[0]",
"message":"commands[0].arguments[0]: integer found,
string expected",
"details":[]},
{"code":"UnprocessableEntityError",
"target":"commands[0].arguments[0]",
"message":"commands[0].arguments[0]: does not have a value in the enumeration [none,
rinseHold,
noSpin,
low,
delicate,
medium,
high,
extraHigh,
200,
400,
600,
800,
1000,
1200,
1400,
1600]",
"details":[]}]}}


und bei set Waschmaschine washerWaterTemperature 40:

Command failed:
ConstraintViolationError: The request is malformed.
Command has results:
{"commands":[{"arguments":[40],
"command":"setWasherWaterTemperature",
"component":"main",
"capability":"custom.washerWaterTemperature"}]}
{"requestId":"9F532D7C-8405-482F-BA0A-A4E88F6E1259",
"error":{"code":"ConstraintViolationError",
"message":"The request is malformed.",
"details":[{"code":"UnprocessableEntityError",
"target":"commands[0].arguments[0]",
"message":"commands[0].arguments[0]: integer found,
string expected",
"details":[]},
{"code":"UnprocessableEntityError",
"target":"commands[0].arguments[0]",
"message":"commands[0].arguments[0]: does not have a value in the enumeration [none,
20,
30,
40,
50,
60,
65,
70,
75,
80,
90,
95,
tapCold,
cold,
ecoWarm,
warm,
semiHot,
hot,
extraHot,
extraLow,
low,
mediumLow,
medium,
high]",
"details":[]}]}}




Ansonsten hier meine vollständige washerCycle Tabelle. Wie Firetec schon sagte werden die Gradzahlen oder die Schleuderumdrehungen nicht mit verschlüsselt.

Beschriftung:

Waschmaschine - App - FHEM
ECO 40-60 - Öko 40-60 - Table_02_Course_1C
Baumwolle - Baumwolle - Table_02_Course_1B
Schnelle Wäsche 15' - Schnelle Wäsche - Table_02_Course_1E
SuperSpeed - Super Speed - Table_02_Course_1D
Kaltwäsche Intensiv - Intensiv kalt - Table_02_Course_1F
Pflegeleicht - Pflegeleichtes - Table_02_Course_25
Feinwäsche - Feinwäsche - Table_02_Course_26
Handtücher - Handtücher - Table_02_Course_33
XXL-Wäsche - XXL-Wäsche - Table_02_Course_24
Hemden - Hemden - Table_02_Course_32
Hygiene-Dampf - Dampfprogramm mit Desinfektion - Table_02_Course_20
Wolle - Wolle - Table_02_Course_22
Outdoor - Outdoor - Table_02_Course_23
Sportkleidung - Aktivbekleidung - Table_02_Course_2F
Buntwäsche - Farbe - Table_02_Course_21
Jeans - Jeans - Table_02_Course_2A
Baby Care Intensiv - Intensiv - Table_02_Course_2E
Super Leise - Leisewaschen - Table_02_Course_2D
Bewölkter Tag - Wolkentag - Table_02_Course_30
Spülen+Schleudern - Spülen+Schleudern - Table_02_Course_27
Abpumpen+Schleudern - Abpumpen/Schleudern - Table_02_Course_28
Trommelreinigung+ - Trommelreinigung - Table_02_Course_29


Gruß Alex

reinhard@seven-up.at

#100
Zitat von: pasp am 27 September 2020, 13:08:21
Da bin ich überfragt, weil ich nicht weiß, wie sich FHEM als Plugin verhält.
Ist das ein komplettes Standard-FHEM oder wurde da was angepaßt?  ???
Sollte der normale Installationsverlauf nicht funktioniert, lade Dir doch mal das 48_SST.pm von Github runter und legs manuell in das FHEM Verzeichnis, in dem auch die ganzen anderen *.pm Dateien liegen (ggf. einfach mal nach z.B. 00_MQTT.pm suchen). Spätestens nach 'nem Neustart von FHEM sollte es dann eigentlich funktionieren.  :)

Interessant wäre das auf jeden Fall  :D

Hallo PASP,
FHEM auf Loxberry dürfte ein komplettes Standard FHEM. Sehe meine Splitanlage und meinen Fernseher und kann Befehle senden.
Jetzt versuche ich dass ganze über MQTT auf meinen Miniserver von Loxone zu senden. Da ich kein Programmierer bin und Null Ahnung von FHEM habe, bedanke ich mich für die gute Beschreibung von Dir in diesem Forum.

reinhard@seven-up.at

Wie finde ich die Befehle heraus, die FHEM sendet, damit die Klimaanlage eingeschaltet wird?
Ich muss diesen Befehl über UDP an MQTT schicken.

pasp

Thema SVG Graphiken

Was bisher geschah:

Zitat von: poiuztr123 am 23 Oktober 2020, 17:11:18
Eine Frage: Wie kann ich die neue Icons auswählen. Wenn ich über die fhem Oberfläche gehe und Samsung in der Iconsuche eingebe, kommt kein icon. Muss ich etwas manuell laden oder aktualisieren?

Zitat von: pasp am 23 Oktober 2020, 20:48:33
Eigentlich sollte das über git mit installiert werden.
Wie sieht denn Dein iconPath in FhemWEB aus? Da sollte
...:fhemSVG:...
drin vorkommen, weil meine Icons SVGs sind.

Zitat von: poiuztr123 am 24 Oktober 2020, 16:53:42
Danke für den Tip. Ich hatte garkein IconPath in WEB drin. Nachdem ich ihn gesetzt hatte, kam trotzdem nichts. Ich habe dann in /opt/fhem/www/images/fhemSVG und keine Samsung* Icons gefunden. Mache ich was falsch? Wie kann er die Icons da automatisch hin kopieren? udpate SST nach dem Pfad setzen und shutdown restart hat nicht geholfen.

Ich habe mal nachgesehen, ob das ein allgemeines Problem ist, und ich die Dateien vielleicht nur sehe, weil ich sie mir manuell dorthin kopiert habe.
Im entsprechenden Log tauchen allerdings keine Fehlermeldungen auf:
fhem@raspberrypi:~/log (0)$ grep -C1 fhemSVG/samsung $( grep -l fhemSVG/samsung_ac.svg fhem-2020-1?-??.log | tail -1 )
2020.10.03 23:30:00 1: UPD FHEM/48_SST.pm
2020.10.03 23:30:01 1: UPD www/images/fhemSVG/samsung_tv.svg
2020.10.03 23:30:01 1: UPD www/images/fhemSVG/samsung_ac.svg
2020.10.03 23:30:01 1: UPD www/images/fhemSVG/samsung_smartthings_house.svg
2020.10.03 23:30:01 1: UPD www/images/fhemSVG/samsung_smartthings_cloud.svg
2020.10.03 23:30:01 1: UPD www/images/fhemSVG/samsung_sidebyside.svg
2020.10.03 23:30:02 1: UPD www/images/fhemSVG/samsung_smartthings.svg
2020.10.03 23:30:02 1: UPD www/images/fhemSVG/samsung_smartthings_house2.svg
2020.10.03 23:30:02 1: UPD www/images/fhemSVG/samsung_tv_curved.svg
2020.10.03 23:30:02 1: saving fhem.cfg
fhem@raspberrypi:~/log (0)$


Und auch die Zeitstempel der Dateien selbst scheint auf keinen Fehler hinzuweisen:
pasp@raspberrypi:~ (0)$ ll ~fhem/www/images/fhemSVG/samsung*
-rw-r--r-- 1 fhem dialout 8989 2020-10-03 23:30 /opt/fhem/www/images/fhemSVG/samsung_ac.svg
-rw-r--r-- 1 fhem dialout 7959 2020-10-03 23:30 /opt/fhem/www/images/fhemSVG/samsung_sidebyside.svg
-rw-r--r-- 1 fhem dialout 5655 2020-10-03 23:30 /opt/fhem/www/images/fhemSVG/samsung_smartthings.svg
-rw-r--r-- 1 fhem dialout 6816 2020-10-03 23:30 /opt/fhem/www/images/fhemSVG/samsung_smartthings_cloud.svg
-rw-r--r-- 1 fhem dialout 6318 2020-10-03 23:30 /opt/fhem/www/images/fhemSVG/samsung_smartthings_house.svg
-rw-r--r-- 1 fhem dialout 6697 2020-10-03 23:30 /opt/fhem/www/images/fhemSVG/samsung_smartthings_house2.svg
-rw-r--r-- 1 fhem dialout 4744 2020-10-03 23:30 /opt/fhem/www/images/fhemSVG/samsung_tv.svg
-rw-r--r-- 1 fhem dialout 4051 2020-10-03 23:30 /opt/fhem/www/images/fhemSVG/samsung_tv_curved.svg
pasp@raspberrypi:~ (0)$


@poiuztr123: Kannst Du bitte mal in Deinen Logs nachsehen, ob da Fehler auftauchen?

@all: Hat das Problem sonst noch jemand?
FHEM auf RPi 4
Eingesetzte Systeme: MQTT2, Shelly, HUE, FritzBox, Synology, WifiLight
Verwaltete Module: SST

pasp

Zitat von: poiuztr123 am 24 Oktober 2020, 16:53:42
Mir ist ausserdem aufgefallen, dass ich auf einmal Fehlermeldungen im fhem Logfile von der dewpoint funktion hatte, die ich an anderer Stelle verwende.
2020.10.24 16:42:35 1: dewpoint_notify: humidity device Klima_Buero (humidity) invalid: 0

Grund scheint zu sein, dass der Wert humidity auf 0 in den SST devices gesetzt werden, wenn das Gerät ausgeschaltet wird. Alle anderen Werte temperature, coolingsetpoint etc. behalten ihre alten Werte. Gibt es einen Weg, dass das device seinen Wert für humidity behält, wenn das Innengerät ausgeschaltet wird?

Ich bin hier etwas zwiegespalten.

Einerseits sehe ich SST primär als Übermittler von Daten in beide Richtungen:
- Wenn die Cloud Käse liefert, zeigt Fhem dann eben Käse an.
- Wenn man in FHEM Käse einstellt, wird Käse an die Cloud geliefert.

Genau da liegt aber der Hund begraben.

Beim Setzen von z.B. Temperaturen kann ich nicht grundsätzlich feststellen, welche Werte sinnvoll sind (Kühlschrank, Gefrierschrank, Klimaanlage, Waschmaschine, ...), weshalb ich diese Entscheidung der Cloud überlassen muß. In manchen Fällen (Einzelwerte bei Waschmaschinen, Wertebereiche bei Klimaanlagen) bekomme ich hier Datensets aus der Cloud, die ich dann versuchen kann einzubauen. Aber eben nicht immer (Kühlschrank, Gefrierschrank).

Andererseits kann ja über readings_map jeder bekannte Originalwert durch einen relativ beliebigen Text (keine Leerzeichen, keine Kommata, keine Doppelpunkte) ersetzt werden.

Ich fände es aber seltsam, Werte aus der Cloud nur unter bestimmten Bedingungen zu übernehmen. Ich weiß auch nicht, ob man damit mehr Fehler/Irritationen erzeugen, als verhindern würde.

@all: Wie ist Eure Meinung hierzu? ich lasse mich ja gerne überzeugen.

@poiuztr123: Wäre es nicht möglich hier eine Überprüfung in dein dewpoint_notify einzubauen, ob das Gerät zZt überhaupt an/funktionabel ist?
FHEM auf RPi 4
Eingesetzte Systeme: MQTT2, Shelly, HUE, FritzBox, Synology, WifiLight
Verwaltete Module: SST

pasp

#104
Zitat von: reinhard@seven-up.at am 24 Oktober 2020, 22:47:06
Wie finde ich die Befehle heraus, die FHEM sendet, damit die Klimaanlage eingeschaltet wird?
Ich muss diesen Befehl über UDP an MQTT schicken.
Meinst Du die Kommunikation mit der Samsung Cloud?
Das ist ein JSON formatierter Befehl als POST über Websocket.
Wenn du verbose (vom Modul) auf 5 stellst, kannst Du das im Log nachlesen (danach verbose aber wieder auf 3 oder niedriger stellen!):
SST (<FHEM Gerätename>): JSON STRUCT (device set <zu setzendes Reading>):

Oder hab ich da was falsch verstanden?  ???
FHEM auf RPi 4
Eingesetzte Systeme: MQTT2, Shelly, HUE, FritzBox, Synology, WifiLight
Verwaltete Module: SST