New version with V3.1

Posted on
  • I've a version running with new ESP-IDF V3.1 now.
    Main point for Espruino is support of PS-RAM which opens the option to have 20000 jsVars, or even more.

    I'm not convinced, that using V3.1 is a good step for Espruino.
    We have to switch to new version of mbedtls, and size of binary raises to unbelievable 1300 kBytes.
    May be, we could easily add PS-RAM support to a specific V3.0.x

    Should we open an issue on GitHub for that ?

  • The firmware size is not that important as it’s just flash space right?

    What size did we make the partitions last time we changed?

  • correct, its flash only,
    here are the changes, @wilberforce could you please check. I have in mind a change in WIFI, but don't remember. Something around buffers or channels ?

    - commented partition in partitions_espruino.csv
    - shorten path to include esp_partition.h in main.c
    - esp32_neopixel.c, changed ***_PERI_REG_MASK functions(deprecated) to DPORT_***_PERI_REG_MASK functions.
    - added folder crypto to /make
    - created file standard handling of mbedtls
    - created ESP32 specific file handling of mbedtls, ESP-IDF needs new version, Espruino core works with old one
    - replaced ifdef USE_CRYPTO with includes of standard or board specific from make/crypto
    - make/family/ESP32MAKE sorted LDFLAGS, removed double entrys, added entrys needed for V3.1
      (smartconfig_ack, newlib/platform_include, lmesh, ld_include_panic_highint_hdl)
    - jswrap_crypto.c, added ESP32-defines MBEDTLS_CIPHER_MODE_xxx, there should be a better way, but I did not find
    - make menuconfig
    - - Serial flasher config
    - - - Flash size (4 MB)
    - - Partition Table
    - - - Partition Table (Custom partition table CSV)
    - - - (partitions_espruino.csv) 
    - - Compiler Options
    - - - Optimization Level(Release....
    - - - Assertion level (Disabled...
    - - Component config
    - - - Bluetooth enable
    - - - - Bluedroid Enable
    - - - - - Disable BT debug logs 
    - - - ESP32 specific
    - - - - Support for external, SPI Connected Ram enable
    - - - - SPI RAM Config
    - - - - - Ignore PSRAM when not found enable
    - - - - - Reserve this amount of bytes 16384
    - - - - Also watch CPU1 tick interrup disable
    - - - - Initialize Task Watchdog Timer on startup disable
    - - - FreeRTOS
    - - - - Halt when an SMP-untested function is called disable
    - - - Log output
    - - - - Default log verbosity Error
    - - - - Use ANSI terminal colors disable
    - - - mbedTLS
    - - - - Enable hardware AES acceleration disable
    - - - - Enable hardware MPI (bignum) acceleration disable
    - - -  Wear levelling library sector size 512
    
    
  • How did you want to proceed?

    Did you want to put this into the esp32 branch and then I can see if I can get a build?

  • My idea would be to

    1. remove old branches (ESP32 and ESP32-V3.0). Both are some commits ahead since may or june. From my best knowledge, we don't need these commts. I've done my testing and converting based on Espruino Master and ESP-IDF V3.1 release.
    2. create a new branch ESP32-V3.1
    3. pull up my changes to ESP-V3.1
    4. see, if you can build. If there are problems we have to fix
    5. once its running, merge into master

    Anyway, I'm absolutely open for any other route.

  • Ok. And I can do the same branch for build tools.

    Do you want to raise an issue - or I can - and put in there the make file changes for the ESP-idf and then I can see if get that compiling as a first step?

  • Changes are uploaded to branch ESP32-V3.1
    @Gordon, could you please check, mainly changes in make to support board specific Crypto
    @Wilberforce, hope you get it running with your BuildTools, please see changes in sdkconfig

    More detailled description about changes is in targets/esp32/Changes_V3.1
    I've added an issue in github for this upgrade. Lets use it for next steps.
    Sorry for the delay, but sometimes life becomes complex

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview
About

New version with V3.1

Posted by Avatar for JumJum @JumJum

Actions