[Ovmsdev] Firmware size approaching 4 MB limit

Michael Balzer dexter at expeedo.de
Sun Dec 7 15:57:52 HKT 2025


FYI: use `make size-components` to create a report on all component 
sizes (`make size-files` for source file level).

Unsurprisingly the webserver is on top, even with all assets 
precompressed already.


*_Top 10 components:_*

Per-archive contributions to ELF file:
             Archive File DRAM .data & .bss   IRAM Flash code & rodata  
  Total
      libovms_webserver.a          0    255      0     134342  399846  
534443
              libstdc++.a        149   5640      0     141045 72513  219347
                libmain.a         15   2104      0     139216 40086  181421
             libduktape.a          0      0      0     141641 20367  162008
libvehicle_renaulttwizy.          0     29      0      86517 75357  161903
  libc-psram-workaround.a       1854     66  18391     118283 10943  149537
                liblwip.a         17   3873      0     118366 16722  138978
            libnet80211.a        938   9042  10475      92339 21900  134694
             libmbedtls.a        100    560     76     107079 26785  134600
       libvehicle_vweup.a          8      8      0      60846 43432  104294


*_Vehicles:_*

Per-archive contributions to ELF file:
             Archive File DRAM .data & .bss   IRAM Flash code & rodata  
  Total
libvehicle_renaulttwizy.          0     29      0      86517 75357  161903
       libvehicle_vweup.a          8      8      0      60846 43432  104294
        libvehicle_mgev.a        156     26      0      47756 33998   81936
     libvehicle_smarteq.a         82     15      0      59267 19527   78891
     libvehicle_smarted.a          0      9      0      48481 28801   77291
libvehicle_renaultzoe_ph          4     10      0      44622 29564   74200
             libvehicle.a          0     68      0      57735 12062   69865
       libvehicle_bmwi3.a          0      2      0      33370 14357   47729
      libvehicle_minise.a       9432      2      0      35360  2210   47004
libvehicle_hyundai_ioniq        176      7      0      32921 13425   46529
  libvehicle_nissanleaf.a          0      3      0      35491  8941   44435
   libvehicle_kiasoulev.a        240      9      0      32508  5473   38230
   libvehicle_kianiroev.a        108      7      0      24070  4006   28191
  libvehicle_mitsubishi.a          0      5      0      21645  3893   25543
      libvehicle_boltev.a          0      5      0      15999  7864   23868
   libvehicle_niu_gtevo.a          4     12      0      18248  3733   21997
libvehicle_maxus_edelive        156      3      0      10713  7477   18349
  libvehicle_renaultzoe.a          0      6      0      14828  2859   17693
libvehicle_maxus_euniq56        156      3      0       8363  6840   15362
  libvehicle_voltampera.a          0      5      0      13221  1932   15158
libvehicle_hyundai_ioniq          0      3      0      11081  3191   14275
libvehicle_teslaroadster          0      6      0      10367  2238   12611
   libvehicle_thinkcity.a          0      3      0       6114  3449    9566
libvehicle_jaguaripace.a          0      8      0       5445  3941    9394
  libvehicle_fiatedoblo.a          0      2      0       4262  2126    6390
libvehicle_teslamodels.a          0      2      0       5361 948    6311
libvehicle_toyotarav4ev.          0      2      0       5023  1255    6280
   libvehicle_maxus_t90.a          0      3      0       2567  2204    4774
   libvehicle_byd_atto3.a          0      2      0       3503 947    4452
    libvehicle_energica.a          0      1      0       3319 880    4200
        libvehicle_demo.a          0      2      0       3205 795    4002
libvehicle_maxus_euniq6.          0      2      0       2470  1182    3654
     libvehicle_fiat500.a          0      2      0       2838 732    3572
  libvehicle_zombie_vcu.a          0      4      0       1882  1259    3145
libvehicle_mercedesb250e          0      2      0       2113 955    3070
        libvehicle_zeva.a          0      2      0       2209 688    2899
         libvehicle_dbc.a          0      2      0       1278  1395    2675
libvehicle_cadillac_c2_c          0      7      0       1293  1105    2405
    libvehicle_maple60s.a          0      2      0       1416 698    2116
libvehicle_chevrolet_c6_          0      2      0       1053  1049    2104
       libvehicle_obdii.a          0      2      0        957  1007    1966
libvehicle_teslamodel3.a          0      2      0        458 713    1173
        libvehicle_none.a          0      2      0        418 684    1104
       libvehicle_track.a          0      2      0        416 680    1098


Regards,
Michael


Am 06.12.25 um 10:33 schrieb Michael Balzer via OvmsDev:
> Everyone,
>
> with the latest vehicle additions, the firmware size has now grown to 
> 4,015,328 bytes in build 3.3.005-485-gc4664881.
>
> Our flash partitioning scheme is currently designed to provide three 
> firmware partitions (factory, ota_0 & ota_1) of 4MB = 4,194,304 bytes 
> each.
>
> So we've now got 178,976 bytes = ~4% left.
>
> Options beyond the 4 MB limit:
>
>  a) split features, e.g. vehicle support, into two or more builds
>
>  b) repartition into two firmware partitions of 6 MB each, reusing the 
> factory partition for OTA
>
>  c) switch to an ESP32 WROOM module with 32 MB flash (possible?)
>
> We've got some time left, new vehicles normally don't need that much 
> space, I just wanted to raise awareness.
>
> Regards,
> Michael
>
>
> _______________________________________________
> OvmsDev mailing list
> OvmsDev at lists.openvehicles.com
> http://lists.openvehicles.com/mailman/listinfo/ovmsdev

-- 
Michael Balzer * Am Rahmen 5 * D-58313 Herdecke
Fon 02330 9104094 * Handy 0176 20698926


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openvehicles.com/pipermail/ovmsdev/attachments/20251207/b936c068/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 203 bytes
Desc: OpenPGP digital signature
URL: <http://lists.openvehicles.com/pipermail/ovmsdev/attachments/20251207/b936c068/attachment.sig>


More information about the OvmsDev mailing list