How to update the project build date and time in the bin file header without make clean and full build.
Posted: Mon Sep 30, 2024 3:28 am
I am using ESP IDF version 5.3.
If I do a make clean and full build, the build date and time is updated in my project where I reference __DATE__ and __TIME__ as well as in the project bin file header.
But if I don't do a full build, the build date and time do not update.
I know which file I need to "touch" in MY source so that my app always gets the new build, but the file header referenced by OTA does not update. I have also confirmed this with a binary file viewer, see below staring at address 0000:0000 where the red text has the time and date.
e9 05 02 4f b4 55 37 40 ee 00 00 00 09 00 00 00
00 63 00 00 00 00 00 01 20 00 13 3c 1c e3 04 00
32 54 cd ab 00 00 00 00 00 00 00 00 00 00 00 00
31 2e 31 2e 30 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
77 69 6e 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
31 33 3a 31 35 3a 30 30 00 00 00 00 00 00 00 00
53 65 70 20 33 30 20 32 30 32 34 00 00 00 00 00
76 35 2e 33 2d 64 69 72 74 79 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
I am using OTA via HTTPS and am referencing the bin file header build date and time so I need this to be correct for management purposes.
I have seen articles suggesting I need to touch the file ../esp/v5.3/esp-idf/components/app_update/esp_ota_app_desc.c, but I have not found this to make any difference to any references to the build date and time.
Ideas?
If I do a make clean and full build, the build date and time is updated in my project where I reference __DATE__ and __TIME__ as well as in the project bin file header.
But if I don't do a full build, the build date and time do not update.
I know which file I need to "touch" in MY source so that my app always gets the new build, but the file header referenced by OTA does not update. I have also confirmed this with a binary file viewer, see below staring at address 0000:0000 where the red text has the time and date.
e9 05 02 4f b4 55 37 40 ee 00 00 00 09 00 00 00
00 63 00 00 00 00 00 01 20 00 13 3c 1c e3 04 00
32 54 cd ab 00 00 00 00 00 00 00 00 00 00 00 00
31 2e 31 2e 30 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
77 69 6e 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
31 33 3a 31 35 3a 30 30 00 00 00 00 00 00 00 00
53 65 70 20 33 30 20 32 30 32 34 00 00 00 00 00
76 35 2e 33 2d 64 69 72 74 79 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
I am using OTA via HTTPS and am referencing the bin file header build date and time so I need this to be correct for management purposes.
I have seen articles suggesting I need to touch the file ../esp/v5.3/esp-idf/components/app_update/esp_ota_app_desc.c, but I have not found this to make any difference to any references to the build date and time.
Ideas?