You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For several days I have spent trying to decipher the documentation to understand how to properly flash a LFS image
to the esp8266 using esptool. I understand there are multiple ways, one can place the LFS image in spiffs, one can
place it at a offset, and in a partition? This is badly documented.
in user_config.h the following (LFS related) is defined
LUA_FLASH_STORE 0x10000
Which I understand defines the default size of the LFS image if its not overridden in partition table.
NODEMCU_LFS0_PARTITION 3
NODEMCU_LFS1_PARTITION 4
I am not really able to find any documentation about what this actually does.
Running the code:
do
local s,p={},node.getpartitiontable()
for _,k in ipairs{'lfs_addr','lfs_size','spiffs_addr','spiffs_size'} do
s[#s+1] ='%s = 0x%06x' % {k, p[k]}
end
print ('{ %s }' % table.concat(s,', '))
end
Then I believe I should flash this to the 0x07a000 region:
tools/toolchains/esptool.py --port /dev/ttyUSB0 write_flash -fm dio 0x07a000 luac.out
esptool.py v2.6
Serial port /dev/ttyUSB0
Connecting....
Detecting chip type... ESP8266
Chip is ESP8266EX
Features: WiFi
MAC: e8:db:84:eb:a8:e4
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Auto-detected Flash size: 4MB
Compressed 2068 bytes to 2079...
Wrote 2068 bytes (2079 compressed) at 0x0007a000 in 0.2 seconds (effective 88.5 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting via RTS pin...
After resetting, serial console outputs:
Flash sig not correct: 0x00088b1e vs 0xfafaa154
Ok, so lets try to create a absolute addressed lfs image (even tho docs say:
_Note that the new NodeMCU loader uses the -f compact relocatable form and does relocation based on the Partition Table, so this option is deprecated and will be removed in future releases.)
./luac.cross -f -a 0x07a000 -s -m 0x10000 local/fs/init.lua
./luac.cross: '-e' absolute address must be valid flash address
usage: ./luac.cross [options] [filenames].
At this point I am really lost. can someone please try to clarify?
How does partition0 and partition1 relate to the lfs_addr?
How should I compile the LFS image?
How should I flash it?
The text was updated successfully, but these errors were encountered:
For several days I have spent trying to decipher the documentation to understand how to properly flash a LFS image
to the esp8266 using esptool. I understand there are multiple ways, one can place the LFS image in spiffs, one can
place it at a offset, and in a partition? This is badly documented.
in user_config.h the following (LFS related) is defined
LUA_FLASH_STORE 0x10000
Which I understand defines the default size of the LFS image if its not overridden in partition table.
I am not really able to find any documentation about what this actually does.
Running the code:
outputs the following:
{ lfs_addr = 0x07a000, lfs_size = 0x010000, spiffs_addr = 0x08a000, spiffs_size = 0x373000 }
Given this information, I try to create a lfs image:
first a compact relocatable (https://nodemcu.readthedocs.io/en/dev/compiling/) documentation is hard to understand also here:
Then I believe I should flash this to the 0x07a000 region:
After resetting, serial console outputs:
Flash sig not correct: 0x00088b1e vs 0xfafaa154
Ok, so lets try to create a absolute addressed lfs image (even tho docs say:
_Note that the new NodeMCU loader uses the -f compact relocatable form and does relocation based on the Partition Table, so this option is deprecated and will be removed in future releases.)
At this point I am really lost. can someone please try to clarify?
How does partition0 and partition1 relate to the lfs_addr?
How should I compile the LFS image?
How should I flash it?
The text was updated successfully, but these errors were encountered: