Growatt Shine WiFi an Homeassistant

Ja so ist im Prinzip der Ablauf was das Thema Modbus und *.yaml betrifft.

Was wichtig ist ist auch der API-Key. Der muss auf jeden Fall dann in der *.yaml eingetragen werden. Soweit ich mich erinnern kann wird dieser beim erstmaligen Start von ESPHome automatisch von HA generiert und Dir dann angezeigt. Diesen API-Key musst Du Dir dann gut wegsichern da Du diesen immer wieder benötgst wenn Du irgendwelche weiteren ESPHome Devices hinzufügen willst. Also z.B. auch Deinen zweiten und dritten WR.

Aber wie gesagt: Lies Dir da an anderer Stelle noch mal eine aktuelle Anleitung zu dem Thema durch. Mein ESPHome Ersteinrichtungswissen ist nicht mehr “State of the art”. :laughing:

VG Jim

Hallo Jim,

dank Deiner tollen umfassenden Hilfe habe ich es hinbekommen.

Die ersten 2 Anlagen sind nun drin. Jetzt muss ich mich noch um das Energieportal kümmern.

Vielen Dank und vielleicht hilft es auch anderen die hier mitlesen.

VG Bernd

2 „Gefällt mir“

Jo das sieht doch gut aus. HA Energy Dashboard ist auch kein Problem. Einfach den Energy Total Sensor des jeweiligen WR beim Energy Dashboard unter Sonnenkollektoren einfügen und das war’s dann auch schon.
Wenn Du dann noch Deinen Stromzähler ausliest und bei dem Energy Dashboard hinzufügst


wird/kann es dann so aussehen. :slightly_smiling_face:

VG Jim

1 „Gefällt mir“

Hallo Jim,

ich habe es nun dank Deiner Hilfe hinbekommen :slight_smile:

Vielen Dank für Deine Geduld
VG Bernd

2 „Gefällt mir“

Hallo ich bin Timo,

ich habe einen Growatt MIC 600TL-X ich nutze Home Assistant und bin mit der Integration über die Cloud nicht so zufrieden. Ich würde gerne den Growatt lokal einbinden.

Versucht habe ich schon viel, bekomme es aber nicht zum Laufen habe auch einen sepperaten Shine X Stick gekauft zum Flashen.

Würde es gerne Über ESPHome einbinden.

Kann mir vielleicht jemand schritt für schritt bei der Vorgehensweise helfen?

Wo beginne ich das ganze?

Danke LG Timo

Also eine Schritt für Schritt Anleitung habe ich auch nicht für Dich parat und z.Z. auch keine Zeit diese zu erstellen. Aber es wäre auch gut wenn Du hier schreiben würdest was Du überhaupt schon probiert hast und wie weit Du überhaupt gekommen bist. Damit man einschätzen kann was Du bereits weiß und hast und woran es ggf. scheitert.

Beginnen musst Du damit den Stick mit ESPHome zu flashen. Dazu den Stick öffnen um an die Platine zu kommen. Dann bei GPIO0 und Ground eine Brücke setzen
ShineStick_Brücke
und per PC ESPHome auf den ESP8266 des Sticks flashen.

Wenn das erfolgreich abgeschlossen ist kann Du den Stick per ESPHome bei HA einbinden. Dazu muss dort das ESPHome Addon und die ESPHome Integration installiert sein.

Wenn das passiert ist und der ShineStick darüber eingebunden ist, kannst Du eine zu Deinem Growatt passende ESPHome-Konfiguration über die ESPHome Oberfläche

auf den Stick flashen. Anm.: Immer wenn Du etwas auf den Stick flasht muss dafür die o.g. Brücke gesetzt sein. Also auch dann wenn Du später mal ein ESPHome Update bei dem Stick machen wolltest.

Da Du ja auch einen MIC 600TL-X WR hast poste ich Dir hier mal meine ESPHome Konfiguration dafür. Die Konfig. die ich hier poste ist etwas abgespeckt, weil ich bei mir noch ein paar spezielle Änderungen hab einfließen lassen, mit denen nicht jeder User etwas anfangen kann. :slightly_smiling_face:

Hier also die leicht “abgespeckte” ESPHome Konfiguration:

substitutions:
  devicename: "shinestick"
  upper_devicename: "ESPHome Growatt"
  
