-
Hi Gordon,
thanks for your comments!..the multimeter was not changed, just mentioned it. In tests nr.2.x and later the InAir9b module was disconnected from all pins of PICO.
It helps!!!
// test 3.3b: 24uA digitalWrite([B15,B14,B13,B10,B1,A7,A6,A5,A4,A3,A2,A1,A0,A10,B9,B8,A8,B7,B6,B5,B4,B3],1);
instead of
// test 3.3: 68uA digitalRead([B15,B14,B13,B10,B1,A7,A6,A5,A4,A3,A2,A1,A0,A10,B9,B8,A8,B7,B6,B5,B4,B3]);
Unfortunately:
1) my tests results (e.g. 1.1 and 1.2) have a little differ. Probably, on the reason of battery voltage is down from test to test;
2) there is pure test, i.e. without radio module, sensors and another loads on PICO pins. How to reach the same result in case of many PICO pins are connected? -
So, my next report (try 2) for all three tests as above for three-four minutes each; using multimeter UT50B made by UNI-T:
// test 1.2: ~61uA digitalRead([B15,B14,B13,B10,B1,A7,A6,A5,A4,A3,A2,A1,A0,A10,B9,B8,A8,B7,B6,B5,B4,B3]); setInterval('digitalPulse(LED1,1,10)',60000); // actual repeat time is about 50 seconds setDeepSleep(1);
// test 2.2: ~48uA digitalRead([B15,B14,B13,B10,B1,A7,A6,A5,A4,A3,A2,A1,A0,A10,B9,B8,A8,B7,B6,B5,B4,B3]); setSleepIndicator(LED1); setInterval(function(){ }, 60000); // actual repeat time is about 50 seconds setDeepSleep(1);
// test 3.2: ~59uA digitalRead([B15,B14,B13,B10,B1,A7,A6,A5,A4,A3,A2,A1,A0,A10,B9,B8,A8,B7,B6,B5,B4,B3]); setInterval(function() { digitalWrite(LED1, 1); setTimeout(function () { digitalWrite(LED1, 0); }, 20); }, 60000); // actual repeat time is about 50 seconds setDeepSleep(1);
Wow, power consumption has drop almost 10 times! Anyway, I did not reach result mentioned above my notes.
Any comments/suggestions are welcome!
NB: here is open question, that is about power consumption in case of all connected circuits to PICO, like InAir9B, PIR sensor and 4 pcs DS18B20...
-
-
Hi,
let me renew the "Pico power consumption" issue.I have Espruino Pico v1.4 (fw 2v01) and tried to reach as less consumption as possible using LiPol 3.7V 1100mAh.
My code and test results:
// test 1.1: **~460uA** digitalRead([B15,B14,B13,B10,B1,A7,A6,A5,A4,A3,A2,A1,A0,A10,B9,B8,A8,B7,B6,B5,B4,B3]); setInterval('digitalPulse(LED1,1,10)',5000); setDeepSleep(1);
// test 2.1: **~500uA** digitalRead([B15,B14,B13,B10,B1,A7,A6,A5,A4,A3,A2,A1,A0,A10,B9,B8,A8,B7,B6,B5,B4,B3]); setSleepIndicator(LED1); setInterval(function() {}, 5000); setDeepSleep(1);
// test 3.1: **~400uA** digitalRead([B15,B14,B13,B10,B1,A7,A6,A5,A4,A3,A2,A1,A0,A10,B9,B8,A8,B7,B6,B5,B4,B3]); setInterval(function() { digitalWrite(LED1, 1); setTimeout(function () { digitalWrite(LED1, 0); }, 20); }, 5000); setDeepSleep(1);
Unfortunately, no pins are grounded.
Could you tell me, how is grounding important for this issue? What can be suggested else to reduce consumption?
In fact, "pin grounding" is not good for me. Because entire B3-B7, A8 are linked with InAir9b module.
-
(in continue)
As former test-engineer, I see some strange behavour of ESP-12F under heavy JS-code (over 10050 bytes - this is reached maximum!).Issue - dead wifi.scan() after several minutes of periodic calls, i.e. this function does not return any data (blank array).
Solution to fix it - wifi.connect('111');wifi.disconnect(). here '111' is fake AP name.
Any thoughts will be very appreciated. Thank you!
-
-
Hello,
I have ESP12F module with Espruino v1.89 and two versions of test code, around 11K and 0.1K compressed bytes accordingly.
To test I use console of Espruino Web IDE and I am entering command:
wifi.scan(console.log)
There is strange behaviour.
Test 1) 0.1K code size - found 5 pcs AP always.
Test 2) 10K code size - found just one AP.- It seems, the number of detected AP depends on the size of JS code. Can it be the true?
-
Hi,
is this about ESP8266 modules like ESP-12F? Hope sample below will help to you:var wifi=require("Wifi"); wifi.on('connected',function(details){ ... }); wifi.on('disconnected',function(details){ ... }); wifi.on('associated',function(details){ ... }); wifi.on('sta_joined',function(details){ ... }); wifi.on('sta_left',function(details){ ... }); wifi.on('auth_change',function(details){ ... }); wifi.on('dhcp_timeout',function(){ ... });
-
Correct, 36 times with callback function and about 60 otherwise.
Yes, I have found 1.87 binary. Unfortunately, it has another problem related to "Send to Espruino" function in WEB IDE (see post #8 above) , i.e. periodic self-reboot.
-
Thanks to everybody!
Short report:
1) "The function getTC() is called inside its own definition" - it works fine, no memory leak:
function getTC() { sensor.getTemp(function (temp) { console.log("Temp is "+temp+"°C : ",cnt++); }); setTimeout(function(){getTC();},1000); } getTC();
2) Espruino v1.88 and v1.89 work fine with above code for long time. Unfortunatly, after the same testing I cannot approve v.87 and v1.90.
My test environment consists:
- ESPRUINO WEB IDE;
- Two kinds of PCB boards, NodeMCU and proprietary one (as shown above);
- power supply with 5V (max 5A) output for proprietary PCB.
Feel free to contact me if any question.
- ESPRUINO WEB IDE;
-
In addition, powerfull text file editor Notepad++. It can work with local files as well as with file servers over FTP and SFTP.
-
-
-
-
I have upload 1.87 from http://www.espruino.com/files/ according to "README_flash.txt" and got new problem - firmware does not work.
After flash v1.87 firmware, WEB IDE displays correct version:
>process.version ="1v87" >
After flashing of simple test code:
console.log('HELLO');
device reboot and hang up again:
_____ _ | __|___ ___ ___ _ _|_|___ ___ | __|_ -| . | _| | | | | . | |_____|___| _|_| |___|_|_|_|___| |_| http://espruino.com 1v87 Copyright 2016 G.Williams Espruino is Open Source. Our work is supported only by sales of official boards and donations: http://espruino.com/Donate Flash map 4MB:512/512, manuf 0xe0 chip 0x4016 >Erasing Flash..... Writing... Compressed Loading 44 bytes from flash... ets Jan 8 2013,rst cause:2, boot mode:(3,4) load 0x40100000, len 1396, room 16 tail 4 chksum 0x89 load 0x3ffe8000, len 776, room 4 tail 4 chksum 0xe8 load 0x3ffe8308, len 540, room 4 tail 8 chksum 0xc0 csum 0xc0 2nd boot version : 1.4(b1) SPI Speed : 80MHz SPI Mode : QIO SPI Flash Size & Map: 32Mbit(512KB+512KB) jump to run user1 @ 1000 don't use rtc mem data Disconnected ERROR: Prompt not detected - upload failed. Trying to recover...
- what might be wrong? Please advise. Thank you again.
Notes: My previous version Espruino v1.89 works fine with above simple test; Now I am using 5V 5A external power supplier; I have tested three devices including "NodeMCU board" - WEB IDE console displays ERROR as above.
- what might be wrong? Please advise. Thank you again.
-
-
-
-
Hello,
my DS18B20 test does reboot device after 36 times of data reading (Espruino v1.89). Test code:
var ow = new OneWire(D14); var sensor = require("DS18B20").connect(ow); var cnt=1; function getTC() { sensor.getTemp(function (temp) { console.log("Temp is "+temp+"°C : ",cnt++); }); setTimeout( function() { getTC(); }, 1000 ); } if(sensor.isPresent()) getTC(); else console.log('no sensor detected');
Console output:
... Temp is 23.25°C : 34 Temp is 23.25°C : 35 Temp is 23.25°C : 36 > ets Jan 8 2013,rst cause:2, boot mode:(3,4) load 0x40100000, len 2408, room 16 tail 8 chksum 0xe5 load 0x3ffe8000, len 776, room 0 tail 8 chksum 0x84 load 0x3ffe8310, len 632, room 0 tail 8 chksum 0xd8 csum 0xd8 2nd boot version : 1.6 SPI Speed : 80MHz SPI Mode : QIO SPI Flash Size & Map: 32Mbit(512KB+512KB) jump to run user1 @ 1000 Disconnected
The call of sensor.getTemp() without callback a little extends the live time.
- might I lost something?
- could you suggest me, how to fix this?
Thank you in the advance!
- might I lost something?
-
-
Thanks, Ollie. I saw gitter channel and spent several hours in there trying to fund something helpful. I will write there my question
btw, I have found discussion about Static IP here. Unfortunately, I did not see result. Can your team re-open issue and release draft version? I would like to test it!
-
-
-
Thanks to everybody!
Let me clarify our problem on the example with one ESP12F. Our device has active Access Point and we need just to set them IP = 192.168.5.1.
To be more clear, every other device in our solution should have proprietary IP, for example 192.168.SN.1 (where SN is serial number of the device).
How to get it?
Thanks a lot, Gordon!
I will try to assemble complete functional board and test it focusing on the power consumption, and share result/problems here...