<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Yes, a good idea. The other OTA, or the factory, partition should work.<div class=""><br class=""></div><div class="">P.S. The new logic seems to work for my rev3 test boards</div><div class=""><br class=""></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class=""><div class="">OVMS# ota flash http</div><div class="">Current running partition is: factory</div><div class="">Target partition is: ota_0</div><div class="">Download firmware from <a href="http://api.openvehicles.com/firmware/ota/v3.3/main/ovms3.bin" class="">api.openvehicles.com/firmware/ota/v3.3/main/ovms3.bin</a> to ota_0</div><div class="">Expected file size is 3309600</div></div></blockquote><div class=""><div><br class=""></div><div>Regards, Mark</div><div><br class=""><blockquote type="cite" class=""><div class="">On 23 Nov 2021, at 3:00 PM, Michael Balzer <<a href="mailto:dexter@expeedo.de" class="">dexter@expeedo.de</a>> wrote:</div><br class="Apple-interchange-newline"><div class="">
  
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" class="">
  
  <div class="">
    Thanks Mark,<br class="">
    <br class="">
    fix confirmed.<br class="">
    <br class="">
    Who ran into the issue already may also be able to switch back to
    the previous 3.2 boot partition, do a reboot and then update again
    from there.<br class="">
    <br class="">
    Regards,<br class="">
    Michael<br class="">
    <br class="">
    <br class="">
    <div class="moz-cite-prefix">Am 23.11.21 um 03:22 schrieb Mark
      Webb-Johnson:<br class="">
    </div>
    <blockquote type="cite" cite="mid:D44789C9-4D22-436B-AC9F-6670A1F239FB@webb-johnson.net" class="">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" class="">
      I have merged in these reverts, and committed, then built a new
      edge on my server. I ran a few OTA updates with this, and it seems
      ok.
      <div class=""><br class="">
      </div>
      <div class="">The code now uses the old ovms_http library, based
        on normal sockets (not mongoose). This should also workaround
        the ‘ota flash http’ issue we had with ssh client connections. I
        would prefer to use mongoose (apart from uniformity, this also
        gave us support for HTTPS), but it is quite tricky to do this in
        a blocking way with the ssh client also over mongoose. Would
        need to re-work to be non-blocking for these commands.</div>
      <div class=""><br class="">
      </div>
      <div class="">Sorry, but existing edge users will probably have to
        re-flash from SD card or USB.</div>
      <div class=""><br class="">
        <div class="">Regards, Mark.</div>
        <div class=""><br class="">
          <blockquote type="cite" class="">
            <div class="">On 23 Nov 2021, at 8:24 AM, Mark Webb-Johnson
              <<a href="mailto:mark@webb-johnson.net" class="" moz-do-not-send="true">mark@webb-johnson.net</a>>
              wrote:</div>
            <br class="Apple-interchange-newline">
            <div class="">
              <div class="content-isolator__container">
                <div class="protected-part">
                  <div class="protected-title">Signed PGP part</div>
                  <div class="protected-content">
                    <meta http-equiv="Content-Type" content="text/html;
                      charset=UTF-8" class="">
                    <div style="word-wrap: break-word;
                      -webkit-nbsp-mode: space; line-break:
                      after-white-space;" class="">Damn. I had made the
                      change to roll that back, but forgot to merge my
                      local branch with those changes.
                      <div class=""><br class="">
                      </div>
                      <div class="">I just tried, but got some
                        conflicts. I’ll fix those up, and then commit
                        again.</div>
                      <div class=""><br class="">
                      </div>
                      <div class="">Regards, Mark.<br class="">
                        <div class=""><br class="">
                          <blockquote type="cite" class="">
                            <div class="">On 23 Nov 2021, at 1:58 AM,
                              Michael Balzer <<a href="mailto:dexter@expeedo.de" class="" moz-do-not-send="true">dexter@expeedo.de</a>>
                              wrote:</div>
                            <br class="Apple-interchange-newline">
                            <div class="">
                              <div class="content-isolator__container">
                                <div class="protected-part">
                                  <div class="protected-title">Signed
                                    PGP part</div>
                                  <div class="protected-content">
                                    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" class="">
                                    <div class=""> Mark,<br class="">
                                      <br class="">
                                      since updating to 3.3.001 my test
                                      module again crashes on any ota
                                      update attempt.<br class="">
                                      <br class="">
                                      The signature is the same as
                                      below, and the code seems to be
                                      unchanged…?<br class="">
                                      <br class="">
                                      Regards,<br class="">
                                      Michael<br class="">
                                      <br class="">
                                      <br class="">
                                      <div class="moz-cite-prefix">Am
                                        17.09.21 um 10:48 schrieb Mark
                                        Webb-Johnson:<br class="">
                                      </div>
                                      <blockquote type="cite" cite="mid:CD698103-86FB-473C-9103-A49B62D397AD@webb-johnson.net" class="">
                                        <meta http-equiv="Content-Type" content="text/html;
                                          charset=UTF-8" class="">
                                        I’ll have a look at it over the
                                        weekend.
                                        <div class=""><br class="">
                                        </div>
                                        <div class="">Regards, Mark.<br class="">
                                          <div class=""><br class="">
                                            <blockquote type="cite" class="">
                                              <div class="">On 17 Sep
                                                2021, at 4:39 PM,
                                                Michael Balzer <<a href="mailto:dexter@expeedo.de" class="" moz-do-not-send="true">dexter@expeedo.de</a>>
                                                wrote:</div>
                                              <br class="Apple-interchange-newline">
                                              <div class="">
                                                <div class="content-isolator__container">
                                                  <div class="protected-part">
                                                    <div class="protected-title">Signed
                                                      PGP part</div>
                                                    <div class="protected-content">
                                                      <meta http-equiv="content-type" content="text/html; charset=UTF-8" class="">
                                                      <div class="">
                                                        There is another
                                                        fatal issue with
