|
11 | 11 |
|
12 | 12 | # 0x000000 bootloader
|
13 | 13 | # 0x008000 partitions
|
14 |
| -# 0x00E000 boot_app |
15 |
| -# 0x010000 app |
16 |
| -# 0x330000 spiffs |
17 |
| -# 0x3C0000 certs |
| 14 | +# 0x009000 fws |
| 15 | +# 0x00E000 boot_app/otadata |
| 16 | +# 0x010000 certs |
| 17 | +# 0x050000 app0 |
| 18 | +# 0x1E0000 app1 |
| 19 | +# 0x370000 spiffs |
| 20 | +# 0x3F0000 nvs |
| 21 | +# 0x3F5000 coredump |
18 | 22 |
|
19 |
| -# calculate the output binary size, app offset |
20 |
| -outputSize = 0x3C0000 + len(certsData) |
21 |
| -if (outputSize % 1024): |
22 |
| - outputSize += 1024 - (outputSize % 1024) |
| 23 | +# calculate the output binary size included nvs |
| 24 | +outputSize = 0x3F5000 |
23 | 25 |
|
24 | 26 | # allocate and init to 0xff
|
25 | 27 | outputData = bytearray(b'\xff') * outputSize
|
|
32 | 34 | outputData[0x8000 + i] = partitionData[i]
|
33 | 35 |
|
34 | 36 | for i in range(0, len(bootApp)):
|
35 |
| - outputData[0xE000 + i] = bootApp[i] |
| 37 | + outputData[0xE000 + i] = bootApp[i] |
| 38 | + |
| 39 | +for i in range(0, len(certsData)): |
| 40 | + outputData[0x10000 + i] = certsData[i] |
36 | 41 |
|
37 | 42 | for i in range(0, len(appData)):
|
38 |
| - outputData[0x10000 + i] = appData[i] |
| 43 | + outputData[0x50000 + i] = appData[i] |
39 | 44 |
|
40 | 45 | for i in range(0, len(spiffsData)):
|
41 |
| - outputData[0x330000 + i] = spiffsData[i] |
| 46 | + outputData[0x370000 + i] = spiffsData[i] |
42 | 47 |
|
43 |
| -for i in range(0, len(certsData)): |
44 |
| - outputData[0x3C0000 + i] = certsData[i] |
| 48 | +outputFilename = "UNOR4USBBridge/build/esp32-patched.esp32.arduino_unor4wifi_usb_bridge/S3-ALL.bin" |
45 | 49 |
|
| 50 | +# write out |
| 51 | +with open(outputFilename,"w+b") as f: |
| 52 | + f.seek(0) |
| 53 | + f.write(outputData) |
| 54 | + f.close |
46 | 55 |
|
47 |
| -outputFilename = "UNOR4USBBridge/build/esp32-patched.esp32.arduino_unor4wifi_usb_bridge/S3.bin" |
48 |
| -if (len(sys.argv) > 1): |
49 |
| - outputFilename = sys.argv[1] |
| 56 | +outputFilename = "UNOR4USBBridge/build/esp32-patched.esp32.arduino_unor4wifi_usb_bridge/S3-BOOT-APP.bin" |
50 | 57 |
|
51 | 58 | # write out
|
52 | 59 | with open(outputFilename,"w+b") as f:
|
53 | 60 | f.seek(0)
|
54 |
| - f.write(outputData) |
| 61 | + f.write(outputData[:0x1E0000]) |
| 62 | + f.close |
| 63 | + |
| 64 | +outputFilename = "UNOR4USBBridge/build/esp32-patched.esp32.arduino_unor4wifi_usb_bridge/S3-APP.bin" |
| 65 | + |
| 66 | +# write out |
| 67 | +with open(outputFilename,"w+b") as f: |
| 68 | + f.seek(0) |
| 69 | + f.write(outputData[0xE000:0x1E0000]) |
| 70 | + f.close |
0 commit comments