Ok, so the issue here is really the New interpreter error: LOW_MEMORY,MEMORY message that appears while uploading. This is something you definitely shouldn't ignore - when you get the MEMORY error it means the interpreter totally ran out of memory and had to stop execution, so stuff got lost. LOW_MEMORY itself is just a warning that you hit before MEMORY.
Basically the BME680 module is big - 10k minified - and the default upload method uploads as a string, which them has to be parsed (using another 10k) and then executed (using another 10k).
The easy fix for this is actually just to turn on Modules uploaded as functions (BETA) in the Web IDE settings (which allows for a much more efficient upload). Once that's done everything will work fine - I think this is something that I'll turn on by default in the next version of the IDE.
Other option is also change the options so that everything is uploaded direct to flash (which will save a bunch of memory). OR... you could save the BME680 module to storage as a string (named something else like _BME680) and then it'll be in the Pixl forever and you won't have to re-upload it each time.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
Ok, so the issue here is really the
New interpreter error: LOW_MEMORY,MEMORY
message that appears while uploading. This is something you definitely shouldn't ignore - when you get theMEMORY
error it means the interpreter totally ran out of memory and had to stop execution, so stuff got lost.LOW_MEMORY
itself is just a warning that you hit beforeMEMORY
.Basically the BME680 module is big - 10k minified - and the default upload method uploads as a string, which them has to be parsed (using another 10k) and then executed (using another 10k).
The easy fix for this is actually just to turn on
Modules uploaded as functions (BETA)
in the Web IDE settings (which allows for a much more efficient upload). Once that's done everything will work fine - I think this is something that I'll turn on by default in the next version of the IDE.Other option is also change the options so that everything is uploaded direct to flash (which will save a bunch of memory). OR... you could save the BME680 module to storage as a string (named something else like
_BME680
) and then it'll be in the Pixl forever and you won't have to re-upload it each time.