Por qué una placa de desarrollo vacía la batería
En deep sleep (sueño profundo), el chip ESP32 consume unos 10 µA, el ESP32-C3 unos 5 µA y el ESP32-S3 unos 7 µA, según Espressif (nuestra comparativa ESP32 recoge todos los chips). Una placa de desarrollo añade alrededor del chip componentes que nunca duermen:
- El regulador. Muchas placas llevan un AMS1117, con una corriente de reposo de unos 5 mA (hasta 11 mA): quinientas veces lo que consume un ESP32 en deep sleep.
- El LED de alimentación. Está encendido mientras la placa tenga tensión. Su corriente depende de la resistencia en serie, que puedes calcular con nuestra calculadora de resistencia para LED.
- El chip USB-serie. En las placas que lo alimentan desde los 3,3 V, sigue encendido, con o sin cable USB. Lo puedes comprobar en el esquema de la placa.
- Resistencias pull-up, divisores y sensores conectados a los 3,3 V, que consumen día y noche.
Todo junto se nota enseguida. El preajuste «ESP32 DevKit tal cual» de la calculadora de autonomía (un AMS1117, más 3 mA orientativos para el LED y el chip USB-serie) agotaría una celda 18650 de 3000 mAh en unos 13 días en el mejor de los casos, mientras que la misma celda alimenta el módulo suelto de nuestro ejemplo durante unos 13 meses. Mira el caso del DevKit en la calculadora. Y es una cifra optimista: un AMS1117 tiene una caída de alrededor de 1 V, así que con una celda Li-ion la línea de 3,3 V baja de los 3,0 V mínimos del módulo mucho antes de que la celda se agote.
Para un proyecto con batería, usa un módulo suelto en una PCB propia, o una placa pensada para bajo consumo cuyo fabricante publique el consumo de la placa entera. Seeed, por ejemplo, da 44 µA en deep sleep para la XIAO ESP32C3 (mira nuestro pinout de la XIAO ESP32C3). Quitar el LED y el regulador de una placa también funciona, pero entonces los 3,3 V los pones tú.
Elegir la batería
Un módulo ESP32 necesita 3,0–3,6 V, y 3,6 V es también su máximo absoluto. Pocas baterías se mantienen en ese margen de llenas a vacías, y de eso depende si necesitas un regulador, y de qué tipo.
- Una celda Li-ion o LiPo (1S). La opción habitual: barata, recargable y con mucha energía. Pasa de 4,2 V llena a unos 3,0 V, así que necesita un regulador: un LDO (regulador lineal de baja caída) o un buck-boost (siguiente apartado). Usa celdas con circuito de protección o añade uno (mira Seguridad).
- Una celda LiFePO4. Pasa casi toda la descarga en torno a 3,2–3,3 V, así que puede alimentar el módulo directamente, sin regulador y sin corriente de reposo. Eso sí, una carga estándar termina en 3,65 V, por encima del máximo de 3,6 V del módulo: limita la carga a menos de 3,6 V y, por debajo de unos 3,0 V, mantén el módulo en reset con un supervisor de tensión (un circuito de reset) en EN. Las listas de comprobación de Espressif lo recomiendan para alimentaciones que suben despacio o son inestables, como baterías y paneles solares. El supervisor solo detiene el módulo: la celda sigue necesitando su propia protección contra la sobredescarga (un BMS o una placa de protección). A igual tamaño guarda menos energía que una Li-ion.
- Tres pilas AA. Las alcalinas nuevas dan unos 4,5 V y los ensayos de su hoja de datos llegan a 0,8 V por pila, 2,4 V en total; las NiMH van de unos 4,2 V recién cargadas a 2,7 V. Ninguna se queda en el margen: usa un buck-boost.
- Pilas de botón (CR2032). No sirven para la radio del ESP32: Renata especifica su CR2032 para 3 mA continuos, mientras que Espressif pide una alimentación capaz de dar 500 mA. La nota de TI sobre pilas de botón y corriente de pico concluye que un condensador en paralelo es la forma más eficaz de ayudarlas a soportar los picos breves de las radios pensadas para ellas, y esos picos siguen muy por debajo de lo que consume un ESP32.
- Litio-cloruro de tionilo (Li-SOCl₂). Autodescarga muy baja, así que va bien para sensores que se despiertan pocas veces y tienen que durar años. Pero una Saft LS14500 (tamaño AA) está especificada para 50 mA continuos y pulsos de 250 mA, así que para el Wi-Fi hace falta un condensador que dé los picos; la propia Saft advierte de que puede ser necesario. Tras un tiempo almacenada, una capa de pasivación eleva su resistencia: en una prueba de Qoitech, una celda almacenada superaba los 100 Ω y sufría caídas de tensión de hasta 1,8 V en los primeros pulsos. Además, su tensión en vacío, 3,67 V, queda justo por encima del máximo del módulo.
Nuestra comparativa de baterías recoge los detalles de cada química, y la tabla de tensión de baterías convierte una tensión medida en la carga que queda.
El regulador: poca corriente de reposo y corriente suficiente para el Wi-Fi
En deep sleep, la corriente de reposo del propio regulador suele pesar más que el chip. Durante una transmisión Wi-Fi ocurre lo contrario: las guías de diseño de hardware de Espressif piden una alimentación de 3,3 V que dé al menos 500 mA. Un regulador para un nodo con batería necesita las dos cosas.
| Regulador | Tipo | Corriente de reposo | Corriente nominal | Picos del Wi-Fi |
|---|---|---|---|---|
| AMS1117 | LDO | 5 mA | 900 mA | Sí, pero agota la batería |
| MCP1700 | LDO | 1,6 µA | 250 mA | No: menos de 500 mA |
| HT7333 | LDO | 4 µA | 250 mA | No: menos de 500 mA |
| TLV755P | LDO | 25 µA | 500 mA | Sí, al límite |
| AP2112K | LDO | 55 µA | 600 mA | Sí |
| TPS63802 | Buck-boost | 11 µA | 2 A (3,3 V desde 2,3 V) | Sí |
Corriente de reposo típica y corriente de salida nominal de las hojas de datos, las mismas cifras que en nuestra calculadora de reguladores.
El MCP1700 y el HT7333 son populares por su corriente de reposo minúscula, pero con 250 mA están especificados para la mitad de lo que pide Espressif. El TLV755P y el AP2112K cumplen el requisito a cambio de unas decenas de microamperios. Eso sí, el TLV755P va sin margen: está especificado justo para 500 mA y, a esa corriente, su caída puede llegar a 238 mV, así que en los picos del Wi-Fi deja de regular en cuanto la celda baja de unos 3,54 V. Para tener más margen, elige el AP2112K, especificado para 600 mA, y con cualquiera de los dos pon el condensador de reserva que recomienda Espressif (más abajo).
Con una celda Li-ion, un LDO deja de regular cuando la celda baja a 3,3 V más la caída (dropout) del regulador, y a partir de ahí entrega la tensión de la celda menos la caída. El módulo funciona hasta 3,0 V, y según nuestra tabla de tensión de baterías una celda Li-ion en reposo a 3,6 V solo conserva alrededor del 7 % (0–40 % según las tablas de cada fabricante), así que un buen LDO aprovecha casi toda la batería. Con los picos del Wi-Fi, la tensión de la celda baja y la caída del regulador aumenta, de modo que la autonomía se acaba algo antes de lo que indica la tensión en reposo; llegado ese punto, un supervisor en EN ajustado a unos 3,0 V, como recomienda Espressif, mantiene el módulo en reset mientras la tensión sea demasiado baja. Un buck-boost como el TPS63802 mantiene los 3,3 V tanto si la batería está por encima de esa tensión como si está por debajo, y es la opción adecuada para tres pilas AA, que empiezan por encima de 3,6 V y terminan por debajo de 3,0 V.
Comprueba un regulador con tu batería (caída, calor y corriente de reposo); en este ejemplo, un TLV755P con una celda Li-ion.Abrir la calculadora de reguladores
Condensadores: las guías de diseño de Espressif recomiendan al menos 10 µF en la entrada de alimentación y 0,1 µF cerca de los pines de alimentación del chip. Con una batería que no puede dar los picos por sí sola, como una Li-SOCl₂, los tiene que dar un condensador.
El deep sleep en la práctica
En deep sleep se apagan las CPU, casi toda la RAM y los periféricos digitales, y también el Wi-Fi y el Bluetooth; siguen encendidos el controlador RTC y la memoria RTC. Al despertar, el programa vuelve a empezar desde cero, así que en Arduino todo ocurre en setup().
Fuentes de despertar
- Temporizador, en todos los chips: el temporizador RTC despierta el chip pasado un tiempo fijado.
- Pines. El ESP32 y el ESP32-S3 se despiertan con un pin RTC a un nivel dado (ext0) o con varios (ext1). El ESP32-C3 solo se despierta con los pines de su dominio de alimentación RTC, GPIO0–5, que se activan con
esp_deep_sleep_enable_gpio_wakeup()(mira nuestro pinout de la ESP32-C3 SuperMini). - Pads táctiles, en el ESP32 y el ESP32-S3.
- El coprocesador ULP, en el ESP32 y el ESP32-S3: un núcleo pequeño que puede leer un sensor mientras las CPU principales duermen y despertarlas cuando pasa algo.
Conservar datos durante el sueño
Las variables normales se pierden en cada despertar. Declara las que necesites con RTC_DATA_ATTR: se guardan en la memoria RTC, que por defecto sigue alimentada en deep sleep.
Arduino-ESP32
#define SLEEP_MINUTES 15
RTC_DATA_ATTR int bootCount = 0; // se conserva en la memoria RTC
void setup() {
bootCount++;
// leer el sensor, conectar, enviar los datos...
esp_sleep_enable_timer_wakeup(SLEEP_MINUTES * 60ULL * 1000000ULL); // microsegundos
esp_deep_sleep_start(); // no vuelve
}
void loop() {} // nunca se ejecuta
El código está escrito para Arduino-ESP32 3.x, cuya serie estable 3.3 se basa en ESP-IDF 5.5. El temporizador va en microsegundos, de ahí la conversión. Para despertar con un pin, el ESP32 y el ESP32-S3 usan esp_sleep_enable_ext0_wakeup(pin, level); tras el reinicio, esp_sleep_get_wakeup_cause() te dice por qué se ha despertado el chip. En ESP-IDF 6, la base de Arduino-ESP32 4.x, esa función queda obsoleta en favor de esp_sleep_get_wakeup_causes(), que devuelve todas las fuentes de despertar en un mapa de bits, y la esp_deep_sleep_enable_gpio_wakeup() del ESP32-C3 se sustituye por esp_sleep_enable_gpio_wakeup_on_hp_periph_powerdown().
ESPHome
deep_sleep:
run_duration: 10s
sleep_duration: 15min
run_duration es el tiempo que el nodo pasa despierto y sleep_duration el que pasa dormido; en el ESP32, wakeup_pin añade un pin de despertar. Nuestro generador de configuración ESPHome puede añadir este bloque, y una IP fija, por ti.
Los pines durante el sueño
Un pin que debe conservar su nivel mientras el chip duerme, como la puerta de un MOSFET que mantiene apagado un sensor, necesita un hold: gpio_hold_en() antes de dormir y gpio_hold_dis() al despertar. En el ESP32, el ESP32-C3 y el ESP32-S3, eso basta únicamente para los pines RTC: los que quedan fuera del dominio RTC (GPIO1, 3, 5, 16–19 y 21–23 en el ESP32, del GPIO6 en adelante en el ESP32-C3 y del GPIO22 en adelante en el ESP32-S3) necesitan además gpio_deep_sleep_hold_en(). Vigila también la corriente que pasa por pull-ups y divisores. El ejemplo de la propia Espressif es el GPIO12 del ESP32-WROVER, con un pull-up externo y un pull-down interno: por él se fuga corriente hasta que lo aíslas con rtc_gpio_isolate() antes de dormir.
Acortar el tiempo despierto
En el ejemplo, el Wi-Fi se lleva la mayor parte de la corriente media, así que cada segundo que recortes del tiempo despierto cuenta:
- Una IP fija. Te ahorras el DHCP; la documentación de ESPHome dice que «can dramatically improve connection times» (puede acortar mucho el tiempo de conexión). En Arduino, llama a
WiFi.config(ip, gateway, subnet, dns)antes deWiFi.begin(). - Recordar el punto de acceso.
WiFi.begin(ssid, password, channel, bssid)acepta el canal y el BSSID que hayas guardado en la memoria RTC tras la primera conexión. La opciónfast_connectde ESPHome se salta el escaneo inicial y también guarda el BSSID y el canal. - ESP-NOW en lugar de Wi-Fi y MQTT. ESP-NOW es el protocolo sin conexión de Espressif: sin punto de acceso, sin dirección IP y sin broker. Los paquetes llevan hasta 250 bytes (1470 con ESP-NOW v2), y emisor y receptor deben estar en el mismo canal. Un ESP32 enchufado a la corriente puede recibir los datos y pasarlos a MQTT.
- Alimentar los sensores solo cuando hace falta. Alimenta un sensor desde un GPIO si consume poco, o conmútalo con un MOSFET; nuestra calculadora de transistor como interruptor comprueba el componente. Cuenta también el tiempo de arranque del sensor en la fase despierta.
No damos tiempos de conexión: dependen del punto de acceso y de la red. Mide los tuyos, como se explica a continuación.
Medir bien la corriente
Un polímetro en serie sirve para la corriente de deep sleep, con dos salvedades. Su shunt provoca una caída de tensión (burden voltage) que, en las escalas de microamperios, puede bastar para dejar a la placa sin tensión suficiente al despertar; además, su lectura es lenta y no sigue las ráfagas de Wi-Fi, que duran una fracción de segundo.
Instrumentos hechos para esto:
- Nordic Power Profiler Kit II (PPK2): mide de 200 nA a 1 A a 100.000 muestras por segundo, y puede alimentar él mismo la placa a 0,8–5 V.
- Joulescope JS220: muestrea corriente y tensión a la vez a 2 millones de muestras por segundo, con una resolución de hasta 0,5 nA.
- EEVblog µCurrent GOLD: un adaptador que convierte un polímetro en un amperímetro de baja caída, 1 mV por nA, µA o mA.
Uses lo que uses, mide la media durante al menos un ciclo completo, con sueño y despertar incluidos, alimenta la placa a la tensión de la batería que vayas a usar y desconecta el USB, que alimenta la placa desde otra fuente.
Monitorizar la tensión de la batería
Una celda Li-ion (4,2 V llena) supera lo que el ADC puede leer, así que pásala por un divisor. Con 1 MΩ + 1 MΩ, la tensión queda a la mitad y el divisor consume 2,1 µA con la celda llena. Añade un condensador de 100 nF entre el pin del ADC y masa, para que el ADC vea una fuente de baja impedancia mientras muestrea. Para que el divisor no consuma nada mientras el chip duerme, conmútalo por el lado alto: un P-MOSFET entre la celda y el divisor, activado desde un GPIO a través de un N-MOSFET pequeño. Un N-MOSFET hacia masa por sí solo no sirve: cuando está apagado, la resistencia superior lleva el pin del ADC a la tensión de la celda, 4,2 V si está llena, por encima del límite de 3,6 V del chip; y un P-MOSFET controlado directamente desde un GPIO de 3,3 V no llega a apagarse del todo con 4,2 V en la fuente. Nuestra calculadora de transistor como interruptor comprueba los dos componentes.
Míralo en nuestra calculadora: 1 MΩ + 1 MΩ desde una celda Li-ion llena hacia un ESP32-C3.Abrir el divisor de tensión
Mantén la salida del divisor dentro del margen en el que el ADC está especificado: hasta unos 2,45 V en el ESP32 y 2,5 V en el ESP32-C3 con la atenuación máxima, según las hojas de datos de Espressif. En Arduino, analogReadMilliVolts() devuelve una lectura calibrada en milivoltios. En el ESP32 usa un pin del ADC1: el ADC2 no se puede leer de forma fiable con el Wi-Fi encendido. Después, convierte la tensión en nivel de carga con nuestra tabla de tensión de baterías; con una LiFePO4, en mitad de la descarga la tensión dice poco.
Un ejemplo completo
Un nodo sensor con un módulo ESP32-C3 suelto, un buck-boost TPS63802 y una celda Li-ion 18650 de 3000 mAh, que se despierta cada 15 minutos para enviar una lectura por Wi-Fi:
| Concepto | Valor | Fuente |
|---|---|---|
| Deep sleep | 5 µA | Espressif, ESP32-C3 |
| Regulador | 11 µA | TI, corriente de reposo del TPS63802 |
| Divisor de la batería | 2 µA | 1 MΩ + 1 MΩ: 2,1 µA con la celda llena, 1,5 µA a 3,0 V |
| Despierto, CPU | 25 mA durante 0,4 s | Calculadora de autonomía, preajuste ESP32-C3 (orientativo) |
| Despierto, Wi-Fi | 95 mA durante 1,5 s | Calculadora de autonomía, preajuste ESP32-C3 (orientativo) |
| Batería | 3000 mAh, 85 % aprovechable, 2 % de autodescarga al mes | Calculadora de autonomía, preajuste 18650 |
Las cifras de la fase despierta son las orientativas de la calculadora: cámbialas por las que midas.
La corriente media queda en unos 270 µA, lo que da unos 13 meses. La mayor parte se la lleva el Wi-Fi, y después la autodescarga de la propia celda; el deep sleep es casi despreciable.
Si se despierta una vez por hora, la media baja a unos 142 µA, la batería dura unos 2 años (míralo en la calculadora) y la autodescarga pasa a llevarse la mayor parte. La misma celda en un DevKit sin modificar dura, como mucho, unos 13 días.
Un matiz: la calculadora modela un regulador lineal, en el que la batería entrega la corriente del circuito más la corriente de reposo del regulador. Un buck-boost como el TPS63802 transfiere potencia: la corriente de la batería es la del circuito × 3,3 V ÷ (tensión de la batería × rendimiento). Con un rendimiento de alrededor del 90 % (el valor que nuestra calculadora de reguladores supone para el TPS63802), a 3,7 V, la tensión nominal de una celda Li-ion, la batería entrega más o menos la corriente del circuito; algo menos con la celda llena y alrededor de una quinta parte más cerca de 3,0 V, así que para este ejemplo la estimación se sostiene. Con tres pilas AA casi agotadas, hacia 2,7 V, la batería entrega alrededor de un tercio más de lo que consume el circuito.
Abre el ejemplo en la calculadora de autonomía y cambia luego las cifras orientativas por las corrientes que hayas medido.Abrir la calculadora de autonomía
Carga y energía solar
El omnipresente TP4056 carga una celda Li-ion con hasta 1 A y hasta 4,2 V, y termina la carga cuando la corriente baja a una décima parte del valor fijado. No tiene power path: el ESP32 sigue conectado a la celda mientras esta se carga y, si consume más de esa décima parte, puede que la carga no termine nunca. Es solo un cargador, así que la protección contra sobredescarga y cortocircuitos tiene que venir de la celda o de un circuito aparte. Tiene una entrada TEMP para el termistor de la batería, pero conectarla a masa desactiva la comprobación, y los módulos más comunes la traen conectada a masa.
Los cargadores con gestión de power path alimentan el circuito y cargan la celda a la vez. El BQ24074 de TI lo hace (hasta 1,5 A, con una gestión de la potencia de entrada que reduce el consumo cuando la fuente flojea) y tiene una entrada de temperatura de la batería que suspende la carga fuera de su margen; el ejemplo de TI fija 0–50 °C. Para energía solar, el CN3791 de Consonance es un cargador conmutado para una celda Li-ion, de hasta 4 A. Lo que llama MPPT es un punto de trabajo fijo: el chip mantiene su pin MPPT a 1,205 V, así que es el divisor desde el panel el que fija la tensión a la que trabaja el panel, y la eliges una sola vez a partir de la hoja de datos del panel. No tiene entrada de temperatura de la batería.
Para dimensionar el panel y la batería de un nodo que tiene que pasar el invierno, usa nuestra calculadora solar aislada.
Seguridad
- Protección. Una celda Li-ion o LiPo necesita protección contra sobrecarga, sobredescarga y cortocircuitos, en la celda, en la placa o en un módulo aparte.
- Polaridad. Los conectores JST PH de 2 pines de las celdas LiPo no tienen una polaridad estándar: comprueba + y − con un polímetro antes de conectar una batería a una placa (mira nuestra página del JST PH).
- Packs más grandes. Varias celdas juntas pueden dar corrientes muy altas: pon un BMS y un fusible en el cable principal. Nuestra calculadora de pack de baterías te dice qué corriente debe aguantar el BMS.
- LiFePO4 directa al módulo. Solo con un cargador que se detenga por debajo de 3,6 V.
Preguntas frecuentes
¿Cuánto puede durar un ESP32 con batería?
Depende sobre todo de cada cuánto se despierta y de cuánto tiempo está encendido el Wi-Fi. En nuestro ejemplo, un módulo ESP32-C3 suelto que se despierta cada 15 minutos dura unos 13 meses con una celda 18650 de 3000 mAh, y unos 2 años si se despierta una vez por hora; un DevKit sin modificar dura, como mucho, unos 13 días. Prueba tus cifras en la calculadora de autonomía.
¿Puedo alimentar un ESP32 directamente con una celda Li-ion?
No: una celda llena da 4,2 V y el máximo absoluto del módulo es 3,6 V. Usa un regulador de baja caída o un buck-boost. Una celda LiFePO4 puede alimentarlo directamente si limitas su carga a menos de 3,6 V.
¿Qué regulador uso?
Uno que dé al menos 500 mA, como pide Espressif, con poca corriente de reposo: entre los LDO, el AP2112K (55 µA, especificado para 600 mA) o el TLV755P (25 µA, especificado justo para 500 mA), o un buck-boost como el TPS63802 (11 µA) para aprovechar toda la celda o funcionar con tres pilas AA. El MCP1700 y el HT7333 consumen todavía menos, pero solo están especificados para 250 mA.
¿Por qué consume tanto mi ESP32 en deep sleep?
Normalmente por la placa, no por el chip: un regulador como el AMS1117 (unos 5 mA), un LED de alimentación, un chip USB-serie o corriente que pasa por pull-ups, divisores y sensores. Mide con el USB desconectado y luego quita o aísla componentes de uno en uno.
¿Basta con una pila de botón CR2032?
No para el Wi-Fi o el Bluetooth de un ESP32: una CR2032 está especificada para unos pocos miliamperios continuos, y Espressif pide una alimentación capaz de dar 500 mA.
¿Deep sleep o light sleep?
El deep sleep es el que menos consume (unos 10 µA en el ESP32), pero reinicia el programa en cada despertar. El light sleep conserva la RAM y reanuda el programa antes, pero consume más: unos 0,8 mA en el ESP32, 130 µA en el ESP32-C3 y 240 µA en el ESP32-S3, según Espressif. Para un nodo que se despierta cada pocos minutos, suele ganar el deep sleep.
¿Necesito un condensador?
Espressif recomienda al menos 10 µF en la entrada de alimentación y 0,1 µF cerca de los pines de alimentación del chip. Con una batería que no aguanta sola los picos del Wi-Fi, como una Li-SOCl₂, tiene que darlos un condensador más grande.
¿Puedo cargar por USB mientras funciona el ESP32?
Con un cargador con power path como el BQ24074, sí. Con un TP4056 normal, el ESP32 sigue conectado a la celda mientras esta se carga y, si consume más de una décima parte de la corriente de carga, puede que la carga no termine.
Fuentes
- Espressif: ESP32 Series Datasheet (deep sleep 10 µA)
- Espressif ESP Techpedia: introducción al bajo consumo (ESP32-C3 5 µA, ESP32-S3 7 µA)
- Espressif: ESP32-C3 Series Datasheet
- Espressif: hoja de datos del ESP32-WROOM-32E (3,0–3,6 V, máximo absoluto 3,6 V)
- Espressif: guía de diseño de hardware del ESP32, lista de comprobación del esquema
- Espressif: guía de diseño de hardware del ESP32-C3, lista de comprobación del esquema
- ESP-IDF: modos de sueño (ESP32)
- ESP-IDF: modos de sueño (ESP32-S3)
- ESP-IDF: modos de sueño (ESP32-C3)
- ESP-IDF v6.0: guía de migración, sistema (cambios en la API de sueño)
- API de ESP-IDF: gpio_hold_en (comentario de la documentación)
- Arduino-ESP32: Deep Sleep
- Arduino-ESP32: API Wi-Fi
- Arduino-ESP32: API ADC
- Arduino-ESP32: versiones (serie 3.3 sobre ESP-IDF 5.5)
- ESP-IDF: ESP-NOW
- ESPHome: componente Deep Sleep
- ESPHome: componente WiFi
- Wiki de Seeed Studio: XIAO ESP32C3
- Resumen de la hoja de datos del AMS1117
- Microchip: hoja de datos del MCP1700
- Holtek: hoja de datos de los HT73xx
- TI: hoja de datos del TLV755P
- Diodes: hoja de datos del AP2112
- TI: TPS63802
- LG: especificación de la INR18650 MJ1
- EVE: especificación de la LF280K
- Energizer: manual de las NiMH
- Energizer: pila alcalina AA E91
- Renata: hoja de datos de la CR2032
- TI: pilas de botón y corriente de pico (SWRA349)
- Saft: hoja de datos de la LS14500 (2023)
- Saft: hoja de datos de la LS14500 (tensión en vacío)
- Qoitech: prueba de pasivación de una Li-SOCl₂
- NanJing Top Power: hoja de datos del TP4056
- NanJing Top Power: hoja de datos completa del TP4056 (pin TEMP)
- TI: hoja de datos de los BQ2407x (BQ24074)
- Consonance: hoja de datos del CN3791 (en chino, rev. 1.0)
- Nordic Semiconductor: Power Profiler Kit II
- Jetperch: hoja de datos del Joulescope JS220
- EEVblog: µCurrent GOLD