512K / 4K = 128
2048K / 16K = 128
So far the only options for page sizes are 4K and 16K -- multiply by 128 to get the max flash size.
Explore... Chat... Share...
Squonk wrote:obvy wrote:We have on hands dump of 512K size. But then people said there can be bigger flash chip - and smaller, too.
I can't find the place listing the different Flash memory sizes.
Are you sure there are some smaller sizes, or different than 512K and 2M?
obvy wrote:It can be mask ROM, or OTP, or just flash ROM whose means of programming are yet to be discovered.
obvy wrote:1. All this information is based on the dumps provided by 3rd parties. They may be incorrect or erronuous.
2. kongo, provider of builtin ROM dump, reports that reading 0x40200000 and up returns zeroes (but then who are you to read my app? ever heard of vendor flash protection?)
obvy wrote:3. Demo app from SDK was built and posted here, and sizes more than 32K, and thus won't fit into (provided by vendor) I-RAM size. But then it is surprisingly segfaults on execution.
kongo wrote:I think it is safe to assume that the boot ROM is indeed ROM.
obvy wrote:1. All this information is based on the dumps provided by 3rd parties. They may be incorrect or erronuous.
2. kongo, provider of builtin ROM dump, reports that reading 0x40200000 and up returns zeroes (but then who are you to read my app? ever heard of vendor flash protection?)
Hey, thanks for the stab. I've heard of memory protection and commented on it much earlier in this thread, but I think it is highly unlikely that such a scheme is employed, judging from the other parts of this story (We're still loading unencrypted, unsigned application code from an external flash chip!)
The AT application firmware image is ~32074 bytes, including headers, and that is further divided into IRAM and DRAM. It looks like the IRAM at 0x40100000 is ~64KiB, but I have to verify that it does not wrap around.
The application firmware .text segment is linked and loaded at 0x40100000, .data and .rodata is loaded in DRAM at 0x3ffe8000. Writing to the 0x40200000/0x40240000 range through the bootloader makes it crash, probably due to a bus exception.
I feel pretty confident, because I managed to hack together an assembly routine that writes repeatedly to the UART, download it to RAM (at 0x40100000) through the bootloader and run it.
It takes about 20-25 seconds for home assistant c[…]
I tried to upgrade tof my sonoff basic R2 with the[…]
a problem Perhaps you want to define "Probl[…]
Rebooting your router will not give you a faster I[…]
There are no other notifications from esptool.py i[…]
Using the Arduino IDE, you'll learn how to set up […]
In this project, you will post to Twitter using an[…]
In this project, we will build a water level contr[…]
I guess I'm late, but I had the same problem and f[…]
Last night I received my first D1 Minis for a lear[…]
Although I am aware that this is an old post, I fe[…]