esphome:
  name: $devicename
  platform: ESP8266
  board: esp07s

# Enable logging
logger:
  baud_rate: 0
  
# Enable Home Assistant API
api:
  encryption:
    key: "hier steht dann Dein individueller API Key"

ota:
  safe_mode: true
  password: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Growatt 01 Fallback Hotspot"
    password: "xxxxxxxxx"
 
captive_portal:

time:
  - platform: homeassistant
    id: homeassistant_time

output:
# Blue Led
  - id: light_bl
    platform: gpio
    pin: 16
# Green Led
  - id: light_gr
    platform: gpio
    pin: 0
# Red Led
  - id: light_rd
    platform: gpio
    pin: 2

uart:
  id: mod_bus
  tx_pin: 1
  rx_pin: 3
  baud_rate: 115200
  
modbus:
  id: modbus1
  uart_id: mod_bus
  
modbus_controller:
  - id: growatt
    ## the Modbus device addr
    address: 0x1
    modbus_id: modbus1
    setup_priority: -10  

text_sensor:
  - platform: modbus_controller
    name: "${devicename} Firmware Version"
    address: 9
    register_count: 3
    register_type: holding
    #internal: true
    entity_category: diagnostic

  - platform: template
    name: "${devicename} Status"
    icon: mdi:eye
    entity_category: diagnostic
    lambda: |-
      if (id(status).state == 1) {
        return {"Normal"};
      } else if (id(status).state == 0)  {
        return {"Waiting"};
      } else {
        return {"Fault!"};
      }

switch:
  - platform: modbus_controller
    name: "${devicename} OnOff"
    address: 0
    register_type: holding

number:
  - platform: modbus_controller
    name: "${devicename} Max Output Power"
    address: 3
    value_type: U_WORD
    min_value: 0
    max_value: 100
    entity_category: config

sensor:
  - platform: wifi_signal
    name: "WiFi Signal Sensor"
    update_interval: 60s
  
  - platform: modbus_controller
    address: 0
    register_type: "read"
    internal: true
    id: status

  - platform: modbus_controller
    name: "${devicename} DcPower"
    address: 3005 #5
    register_type: "read"
    unit_of_measurement: W
    device_class: power
    icon: mdi:flash
    value_type: U_DWORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1
    
  - platform: modbus_controller
    name: "${devicename} DcVoltage"
    address: 3003 #3
    register_type: "read"
    unit_of_measurement: V
    device_class: voltage
    icon: mdi:flash
    value_type: U_WORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1
    
  - platform: modbus_controller
    name: "${devicename} DcInputCurrent"
    address: 3004 #4
    register_type: "read"
    unit_of_measurement: A
    device_class: current
    icon: mdi:flash
    value_type: U_WORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1

  - platform: modbus_controller
    name: "${devicename} AcPower"
    address: 3023 #40
    register_type: "read"
    unit_of_measurement: W
    device_class: power
    icon: mdi:flash
    value_type: U_DWORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1

  - platform: modbus_controller
    name: "${devicename} AcFrequency"
    address: 3025 #37
    register_type: "read"
    unit_of_measurement: Hz
    icon: mdi:flash
    value_type: U_WORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.01
  
  - platform: modbus_controller
    name: "${devicename} AcVoltage"
    address: 3026 #38
    register_type: "read"
    unit_of_measurement: V
    device_class: voltage
    icon: mdi:flash
    value_type: U_WORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1
  
  - platform: modbus_controller
    name: "${devicename} AcOutputCurrent"
    address: 3027 #39
    register_type: "read"
    unit_of_measurement: A
    device_class: current
    icon: mdi:flash
    value_type: U_WORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1
  
  - platform: modbus_controller
    name: "${devicename} AcPowerVA"
    address: 3028 #40
    register_type: "read"
    unit_of_measurement: VA
    icon: mdi:flash
    value_type: U_DWORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1
    
  - platform: modbus_controller
    name: "${devicename} EnergyToday"
    address: 3049 #53
    register_type: "read"
    unit_of_measurement: kWh
    device_class: energy
    icon: mdi:flash
    value_type: U_DWORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1
    
  - platform: modbus_controller
    name: "${devicename} EnergyTotal"
    address: 3051 #55
    register_type: "read"
    unit_of_measurement: kWh
    state_class: total_increasing
    device_class: energy
    icon: mdi:flash
    value_type: U_DWORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1

    
  - platform: modbus_controller
    name: "${devicename} Temperature"
    address: 3093
    register_type: "read"
    unit_of_measurement: C
    device_class: temperature
    icon: mdi:thermometer
    value_type: U_WORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1    

