-
Hmm, seems to be a huge thing, still get this when writing
WARNING: Event:ESP_GATTS_WRITE_EVT gatts_if:4 WARNING: Event:ESP_GATTS_RESPONSE_EVT gatts_if:4 Uncaught Error: Too much recursion - the stack is about to overflow Execution Interrupted >
Edit: GIT_COMMIT: "3076d5133" ups this is not the latest commit
-
see this conversation Howto write modules to storage?
-
-
Yes, perfect. Many thanks for implementing all this super helpfull stuff.
espruino --port /dev/tty.usbserial-54240369371 -b 115200 --storage MQTTCL-S:MQTT.min.js ... > Upload Complete >require('Storage').list() =[ "MQTT-S", "MQTTCL-S" ] >mqtt = require('MQTTCL-S') ={ create: function (t,e) { ... }, connect: function (t) { ... } } >
-
-
-
-
but the event is not fired, or is something wrong with my test code?
digitalWrite(D19,0); function blink(duration){ digitalWrite(D19,0);setTimeout(()=>{digitalWrite(D19,0);},duration); } NRF.setServices({ 0x1901: { 0x1902: { value : "Hello", broadcast : true, readable : true, writable : true, notify : true, indicate: true, onWrite: (event) => { console.log("Got: ", event); blink(5000); } } } }); // edit Serial1.setConsole(1);
-
-
Check issue #1777 Improve ESP32 implementation for fixed and open issues. Gordon implelemnted the uart part and it works perfect.
-
This is the way I try to use:
- load file into WebIDE ( see attached screenshots, ide complains )
- change upload destination to storage
- enter the new filename
- upload
Did the upload and got errors, guess I am missing something.
> >Uncaught ReferenceError: "exports" is not defined at line 1 col 6064 ...tocol_level+i+r,n)},exports.create=function(t,e){return new ... ^ > >
- load file into WebIDE ( see attached screenshots, ide complains )
-
-
@fanoush nice finding, will create a pr for this, so it will be part in one of the next ES32 builds.
-
ok, there are 3 line of code in MQTT.js that cause this.
line 234
this.client.write(fromCharCode(TYPE.PINGRESP << 4) + "\x00"); // change to this.client.write(fromCharCode(TYPE.PINGRESP << 4,0));
line 320
this.client.write(fromCharCode(TYPE.DISCONNECT << 4) + "\x00"); // change to this.client.write(fromCharCode(TYPE.DISCONNECT << 4, 0));
line 386
this.client.write(fromCharCode(TYPE.PINGREQ << 4) + "\x00"); // change to this.client.write(fromCharCode(TYPE.PINGREQ << 4,0));
Just created a pr for this and added a screenshot using it as
MQTTX-S
without errors. -
-
use
curl -O https://www.espruino.com/modules/MQTT.min.js
to download that module and use this code to upload to storage.s = require("Storage"); module=` <content of file MQTT.min.js> `; s.write("MQTT-S",module.replace(/[\n\r]/g, ''));
Now you can use it like this:
s = require("Storage"); mqtt = require("MQTT-S");
As this does not happen to often, I am fine with those manual steps ;-)
-
Many thanks for your quick response. Yes the WebIDE will always reload the module. Small modules I manually store and add
S
to the stored name like in this case it will beMQTT-S
. Missed that feature of the WebIDE to upload modules to strorage, will definitl give it a try.Copy paste from browser to the WebIDE does not look nice.
-
Sometimes uploading is taking too long because you use larges modules like MQTT. Is there an easy way to save the loaded module to storage. So next time you uses
mqtt = require("MQTTS")
.s = require('Storage'); mqtt = require("MQTT"); print(Modules.getCached()) /* output [ "MQTT", "Storage" ] */ // save cached module s.write("MQTTS", /* howto ?*/);
-
-
Thanks, so will dig here Non-Volatile Storage for a solution.
// esp32/build/app/partitions_espruino.csv .... nvs,data,nvs,0x9000,12K ....
Found this tool named Espressif-NVS-Analyzer to decode the nvs data.
-
Hi, there is that espouse.py on GitHub that can read the efuse data.
// disable BT ESP32.enableBLE(false); //this can onyl be reverted by another call with true as argument
now reading the efuse section
espefuse.py summary --format json --port $COMPORT | grep _BT -A6 "DISABLE_BT": { "bit_len": 1, "block": 0, "category": "config", "description": "Disables Bluetooth", "efuse_type": "bool", "name": "DISABLE_BT", "pos": 1, "readable": true, "value": false, "word": 3, "writeable": true },
"value" : false
does not match the expected result ....Any hints?
-
check this page for idf-release-and-soc-compatibility and this one for -C3 details
-
-
Now with the correct version it works - Many thanks, will close issue 2493