OvmsSyncHttpClient besides the issue with running in the mongoose
                                                        context: OTA
                                                        updates are no
                                                        longer possible.<br class="">
                                                        <br class="">
                                                        When flashing
                                                        via HTTP, the
                                                        OvmsSyncHttpClient
                                                        tries to
                                                        allocate memory
                                                        for a full
                                                        firmware image,
                                                        which of course
                                                        fails:<br class="">
                                                        <br class="">
                                                        <font class="" face="monospace">OVMS#
                                                          ota flash http
                                                          <br class="">
                                                          Current
                                                          running
                                                          partition is:
                                                          factory<br class="">
                                                          Target
                                                          partition is:
                                                          ota_0<br class="">
                                                          Download
                                                          firmware from
                                                          <a href="http://ovms.dexters-web.de/firmware/ota/v3.1/edge/ovms3.bin" class="" moz-do-not-send="true">ovms.dexters-web.de/firmware/ota/v3.1/edge/ovms3.bin</a>
                                                          to ota_0<br class="">
                                                          Guru
                                                          Meditation
                                                          Error: Core  1
                                                          panic'ed
                                                          (StoreProhibited).
                                                          Exception was
                                                          unhandled.<br class="">
                                                          Core 1
                                                          register dump:<br class="">
                                                          PC      :
                                                          0x4022438b 
                                                          PS      :
                                                          0x00060a30 
                                                          A0      :
                                                          0x802245cd 
                                                          A1      :
                                                          0x3ffe9c70  <br class="">
                                                          A2      :
                                                          0x00000000 
                                                          A3      :
                                                          0x3ffe6f5c 
                                                          A4      :
                                                          0x00000001 
                                                          A5      :
                                                          0xffffffff  <br class="">
                                                          A6      :
                                                          0x3fabad7c 
                                                          A7      :
                                                          0xff000000 
                                                          A8      :
                                                          0x00000000 
                                                          A9      :
                                                          0x3ffe9c50  <br class="">
                                                          A10     :
                                                          0x00000000 
                                                          A11     :
                                                          0x3ffe6f5c 
                                                          A12     :
                                                          0x00000001 
                                                          A13     :
                                                          0x0000000a  <br class="">
                                                          A14     :
                                                          0x00000037 
                                                          A15     :
                                                          0x00000057 
                                                          SAR     :
                                                          0x00000018 
                                                          EXCCAUSE:
                                                          0x0000001d  <br class="">
                                                          EXCVADDR:
                                                          0x00000000 
                                                          LBEG    :
                                                          0x4008b179 
                                                          LEND    :
                                                          0x4008b19b 
                                                          LCOUNT  :
                                                          0xffffffff  <br class="">
                                                          <br class="">
                                                          ELF file
                                                          SHA256:
                                                          94a8e191baae33a5<br class="">
                                                          <br class="">
                                                          Backtrace:
                                                          0x4022438b:0x3ffe9c70
0x402245ca:0x3ffe9c90 0x40132f93:0x3ffe9cc0 0x40132e51:0x3ffe9d10
                                                          0x40133609:0x3ffe9d40
0x402e7472:0x3ffe9d70 0x4010e229:0x3ffe9d90 0x4010fbd5:0x3ffe9dd0
                                                          0x40110015:0x3ffe9e00
0x401102de:0x3ffe9e70 0x4010c51a:0x3ffe9ed0 0x400f5a4f:0x3ffe9ef0
                                                          0x400f5afd:0x3ffe9f40<br class="">
                                                          <br class="">
                                                          Rebooting...<br class="">
                                                          <br class="">
                                                          <br class="">
                                                          0x4022438b is
                                                          in
                                                          std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char>
                                                          >::_S_copy(char*,
                                                          char const*,
                                                          unsigned int)
(/builds/idf/crosstool-NG/.build/xtensa-esp32-elf/build/build-cc-gcc-final/xtensa-esp32-elf/esp32-psram/libstdc++-v3/include/bits/char_traits.h:243).<br class="">
                                                          0x402245ca is
                                                          in
                                                          std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char>
                                                          >::reserve(unsigned
                                                          int)
(/builds/idf/crosstool-NG/.build/xtensa-esp32-elf/build/build-cc-gcc-final/xtensa-esp32-elf/esp32-psram/libstdc++-v3/include/bits/basic_string.tcc:298).<br class="">
                                                          0x40132f93 is
                                                          in
                                                          OvmsSyncHttpClient::ConnectionHeaders(mg_connection*)
(/home/balzer/esp/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/ovms_http/src/ovms_http.cpp:381).<br class="">
                                                          376        
                                                          else<br class="">
                                                          377          
                                                          {<br class="">
                                                          378          
                                                          if
                                                          (header.compare(0,15,"Content-Length:")
                                                          == 0)<br class="">
379             {<br class="">
380             m_bodysize = atoi(header.substr(15).c_str());<br class="">
                                                          <b class="">381            
m_body.reserve(m_bodysize+1);</b><br class="">
382             }<br class="">
                                                          383          
                                                          else if
                                                          (header.compare(0,5,"HTTP/")
                                                          == 0)<br class="">
384             {<br class="">
385             size_t space = header.find(' ');<br class="">
                                                          0x40132e51 is
                                                          in
                                                          OvmsSyncHttpClient::ConnectionData(mg_connection*,
                                                          unsigned
                                                          char*,
                                                          unsigned int)
(/home/balzer/esp/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/ovms_http/src/ovms_http.cpp:316).<br class="">
                                                          311          
                                                          data += len;<br class="">
                                                          312          
                                                          consumed +=
                                                          len;<br class="">
                                                          313          
                                                          len = 0;<br class="">
                                                          314          
                                                          }<br class="">
                                                          315     <br class="">
                                                          316        
                                                          ConnectionHeaders(nc);<br class="">
                                                          317         }<br class="">
                                                          318     <br class="">
                                                          319       if
                                                          (!
                                                          m_inheaders)<br class="">
                                                          320         {<br class="">
                                                          0x40133609 is
                                                          in
                                                          OvmsSyncHttpClient::MongooseCallback(mg_connection*,
                                                          int, void*)
(/home/balzer/esp/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/components/ovms_http/src/ovms_http.cpp:124).<br class="">
                                                          119          
                                                          m_mgconn =
                                                          NULL;<br class="">
                                                          120          
                                                          }<br class="">
                                                          121          
                                                          break;<br class="">
                                                          122     <br class="">
                                                          123        
                                                          case
                                                          MG_EV_RECV:<br class="">
                                                          124          
