• Bluetooth on ESP32 eats a lot of memory. Only 2500 JsVars are available with Bluetooth and Wifi.
    Just pushed a version to branch ESP-v3.0 with new commands to bypass this problem for those that need more memory instead of BLE or Wifi :

    • ESP32.enableBLE(false/true) , adds about 1900 additional JsVars
    • ESP32.enableWifi/false/true) , adds about 3800 additional JsVars
    • ESP32.getState() , flags are added for BLE/Wifi status

    Default is BLE and Wifi are enbaled.
    If you don't need one of them in your application:

    • type command to disable (argument = false)
    • this status is saved in NVS (special storage area of ESP32)
    • any saved source is deleted. This needs to be done to avoid overflow in JsVars
    • ESP32 board performs a restart
    • during restart status in NVS is checked, and based on that available RAM for JsVars is calculated
      From now on, the board starts according to enabled/disabled protocols.
      To go back to original, you can flash all memory, or use the ESP32.enable-functions with true.

    To get this function running, a new mode for allocationg memory for JsVars is added. Please see ESP32.py in boards directory.

    @Gordon, could you please take a closer look to changes in jsvar.h and jsvar.c
    @wilberforce, I've never had the problem with hot chips, could you please check with your boards

About

Avatar for JumJum @JumJum started