-
• #2
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?
-
• #3
https://github.com/espruino/EspruinoBuildTools/blob/master/esp32/build/app/partitions_espruino.csv
Looks like 1344k - pretty tight then!
-
• #4
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
-
• #5
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?
-
• #6
My idea would be to
- 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.
- create a new branch ESP32-V3.1
- pull up my changes to ESP-V3.1
- see, if you can build. If there are problems we have to fix
- once its running, merge into master
Anyway, I'm absolutely open for any other route.
- 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.
-
• #7
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?
-
• #8
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 sdkconfigMore 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 -
• #9
here is the travis build with esp-idf 3.1:
https://www.espruino.com/binaries/travis/4f2b50f97887874339db5fae1f643fb6a6a47489/espruino_esp32.bin
-
• #10
@Wilberforce Is the SO_RCVBUF support still compiled in (as originally per https://github.com/espruino/Espruino/issues/1376#issuecomment-400272993)
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 ?