De obere Teil wird sich bei Dir dann natürlich unterscheiden, aber wenn Du den Rest so übernimmst stehen Dir hinterher unter HA folgende Sensoren für den MIC 600TL-X zur Verfügung.

PS: Ich würde Dir aber auch empfehlen nicht einfach nur stumpf nach einen “Schritt für Schritt Anleitung” vorzugehen, sondern Dich auch ein wenig mehr/tiefer mit dem Thema zu befassen, damit Du auch weißt und verstehst was Du da tust und wie und warum.

D.h. ich würde Dir empfehlen im I-Net die inzwischen zahlreich vorhandenen Infos und Diskussionen zu dem Thema Dir anzuschauen. Da gibt es dann auch weitere Infos zu evtl. auftauchenden Problemen, oder andere Beispiel ESPHome Konfigurationen und zumindest auch (Teil-)Anleitungen zu dem Thema. U.a. auch von mir. :laughing:

VG Jim

Super, vielen Dank.

Hatte heute morgen auch schon Kontakt mit Bernd und bin heute auch schon weiter gekommen.
Habe heute allerdings nicht so viel Zeit und werde mich morgen wieder damit beschäftigen. Ist schon ganz schön zeitraubend das Thema Home Assistant.
Aber ich bin zuversichtlich das das bald Läuft.

PS. deine kurze Anleitung ist schon sehr gut und wird denke ich auch vielen weiteren Usern mit gleichem Problem helfen.

Lg Timo

Die meisten übersehen hier den Schlüssel, jedenfalls dann, wenn man mehr als einen kleinen Wechselrichter hat.

Die Fernwartung und der Support von Growatt sind rum.
Man kann noch einschicken und darf sich dann wundern, was passiert, denn die Growatt Geräte zeichnen intern die Kommunikation auf und zwar ab dem Zeitpunkt, wo das Gerät erstmals Strom bekommen hat, und sei es auch nur von der PV. Die holen sich das Funksignal der Atomuhr aus Braunschweig und setzen das als Inbetriebnahme, den Zeitpunkt des Garantiebeginns.

Daher hat man mit Growatt auch keine Probleme und braucht keine Rechnungen vorlegen, wenn mal was sein sollte.

Verlässt man aber deren System und nutzt was anderes, können die sich frei stellen.

Clever ist die Installation von Grott oder des GROTT HA Addon (für u.a. HA OS Nutzer) und von der GROTT Integration. Bei dem Grott HA Addon braucht man keine VM oder weiteren Pi, sondern alles läuft unter einem Dach via mqtt unter HA und es wird auch alles angelegt.
Schon mal ein Gerät umbenannt und die 34 Sensoren hinterher ?
Wir haben hier einen Haufen von 7 Growatt WR und da bin ich um jeden händischen Schritt weniger froh, weil ansonsten der Schritt 7x gemacht werden darf.

Von daher Hirn einschalten, ob die Cloud nicht doch zu etwas nutze sein kann.
Grott ist eine Art Proxy, also ein Stellvertreter und lauscht auf das , was der Wechselrichter Growatt in der Cloud mitteilen will und schneidet das mit, um das dann 1:1 an die Growatt Cloud weiter zu leiten.
Parallel kann man dann die Daten an Solaranzeige und andere Services über Optionen weiterleiten lassen - wie auch weiterleiten an mqtt für HA.

So wird die Info geteilt bzw. wiederholt, auch bei Ausfällen ist alles im Originalzustand und für Growatt ist alles bestens, jedenfalls hatten wir seither keine Garantieprobleme mehr von wegen abweichender Nutzung und Freistellung.
Im Garantiefall muss man das Ding ja im Zustand “as is” einschicken und da ist dann auch für die alles ersichtlich. Das gilt selbst für alte Gerät aus vor 2019, wo das bei uns mal der Fall war und zum Problem geworden ist.

