Ludovic,

really great & appreciated you're going ahead on this. I second skipping idf 4 and going directly for version 5. I'll try to get my idf 5 build environment up ASAP.

I need to get into cmake myself as well. Needing to hard code dependencies doesn't sound good though, I thought cmake is supposed to be smart about this.

I'll have a look at porting the custom crash handler to idf 5. There were some other additions that haven't been accepted by Espressif, IIRC. I'll see if I can check them as well.

Regards,
Michael


Am 23.01.23 um 11:04 schrieb Ludovic LANGE:

Hi list,

I am interested in upgrading our codebase to a latest ESP-IDF version (preferentially v5 which has just happened end of 2022 - Happy New Year ! :-)) - mostly to be able to use some components for which a backport seems difficult (for example :  https://github.com/openvehicles/Open-Vehicle-Monitoring-System-3/issues/752 ), and as a matter of balance between stability vs latest bugfixes, security fixes, new features etc...

In the past it seems that some endeavours already set the basis to make this happen (https://github.com/openvehicles/Open-Vehicle-Monitoring-System-3/issues/263, https://github.com/openvehicles/Open-Vehicle-Monitoring-System-3/issues/360 ).

I'm now trying to revive this effort, and after some work managed to have:

(WARNING: some important features of OVMS have been deactivated for the moment, see end of post)

The produced binaries seem to "work on my machine board", as they end with a "OVMS#" prompt and a few (very) basic tests look OK (to be honest, unfortunately no real tests have been done except to check that the binary does not crash during boot and a few seconds of run, checking that WiFi / web Interface is OK, sdcard is OK - but very basic)


You'll find the changes here : https://github.com/llange/Open-Vehicle-Monitoring-System-3/tree/experimental-esp-idf-v4-rework-network
(In the README.md, there is a short notice at the top with a few useful informations)


I'm now reaching out here mostly for :


My next steps could be (of course, subject to feedback) :

  1. Have 100% of the cmake implementation finished (all the missing vehicle_* components) -> easy (only missing time)
  2. Work on the warnings (currently disabled in the builds) and try to fix as much as possible
  3. Iron out all the bugs, improve the dev documentation -> need help on finding them with real-world use
  4. 1st goal is to propose this result as a merge request (either as a whole, or split depending on feedback - ideally I would like to have a first (big) MR accepted quickly so that people can play with it, and deliver incremental updates as expected)
  5. then work on the v5 and do the same.


(Please note that my cmake skills are inexistent - so be careful when opening those files to not hurt yourself.)

# The guidelines I tried to follow:


# Missing features:

In the course of this work I had to make some decisions to speed up the work  - that will need to be acted upon:


Let me know your comments and questions.

Best regards,


-- 
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26