As above, the 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. As well as the method of using the Arduino IDE to reset it, there are a couple of other methods that essentially involve erasing the flash and then re-uploading the Meshtastic firmware.
For Windows, try:
pio run --target erase --environment tbeam
Then re-install the firmware ie using ESPHome Flasher
Prerequisits: Python, Pio (pio · PyPI), 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).
@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
There is also the method of using the Visual Studio IDE as posted by @mc-hamster. This requires having Visual Studio and PlatformIO installed, along with having cloned the meshtastic-device code:
Once it has been successfully erased and re-flashed, visiting https://192.168.42.1/static should leave you free free space on the order of 300,000 bytes, rather than the 43,000 bytes you currently have. You can then upload the files from the meshtastic-web release.
Occasionally this may glitch when uploading the larger app.js.gz file, but a further erase and flash typically solves this.