Muss aber jeder selber wissen, wie er es handhabt, nur nicht beschweren wenn man dann ohne Regenschirm im Gewitter steht. Bei hat haben die mangels Garantie anstehenden Reparaturkosten den Exitus bedeutet, weil das unwirtschaftlich geworden war mit 40% vom Neupreis plus 19% damals.
Keine Ahnung, ob heute WR Reparaturen von 19% MwSt. befreit sind.

Auf alle Fälle ist man mit der Cloud im Falle eine Störung oder Optimierung oder speziellen Firmwareupdates besser bedient, denn diese Firmwareupdates bekommt man auf keinem anderen Wege mehr. Das betrifft insbesondere all die Hybriden, wo viel weiter entwickelt worden ist ggü. Werksauslieferung und auch noch wird, gerade bei dynamischen Strompreisen wann und wie lange geladen werden soll.

Wir sind jedenfalls bewusst in der Cloud geblieben, da steckt im Störungsfall viel zu viel Heck Meck und Risiko drin, denn der Support endet ohne Cloud ziemlich schnell. Muss man nicht wollen, wenn man einige von den Kisten hat, weil Growatt günstig und langlebig ist und eine Reihe davon eben noch 2x so viele MPPT mit sich bringen als sonst ein großer 10 kW, wo man 2 oder 3 mppt maximal haben wird.

Vorab: Ich akzeptiere natürlich Deine Meinung und Ansicht zu dem Thema Growatt Cloud, aber für mich hört sich Dein Posting eher nach Werbung für Growatt und deren Cloud an. :laughing:

Was auch immer Du mit “sich frei stellen” genau meinst und was auch immer Du für Garantieprobleme mit Growatt hattest, aber die Nichtnutzung der Growatt Cloud hat selbstverständlich keinen Einfluss auf Garantieleistungen durch die Fa. Growatt und auf die gesetzliche Gewährleitung sowieso nicht. Ebenso hat die lokale Datenübertragung der WR-Daten an z.B. HA natürlich ebenfalls keinerlei Einfluss auf irgendwelche Garantieleistungen durch Growatt.

Die Growatt WR zeichnen intern auch keine Kommunikation auf und die erwähnte erste Inbetriebnahme und die Atomuhr in Braunschweig :rofl: ist nicht der Zeitpunkt des Garantiebeginns, sondern das Kaufdatum durch den Erstkäufer.

Auf die restlichen Punkte gehe ich hier erst gar nicht weiter ein. :slightly_smiling_face:

Wie gesagt: Ich akzeptiere Deine Meinung und wenn Du die Growatt Cloud für Dich als notwendig empfindest dann ist das eben so. Ich pers. sehe darin - auch weil es immer wieder zu Verbindungsproblemen mit den Servern kommt die Growatt dafür nutzt (in DE z.B. einen Cloud-Server von Alibaba in Frankfurt) - für mich nur Nachteile. BTW: Sollte ich ggf. doch mal wieder ein Firmware-Update bei meinem WR brauchen verbinde ich mich ganz einfach wieder temporär mit der Growatt Cloud und lasse die Firmware OTA installieren.

Anm.: Ich wollte zumindest das Thema Growatt Garantie hier klarstellen und ansonsten ist das Thema für mich hier erledigt. :slightly_smiling_face:

VG Jim

Hallo,

ich hätte zu diesem Thema noch eine kleine Frage. Ich habe einen Mod5000 Wechselrichter von Growatt mit 2 Strings. Soweit ich die Modbus Dokumente richtig studiert habe, gibt es keinen Eintrag der die gesamte PV- Energie beider Strings zusammen abbildet. Nun bin ich mir nicht ganz sicher welchen Wert ich im Dashboard verwenden soll.
Welchen Wert benutzt ihr hier?

Viele Grüße und schöne Ostern an Alle

Moin

Erst einmal vorab:

  1. Ich habe keinen Growatt MOD 5000 TL3 WR daher kann ich Dir zu den dort genutzen Modbus-Registern auch nichts sagen.
  2. Growatt hat im Laufe der Jahre die Modbus-Register verändert und es gibt auch unterschiedliche Dokus dazu. Auch dadurch gibt es unterschiedliche Modbus-Register.
  3. Ich kann Dir dazu nur das sagen was ich im Laufe der Jahre mal zu dem Thema “aufgeschnappt” habe und an das ich mich noch erinnern kann. :slightly_smiling_face:

