<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">Hi Chris,</div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">Thanks for your kind words.</div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">For building with the newer ESP-IDF
      versions, I believe the 2 recent PRs that have just been merged a
      few minutes ago should help you progress towards this goal.</div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">If not, please share more of the issues
      you're facing (error messages, etc...)<br>
    </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">There is not (to my knowledge...) a
      real documentation, but here is a summary of the steps I can
      share:</div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">
      <ul>
        <li>First and obvious step : ensure that you have <u>independent</u>
          ESP-IDF installs on your build environment, and that all are
          able to build the "hello world" example of the documentation (
<a class="moz-txt-link-freetext" href="https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/linux-macos-setup.html#get-started-linux-macos-first-steps">https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/linux-macos-setup.html#get-started-linux-macos-first-steps</a>
          )<br>
          <br>
        </li>
        <li>When starting from scratch, I often remove the "build"
          directory (rm -rf build), and start with a known "sdkconfig"
          file.<br>
          <br>
        </li>
        <li>For the standard build (which is at the moment based on our
          custom fork of ESP-IDF 3.3.4), you will certainly use your own
          "<b>sdkconfig</b>", or the one coming from
          "support/sdkconfig.default.hw31" with : "cp
          support/sdkconfig.default.hw31 sdkconfig")</li>
        <ul>
          <li>The build command would be "make -j all"<br>
            <br>
          </li>
        </ul>
        <li>For newest ESP-IDF, and assuming you are synch'd with master
          from a few minutes ago, there are is an additional step to
          add:</li>
        <ul>
          <li>First you need to patch "mongoose" with a small patch from
            here :
<a class="moz-txt-link-freetext" href="https://github.com/llange/Open-Vehicle-Monitoring-System-3/blob/build-master/vehicle/OVMS.V3/support/mongoose-espv5.patch">https://github.com/llange/Open-Vehicle-Monitoring-System-3/blob/build-master/vehicle/OVMS.V3/support/mongoose-espv5.patch</a></li>
          <li>And you will use a different "<b>sdkconfig.defaults</b>" -
            I'd suggest using for the moment the one from here :
<a class="moz-txt-link-freetext" href="https://github.com/llange/Open-Vehicle-Monitoring-System-3/blob/build-master/vehicle/OVMS.V3/support/sdkconfig.defaults.esp5.0.1">https://github.com/llange/Open-Vehicle-Monitoring-System-3/blob/build-master/vehicle/OVMS.V3/support/sdkconfig.defaults.esp5.0.1</a>
            with "rm sdkconfig* ; cp /tmp/sdkconfig.defaults.esp5.0.1
            sdkconfig.defaults"</li>
          <li>The build command would be "idf.py build"<br>
          </li>
        </ul>
      </ul>
      <p>Please note a different philosophy regarding the sdkconfig
        file:</p>
      <ul>
        <li>In ESP-IDF 3.3.4 we use a <b>"sdkconfig"</b> file from the
          "support/" directory<br>
        </li>
        <li>while is ESP-IDF >=4 I suggest that we use a "<b>sdkconfig.defaults</b>"
          (which could live in support/ but could also be in
          vehicle/OVMS.V3 in source control) and copy it as "<b>sdkconfig.defaults</b>"<br>
        </li>
      </ul>
    </div>
    <div class="moz-cite-prefix">The difference in approach is that with
      the "sdkconfig.defaults" it can live alongside you own "sdkconfig"
      and will only specify defaults values ; so that your changes to
      "sdkconfig" are not lost when we modify the "sdkconfig.defaults"
      file. You could have "sdkconfig.defaults" under source control and
      "sdkconfig" in gitignore living side by side.<br>
    </div>
    <div class="moz-cite-prefix">Cf
<a class="moz-txt-link-freetext" href="https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/kconfig.html#using-sdkconfig-defaults">https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/kconfig.html#using-sdkconfig-defaults</a><br>
    </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">You can also get inspiration from the
      automatic builds on my branch: Ex:
<a class="moz-txt-link-freetext" href="https://github.com/llange/Open-Vehicle-Monitoring-System-3/actions/runs/5017264712/jobs/8995164903">https://github.com/llange/Open-Vehicle-Monitoring-System-3/actions/runs/5017264712/jobs/8995164903</a></div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">You'll find the workflow file
      describing the build instructions here :
<a class="moz-txt-link-freetext" href="https://github.com/llange/Open-Vehicle-Monitoring-System-3/actions/runs/5017264712/workflow">https://github.com/llange/Open-Vehicle-Monitoring-System-3/actions/runs/5017264712/workflow</a></div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">And an example for each supported build
      on the left : If you click on a build, you'll find the steps that
      have been run, and if I ever forgot to write something here you'll
      find it in those logs. (Forget about the "cache" things, the
      various "updates" etc..)</div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">While those automated builds use
      docker, in fact it doesn't change the way to build.</div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">Let me know if you have issue with
      these builds, your separate ESP-IDF installs, or how to switch
      from one to the other.<br>
    </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">Regards,<br>
    </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">Le 18/05/2023 à 10:16, Chris van der
      Meijden a écrit :<br>
    </div>
    <blockquote type="cite"
      cite="mid:e809fbc880ebf3c92534a79d28c6bafea2e1a117.camel@arachnon.de">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div>Hi Ludovic</div>
      <div><br>
      </div>
      <div>Thank you for all your efforts to get ESP-IDF to the newest
        version.</div>
      <div><br>
      </div>
      <div>The reason why I have not been able to test along the way is,
        that I was not able to set up a native, non-docker, working test
        environment with the newer ESP-IDF versions.</div>
      <div><br>
      </div>
      <div>Is there a "step by step" documentation for setting up these
        newer versions without docker? That would be really helpfull.</div>
      <div><br>
      </div>
      <div>Regards</div>
      <div><br>
      </div>
      <div>Chris</div>
      <div><br>
      </div>
    </blockquote>
    <br>
    <div id="grammalecte_menu_main_button_shadow_host" style="width:
      0px; height: 0px;"></div>
  </body>
</html>