mbuf_remove(&nc->recv_mbuf,
ConnectionData(nc,(uint8_t*)nc->recv_mbuf.buf,
                                                          nc->recv_mbuf.len));<br class="">
                                                          125          
                                                          break;<br class="">
                                                          126     <br class="">
                                                          127        
                                                          default:<br class="">
                                                          128          
                                                          break;</font><br class="">
                                                        <br class="">
                                                        <br class="">
                                                        Can we switch
                                                        back to using
                                                        the old async
                                                        client?<br class="">
                                                        <br class="">
                                                        Regards,<br class="">
                                                        Michael<br class="">
                                                        <br class="">
                                                        <pre class="moz-signature" cols="72">-- 
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26</pre>
                                                      </div>
                                                    </div>
                                                  </div>
                                                  <br class="">
                                                  <iframe class="content-isolator__isolated-content" sandbox="allow-scripts" scrolling="auto" style="border:none;display:block;overflow:auto;" data-src="data:text/html;charset=UTF-8;base64,PGlmcmFtZS1jb250ZW50IGRhdGEtaWZyYW1lLWhlaWdodD0idHJ1ZSI+X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX188QlI+T3Ztc0RldiBtYWlsaW5nIGxpc3Q8QlI+T3Ztc0RldkBsaXN0cy5vcGVudmVoaWNsZXMuY29tPEJSPmh0dHA6Ly9saXN0cy5vcGVudmVoaWNsZXMuY29tL21haWxtYW4vbGlzdGluZm8vb3Ztc2RldjxCUj48L2lmcmFtZS1jb250ZW50Pg==" width="200" height="10"></iframe></div>
                                              </div>
                                            </blockquote>
                                          </div>
                                          <br class="">
                                        </div>
                                        <br class="">
                                        <fieldset class="mimeAttachmentHeader"></fieldset>
                                        <pre class="moz-quote-pre" wrap="">_______________________________________________
OvmsDev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:OvmsDev@lists.openvehicles.com" moz-do-not-send="true">OvmsDev@lists.openvehicles.com</a>
<a class="moz-txt-link-freetext" href="http://lists.openvehicles.com/mailman/listinfo/ovmsdev" moz-do-not-send="true">http://lists.openvehicles.com/mailman/listinfo/ovmsdev</a>
</pre>
                                      </blockquote>
                                      <br class="">
                                      <pre class="moz-signature" cols="72">-- 
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26</pre>
                                    </div>
                                  </div>
                                </div>
                                <br class="">
                                <iframe class="content-isolator__isolated-content" sandbox="allow-scripts" scrolling="auto" style="border:none;display:block;overflow:auto;" data-src="data:text/html;charset=UTF-8;base64,PGlmcmFtZS1jb250ZW50IGRhdGEtaWZyYW1lLWhlaWdodD0idHJ1ZSI+X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX188QlI+T3Ztc0RldiBtYWlsaW5nIGxpc3Q8QlI+T3Ztc0RldkBsaXN0cy5vcGVudmVoaWNsZXMuY29tPEJSPmh0dHA6Ly9saXN0cy5vcGVudmVoaWNsZXMuY29tL21haWxtYW4vbGlzdGluZm8vb3Ztc2RldjxCUj48L2lmcmFtZS1jb250ZW50Pg==" width="200" height="10"></iframe></div>
                            </div>
                          </blockquote>
                        </div>
                        <br class="">
                      </div>
                    </div>
                  </div>
                </div>
                <br class="">
                <iframe class="content-isolator__isolated-content" sandbox="allow-scripts" scrolling="auto" style="border:none;display:block;overflow:auto;" data-src="data:text/html;charset=UTF-8;base64,PGlmcmFtZS1jb250ZW50IGRhdGEtaWZyYW1lLWhlaWdodD0idHJ1ZSI+X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX188QlI+T3Ztc0RldiBtYWlsaW5nIGxpc3Q8QlI+T3Ztc0RldkBsaXN0cy5vcGVudmVoaWNsZXMuY29tPEJSPmh0dHA6Ly9saXN0cy5vcGVudmVoaWNsZXMuY29tL21haWxtYW4vbGlzdGluZm8vb3Ztc2RldjxCUj48L2lmcmFtZS1jb250ZW50Pg==" width="200" height="10"></iframe></div>
            </div>
          </blockquote>
        </div>
        <br class="">
      </div>
      <br class="">
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
OvmsDev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:OvmsDev@lists.openvehicles.com">OvmsDev@lists.openvehicles.com</a>
<a class="moz-txt-link-freetext" href="http://lists.openvehicles.com/mailman/listinfo/ovmsdev">http://lists.openvehicles.com/mailman/listinfo/ovmsdev</a>
</pre>
    </blockquote>
    <br class="">
    <pre class="moz-signature" cols="72">-- 
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26</pre>
  </div>

_______________________________________________<br class="">OvmsDev mailing list<br class=""><a href="mailto:OvmsDev@lists.openvehicles.com" class="">OvmsDev@lists.openvehicles.com</a><br class="">http://lists.openvehicles.com/mailman/listinfo/ovmsdev<br class=""></div></blockquote></div><br class=""></div></body></html>