98 lines
2.4 KiB
Markdown
98 lines
2.4 KiB
Markdown
|
|
# Flash ESP8266 Script
|
|
|
|
## Version: 1.0.0
|
|
|
|
### Author: Marcel Peterkau
|
|
### Copyright: 2024
|
|
### License: MIT
|
|
|
|
---
|
|
|
|
## Beschreibung
|
|
|
|
Dieses Skript entpackt ein ZIP-Archiv, das Firmware- und Dateisystem-Dateien für einen ESP8266 enthält, und flasht diese auf das Gerät. Nach dem Flashen werden die entpackten Dateien automatisch gelöscht.
|
|
|
|
---
|
|
|
|
## Benutzung
|
|
|
|
```sh
|
|
python flash_esp8266.py <zip_file> [-v]
|
|
```
|
|
|
|
### Parameter
|
|
|
|
- `<zip_file>`: Der Name der ZIP-Datei, die die Firmware- und Dateisystem-Dateien enthält.
|
|
- `-v`: Aktiviert Debug-Ausgaben (optional).
|
|
|
|
### Beispiel
|
|
|
|
```sh
|
|
python flash_esp8266.py firmware_1.07_cbcdc34.zip -v
|
|
```
|
|
|
|
---
|
|
|
|
## Voraussetzungen
|
|
|
|
- Python 3.x
|
|
- Die folgenden Python-Bibliotheken müssen installiert sein:
|
|
- esptool
|
|
- pyserial
|
|
|
|
Installiere die benötigten Bibliotheken mit:
|
|
|
|
```sh
|
|
pip install esptool pyserial
|
|
```
|
|
|
|
---
|
|
|
|
## Funktionen
|
|
|
|
- **get_com_ports**: Ermittelt die verfügbaren COM-Ports.
|
|
- **find_new_com_port**: Findet den neuen COM-Port, wenn der ESP8266 angeschlossen wird.
|
|
- **extract_files**: Entpackt die ZIP-Datei und gibt die enthaltenen Dateien zurück.
|
|
- **decompress_gz**: Entpackt eine GZ-Datei.
|
|
- **clean_up**: Löscht die angegebenen Dateien nach dem Flashen.
|
|
|
|
---
|
|
|
|
## Ablauf
|
|
|
|
1. Das Skript überprüft, ob die angegebene ZIP-Datei existiert.
|
|
2. Die ZIP-Datei wird entpackt und die Firmware- und Dateisystem-Dateien werden identifiziert.
|
|
3. Die Dateisystem-Datei (GZ) wird entpackt.
|
|
4. Der Benutzer wird aufgefordert, den ESP8266 abzustecken und erneut anzustecken, um den neuen COM-Port zu ermitteln.
|
|
5. Die Firmware- und Dateisystem-Dateien werden auf den ESP8266 geflasht.
|
|
6. Die temporären Dateien werden nach dem erfolgreichen Flashen gelöscht.
|
|
|
|
---
|
|
|
|
## Fehlerbehebung
|
|
|
|
- **ZIP-Datei nicht gefunden**: Stelle sicher, dass der Pfad zur ZIP-Datei korrekt angegeben ist.
|
|
- **Erforderliche Dateien nicht im ZIP-Archiv**: Überprüfe, ob die ZIP-Datei die richtigen Dateien (`.fw.bin` und `.fs.gz`) enthält.
|
|
- **Kein neuer COM-Port gefunden**: Stelle sicher, dass der ESP8266 korrekt angeschlossen ist und warte, bis der neue COM-Port erkannt wird.
|
|
|
|
---
|
|
|
|
## Lizenz
|
|
|
|
Dieses Projekt ist unter der MIT-Lizenz lizenziert
|
|
|
|
---
|
|
|
|
## Versionshistorie
|
|
|
|
- **1.0.0** - Initiale Version
|
|
|
|
---
|
|
|
|
## Haftungsausschluss
|
|
|
|
Dieses Skript wird ohne Garantie bereitgestellt. Der Autor übernimmt keine Verantwortung für Schäden oder Datenverlust, die durch die Nutzung dieses Skripts entstehen könnten.
|
|
|
|
---
|