Deine Vermutung das es kein Modbus-Register für die Summe von beiden Strings gibt habe ich auch noch so in Erinnerung. Daher muss Du die beiden entsprechenden Modbus-Register einzeln auslesen und dann selber addieren. D.h. in Deinem ESPHome YAML sollten dann zwei Sensoren die Werte abfragen.

Bsp.:

sensor:
  - platform: modbus_controller
    name: "${devicename} DcPower1"
    address: 5
    register_type: "read"
    unit_of_measurement: W
    device_class: power
    icon: mdi:flash
    value_type: U_DWORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1

  - platform: modbus_controller
    name: "${devicename} DcPower2"
    address: 9
    register_type: "read"
    unit_of_measurement: W
    device_class: power
    icon: mdi:flash
    value_type: U_DWORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1

Anm.: Ob die Adresse 5 (PV1 power) und 9 (PV2 power) dann für Deinen MOD 5000 TL3 WR passen musst Du anhand der passenden Modbus-Doku selber klären.

Damit solltest Du dann die Werte für String 1 und String 2 bekommen, die Du dann unter HA nur noch addieren musst. Ob Du das dann per Template oder z.B. per Helfer machst musst Du selber sehen/entscheiden.

VG Jim

Hallo Jim,

danke für deine Antwort. Die richtigen Modbus Register für den Mod5000 habe ich bereits. Ich habe es jetzt so gelöst damit ich im Energie Dashboard einfach beide Entitäten eingetragen habe, also so als wenn man 2 Wechselrichter hätte. Scheint als ob das gut funktioniert.

Nochmal danke und schöne sonnige Ostern

Oder einfach beide Werte mit einem Helper Addieren.
z.B. für unsere Heizung;

{{ states('sensor.heizung_brennerstarts_hi') | int + states('sensor.heizung_brennerstarts_lo') | int }}

:crayon:by HarryP: Codezeilen formatiert (bitte immer in </> einbinden)

Ich habe an einem 4600er Growatt folgende Einstellungen mit dem angehängtem Ergebnis. Da ich noch Neuling in der Materie bin fragt mich bitte nicht warum das so ist :slight_smile:

sensor:
  - platform: modbus_controller
    name: "${friendly_name} DcPower"
    address: 5
    register_type: "read"
    unit_of_measurement: W
    device_class: power
    icon: mdi:flash
    value_type: U_DWORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1
    
  - platform: modbus_controller
    name: "${friendly_name} DcPower2"
    address: 9
    register_type: "read"
    unit_of_measurement: W
    device_class: power
    icon: mdi:flash
    value_type: U_DWORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1
        
  - platform: modbus_controller
    name: "${friendly_name} DcVoltage"
    address: 3
    register_type: "read"
    unit_of_measurement: V
    device_class: voltage
    icon: mdi:flash
    value_type: U_WORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1
    
  - platform: modbus_controller
    name: "${friendly_name} DcInputCurrent"
    address: 4
    register_type: "read"
    unit_of_measurement: A
    device_class: current
    icon: mdi:flash
    value_type: U_WORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1
    
  - platform: modbus_controller
    name: "${friendly_name} AcFrequency"
    address: 37
    register_type: "read"
    unit_of_measurement: Hz
    icon: mdi:flash
    value_type: U_WORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.01
  
  - platform: modbus_controller
    name: "${friendly_name} AcVoltage"
    address: 38
    register_type: "read"
    unit_of_measurement: V
    device_class: voltage
    icon: mdi:flash
    value_type: U_WORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1
  
  - platform: modbus_controller
    name: "${friendly_name} AcOutputCurrent"
    address: 39
    register_type: "read"
    unit_of_measurement: A
    device_class: current
    icon: mdi:flash
    value_type: U_WORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1
    
  - platform: modbus_controller
    name: "${friendly_name} AcPower"
    address: 40
    register_type: "read"
    unit_of_measurement: W
    device_class: power
    icon: mdi:flash
    value_type: U_DWORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1
    
  - platform: modbus_controller
    name: "${friendly_name} EnergyToday"
    address: 53
    register_type: "read"
    unit_of_measurement: kWh
    device_class: energy
    icon: mdi:flash
    value_type: U_DWORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1
    
  - platform: modbus_controller
    name: "${friendly_name} EnergyTotal"
    address: 55
    register_type: "read"
    unit_of_measurement: kWh
    state_class: total_increasing
    device_class: energy
    icon: mdi:flash
    value_type: U_DWORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1

    
  - platform: modbus_controller
    name: "${friendly_name} Temperature"
    address: 93
    register_type: "read"
    unit_of_measurement: C
    device_class: temperature
    icon: mdi:thermometer
    value_type: U_WORD
    accuracy_decimals: 1
    filters:
    - multiply: 0.1    

