Skip to content
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Einsteigerfragen
  4. Einbindung von Geräten
  5. Adapter für Ecoflow Einbindung

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.2k

Adapter für Ecoflow Einbindung

Geplant Angeheftet Gesperrt Verschoben Einbindung von Geräten
212 Beiträge 42 Kommentatoren 61.3k Aufrufe 41 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • FelixCrafter83F Offline
    FelixCrafter83F Offline
    FelixCrafter83
    schrieb am zuletzt editiert von
    #174

    ich bräuchte Hilfe beim einbinden eines Smartplugs
    Ich habe hier verschiedene Daten vom MQTT Broker bekommen
    es kommen bei /app/device/property/HW52ZDH4SF5J6396 immer zwei verschiedene datensätze:

    Der mit der Energiemessung: Zum beispiel hier die muss mit 14W sein (mann muss hier wieder /10 machen):
    Field number 10 hat dort den wert 140 -> 140/10 = 10W
    20885958-631f-40df-af9c-d9da55e69ecd-image.png

    0a 2e 0a 03 50 8c 01 10 35 18 20 20 01 28 01 40 02 48 01 50 03 58 01 80 01 03 88 01 03 ca 01 10 48 57 35 32 5a 44 48 34 53 46 35 4a 36 33 39 36
    

    Und einen mit generellen infos?:

    0a780a4c08ffff0312220880c28da50610051a1803030000000000000000000000000000000000000000000012220880c28da50610061a18163700000000000000000000000000000000000000000000103518202001280140fe014820504c5801800103880103ca0110485735325a4448345346354a36333936
    

    Das wird immer angefragt bei /app/<userid>/HW52ZDH4SF5J6396/thing/property/get:
    Das war bis jetzt immer derselbe datensatz

    0a0d1020182070b424ba0103617070
    

    Das wird beim ein und ausschalten von der App auf /app/<userid>/HW52ZDH4SF5J6396/thing/property/set gepublished:
    AUS:

    0a 22 10 20 18 35 40 02 48 81 01 58 01 70 8f eb 2b ca 01 10 48 57 35 32 5a 44 48 34 53 46 35 4a 36 33 39 36
    

    AN:

    0a 28 0a 02 08 01 10 20 18 35 40 02 48 81 01 50 02 58 01 70 9f ac 1f ca 01 10 48 57 35 32 5a 44 48 34 53 46 35 4a 36 33 39 36
    

    Wie seit ihr auf die .proto files gekommen?
    habt ihr die im code der app gefunden?
    könnte man für die steckdosen auch eine .proto machen?

    Vielen Dank

    M xNodKaneX 2 Antworten Letzte Antwort
    0
    • FelixCrafter83F FelixCrafter83

      ich bräuchte Hilfe beim einbinden eines Smartplugs
      Ich habe hier verschiedene Daten vom MQTT Broker bekommen
      es kommen bei /app/device/property/HW52ZDH4SF5J6396 immer zwei verschiedene datensätze:

      Der mit der Energiemessung: Zum beispiel hier die muss mit 14W sein (mann muss hier wieder /10 machen):
      Field number 10 hat dort den wert 140 -> 140/10 = 10W
      20885958-631f-40df-af9c-d9da55e69ecd-image.png

      0a 2e 0a 03 50 8c 01 10 35 18 20 20 01 28 01 40 02 48 01 50 03 58 01 80 01 03 88 01 03 ca 01 10 48 57 35 32 5a 44 48 34 53 46 35 4a 36 33 39 36
      

      Und einen mit generellen infos?:

      0a780a4c08ffff0312220880c28da50610051a1803030000000000000000000000000000000000000000000012220880c28da50610061a18163700000000000000000000000000000000000000000000103518202001280140fe014820504c5801800103880103ca0110485735325a4448345346354a36333936
      

      Das wird immer angefragt bei /app/<userid>/HW52ZDH4SF5J6396/thing/property/get:
      Das war bis jetzt immer derselbe datensatz

      0a0d1020182070b424ba0103617070
      

      Das wird beim ein und ausschalten von der App auf /app/<userid>/HW52ZDH4SF5J6396/thing/property/set gepublished:
      AUS:

      0a 22 10 20 18 35 40 02 48 81 01 58 01 70 8f eb 2b ca 01 10 48 57 35 32 5a 44 48 34 53 46 35 4a 36 33 39 36
      

      AN:

      0a 28 0a 02 08 01 10 20 18 35 40 02 48 81 01 50 02 58 01 70 9f ac 1f ca 01 10 48 57 35 32 5a 44 48 34 53 46 35 4a 36 33 39 36
      

      Wie seit ihr auf die .proto files gekommen?
      habt ihr die im code der app gefunden?
      könnte man für die steckdosen auch eine .proto machen?

      Vielen Dank

      M Offline
      M Offline
      mattenausohz
      schrieb am zuletzt editiert von mattenausohz
      #175

      @felixcrafter83 Darf ich fragen wozu Du noch SmartPlugs brauchst wenn Du doch die "echte" Last live nutzen kannst?

      FelixCrafter83F 1 Antwort Letzte Antwort
      0
      • M mattenausohz

        @felixcrafter83 Darf ich fragen wozu Du noch SmartPlugs brauchst wenn Du doch die "echte" Last live nutzen kannst?

        FelixCrafter83F Offline
        FelixCrafter83F Offline
        FelixCrafter83
        schrieb am zuletzt editiert von FelixCrafter83
        #176

        @mattenausohz ich habe diesen smartplug bei einem Ecoflow gewinnspiel gewonnen.
        ich möchte mit dem etwas rumspielen, also für etwas anderes benutzen und ich habe ja noch kein powerstream.
        Da hast du recht, smart plugs braucht man mit den scripten natürlich nicht mehr, wenn man die leistung am stromzähler abgreift.
        Ich hätte mir sonst keinen gekauft.
        Habe nämlich auch schon ein smartmeter

        1 Antwort Letzte Antwort
        0
        • FelixCrafter83F FelixCrafter83

          ich bräuchte Hilfe beim einbinden eines Smartplugs
          Ich habe hier verschiedene Daten vom MQTT Broker bekommen
          es kommen bei /app/device/property/HW52ZDH4SF5J6396 immer zwei verschiedene datensätze:

          Der mit der Energiemessung: Zum beispiel hier die muss mit 14W sein (mann muss hier wieder /10 machen):
          Field number 10 hat dort den wert 140 -> 140/10 = 10W
          20885958-631f-40df-af9c-d9da55e69ecd-image.png

          0a 2e 0a 03 50 8c 01 10 35 18 20 20 01 28 01 40 02 48 01 50 03 58 01 80 01 03 88 01 03 ca 01 10 48 57 35 32 5a 44 48 34 53 46 35 4a 36 33 39 36
          

          Und einen mit generellen infos?:

          0a780a4c08ffff0312220880c28da50610051a1803030000000000000000000000000000000000000000000012220880c28da50610061a18163700000000000000000000000000000000000000000000103518202001280140fe014820504c5801800103880103ca0110485735325a4448345346354a36333936
          

          Das wird immer angefragt bei /app/<userid>/HW52ZDH4SF5J6396/thing/property/get:
          Das war bis jetzt immer derselbe datensatz

          0a0d1020182070b424ba0103617070
          

          Das wird beim ein und ausschalten von der App auf /app/<userid>/HW52ZDH4SF5J6396/thing/property/set gepublished:
          AUS:

          0a 22 10 20 18 35 40 02 48 81 01 58 01 70 8f eb 2b ca 01 10 48 57 35 32 5a 44 48 34 53 46 35 4a 36 33 39 36
          

          AN:

          0a 28 0a 02 08 01 10 20 18 35 40 02 48 81 01 50 02 58 01 70 9f ac 1f ca 01 10 48 57 35 32 5a 44 48 34 53 46 35 4a 36 33 39 36
          

          Wie seit ihr auf die .proto files gekommen?
          habt ihr die im code der app gefunden?
          könnte man für die steckdosen auch eine .proto machen?

          Vielen Dank

          xNodKaneX Offline
          xNodKaneX Offline
          xNodKane
          schrieb am zuletzt editiert von
          #177

          @felixcrafter83 Siehe den Beitrag weiter oben.
          Wenn man sich die Ecoflow APK (Android App) genauer ansieht wie die Codetechnisch funktioniert fällt zum einen Auf das ein import zu Googles Protobuf drinnen ist.
          Ist aber sehr mühselig etwas herauszufinden.

          W 1 Antwort Letzte Antwort
          0
          • xNodKaneX xNodKane

            @felixcrafter83 Siehe den Beitrag weiter oben.
            Wenn man sich die Ecoflow APK (Android App) genauer ansieht wie die Codetechnisch funktioniert fällt zum einen Auf das ein import zu Googles Protobuf drinnen ist.
            Ist aber sehr mühselig etwas herauszufinden.

            W Offline
            W Offline
            Waly_de
            schrieb am zuletzt editiert von
            #178

            Ich hab dem Script mal einen eigenen Beitrag spendiert:

            https://forum.iobroker.net/topic/66743/ecoflow-connector-script-zur-dynamischen-leistungsanpassung

            @FelixCrafter83 Die meisten Deiner Daten kenn ich schon und sind im neuen Script verwendet. Was ich nicht kenne wird als State: X_Unknown_X angelegt. Funfact: ich hab auch einen Smartplug gewonnen ;-D hab ich aber noch nicht hier.

            @mattenausohz Die Funktion wurde überarbeitet und sollte jetzt besser laufen.

            FelixCrafter83F 1 Antwort Letzte Antwort
            0
            • W Waly_de

              Ich hab dem Script mal einen eigenen Beitrag spendiert:

              https://forum.iobroker.net/topic/66743/ecoflow-connector-script-zur-dynamischen-leistungsanpassung

              @FelixCrafter83 Die meisten Deiner Daten kenn ich schon und sind im neuen Script verwendet. Was ich nicht kenne wird als State: X_Unknown_X angelegt. Funfact: ich hab auch einen Smartplug gewonnen ;-D hab ich aber noch nicht hier.

              @mattenausohz Die Funktion wurde überarbeitet und sollte jetzt besser laufen.

              FelixCrafter83F Offline
              FelixCrafter83F Offline
              FelixCrafter83
              schrieb am zuletzt editiert von
              #179

              Ich habe heute etwas rumgetüftelt und habe die Proto files in der App gefunden.
              nur sind die komisch codiert, ich habe dann chatgpt zur hilfe genommen, das mir dann es in klartext ausgegeben hat.
              Jetzt ist die Frage, ob jemand weiß, wie man von der einen darstellung auf die klartext dartstellung kommt:

              Hier mal das, was ich in der App gefunden habe:

               \n\u0016wn511_socket_sys.proto\"\u00ca\u0001\n\brtc_data\u0012\u0011\n\u0004week\u0018\u0001 \u0001(\u0005H\u0000\u0088\u0001\u0001\u0012\u0010\n\u0003sec\u0018\u0002 \u0001(\u0005H\u0001\u0088\u0001\u0001\u0012\u0010\n\u0003min\u0018\u0003 \u0001(\u0005H\u0002\u0088\u0001\u0001\u0012\u0011\n\u0004hour\u0018\u0004 \u0001(\u0005H\u0003\u0088\u0001\u0001\u0012\u0010\n\u0003day\u0018\u0005 \u0001(\u0005H\u0004\u0088\u0001\u0001\u0012\u0012\n\u0005month\u0018\u0006 \u0001(\u0005H\u0005\u0088\u0001\u0001\u0012\u0011\n\u0004year\u0018\u0007 \u0001(\u0005H\u0006\u0088\u0001\u0001B\u0007\n\u0005_weekB\u0006\n\u0004_secB\u0006\n\u0004_minB\u0007\n\u0005_hourB\u0006\n\u0004_dayB\b\n\u0006_monthB\u0007\n\u0005_year\"\u009e\u0001\n\u0013time_range_strategy\u0012\u0011\n\tis_config\u0018\u0001 \u0001(\b\u0012\u0011\n\tis_enable\u0018\u0002 \u0001(\b\u0012\u0011\n\ttime_mode\u0018\u0003 \u0001(\u0005\u0012\u0011\n\ttime_data\u0018\u0004 \u0001(\u0005\u0012\u001d\n\nstart_time\u0018\u0005 \u0001(\u000b2\t.rtc_data\u0012\u001c\n\tstop_time\u0018\u0006 \u0001(\u000b2\t.rtc_data\"\u001f\n\u0010plug_ack_message\u0012\u000b\n\u0003ack\u0018\u0001 \u0001(\r\"\u00a5\u0004\n\u0013plug_heartbeat_pack\u0012\u0015\n\berr_code\u0018\u0001 \u0001(\rH\u0000\u0088\u0001\u0001\u0012\u0016\n\twarn_code\u0018\u0002 \u0001(\rH\u0001\u0088\u0001\u0001\u0012\u0014\n\u0007country\u0018\u0003 \u0001(\rH\u0002\u0088\u0001\u0001\u0012\u0011\n\u0004town\u0018\u0004 \u0001(\rH\u0003\u0088\u0001\u0001\u0012\u0014\n\u0007max_cur\u0018\u0005 \u0001(\u0005H\u0004\u0088\u0001\u0001\u0012\u0011\n\u0004temp\u0018\u0006 \u0001(\u0005H\u0005\u0088\u0001\u0001\u0012\u0011\n\u0004freq\u0018\u0007 \u0001(\u0005H\u0006\u0088\u0001\u0001\u0012\u0014\n\u0007current\u0018\b \u0001(\u0005H\u0007\u0088\u0001\u0001\u0012\u0011\n\u0004volt\u0018\t \u0001(\u0005H\b\u0088\u0001\u0001\u0012\u0012\n\u0005watts\u0018\n \u0001(\u0005H\t\u0088\u0001\u0001\u0012\u0013\n\u0006switch\u0018\u000b \u0001(\bH\n\u0088\u0001\u0001\u0012\u0017\n\nbrightness\u0018\f \u0001(\u0005H\u000b\u0088\u0001\u0001\u0012\u0016\n\tmax_watts\u0018\r \u0001(\u0005H\f\u0088\u0001\u0001\u0012 \n\u0013heartbeat_frequency\u0018\u000e \u0001(\u0005H\r\u0088\u0001\u0001\u0012\u0018\n\u000bmesh_enable\u0018\u000f \u0001(\u0005H\u000e\u0088\u0001\u0001B\u000b\n\t_err_codeB\f\n\n_warn_codeB\n\n\b_countryB\u0007\n\u0005_townB\n\n\b_max_curB\u0007\n\u0005_tempB\u0007\n\u0005_freqB\n\n\b_currentB\u0007\n\u0005_voltB\b\n\u0006_wattsB\t\n\u0007_switchB\r\n\u000b_brightnessB\f\n\n_max_wattsB\u0016\n\u0014_heartbeat_frequencyB\u000e\n\f_mesh_enable\"*\n\u0013plug_switch_message\u0012\u0013\n\u000bplug_switch\u0018\u0001 \u0001(\r\"%\n\u000fbrightness_pack\u0012\u0012\n\nbrightness\u0018\u0001 \u0001(\u0005\"\u001f\n\fmax_cur_pack\u0012\u000f\n\u0007max_cur\u0018\u0001 \u0001(\u0005\"]\n\u0010time_task_config\u0012\u0011\n\ttask_name\u0018\u0001 \u0001(\t\u0012(\n\ntime_range\u0018\u0002 \u0001(\u000b2\u0014.time_range_strategy\u0012\f\n\u0004type\u0018\u0003 \u0001(\u0005\"N\n\u0015time_task_config_post\u0012\r\n\u0005index\u0018\u0001 \u0001(\u0005\u0012&\n\u000btask_config\u0018\u0002 \u0001(\u000b2\u0011.time_task_config\"D\n\tPowerItem\u0012\u0011\n\ttimestamp\u0018\u0001 \u0001(\r\u0012\u0010\n\btimezone\u0018\u0002 \u0001(\u0011\u0012\u0012\n\nplug_power\u0018\u0003 \u0001(\r\"B\n\tPowerPack\u0012\u000f\n\u0007sys_seq\u0018\u0001 \u0001(\r\u0012$\n\u0010sys_power_stream\u0018\u0002 \u0003(\u000b2\n.PowerItem\"\u001f\n\fPowerAckPack\u0012\u000f\n\u0007sys_seq\u0018\u0001 \u0001(\r\"#\n\u000emax_watts_pack\u0012\u0011\n\tmax_watts\u0018\u0001 \u0001(\u0005\"%\n\u000emesh_ctrl_pack\u0012\u0013\n\u000bmesh_enable\u0018\u0001 \u0001(\r\"\u001b\n\bret_pack\u0012\u000f\n\u0007ret_sta\u0018\u0001 \u0001(\bb\u0006proto3
              

              So sieht das dann in klartext aus:
              wn511_socket_sys.proto

              syntax = "proto3";
              
              message rtc_data {
                optional int32 week = 1 [default = 1];
                optional int32 sec = 2 [default = 1];
                optional int32 min = 3 [default = 1];
                optional int32 hour = 4 [default = 1];
                optional int32 day = 5 [default = 1];
                optional int32 month = 6 [default = 1];
                optional int32 year = 7 [default = 1];
              }
              
              message time_range_strategy {
                optional bool is_config = 1;
                optional bool is_enable = 2;
                optional int32 time_mode = 3;
                optional int32 time_data = 4;
                optional rtc_data start_time = 5;
                optional rtc_data stop_time = 6;
              }
              
              message plug_ack_message {
                optional int32 ack = 1;
              }
              
              message plug_heartbeat_pack {
                optional int32 err_code = 1 [default = 1];
                optional int32 warn_code = 2 [default = 1];
                optional int32 country = 3 [default = 1];
                optional int32 town = 4 [default = 1];
                optional int32 max_cur = 5 [default = 1];
                optional int32 temp = 6 [default = 1];
                optional int32 freq = 7 [default = 1];
                optional int32 current = 8 [default = 1];
                optional int32 volt = 9 [default = 1];
                optional int32 watts = 10 [default = 1];
                optional bool switch = 11;
                optional int32 brightness = 12 [default = 1];
                optional int32 max_watts = 13 [default = 1];
                optional int32 heartbeat_frequency = 14 [default = 1];
                optional bool mesh_enable = 15;
              }
              
              message plug_switch_message {
                optional int32 plug_switch = 1;
              }
              
              message brightness_pack {
                optional int32 brightness = 1;
              }
              
              message max_cur_pack {
                optional int32 max_cur = 1;
              }
              
              message time_task_config {
                optional string task_name = 1;
                optional time_range_strategy time_range = 2;
                optional int32 type = 3;
              }
              
              message time_task_config_post {
                optional int32 index = 1;
                optional time_task_config task_config = 2;
              }
              
              message PowerItem {
                optional int64 timestamp = 1;
                optional string timezone = 2;
                optional int32 plug_power = 3;
              }
              
              message PowerPack {
                optional int32 sys_seq = 1;
                repeated PowerItem sys_power_stream = 2;
              }
              
              message PowerAckPack {
                optional int32 sys_seq = 1;
              }
              
              message max_watts_pack {
                optional int32 max_watts = 1;
              }
              
              message mesh_ctrl_pack {
                optional int32 mesh_enable = 1;
              }
              
              message ret_pack {
                optional bool ret_sta = 1;
              }
              
              FelixCrafter83F 1 Antwort Letzte Antwort
              1
              • FelixCrafter83F FelixCrafter83

                Ich habe heute etwas rumgetüftelt und habe die Proto files in der App gefunden.
                nur sind die komisch codiert, ich habe dann chatgpt zur hilfe genommen, das mir dann es in klartext ausgegeben hat.
                Jetzt ist die Frage, ob jemand weiß, wie man von der einen darstellung auf die klartext dartstellung kommt:

                Hier mal das, was ich in der App gefunden habe:

                 \n\u0016wn511_socket_sys.proto\"\u00ca\u0001\n\brtc_data\u0012\u0011\n\u0004week\u0018\u0001 \u0001(\u0005H\u0000\u0088\u0001\u0001\u0012\u0010\n\u0003sec\u0018\u0002 \u0001(\u0005H\u0001\u0088\u0001\u0001\u0012\u0010\n\u0003min\u0018\u0003 \u0001(\u0005H\u0002\u0088\u0001\u0001\u0012\u0011\n\u0004hour\u0018\u0004 \u0001(\u0005H\u0003\u0088\u0001\u0001\u0012\u0010\n\u0003day\u0018\u0005 \u0001(\u0005H\u0004\u0088\u0001\u0001\u0012\u0012\n\u0005month\u0018\u0006 \u0001(\u0005H\u0005\u0088\u0001\u0001\u0012\u0011\n\u0004year\u0018\u0007 \u0001(\u0005H\u0006\u0088\u0001\u0001B\u0007\n\u0005_weekB\u0006\n\u0004_secB\u0006\n\u0004_minB\u0007\n\u0005_hourB\u0006\n\u0004_dayB\b\n\u0006_monthB\u0007\n\u0005_year\"\u009e\u0001\n\u0013time_range_strategy\u0012\u0011\n\tis_config\u0018\u0001 \u0001(\b\u0012\u0011\n\tis_enable\u0018\u0002 \u0001(\b\u0012\u0011\n\ttime_mode\u0018\u0003 \u0001(\u0005\u0012\u0011\n\ttime_data\u0018\u0004 \u0001(\u0005\u0012\u001d\n\nstart_time\u0018\u0005 \u0001(\u000b2\t.rtc_data\u0012\u001c\n\tstop_time\u0018\u0006 \u0001(\u000b2\t.rtc_data\"\u001f\n\u0010plug_ack_message\u0012\u000b\n\u0003ack\u0018\u0001 \u0001(\r\"\u00a5\u0004\n\u0013plug_heartbeat_pack\u0012\u0015\n\berr_code\u0018\u0001 \u0001(\rH\u0000\u0088\u0001\u0001\u0012\u0016\n\twarn_code\u0018\u0002 \u0001(\rH\u0001\u0088\u0001\u0001\u0012\u0014\n\u0007country\u0018\u0003 \u0001(\rH\u0002\u0088\u0001\u0001\u0012\u0011\n\u0004town\u0018\u0004 \u0001(\rH\u0003\u0088\u0001\u0001\u0012\u0014\n\u0007max_cur\u0018\u0005 \u0001(\u0005H\u0004\u0088\u0001\u0001\u0012\u0011\n\u0004temp\u0018\u0006 \u0001(\u0005H\u0005\u0088\u0001\u0001\u0012\u0011\n\u0004freq\u0018\u0007 \u0001(\u0005H\u0006\u0088\u0001\u0001\u0012\u0014\n\u0007current\u0018\b \u0001(\u0005H\u0007\u0088\u0001\u0001\u0012\u0011\n\u0004volt\u0018\t \u0001(\u0005H\b\u0088\u0001\u0001\u0012\u0012\n\u0005watts\u0018\n \u0001(\u0005H\t\u0088\u0001\u0001\u0012\u0013\n\u0006switch\u0018\u000b \u0001(\bH\n\u0088\u0001\u0001\u0012\u0017\n\nbrightness\u0018\f \u0001(\u0005H\u000b\u0088\u0001\u0001\u0012\u0016\n\tmax_watts\u0018\r \u0001(\u0005H\f\u0088\u0001\u0001\u0012 \n\u0013heartbeat_frequency\u0018\u000e \u0001(\u0005H\r\u0088\u0001\u0001\u0012\u0018\n\u000bmesh_enable\u0018\u000f \u0001(\u0005H\u000e\u0088\u0001\u0001B\u000b\n\t_err_codeB\f\n\n_warn_codeB\n\n\b_countryB\u0007\n\u0005_townB\n\n\b_max_curB\u0007\n\u0005_tempB\u0007\n\u0005_freqB\n\n\b_currentB\u0007\n\u0005_voltB\b\n\u0006_wattsB\t\n\u0007_switchB\r\n\u000b_brightnessB\f\n\n_max_wattsB\u0016\n\u0014_heartbeat_frequencyB\u000e\n\f_mesh_enable\"*\n\u0013plug_switch_message\u0012\u0013\n\u000bplug_switch\u0018\u0001 \u0001(\r\"%\n\u000fbrightness_pack\u0012\u0012\n\nbrightness\u0018\u0001 \u0001(\u0005\"\u001f\n\fmax_cur_pack\u0012\u000f\n\u0007max_cur\u0018\u0001 \u0001(\u0005\"]\n\u0010time_task_config\u0012\u0011\n\ttask_name\u0018\u0001 \u0001(\t\u0012(\n\ntime_range\u0018\u0002 \u0001(\u000b2\u0014.time_range_strategy\u0012\f\n\u0004type\u0018\u0003 \u0001(\u0005\"N\n\u0015time_task_config_post\u0012\r\n\u0005index\u0018\u0001 \u0001(\u0005\u0012&\n\u000btask_config\u0018\u0002 \u0001(\u000b2\u0011.time_task_config\"D\n\tPowerItem\u0012\u0011\n\ttimestamp\u0018\u0001 \u0001(\r\u0012\u0010\n\btimezone\u0018\u0002 \u0001(\u0011\u0012\u0012\n\nplug_power\u0018\u0003 \u0001(\r\"B\n\tPowerPack\u0012\u000f\n\u0007sys_seq\u0018\u0001 \u0001(\r\u0012$\n\u0010sys_power_stream\u0018\u0002 \u0003(\u000b2\n.PowerItem\"\u001f\n\fPowerAckPack\u0012\u000f\n\u0007sys_seq\u0018\u0001 \u0001(\r\"#\n\u000emax_watts_pack\u0012\u0011\n\tmax_watts\u0018\u0001 \u0001(\u0005\"%\n\u000emesh_ctrl_pack\u0012\u0013\n\u000bmesh_enable\u0018\u0001 \u0001(\r\"\u001b\n\bret_pack\u0012\u000f\n\u0007ret_sta\u0018\u0001 \u0001(\bb\u0006proto3
                

                So sieht das dann in klartext aus:
                wn511_socket_sys.proto

                syntax = "proto3";
                
                message rtc_data {
                  optional int32 week = 1 [default = 1];
                  optional int32 sec = 2 [default = 1];
                  optional int32 min = 3 [default = 1];
                  optional int32 hour = 4 [default = 1];
                  optional int32 day = 5 [default = 1];
                  optional int32 month = 6 [default = 1];
                  optional int32 year = 7 [default = 1];
                }
                
                message time_range_strategy {
                  optional bool is_config = 1;
                  optional bool is_enable = 2;
                  optional int32 time_mode = 3;
                  optional int32 time_data = 4;
                  optional rtc_data start_time = 5;
                  optional rtc_data stop_time = 6;
                }
                
                message plug_ack_message {
                  optional int32 ack = 1;
                }
                
                message plug_heartbeat_pack {
                  optional int32 err_code = 1 [default = 1];
                  optional int32 warn_code = 2 [default = 1];
                  optional int32 country = 3 [default = 1];
                  optional int32 town = 4 [default = 1];
                  optional int32 max_cur = 5 [default = 1];
                  optional int32 temp = 6 [default = 1];
                  optional int32 freq = 7 [default = 1];
                  optional int32 current = 8 [default = 1];
                  optional int32 volt = 9 [default = 1];
                  optional int32 watts = 10 [default = 1];
                  optional bool switch = 11;
                  optional int32 brightness = 12 [default = 1];
                  optional int32 max_watts = 13 [default = 1];
                  optional int32 heartbeat_frequency = 14 [default = 1];
                  optional bool mesh_enable = 15;
                }
                
                message plug_switch_message {
                  optional int32 plug_switch = 1;
                }
                
                message brightness_pack {
                  optional int32 brightness = 1;
                }
                
                message max_cur_pack {
                  optional int32 max_cur = 1;
                }
                
                message time_task_config {
                  optional string task_name = 1;
                  optional time_range_strategy time_range = 2;
                  optional int32 type = 3;
                }
                
                message time_task_config_post {
                  optional int32 index = 1;
                  optional time_task_config task_config = 2;
                }
                
                message PowerItem {
                  optional int64 timestamp = 1;
                  optional string timezone = 2;
                  optional int32 plug_power = 3;
                }
                
                message PowerPack {
                  optional int32 sys_seq = 1;
                  repeated PowerItem sys_power_stream = 2;
                }
                
                message PowerAckPack {
                  optional int32 sys_seq = 1;
                }
                
                message max_watts_pack {
                  optional int32 max_watts = 1;
                }
                
                message mesh_ctrl_pack {
                  optional int32 mesh_enable = 1;
                }
                
                message ret_pack {
                  optional bool ret_sta = 1;
                }
                
                FelixCrafter83F Offline
                FelixCrafter83F Offline
                FelixCrafter83
                schrieb am zuletzt editiert von FelixCrafter83
                #180

                Ich habe es geschafft alles in Klartext darzustellen hier eine txt Datei:ProtobufsDecoded.txt
                Das müssten alle aus der App sein.
                Mann muss sie sich nur etwas zusammenbasteln.

                1 Antwort Letzte Antwort
                1
                • X Offline
                  X Offline
                  xfirf
                  schrieb am zuletzt editiert von
                  #181

                  Ich versuche diese Anleitung hier nachzustellen:
                  https://haus-automatisierung.com/hardware/2023/02/13/ecoflow-river-2-usv-batteriespeicher.htm

                  Wie kommt man denn an die UUID? Irgendwie stehe ich auf dem Schlauch.

                  haus-automatisierungH FelixCrafter83F 2 Antworten Letzte Antwort
                  0
                  • X xfirf

                    Ich versuche diese Anleitung hier nachzustellen:
                    https://haus-automatisierung.com/hardware/2023/02/13/ecoflow-river-2-usv-batteriespeicher.htm

                    Wie kommt man denn an die UUID? Irgendwie stehe ich auf dem Schlauch.

                    haus-automatisierungH Offline
                    haus-automatisierungH Offline
                    haus-automatisierung
                    Developer Most Active
                    schrieb am zuletzt editiert von
                    #182

                    @xfirf sagte in Adapter für Ecoflow Einbindung:

                    Wie kommt man denn an die UUID?

                    Du meinst für die Client-ID? Die kann man sich ausdenken soweit ich mich erinnere. Hauptsache deine userId am Ende stimmt.

                    🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                    🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                    📚 Meine inoffizielle ioBroker Dokumentation

                    1 Antwort Letzte Antwort
                    0
                    • X xfirf

                      Ich versuche diese Anleitung hier nachzustellen:
                      https://haus-automatisierung.com/hardware/2023/02/13/ecoflow-river-2-usv-batteriespeicher.htm

                      Wie kommt man denn an die UUID? Irgendwie stehe ich auf dem Schlauch.

                      FelixCrafter83F Offline
                      FelixCrafter83F Offline
                      FelixCrafter83
                      schrieb am zuletzt editiert von
                      #183

                      @xfirf ich habe hier mal eine funktion für z.B Node-Red:

                      function uuidv4() {
                          return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
                              var r = Math.random() * 16 | 0,
                                  v = c === 'x' ? r : (r & 0x3 | 0x8);
                              return v.toString(16);
                          });
                      }
                      
                      msg.payload = uuidv4();
                      return msg;
                      
                      1 Antwort Letzte Antwort
                      0
                      • X Offline
                        X Offline
                        xfirf
                        schrieb am zuletzt editiert von
                        #184

                        Cool. Danke. 🙂

                        Kann ich mit dem Adapter auch einfach nur die Erträge aus dem Powerstream auslesen und im History-Adapter speichern? Ich will nichts steuern sondern nur die Erträge festhalten.

                        1 Antwort Letzte Antwort
                        0
                        • Z Offline
                          Z Offline
                          zariomahn
                          schrieb am zuletzt editiert von
                          #185

                          Hi @all,

                          lese hier fleißig mit und bin begeistert von der Arbeit von @Waly_de 🙂

                          Besitze selbst 2 Delta Pro und das SmartHomePanel, die beiden DP sind über HASS im ioBroker. eingebunden.

                          Nun die Frage die mich brennend interessiert, gibt es eine Möglichkeit mit dem Script von @Waly_de das "SmartHomePanel" auszulesen und im besten Fall auch zu steuern ? Hat das schon jemand geschafft?

                          Danke schon mal im Voraus für ne Antwort, und viele Grüße

                          MZ

                          W 1 Antwort Letzte Antwort
                          0
                          • Z zariomahn

                            Hi @all,

                            lese hier fleißig mit und bin begeistert von der Arbeit von @Waly_de 🙂

                            Besitze selbst 2 Delta Pro und das SmartHomePanel, die beiden DP sind über HASS im ioBroker. eingebunden.

                            Nun die Frage die mich brennend interessiert, gibt es eine Möglichkeit mit dem Script von @Waly_de das "SmartHomePanel" auszulesen und im besten Fall auch zu steuern ? Hat das schon jemand geschafft?

                            Danke schon mal im Voraus für ne Antwort, und viele Grüße

                            MZ

                            W Offline
                            W Offline
                            Waly_de
                            schrieb am zuletzt editiert von
                            #186

                            @zariomahn ich würde einfach mal versuchen die Seriennummer im Script einzugeben. Wenn Du Glück hast bekommst du alle Daten. Die meisten Ecoflow Geräte (zumindest die Deltas) arbeiten ohne Protobuf und sind daher leicht auszulesen.
                            Steuern geht dann theoretisch auch.

                            Z 1 Antwort Letzte Antwort
                            0
                            • W Waly_de

                              @zariomahn ich würde einfach mal versuchen die Seriennummer im Script einzugeben. Wenn Du Glück hast bekommst du alle Daten. Die meisten Ecoflow Geräte (zumindest die Deltas) arbeiten ohne Protobuf und sind daher leicht auszulesen.
                              Steuern geht dann theoretisch auch.

                              Z Offline
                              Z Offline
                              zariomahn
                              schrieb am zuletzt editiert von
                              #187

                              @waly_de
                              Hab ich versucht, bekomme aber lauter Fehlermeldungen...🙄

                              Bildschirmfoto 2023-08-03 um 09.27.43.png

                              haus-automatisierungH 1 Antwort Letzte Antwort
                              0
                              • Z zariomahn

                                @waly_de
                                Hab ich versucht, bekomme aber lauter Fehlermeldungen...🙄

                                Bildschirmfoto 2023-08-03 um 09.27.43.png

                                haus-automatisierungH Offline
                                haus-automatisierungH Offline
                                haus-automatisierung
                                Developer Most Active
                                schrieb am zuletzt editiert von
                                #188

                                @zariomahn Dir fehlt das Modul protobufjs. Hast Du das als Erweiterung im JavaScript-Adapter eingetragen?

                                🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                                🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                                📚 Meine inoffizielle ioBroker Dokumentation

                                Z 1 Antwort Letzte Antwort
                                0
                                • haus-automatisierungH haus-automatisierung

                                  @zariomahn Dir fehlt das Modul protobufjs. Hast Du das als Erweiterung im JavaScript-Adapter eingetragen?

                                  Z Offline
                                  Z Offline
                                  zariomahn
                                  schrieb am zuletzt editiert von
                                  #189

                                  @haus-automatisierung

                                  habe protobufjs im Terminal mit npm install protobufjs installiert.
                                  Muss noch etwas anderes gemacht werden ?

                                  Sorry, bin noch nicht lange mit ioBroker u.s.w. beschäftigt,
                                  komme zwar aus der IT, habe aber immer einen großen Bogen um Programmierung, Skripten u.s.w. gemacht 😉

                                  viele Grüße

                                  Mz

                                  haus-automatisierungH 1 Antwort Letzte Antwort
                                  0
                                  • Z zariomahn

                                    @haus-automatisierung

                                    habe protobufjs im Terminal mit npm install protobufjs installiert.
                                    Muss noch etwas anderes gemacht werden ?

                                    Sorry, bin noch nicht lange mit ioBroker u.s.w. beschäftigt,
                                    komme zwar aus der IT, habe aber immer einen großen Bogen um Programmierung, Skripten u.s.w. gemacht 😉

                                    viele Grüße

                                    Mz

                                    haus-automatisierungH Offline
                                    haus-automatisierungH Offline
                                    haus-automatisierung
                                    Developer Most Active
                                    schrieb am zuletzt editiert von
                                    #190

                                    @zariomahn sagte in Adapter für Ecoflow Einbindung:

                                    habe protobufjs im Terminal mit npm install protobufjs installiert.

                                    Warum das? Bitte in den Instanz-Einstellungen vom JavaScript-Adapter eintragen. Wenn Du manuell per npm etwas machst, dann machst Du IMMER etwas falsch 🙂

                                    🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                                    🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                                    📚 Meine inoffizielle ioBroker Dokumentation

                                    Z 1 Antwort Letzte Antwort
                                    0
                                    • haus-automatisierungH haus-automatisierung

                                      @zariomahn sagte in Adapter für Ecoflow Einbindung:

                                      habe protobufjs im Terminal mit npm install protobufjs installiert.

                                      Warum das? Bitte in den Instanz-Einstellungen vom JavaScript-Adapter eintragen. Wenn Du manuell per npm etwas machst, dann machst Du IMMER etwas falsch 🙂

                                      Z Offline
                                      Z Offline
                                      zariomahn
                                      schrieb am zuletzt editiert von
                                      #191

                                      @haus-automatisierung

                                      Hallo,

                                      Dacht ich muss, steht in der Beschreibung des Scripts...

                                      OK, habs nun so gemacht, und bekomme keine Fehler mehr 😬

                                      Danke

                                      viele Grüße

                                      MZ

                                      1 Antwort Letzte Antwort
                                      0
                                      • Z Offline
                                        Z Offline
                                        zariomahn
                                        schrieb am zuletzt editiert von
                                        #192

                                        Hi,

                                        ich habe ja nur mein SHP eingestellt mit der Seriennummer, da ich kein PowerStream habe um zu sehen was ich auslesen kann.

                                        Bekomme aber beim starten des Skripts diese Fehlermeldung.

                                        2023-08-08 10:10:13.659	error	Script script.js.Tests.Skript_1 is calling setState more than 1000 times per minute! Stopping Script now! Please check your script!
                                        
                                        2023-08-08 10:09:00.238	warn	at processTimers (node:internal/timers:502:7)
                                        
                                        javascript.0
                                        2023-08-08 10:09:00.238	warn	at listOnTimeout (node:internal/timers:559:17)
                                        
                                        javascript.0
                                        2023-08-08 10:09:00.238	warn	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7)
                                        
                                        javascript.0
                                        2023-08-08 10:09:00.238	warn	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28
                                        
                                        javascript.0
                                        2023-08-08 10:09:00.238	warn	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:171:15)
                                        
                                        javascript.0
                                        2023-08-08 10:09:00.238	warn	at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1606:34)
                                        
                                        javascript.0
                                        2023-08-08 10:09:00.237	warn	at Object.<anonymous> (script.js.Tests.Skript_1:218:9)
                                        
                                        javascript.0
                                        2023-08-08 10:09:00.237	warn	at CheckforReconnect (script.js.Tests.Skript_1:435:16)
                                        
                                        javascript.0
                                        2023-08-08 10:09:00.234	warn	getState "0_userdata.0.ecoflow.app_device_property_SP10ZEW5ZE7xxxx.RAW_HEX" not found (3)
                                        

                                        Was bedeutet das, wo liegt der Fehler?

                                        viele Grüße

                                        MZ

                                        W 1 Antwort Letzte Antwort
                                        0
                                        • Z zariomahn

                                          Hi,

                                          ich habe ja nur mein SHP eingestellt mit der Seriennummer, da ich kein PowerStream habe um zu sehen was ich auslesen kann.

                                          Bekomme aber beim starten des Skripts diese Fehlermeldung.

                                          2023-08-08 10:10:13.659	error	Script script.js.Tests.Skript_1 is calling setState more than 1000 times per minute! Stopping Script now! Please check your script!
                                          
                                          2023-08-08 10:09:00.238	warn	at processTimers (node:internal/timers:502:7)
                                          
                                          javascript.0
                                          2023-08-08 10:09:00.238	warn	at listOnTimeout (node:internal/timers:559:17)
                                          
                                          javascript.0
                                          2023-08-08 10:09:00.238	warn	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7)
                                          
                                          javascript.0
                                          2023-08-08 10:09:00.238	warn	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28
                                          
                                          javascript.0
                                          2023-08-08 10:09:00.238	warn	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:171:15)
                                          
                                          javascript.0
                                          2023-08-08 10:09:00.238	warn	at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1606:34)
                                          
                                          javascript.0
                                          2023-08-08 10:09:00.237	warn	at Object.<anonymous> (script.js.Tests.Skript_1:218:9)
                                          
                                          javascript.0
                                          2023-08-08 10:09:00.237	warn	at CheckforReconnect (script.js.Tests.Skript_1:435:16)
                                          
                                          javascript.0
                                          2023-08-08 10:09:00.234	warn	getState "0_userdata.0.ecoflow.app_device_property_SP10ZEW5ZE7xxxx.RAW_HEX" not found (3)
                                          

                                          Was bedeutet das, wo liegt der Fehler?

                                          viele Grüße

                                          MZ

                                          W Offline
                                          W Offline
                                          Waly_de
                                          schrieb am zuletzt editiert von
                                          #193

                                          @zariomahn Die Warnungen treten schon mal auf, wenn das script das erste mal gestartet wird und die States alle neu anlegen muss. Das sollte sich später legen.

                                          Der Fehler weisst darauf hin, dass du einen oder mehrere Deltas angelegt hast. Vielleicht sendet aber auch Dein SHP Unmengen Daten. Daher setzte mal das Limit in den Einstellungen des Javascriptadapters hoch. 3000-4000 sollte reichen.
                                          Später würde ich vielleicht die Deltas nicht subscriben, wenn Du die Daten nicht dringend brauchst.
                                          Wenn dieser Fehler auftritt, musst du das Skript neu starten.

                                          Z 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          369

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe