Utilizar módulo bluetooth HM10 para fazer reset a ESP8266 NodeMCU

Olá a todos,

Estou a realizar um projeto simples no qual coloco uma placa ESP8266 NodeMCU no modo DeepSleep, para que possa economizar bateria, pois ela é alimentada por 4 baterias AA.

Qual é o problema?
Não quero que meu ESP acorde a cada x segundos, quero que só acorde quando o HM10 receber um sinal.

Eu tinha um módulo bluetooth HC-05 antes, no qual conectei o TX ao pino RST do ESP8266 para forçá-lo a reiniciar e estava a funcionar bem, mas mais uma vez devido à economia de energia decidi mudar do HC-05 para o HM10.

Portanto, as ligações entre o HM10 / HC-05 e o NodeMCU ESP8266 são os seguintes:

HM10/HC-05 ESP8266 NodeMCU
** VCC 3.3V**
** GND GND**
** TX RST/EN**
Fiz alguns testes e obtive os seguintes resultados quando o ESP8266 está em DeepSleep:
__ HC-05 TX conectado ao pino RST: OK (esp8266 reiniciado)
HC-05 TX conectado ao pino EN: Nada acontece
HM10 TX conectado ao pino RST: Nada acontece
HM10 TX conectado ao pino EN: Nada acontece
E quando o ESP8266 está a correr sem o DeepSleep:
HC-05 TX conectado ao pino RST: OK (esp8266 reiniciado)
HC-05 TX conectado ao pino EN: OK (esp8266 reiniciado)
HM10 TX conectado ao pino RST: Nada acontece
HM10 TX conectado ao pino EN: OK (esp8266 reiniciado)
Acho esse comportamento um pouco estranho. Existe alguma explicação simples?
Conclusão: eu só preciso que o meu HM10 BLE reinicie o ESP8266 quando este estiver no modo DeepSleep.
Desde já, obrigado,
Gonçalo ribeiro__

Pergunta estúpida e como estas a alimentar esse módulo bluetooth?
Usas as mesmas pilhas que usas para o esp?

hugo007:
Pergunta estúpida e como estas a alimentar esse módulo bluetooth?
Usas as mesmas pilhas que usas para o esp?

Boas Hugo,

Estou a alimentar o módulo através do ESP.
Ligo o VCC e o GND do módulo bluetooth aos pins 3V e GND do ESP.

O ESP por sua vez está a ser alimentado pelo pack das 4 pilhas AA com ~6V inicialmente

E quanto é que te consome o módulo bluetooth?
Não estarás a poupar energia no esp8266 e a desperdiça-la no módulo?

hugo007:
E quanto é que te consome o módulo bluetooth?
Não estarás a poupar energia no esp8266 e a desperdiça-la no módulo?

É um facto. O módulo está a consumir cerca de 10mA. Ainda estou a trabalhar nessa parte.
Descobri que é possível pô-lo num modo de sleep em que gasta cerca de 1,5mA.

Neste momento com o ESP8266 em modo "light sleep" estou num total a consumir 30mA. O ideal seria manter mesmo o ESP8266 em deepsleep e conseguir fazer-lhe reset através do HM10 tal como fazia com os HC-05s...

Podes explicar o teu objectivo?
Pretendes que quando "algo" seja enviado pelo Bluetooth acorde o teu esp?
Envias informação pela uart entre o bluetooth e o esp ou só estas mesmo a usar esse "método" para acordares o esp?

hugo007:
Podes explicar o teu objectivo?
Pretendes que quando "algo" seja enviado pelo Bluetooth acorde o teu esp?
Envias informação pela uart entre o bluetooth e o esp ou só estas mesmo a usar esse "método" para acordares o esp?

Então sendo mais explicito o objetivo é o seguinte:

De um lado tenho este ESP (aka ESP-A) conectado ao HM10(aka HM10-A) e que vai também ter ligado um servo motor. Esta parte do projeto tem como objetivo ser alimentado por pilhas com o objetivo final de que aguente cerca de 2 meses. Ou seja este ESP-A tem como objetivo apenas controlar as mensagens recebidas pelo módulo HM10-A de forma a fazer o servo rodar uns determinados graus.

Por outro lado tenho outro ESP(aka ESP-B) ligado a outro HM10(aka HM10-B) e aqui não temos preocupações com a bateria porque vai estar a ser alimentado pela corrente. O objetivo deste ESP-B já é diferente. Este já vai estar ligado à internet a um serviço MQTT para receber ordens de uma aplicação mobile, que por sua vez transmite as ordens para o servo motor através dos HM10-A e HM10-B.

Inicialmente a ideia era apenas ter um ESP e nem existirem módulos bluetooth. Mas sendo que as mensagens de execução podem chegar a qualquer momento, não podia ter o ESP em deep sleep a despertar de x em x tempo porque quero que as ações sejam executadas no imediato, e assim o ESP iria consumir demasiada energia ao estar sempre em execução "normal", daí ter surgido depois esta segunda abordagem.

A ideia de querer acordar o ESP-A com o HM10-A é simplesmente para poder manter o ESP-A em deep sleep, o que não estaria a consumir praticamente nada, e quando o HM10-A recebe algo do HM10-B, então acorda o ESP-A e este saberá o que fazer.

Conseguiste perceber a ideia?