Add version strings to the boot partitions on the firmware page
I though it would be useful to show what version each boot partition contains; here's what I came up with today: https://github.com/leres/Open-Vehicle-Monitoring-System-3/commit/39a32b0a5ff... I've also attached a screen grab. Comments? Craig
Looks cool. Those prefix and postfix were put there for that reason, but we never got round to doing it. How is performance? If acceptable, please send a pull request and we’ll get it merged (unless anyone else has any comments / suggestions)? Could you extend the ‘ota status’ command to show the same? Regards, Mark.
On 12 Nov 2018, at 10:48 AM, Craig Leres <leres@xse.com> wrote:
I though it would be useful to show what version each boot partition contains; here's what I came up with today:
https://github.com/leres/Open-Vehicle-Monitoring-System-3/commit/39a32b0a5ff...
I've also attached a screen grab.
Comments?
Craig <ovms-v.png>_______________________________________________ OvmsDev mailing list OvmsDev@lists.openvehicles.com http://lists.openvehicles.com/mailman/listinfo/ovmsdev
On 11/11/2018 6:53 PM, Mark Webb-Johnson wrote:
Looks cool. Those prefix and postfix were put there for that reason, but we never got round to doing it.
How is performance? If acceptable, please send a pull request and we’ll get it merged (unless anyone else has any comments / suggestions)?
I'll measure it but I suspect it's on the order of msecs. It has to read about 80K of flash to find the version string. Seems like the version finder code should live in main/ovms_version.cpp?
Could you extend the ‘ota status’ command to show the same?
Currently it shows: OVMS# ota status Running partition: factory Boot partition: factory Firmware: 3.1.011-16-gb8dc60e-dirty/factory/main (build idf v3.1-dev-1586-g65355d28 Nov 11 2018 16:39:30) Server Available: 3.1.011 (no update required) Sun Nov 4 01:53:00 UTC 2018 OTA release [...] Maybe add this after the "Boot partition" line? Factory image: 3.1.011-16-gb8dc60e-dirty OTA_0 image: 3.1.011 OTA_1 image: 3.1.011-16-gb8dc60e I'll try for a pull request next weekend. Craig
I'll measure it but I suspect it's on the order of msecs. It has to read about 80K of flash to find the version string.
ok
Seems like the version finder code should live in main/ovms_version.cpp?
Yep.
Maybe add this after the "Boot partition" line?
I think the top part of the report is showing what you have, and the bottom part is what is available. Perhaps order like this:
OVMS# ota status Firmware: 3.1.011-16-gb8dc60e-dirty/factory/main (build idf v3.1-dev-1586-g65355d28 Nov 11 2018 16:39:30)
Running partition: factory Boot partition: factory Factory image: 3.1.011-16-gb8dc60e-dirty OTA_0 image: 3.1.011 OTA_1 image: 3.1.011-16-gb8dc60e
Server Available: 3.1.011 (no update required) Sun Nov 4 01:53:00 UTC 2018 OTA release [...]
Better? Regards, Mark.
On 12 Nov 2018, at 11:50 AM, Craig Leres <leres@xse.com> wrote:
On 11/11/2018 6:53 PM, Mark Webb-Johnson wrote:
Looks cool. Those prefix and postfix were put there for that reason, but we never got round to doing it.
How is performance? If acceptable, please send a pull request and we’ll get it merged (unless anyone else has any comments / suggestions)?
I'll measure it but I suspect it's on the order of msecs. It has to read about 80K of flash to find the version string.
Seems like the version finder code should live in main/ovms_version.cpp?
Could you extend the ‘ota status’ command to show the same?
Currently it shows:
OVMS# ota status Running partition: factory Boot partition: factory Firmware: 3.1.011-16-gb8dc60e-dirty/factory/main (build idf v3.1-dev-1586-g65355d28 Nov 11 2018 16:39:30) Server Available: 3.1.011 (no update required)
Sun Nov 4 01:53:00 UTC 2018 OTA release [...]
Maybe add this after the "Boot partition" line?
Factory image: 3.1.011-16-gb8dc60e-dirty OTA_0 image: 3.1.011 OTA_1 image: 3.1.011-16-gb8dc60e
I'll try for a pull request next weekend.
Craig
Could you extend the ‘ota status’ command to show the same?
It was easier than I thought so I wrapped this up tonight and created a pull request: https://github.com/openvehicles/Open-Vehicle-Monitoring-System-3/pull/169/fi... Appended is sample output from "ota status". Craig OVMS# ota status Firmware: 3.1.011-21-g482c9d3/factory/main (build idf v3.1-dev-1586-g65355d28 Nov 13 2018 23:39:54) Running partition: factory Boot partition: factory Factory image: 3.1.011-21-g482c9d3 OTA_O image: 3.1.011 OTA_1 image: 3.1.011-16-gb8dc60e Server Available: 3.1.011 (no update required) [...]
There seems to be a compilation warning: $ make -j 4 Build version is 3.1.011-21-g5d46d82 CXX build/main/ovms_version.o In file included from main/ovms_version.cpp:34:0: esp/esp-idf/components/bootloader_support/include/esp_image_format.h:44:3: warning: 'esp_image_spi_freq_t' defined but not used [-Wunused-variable] } esp_image_spi_freq_t; ^ I merged it, to allow further testing on ‘edge’ boxes, but it would be good if that could be cleaned up. Regards, Mark.
On 14 Nov 2018, at 3:46 PM, Craig Leres <leres@xse.com> wrote:
Could you extend the ‘ota status’ command to show the same?
It was easier than I thought so I wrapped this up tonight and created a pull request:
https://github.com/openvehicles/Open-Vehicle-Monitoring-System-3/pull/169/fi...
Appended is sample output from "ota status".
Craig
OVMS# ota status Firmware: 3.1.011-21-g482c9d3/factory/main (build idf v3.1-dev-1586-g65355d28 Nov 13 2018 23:39:54) Running partition: factory Boot partition: factory Factory image: 3.1.011-21-g482c9d3 OTA_O image: 3.1.011 OTA_1 image: 3.1.011-16-gb8dc60e Server Available: 3.1.011 (no update required)
[...]
On 11/14/18 4:09 AM, Mark Webb-Johnson wrote:
There seems to be a compilation warning:
$ make -j 4 Build version is 3.1.011-21-g5d46d82 CXX build/main/ovms_version.o In file included from main/ovms_version.cpp:34:0: esp/esp-idf/components/bootloader_support/include/esp_image_format.h:44:3: warning: 'esp_image_spi_freq_t' defined but not used [-Wunused-variable] } esp_image_spi_freq_t; ^
I merged it, to allow further testing on ‘edge’ boxes, but it would be good if that could be cleaned up.
Sorry, when I hit this I fixed what looked like an obvious typo but didn't notice it was in esp-idf. Here's the pull request: https://github.com/openvehicles/esp-idf/pull/3/files Craig
Yep, that is it. Also in espressif github issue tracker: https://github.com/espressif/esp-idf/issues/2136 <https://github.com/espressif/esp-idf/issues/2136> Regards, Mark.
On 15 Nov 2018, at 1:34 AM, Craig Leres <leres@xse.com> wrote:
On 11/14/18 4:09 AM, Mark Webb-Johnson wrote:
There seems to be a compilation warning: $ make -j 4 Build version is 3.1.011-21-g5d46d82 CXX build/main/ovms_version.o In file included from main/ovms_version.cpp:34:0: esp/esp-idf/components/bootloader_support/include/esp_image_format.h:44:3: warning: 'esp_image_spi_freq_t' defined but not used [-Wunused-variable] } esp_image_spi_freq_t; ^ I merged it, to allow further testing on ‘edge’ boxes, but it would be good if that could be cleaned up.
Sorry, when I hit this I fixed what looked like an obvious typo but didn't notice it was in esp-idf. Here's the pull request:
https://github.com/openvehicles/esp-idf/pull/3/files
Craig
On 11/11/18 7:50 PM, Craig Leres wrote:
How is performance? I'll measure it but I suspect it's on the order of msecs. It has to read about 80K of flash to find the version string.
Quick survey says: < 50ms: I (151261) web: partition_detail Factory image took 0.049545 I (151281) web: partition_detail OTA_0 image took 0.024156 I (151301) web: partition_detail OTA_1 image took 0.048522 Craig
participants (2)
-
Craig Leres -
Mark Webb-Johnson