@Christian: Zerstückelt zu Übertragen wäre optimal. Der Web-Server beherrscht „chunked response“.
Am besten man benutzt dann auch nur Stack. Letztendlich läuft das im Kontext eines Tasks der AsyncTCP Lib, welcher mit 16K Stack ausgestattet ist.
@compactflash: Wie @biologist schon geschrieben hat, wäre das grundsätzlich möglich. Du kannst aber auch einfach im Finder-Fenster, wenn Safari es geöffnet hat, Shift+Command+Punkt drücken. Damit aktivierst du die Anzeige der versteckten Dateien und Ordner.
Zudem könntest du auch das updateFirmware.py Skript nehmen, falls du öfters die Firmware updaten willst. Einfach in den ESPuino-Ordner und dann das Skript ausführen, z.B.:
python3 updateFirmware.py .pio/build/lolin32/firmware.bin
Zuvor noch über pip folgende Module installieren:
python3 -m pip install requests zeroconf
Voraussetzung: MDNS muss bei ESPuino kompiliert/aktiviert werden.
Das Skript findet dann selbst den ESPuino und bügelt die neue Firmware drauf. Ich benutze das Skript, um von der Couch aus zu entwickeln .