Confusion regarding the firmware binary on photon

I have used dfu-util to download the contents of my Photon on to my computer.

I assume that the photons are all flashed with modular configuration; therefore 0x08020000 would be the start of system-part1 module which I assume would end before 0x08060000

Two few strange observations:

  1. 0x08020000 and 0x08080000 (ie start of system-part1 module and the second half of system-part2 module) are identical for a length of 0x20000 bytes; which to me it does not make any sense (ie why the first 0x20000 byte half of system-part1 and the second 0x20000 byte half of system-part2 would be identical?!)

  2. The module system-part1 starting at 0x08020000: (The addresses indicated below are the offset from 0x0800 0000)

0020000 0000 2002 01d1 0802 0000 0000 0000 0000
0020010 0000 0000 0000 0000 0000 0000 0000 0000
*
0020180 0000 0000 0000 0802 fffc 0807 0000 0003
0020190 0006 0103 0000 0000 0000 0000 c484 0805
00201a0 68ec 0802 68e0 0802 c928 0805 0000 0000
00201b0 b508 4b02 681b 681b 9301 bd08 01a0 0806
00201c0 b508 4b02 681b 685b 9301 bd08 01a0 0806
00201d0 4b01 681b 4718 bf00 0004 0806 4809 490a
00201e0 b508 4288 d005 4a09 4282 d002 1a12 f006
00201f0 fa9b 4807 4a07 2100 1a12 f006 fabb 4b06
0020200 6818 bd08 0000 2000 cae0 0805 0090 2000
0020210 0090 2000 0114 2000 0114 2000 4b07 b570
0020220 461e 4c07 2500 1ae4 08a4 42a5 d004 f856
0020230 3025 4798 3501 e7f8 bd70 bf00 cad4 0805
0020240 cadc 0805 4800 4770 9ee4 0805 2ac0 b5f0

After the 0x184 bytes for the Interrupt vectors, the start of the module info indicates the start address of the module correctly indicated as 0x08020000; however, the end address is indicated as 0x0807fffc
which is way beyond the supposed bound for this module (0x08060000)!!

In addition in the same module info structure, module_function is indicated as (03) which corresponds to Mono_Firmware which I would have thought has to be (04) indicating System_part.

Anyone with an explanation?

Are you downloading from a brand new, out-the-box Photon?
These used to come with a monolithic firmware which would be auto-updated on first contact to the cloud.

Thanks @ScruffR. Yes, it is a brand new, out-of-the-box photon. I bought it last year from the Particle online store.

system-part2 stating from 0x08060000 seems to be OK though as far as its module info contents goes. It says it is modular and has got the start and end addresses within bounds. The only suspect part about it is what I referred to in my question 1 above.

Even if it is monolithic, by the sounds of what you are saying, it should have been auto-updated with a modular one, which poses the question what is the status of my photon with the firmware image referred to above!

did you get the device online, breathing cyan and then go into magenta OTA three times till it went back to breathing cyan?
If not, you might have still got a mono firmware or only some parts of the auto-update