You are reading a single comment by @JumJum and its replies. Click here to read the full conversation.
  • Firstly, well done @JumJum, I know that is has been a mammoth task to get this far!

    At the moment there are dependencies that would also need to be added to the espruino build tools... for example there is a new partition.bin, however I think we can make one partition that could be used for both, as it just makes the firmware partition bigger, and we could get rid of the ota partition as that is not implemented (it's a good idea in principle but not sure about the practicality- that is a different issue). The ble libs might also need to be added, I have not yet tried to build this. If I get a chance over Easter I might be able to do a pull and see what happens.

    I'm not too keen on dropping the number of vars in the esp32 normal build. In a conversation I had on gitter with @jumjum I don't think it has yet been tested with the Bluetooth turned off in the Makefile.
    However, @jumjum I understand has made this work using Malloc for the jsvars, so perhaps it can detect which build and allocate for:
    Wifi only
    Wifi and ble
    Wifi and ble and psram.

    For example at the moment there are changes to main.c that could have conditional includes and some of the intialisation code could be in conditional includes.

    I'm not sure how much more memory the ble stack uses, and if it only uses the memory when it is turned on. If that was the case we could have a run time switch to turn in on just one build.

    Gordon, what is the best way to handle this - have two board files - one with wifi and one with wifi and ble? Is there another board that handles things like this that way? I know for the esp8266 there are two builds, one for the 4mb flash, the other for 512.

  • I will not fight for OTA, its a big idea, but at the end, there are a lot of limitations.
    For example, I would not like to load a new binary over Bluetooth ;-)

    Having a lot of jsvar sizes based on used hardware is something which needs to be checked.
    ESP-IDF is complex in that point. In actual version, BLE is always started, as WIFI is.

    Following some discussions around ESP8266, I would prefer to have one binary only. Otherwise a lot of confusion could appear, "which binary is running on which board ?".

About

Avatar for JumJum @JumJum started