-
Notifications
You must be signed in to change notification settings - Fork 72
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
filesystem.espfs #94
Comments
filesystem.espfs stores all the static pages served via web. It is flashed in the next block after the firmware, the actual offset is calculated dynamically. Right now you can download the filesystem file via tftp. There's also a webdl command for that, but it's currently crashing. You can find out the right address from the fk boot log and use write_flash afterwards. |
I'm still facing problems with flashing. I can't flash it on an ESP-07, it fails with a "waiting for packet header" error at 93% or 95% depending most of the times on the baud rate I use, but this one doesn't really count since maybe it's memory is already damaged (I can't run a simple sketch, but Arduino IDE is still able to flash it). But what is strange is that I have a nodemcu v3 board (or similar clone with an ESP-12N mounted on it, not sure it's original) that I can flash fine, but right after flashing it I get the following serial output endlessly repeated:
and after a reset nothing is printed, just the usual strange output you get during reset. I'm using the following command to flash it with the following output:
I'm doing something wrong? Is there anything else I could try? EDIT: according to this thread, this error happens when a program tries to read form an invalid memory address: http://www.esp8266.com/viewtopic.php?f=34&t=4665 |
UPDATE: seems that the issue is solved (on the nodemcu) by specifying the "dio" flashing mode, now after flashing I get the following output:
What should I do now? |
If you are stuck in a bootloop most likely you are missing esp-init-data.bin. See nodemcu docs, where they describe flashing one. Try to fix that one first and flash without dio mode. something tells me dio mode didn't flash anything valid, so you were just stuck in rom code. If wifi commands in frankenstein work weird after flashing, not connecting automatically, causing random reboots - please wipe THE WHOLE FLASH clean. wifi configurations stored from earlier sdk version tend to screw things up in newer SDKs. |
Hello again, I just tried to flash a brand new esp8266 using nodemcu flasher (https://github.com/nodemcu/nodemcu-flasher) (esptool was failing as previously described). The tool flashed it without trowing errors (but was really quick) but once rebooted I got seemingly random characters. I tried to set my terminal to 9600 and 115200 baud but didn't got any intelligible output, which is the default baud rate of your firmware? |
It should be 115200! ROM loader spews out some debugging at weird 78kbps or so, so a little bit of gibberish at the start is expected with esp8266 on any firmware. But frankenstein than switches to 115200. |
Could you please tell me which board/chip do you use to test your firmware and which tool do you use to flash it? If it's esptool, could you please post the full command so I can see all the switches that you use and the options that you pass? |
I'm using a variety of esp8266 modules. with 4MiB and 512KB flash along with esptool.py.
The address of the last one for esp_init_data_default.bin is dependent on flash size. (NodeMCU flash.md has a good table of those):
The filesystem is more tricky than that. You have to boot it once, and look at what address the firmware expects to see the filesystem, and flash it there. espfs support is still somewhat buggy. |
I updated esptool to the latest version available on pip, now on the nodemcu clone I don't get anymore the "Fatal exception (28)" error, but after reset I don't get any intelligible output. But while doing my tests I found out that there are different versions of esp_init_data_default.bin around, could you please point me to the one you're using, so I can be 100% sure we are using exactly the same binary files? Thank you. I also plan to buy an original nodemcu and a bunch of esp-01 to do some other tests. |
Good news: I was able to flash all files but the filesystem using the nodemcu flasher on the nodemcu clone, and I got to the point where the serial output is this: |
This line should print you the correct address: esp8266-frankenstein/src/main.c Line 107 in 7909483
Basically the flash layout in frankenstein is somewhat like this (from start to end of flash) FIRMWARE (IRAM PART) | FIRMWARE ICACHE_FLASH | FILESYSTEM DATA | ENVIRONMENT | ESP CALIBRATION DATA |
Just two more questions: at which address should I flash the filesystem.espfs file? Do I flash it the same way as binary files using the write_flash option of esptool or should I use write_mem instead?
Sorry but I don't know esptool well and it's documentation doesn't explain the difference between write_flash and write_mem.
The text was updated successfully, but these errors were encountered: