<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="">I can’t read your .ods attachment, but here is what I get:<div class=""><br class=""></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><font face="Andale Mono" class=""><span style="font-size: 18px;" class="">$ make size-components<br class="">Total sizes:<br class=""> DRAM .data size: 18748 bytes<br class=""> DRAM .bss size: 42456 bytes<br class="">Used static DRAM: 61204 bytes ( 53996 available, 53.1% used)<br class="">Used static IRAM: 131000 bytes ( 72 available, 99.9% used)<br class=""> Flash code: 1909566 bytes<br class=""> Flash rodata: 791724 bytes<br class="">Total image size:~2851038 bytes (.bin may be padded larger)</span></font></blockquote><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""><br class="">Per-archive contributions to ELF file:<br class=""> Archive File DRAM .data & .bss IRAM Flash code & rodata Total<br class=""> libbt.a 521 3954 599 341306 147939 494319<br class=""> libovms_webserver.a 0 185 0 99722 219428 319335<br class=""> libstdc++.a 149 5640 0 119785 70474 196048<br class=""> libduktape.a 0 0 0 120709 55997 176706<br class=""> liblwip.a 19 3992 0 141697 19853 165561<br class=""> libc-psram-workaround.a 1988 66 18361 111481 9316 141212<br class="">libvehicle_renaulttwizy. 0 10 0 90328 40188 130526<br class=""> libnet80211.a 1977 8892 3322 97052 10288 121531<br class=""> libmain.a 7 1177 0 93298 24608 119090<br class=""> libesp32.a 2725 485 18932 24982 29492 76616<br class=""> libwolfssl.a 0 16 0 57399 16504 73919<br class=""> libpp.a 855 6339 13019 40872 7311 68396<br class=""> libdriver.a 111 214 3253 37267 25758 66603<br class=""> libbtdm_app.a 347 4629 15135 30068 2872 53051<br class=""> libmongoose.a 16 221 0 36567 8803 45607<br class=""> libvehicle_kiasoulev.a 0 1 0 31588 6762 38351<br class=""> libovms_server_v2.a 0 14 0 31981 4541 36536<br class=""> libphy.a 1334 868 4572 29060 0 35834<br class=""> libmdns.a 0 1865 0 26947 370 29182<br class=""> libsimcom.a 0 1 0 18537 6773 25311<br class=""> libfreertos.a 4156 776 18116 0 2092 25140<br class=""> libwpa.a 0 682 0 20266 2304 23252<br class=""> libfatfs.a 12 47 0 20023 3036 23118<br class=""> libwolfssh.a 0 12 0 19516 2446 21974<br class=""> libvehicle.a 0 52 0 16196 5624 21872<br class=""> libm-psram-workaround.a 4 0 0 19196 697 19897<br class=""> libesp32wifi.a 0 1 0 13807 4949 18757<br class=""> libcanopen.a 0 24 0 13437 5260 18721<br class=""> libspinodma.a 0 12 6842 5593 5072 17519<br class=""> libcan.a 0 36 0 13175 3482 16693<br class=""> libconsole_ssh.a 2 8 0 12770 3704 16484<br class=""> libovms_ota.a 0 8 0 9407 5594 15009<br class=""> libnvs_flash.a 0 32 0 10763 2625 13420<br class=""> libretools.a 12 6 0 10184 2291 12493<br class=""> libgcc.a 4 20 104 10670 888 11686<br class=""> libspi_flash.a 36 323 7188 1626 1866 11039<br class=""> libesp32bluetooth.a 44 274 0 5886 4746 10950<br class=""> libobd2ecu.a 0 1 0 8603 2197 10801<br class=""> libheap.a 1205 8 5325 2424 976 9938<br class=""> libovms_server_v3.a 0 13 0 8043 1836 9892<br class=""> libwpa_supplicant.a 0 0 0 9812 4 9816<br class=""> libvfsedit.a 924 0 0 6983 1751 9658<br class=""> libsoc.a 657 8 7010 0 1247 8922<br class=""> libsdmmc.a 0 0 0 5855 2667 8522<br class="">libvehicle_teslaroadster 0 1 0 7010 1486 8497<br class=""> libwear_levelling.a 0 68 0 5917 1477 7462<br class=""> libvehicle_nissanleaf.a 8 85 0 5893 1391 7377<br class=""> libovms_location.a 4 36 0 5838 563 6441<br class=""> libsdcard.a 0 9 16 3549 1369 4943<br class=""> libcoexist.a 1277 94 3332 0 137 4840<br class=""> libcrypto.a 0 64 0 3998 167 4229<br class=""> libvehicle_voltampera.a 0 1 0 3041 1159 4201<br class=""> libmbedtls.a 0 0 0 3677 320 3997<br class=""> libvehicle_demo.a 0 1 0 3352 526 3879<br class=""> libbootloader_support.a 0 4 0 2308 1424 3736<br class=""> libtcpip_adapter.a 0 124 0 3220 306 3650<br class=""> libvfs.a 40 63 0 3060 395 3558<br class=""> libmicrorl.a 4 0 0 2896 576 3476<br class=""> libpcp.a 0 56 0 3050 286 3392<br class=""> libapp_update.a 0 80 0 2184 785 3049<br class=""> librtc.a 0 4 2777 0 0 2781<br class=""> libnewlib.a 152 252 806 611 133 1954<br class=""> libpthread.a 16 12 178 1090 650 1946<br class=""> libmcp2515.a 0 0 0 1526 317 1843<br class="">libvehicle_teslamodels.a 0 1 0 1276 519 1796<br class=""> libesp32can.a 0 4 0 1725 52 1781<br class=""> libovms_mdns.a 0 8 0 1495 213 1716<br class=""> liblog.a 8 268 478 810 16 1580<br class=""> libvehicle_obdii.a 0 1 0 782 647 1430<br class=""> libcxx.a 12 16 0 751 453 1232<br class=""> libcore.a 0 5 0 753 398 1156<br class=""> libmax7317.a 0 1 0 444 470 915<br class=""> libvehicle_none.a 0 1 0 261 489 751<br class=""> libvehicle_track.a 0 1 0 261 482 744<br class=""> libhal.a 0 0 515 0 32 547<br class=""> libext12v.a 0 0 0 282 141 423<br class=""> libovms_server.a 0 1 0 188 125 314<br class=""> libstrverscmp.a 0 0 0 212 48 260<br class=""> libesp32adc.a 0 0 0 112 20 132<br class=""> libesp32system.a 0 0 0 96 20 116<br class=""> libwpa2.a 0 1 0 0 0 1<br class=""> libwps.a 0 1 0 0 0 1<br class=""> libethernet.a 0 0 0 0 0 0</span></font></blockquote><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""><br class=""></span></font></blockquote><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""><blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;" class="">OVMS# module memory</blockquote><blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;" class="">Free 8-bit 82928/229892, 32-bit 32/36, SPIRAM 4079896/4194252</blockquote></span></font></blockquote><div class=""><div><br class=""></div><div>It seems that the three biggest are SPIRAM, Wifi, Bluetooth. That and the entire freertos api being in iram. Disabling sub-components we don’t use may help.</div><div><br class=""></div><div>I think we have some opportunity to tune this. For example, spi_master_nodma is using 6842 bytes of IRAM (and I think the majority of that is not required - or we can try to get rid of that and just switch back to the normal dma based esp32 spi library).</div><div><br class=""></div><div>I tried a very rough disabling/tuning some things, and got this:</div><div><br class=""></div></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div><div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class="">$ make size-components</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class="">Total sizes:</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> DRAM .data size: 18008 bytes</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> DRAM .bss size: 42384 bytes</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class="">Used static DRAM: 60392 bytes ( 54808 available, 52.4% used)</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class="">Used static IRAM: 119508 bytes ( 11564 available, 91.2% used)</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> Flash code: 1633934 bytes</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> Flash rodata: 740056 bytes</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class="">Total image size:~2511506 bytes (.bin may be padded larger)</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class="">Per-archive contributions to ELF file:</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> Archive File DRAM .data & .bss IRAM Flash code & rodata Total</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libbt.a 521 3954 542 307054 141815 453886</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libovms_webserver.a 0 185 0 53102 218036 271323</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libstdc++.a 149 5640 0 121351 70409 197549</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libduktape.a 0 0 0 120301 56061 176362</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> liblwip.a 19 3992 0 121557 18181 143749</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libc-psram-workaround.a 1988 66 18361 111005 9283 140703</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libnet80211.a 1977 8892 3322 97053 10358 121602</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class="">libvehicle_renaulttwizy. 0 10 0 56564 38599 95173</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libmain.a 7 1177 0 69798 22656 93638</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libpp.a 855 6339 13019 40848 7311 68372</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libwolfssl.a 0 16 0 51488 15797 67301</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libbtdm_app.a 347 4629 15135 30200 2848 53159</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libesp32.a 1936 485 14396 13092 15591 45500</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libdriver.a 111 214 2811 25454 13732 42322</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libmongoose.a 16 221 0 33204 8145 41586</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libphy.a 1334 868 4568 29048 0 35818</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libvehicle_kiasoulev.a 0 1 0 21612 6446 28059</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libwpa.a 0 682 0 20266 2320 23268</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libfreertos.a 4156 776 15731 0 2031 22694</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libovms_server_v2.a 0 14 0 18129 4224 22367</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libmdns.a 0 1865 0 19772 337 21974</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libfatfs.a 12 47 0 18123 2973 21155</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libm-psram-workaround.a 4 0 0 19188 698 19890</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libsimcom.a 0 1 0 13380 6443 19824</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libwolfssh.a 0 12 0 17089 1929 19030</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libcanopen.a 0 24 0 12095 4470 16589</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libcan.a 0 36 0 10637 4621 15294</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libvehicle.a 0 52 0 9853 5113 15018</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libesp32wifi.a 0 1 0 9707 4625 14333</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libconsole_ssh.a 2 8 0 9286 3382 12678</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libspinodma.a 0 12 5850 4146 2590 12598</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libovms_ota.a 0 8 0 6511 5421 11940</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libgcc.a 4 20 104 10682 888 11698</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libnvs_flash.a 0 32 0 8656 2716 11404</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libesp32bluetooth.a 44 274 0 5584 4573 10475</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libretools.a 12 6 0 8285 2134 10437</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libvfsedit.a 924 0 0 7055 1873 9852</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libwpa_supplicant.a 0 0 0 9577 4 9581</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libspi_flash.a 36 323 5998 1477 1073 8907</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libheap.a 1160 8 4179 2070 940 8357</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libsoc.a 774 8 6310 0 1210 8302</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libobd2ecu.a 0 1 0 5993 1681 7675</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libsdmmc.a 0 0 0 4888 2504 7392</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class="">libvehicle_teslaroadster 0 1 0 6069 996 7066</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libovms_server_v3.a 0 13 0 5108 1762 6883</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libvehicle_nissanleaf.a 8 85 0 4676 1312 6081</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libwear_levelling.a 0 68 0 4665 1312 6045</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libcoexist.a 1277 94 3332 0 142 4845</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libovms_location.a 4 36 0 4049 541 4630</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libcrypto.a 0 64 0 4006 167 4237</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libsdcard.a 0 9 16 2783 1289 4097</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libvehicle_voltampera.a 0 1 0 2592 1140 3733</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libmbedtls.a 0 0 0 3326 320 3646</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libmicrorl.a 4 0 0 2864 583 3451</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libvfs.a 40 63 0 2923 381 3407</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libvehicle_demo.a 0 1 0 2708 527 3236</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libtcpip_adapter.a 0 124 0 2705 300 3129</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libbootloader_support.a 0 4 0 1941 1171 3116</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> librtc.a 0 4 2777 0 0 2781</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libapp_update.a 0 80 0 1860 770 2710</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libpcp.a 0 56 0 2313 286 2655</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libnewlib.a 152 252 802 616 85 1907</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libmcp2515.a 0 0 0 1592 314 1906</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libpthread.a 16 12 176 957 637 1798</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class="">libvehicle_teslamodels.a 0 1 0 1253 509 1763</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libesp32can.a 0 4 0 1659 52 1715</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libvehicle_obdii.a 0 1 0 909 639 1549</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> liblog.a 8 268 442 709 14 1441</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libovms_mdns.a 0 8 0 1036 189 1233</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libcore.a 0 5 0 753 402 1160</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libcxx.a 12 16 0 684 443 1155</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libvehicle_track.a 0 1 0 409 476 886</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libvehicle_none.a 0 1 0 401 480 882</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libmax7317.a 0 1 0 385 459 845</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libhal.a 0 0 515 0 32 547</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libext12v.a 0 0 0 350 140 490</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libovms_server.a 0 1 0 156 124 281</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libstrverscmp.a 0 0 0 212 48 260</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libesp32adc.a 0 0 0 112 20 132</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libesp32system.a 0 0 0 96 20 116</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libwpa2.a 0 1 0 0 0 1</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libwps.a 0 1 0 0 0 1</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class=""> libethernet.a 0 0 0 0 0 0</span></font></div></div></div></blockquote><div class=""><div><br class=""></div><div>We get a substantial improvement by simply using:</div><div><br class=""></div></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class=""><div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class="">-CONFIG_OPTIMIZATION_LEVEL_DEBUG=y</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class="">-CONFIG_OPTIMIZATION_LEVEL_RELEASE=</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class="">+CONFIG_OPTIMIZATION_LEVEL_DEBUG=</span></font></div><div><font face="Andale Mono" class=""><span style="font-size: 18px;" class="">+CONFIG_OPTIMIZATION_LEVEL_RELEASE=y</span></font></div></div></div></blockquote><div class=""><div><br class=""></div><div>(which is the compiler options / optimisation level from debug -> release)</div><div><br class=""></div><div>I think at this stage going through and disabling what we don’t need, down to the sub-component level, may free up enough. For release builds, we don’t really need DEBUG code, and can turn on the release optimisations in gcc. That, and other reductions, should give us enough breathing room.</div><div><br class=""></div><div>Regards, Mark.</div><div><br class=""><blockquote type="cite" class=""><div class="">On 28 May 2018, at 2:12 AM, Michael Balzer <<a href="mailto:dexter@expeedo.de" class="">dexter@expeedo.de</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">After adding a missing newlib module (just code) I got this:<br class=""><br class="">xtensa-esp32-elf/bin/ld: region `iram0_0_seg' overflowed by 712 bytes<br class=""><br class="">I've now done a little analysis using the idf_size.py tool, results attached.<br class=""><br class="">As you can see, the esp-idf puts lots of components into IRAM, including parts of libc ("libc-psram-workaround").<br class=""><br class="">Without bluetooth and with the old version it's already been using 105636 bytes IRAM, the new version had quite some growth on this (marked in red), and the<br class="">bluetooth (blue) components add another 15 KB, total is now 129880 bytes.<br class=""><br class="">Effectively there is now no IRAM space left (of the linker section) after enabling bluetooth.<br class=""><br class="">I guess my newlib module drew in some libc functions, as the libc segment grew beyond acceptable size.<br class=""><br class="">I don't think we will be able to continue providing a single firmware covering all features. Maybe we'll need to split into a wifi and a bluetooth release, I<br class="">think those are the only optional components for us.<br class=""><br class="">Regards,<br class="">Michael<br class=""><br class=""><br class="">Am 23.05.2018 um 00:14 schrieb Michael Balzer:<br class=""><blockquote type="cite" class="">Steve,<br class=""><br class="">yes, at build time, I suppose the static IRAM preallocations from the bluetooth and wifi improvements have grown too much to fit:<br class=""><br class="">/home/balzer/esp/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/5.2.0/../../../../xtensa-esp32-elf/bin/ld:<br class="">/home/balzer/esp/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3/build/ovms3.elf section `.iram0.text' will not fit in region `iram0_0_seg'<br class="">/home/balzer/esp/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/5.2.0/../../../../xtensa-esp32-elf/bin/ld: region `iram0_0_seg' overflowed by 940 bytes<br class=""><br class="">This is my currently running build:<br class=""><br class="">balzer@leela:~/esp/Open-Vehicle-Monitoring-System-3/vehicle/OVMS.V3> ~/esp/esp-idf/tools/idf_size.py build/ovms3.map<br class="">Total sizes:<br class=""> DRAM .data size: 18760 bytes<br class=""> DRAM .bss size: 42440 bytes<br class="">Used static DRAM: 61200 bytes ( 54000 available, 53.1% used)<br class="">Used static IRAM: 131000 bytes ( 72 available, 99.9% used)<br class=""> Flash code: 1908902 bytes<br class=""> Flash rodata: 791536 bytes<br class="">Total image size:~2850198 bytes (.bin may be padded larger)<br class=""><br class="">So that's also quite close already.<br class=""><br class="">Regards,<br class="">Michael<br class=""><br class=""><br class="">Am 22.05.2018 um 23:50 schrieb Stephen Casner:<br class=""><blockquote type="cite" class="">Michael,<br class=""><br class="">Can you clarify regarding the IRAM space issues. Was there an error<br class="">at build time? If so, that's a surprise because I don't think our<br class="">code does anything with preallocation of IRAM so that means everyone<br class="">who uses a similar set of system functions would hit this.<br class=""><br class="">My memory diagnostic code allocates from IRAM if available, but only<br class="">if the memory commands are issued, so any system allocations in IRAM<br class="">should come first.<br class=""><br class=""> -- Steve<br class=""><br class="">On Tue, 22 May 2018, Michael Balzer wrote:<br class=""><br class=""><blockquote type="cite" class="">I've pushed the updated esp-idf status to our clone now, so we can start using that for release 007.<br class=""><br class="">I've also checked the upstream master status again, which is already quite some commits ahead, including lots of wifi and bluetooth updates.<br class=""><br class="">Unfortunately I got IRAM space issues and had to disable bluetooth to be able to build at all. The resulting firmware crashed immediately on wifi power up with<br class="">error code 0x102 and a message that we should use WIFI_INIT_CONFIG_DEFAULT. Which we do, I don't see anything wrong in our init code. So I switched back to the<br class="">working version for now.<br class=""><br class="">To use the new esp-idf version all you need to do is a pull from our repository and a git submodule update. The xtensa tools are still the same.<br class=""><br class="">Regards,<br class="">Michael<br class=""><br class=""><br class="">Am 17.05.2018 um 10:41 schrieb Michael Balzer:<br class=""><blockquote type="cite" class="">Regarding the esp-idf update: it works without (new) issues and seems to improve stability a bit, but not as much as I was hoping.<br class=""><br class="">So it's an option, but not a priority for 006.<br class=""><br class="">Regards,<br class="">Michael<br class=""><br class=""><br class="">Am 17.05.2018 um 05:06 schrieb Mark Webb-Johnson:<br class=""><blockquote type="cite" class="">Deadline for the factory firmware is this weekend. The modules have all been built and are waiting sim cards, firmware flash, then final QC.<br class=""><br class="">So, I suggest we freeze things as they are. I will double-check the wifi setup tonight (it seemed ok last time I checked, so hopefully good now). Build will not include the bluetooth code I am working on (that is disabled in our default sdkconfig anyway).<br class=""><br class="">Is there anything else holding this up? Or anything anybody wants to rush in?<br class=""><br class="">Regards, Mark.<br class=""><br class="">_______________________________________________<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=""></blockquote></blockquote>--<br class="">Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal<br class="">Fon 02333 / 833 5735 * Handy 0176 / 206 989 26<br class=""><br class="">_______________________________________________<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=""><br class=""><br class=""></blockquote>_______________________________________________<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=""></blockquote></blockquote><br class="">-- <br class="">Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal<br class="">Fon 02333 / 833 5735 * Handy 0176 / 206 989 26<br class=""><br class=""><span id="cid:91BAC528-C6E8-4987-ACA8-29CDA2635623"><iram-usage.ods></span>_______________________________________________<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></div></blockquote></div><br class=""></div></body></html>