|
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