It has been reported that some of this information is out of date. Flashing the device with Meshtastic-flasher should fix these partition issues and update you to the current web interface.
FIXME - Investigate and rewrite document to reflect the current ESP32 Partition mitigation.
Insufficient space to upload web interface files
This problem seems to occur when your board has the partitioning structure set incorrectly. This typically occurs when the board has had a firmware other than Meshtastic on it previously. In this situation, the file upload page on the device typically shows a free space of around 48,000 bytes, rather than the ~300,000 bytes that it should have free.
There are a number of methods that essentially involve erasing the flash and then re-uploading the Meshtastic firmware.
The most reliable way to fix this problem is to use the install script that is included in the meshtastic firmware zip. If that doesn’t work, these other methods may work:
Using the Arduino IDE:
Using Pio in Windows
pio run --target erase --environment tbeam
Then re-install the firmware ie using ESPHome Flasher.
Requires: Python, Pio, command to be run in the root directory of the meshtastic-device project once you’ve cloned it (this last requirement is an assumption based on pio not knowing what a tbeam is, may also require Visual Studio Code and PlatformIO as these were installed during use).
@1984 posted another method using the python based esptool.py to erase and re-flash the firmware:
esptool.py --baud 921600 erase_flash
esptool.py --baud 921600 write_flash 0x1000 system-info.bin
esptool.py --baud 921600 write_flash 0x00390000 spiffs-*.bin
esptool.py --baud 921600 write_flash 0x10000 firmware-tbeam-EU865-1.1.42.bin
Visual Studio & PlatformIO
There is also the method of using the Visual Studio IDE. This requires having Visual Studio and PlatformIO installed, along with having cloned the meshtastic-device code as per the build instructions. After loading the project in Visual Studio, select the PlatformIO alien icon, then find the appropriate device, and then click the Erase Flash command.
How do I know it's worked?
Once it has been successfully erased and re-flashed, visiting https://192.168.42.1/static should leave you with free space on the order of 300,000 bytes, rather than the ~48,000 bytes you currently have. You can then upload the files from the meshtastic-web release.
Occasionally, this may glitch may appear when uploading the larger app.js.gz file, but a further erase and flash typically solves this.