As the title says... Chat on...

User avatar
By Tinue
#18386 The default AT firmware seems to have an "old" and a "new" memory layout (without or with a boot loader), and the layout is dependent on the flash size. Also, there seem to be two ROM sections: For the 512k flash for example one is below 256k, and one starts at 256k. Before the 2nd 256k block there is free space.

The files that are generated when I build nodeMCU seem to fit neither of these layouts: 0x00000.bin is too big for a bootloader, and 0x10000 is too big to fit into the first 256k of the flash. Apparently, there eis also some free space between 0x00000 and 0x10000 (ca. 15k).

This leads me to some questions:
    What is the memory layout of nodeMCU?
    Will I have more space for LUA scripts with a bigger flash (e.g. the 4M flash of the newer ESP-12Es)?

Also, I am confused about the generated "blank.bin" and "esp_init_data_default.bin". The former is 4k is size, but I have seen a memory map that shows this area to be 8k. The latter is just 128 bytes, but again seems to go into a much bigger area. What exactly is in these files and why is their size seemingly to little?
User avatar
By ChrisSparks
#53870 I am tagging onto this discussion as I want to know more about the memory mapping. I have a 12F with 4 MB and I have seen references to different addresses and such and none of it makes sense as to what is going where. I'd eventually want to get away from LUA and just program directly in C but until I get more information as to layout, I need to know more.
User avatar
By ChrisSparks
#53930
marcelstoer wrote:Two resources:
- wiki/doku.php?id=esp8266_memory_map
- https://www.kickstarter.com/projects/21 ... ts/1501224


Much appreciated! Exactly what I was looking for. Never considered micropython. I just know that using python has really messed up my Raspberry Pi3 as it now runs very slowly. Worth checking out.

chris.