Die Texte habe ich natürlich ein wenig angepasst.

Hallo,
möchte auch einen WifiX Stick flashen und komme allerdings nur soweit ,dass ich ESP Home starten kann und auch connected… nach dem anwählen der Datei zum Flashen passiert allerdings nichts… und es bricht die Installation ab. Vermutlich lese u schreibrechte in windows die das blockieren. Wie kann ich unter Windows die Rechte freigeben ?

Moin,

so ganz kann ich nicht nachvollziehen was Du da wie machst und was jetzt genau die “Datei zum Flashen” bei Dir ist. Um unter Windows auf den Stick zugreifen zu können musst Du ggf. noch die USB Treiber für den CH340/CH341 installieren. Wenn Du dann über Windows auf den USB Stick zugreifen kannst und ihn per Brücke zwischen GPIO0 und GND in den Flash-Mode versetzt hast (siehe mein Posting weiter oben), dann solltest Du Dich per https://web.esphome.io/ (per Chrome oder Edge aufrufen) mit dem Stick verbinden können


in dem Du, nachdem Du den Connect-Button gedrückt hast, dann in dem sich dann öffnenden Fenster den USB-Port auswählst über den der Stick an dem PC angeschlossen und unter Windows eingebunden wurde. Der Rest des flashens ist dann eigentlich selbsterklärend.

Irgendwelche Lese- oder Schreibrechte unter Windows spielen da eigentlich gar keine Rolle.

VG Jim

Hab ich alles so gemacht und funktioniert mit der ESP Home. Es geht kein Flashen !!!
Es versucht zu schreiben und bricht dann ab.

Using ‘COM3’ as serial port.
Unexpected error: could not open port ‘COM3’: PermissionError(13, ‘Zugriff verweigert’, None, 5)

Ich benutze zwar schon seit Jahren kein Windows mehr, aber taucht der Stick bei Windows unter Anschlüsse (COM und LPT) als USB-Serial Gerät und dem entsprechenden COM-Port auf? Falls nein hast Du ein Treiberproblem.

Falls ja kannst Du, statt über die Web-URL von ESPHome zu flashen, auch mal den ESPHome Flasher Releases · esphome/esphome-flasher · GitHub probieren. Der muss dann unter Windows allerdings als Admin ausgeführt werden (Rechtsklick auf die *.exe und dann als Admin ausführen auswählen).

Der PermissionError kann halt alles Mögliche bedeuten und steht quasi nur für “funktioniert nicht”. :slightly_smiling_face: Das kann an den Treiber liegen, an dem USB Port, an dem USB Kabel, oder - falls Du z.B. den ESPHome Flasher benutzt - daran das man diesen nicht als Admin ausgeführt hat. Auch kann es dann natürlich auch noch daran liegen das der Stick sich nicht im Flash-Mode befindet.

Mehr kann ich Dir dazu leider auch nicht sagen und Du musst Dich selber nach dem konkreten Problem bei Dir auf die Suche begeben. Mit Lese- oder Schreibrechten auf dem Stick unter Windows hat es jedenfalls nichts zu tun. Wenn man mal von dem als Admin ausführen absieht.

VG JIm

Es war nicht sauber gelötet. Es waren alle Lichter an … nach dem neuen lötvorgang hat alles funktioniert…beim Flashvorgang war somit der falsche Modus aktiv. Danke für deine Info‘s und Hilfestellung. So konnte ich alle Fehler nochmals durchchecken. Dachte echt das es an Windows liegt und hatte mich da festgefroren.