clemens
December 30, 2021, 2:47pm
1
Wir haben den FireBeetle wegen des sehr geringen deep sleep Strombedarfs von <10 uA schon vor längerem im Form erwähnt .
Version 1
You can go down to 10 uA in deep sleep – this value is also reported on the FireBeetle page – by initializing the onboard LED (GPIO02) as output and set it to low
: pinMode(2,OUTPUT); digitalWrite(2,LOW);
Version 2 “FireBeetle 2” mit ESP32-E
1 Like
clemens
January 18, 2022, 12:40am
2
FireBeetle 2 / LiPo-Spannung messen
Der FireBeetle 2 hat an GPIO34 eine 1 M / 1 M voltage divider, um die LiPo-Spannung zu messen:
Sketch für FireBeetle 2 um die LiPo-Spannung auszulesen unter
/******************************************************************************
Description.: reads the battery voltage through the voltage divider at GPIO34
if the ESP32-E has calibration eFused those will be used.
In comparison with a regular voltmeter the values of ESP32 and
multimeter differ only about 0.05V
Input Value.: -
Return Value: battery voltage in volts
******************************************************************************/
float readBattery() {
uint32_t value = 0;
int rounds = 11;
esp_adc_cal_characteristics_t adc_chars;
//battery voltage divided by 2 can be measured at GPIO34, which equals ADC1_CHANNEL6
adc1_config_width(ADC_WIDTH_BIT_12);
adc1_config_channel_atten(ADC1_CHANNEL_6, ADC_ATTEN_DB_11);
switch(esp_adc_cal_characterize(ADC_UNIT_1, ADC_ATTEN_DB_11, ADC_WIDTH_BIT_12, 1100, &adc_chars)) {
case ESP_ADC_CAL_VAL_EFUSE_TP:
Serial.println("Characterized using Two Point Value");
break;
This file has been truncated. show original
FireBeetle 2 / Taster nutzen
Der auf dem board vorhandene Taster ist mit GPIO27 und GND verbunden:
Er funktioniert, daher nur korrekt, wenn er zusammen mit einem Pullup verwendet wird, den man z.B. via INPUT_PULLUP
aktiieren kann.
pinMode(27,INPUT_PULLUP);
Der pin state ist somit HIGH
wenn er nicht gedrück ist und LOW
, wenn gedrückt, als umgekehrte intuitive Logik!
clemens
January 23, 2022, 10:44pm
3
Stromverbrauch FireBeetle 1
Der FireBeetle 1 braucht ~9 uA im deep sleep , wichtig dabei ist mit
#define LED_BUILTIN 2
pinMode(LED_BUILTIN, OUTPUT);
digitalWrite(LED_BUILTIN, LOW);
die onboard LED zu initialisieren und vor dem deep sleep LOW
zu schalten!
Stromverbrauch FireBeetle 2
Ohne Modifikation ist der FireBeetle 2 mit 390 uA grottig im deep sleep:
Für substantielle low power applications muss die trace hier getrennt werden, damit funktioniert die onboard RGB-LED dann mit Batterie nicht mehr, sondern nur noch mit USB-Power, naja, es gibt ja noch eine einfarbige “einfache” onboard LED.
Nun schaut es mit ~14 uA deutlich besser aus, aber fast 1,5x der Verbrauch des Vorgänger-Boards, hmm, muss das sein?!
3 Likes