ESP-01 controlando o rele de outro ESP-01 e vice Versa (Seria Possível?) - Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)2024-03-29T13:59:00Zhttps://labdegaragem.com/forum/topics/esp-01-controlando-o-rele-de-outro-esp-01-e-vice-versa-possivel?commentId=6223006%3AComment%3A710609&xg_source=activity&feed=yes&xn_auth=noOlá ClaudioTem sim, esse proj…tag:labdegaragem.com,2019-07-30:6223006:Comment:7142552019-07-30T17:43:36.437ZJemerson Marques dos Santoshttps://labdegaragem.com/profile/JemersonMarquesdosSantos
<p>Olá Claudio<br/>Tem sim, esse projeto já existe.<br/>Sugiro dar uma olhada nesse tópico.<br/><a href="http://www.fvml.com.br/2019/07/comunicacao-e-controle-entre-dois.html">http://www.fvml.com.br/2019/07/comunicacao-e-controle-entre-dois.html</a></p>
<p>Olá Claudio<br/>Tem sim, esse projeto já existe.<br/>Sugiro dar uma olhada nesse tópico.<br/><a href="http://www.fvml.com.br/2019/07/comunicacao-e-controle-entre-dois.html">http://www.fvml.com.br/2019/07/comunicacao-e-controle-entre-dois.html</a></p> agora que percebi isso, ele t…tag:labdegaragem.com,2019-06-29:6223006:Comment:7119772019-06-29T02:48:42.132Zmarcela de souzahttps://labdegaragem.com/profile/marceladesouza
<p>agora que percebi isso, ele ta mudando o estado</p>
<p>agora que percebi isso, ele ta mudando o estado</p> Ola´,tudo bem? Nossa!! pratic…tag:labdegaragem.com,2019-06-29:6223006:Comment:7119732019-06-29T02:11:38.652ZCLAUDIO RAIMUNDO DA COSTAhttps://labdegaragem.com/profile/CLAUDIORAIMUNDODACOSTA
<p>Ola´,tudo bem? Nossa!! praticamente é isso que preciso..mas notei que as vezes ele liga o led quando eu aperto botão e as vezes ele desliga o led quando aperto o botao.. preciso que fique ligado ao apertar e desligado ao soltar..</p>
<p>Mas de resto, perfeito!</p>
<p>Ola´,tudo bem? Nossa!! praticamente é isso que preciso..mas notei que as vezes ele liga o led quando eu aperto botão e as vezes ele desliga o led quando aperto o botao.. preciso que fique ligado ao apertar e desligado ao soltar..</p>
<p>Mas de resto, perfeito!</p> teste essa mudança que fiz tag:labdegaragem.com,2019-06-28:6223006:Comment:7121442019-06-28T05:27:00.199Zmarcela de souzahttps://labdegaragem.com/profile/marceladesouza
<p>teste essa mudança que fiz </p>
<p>teste essa mudança que fiz </p> Como mencionado pelo RV, s…tag:labdegaragem.com,2019-06-09:6223006:Comment:7107122019-06-09T19:01:10.125ZJoao Vitorhttps://labdegaragem.com/profile/jvsilvictor
<p></p>
<p> Como mencionado pelo RV, siga as sugestões de postagem. A fim de melhorar e facilitar a organização do post e análise do seu código, coloque-o em um arquivo em anexo ao invés de pro no corpo da mensagem.</p>
<p></p>
<p> Mas, resumindo, em um <span style="text-decoration: underline;">pseudo-código,</span> você pode fazer algo do tipo:</p>
<p></p>
<p><em> if(botao_pressionado)</em></p>
<p><em> envia(liga_rele); </em></p>
<p><em> else</em></p>
<p><em> …</em></p>
<p></p>
<p> Como mencionado pelo RV, siga as sugestões de postagem. A fim de melhorar e facilitar a organização do post e análise do seu código, coloque-o em um arquivo em anexo ao invés de pro no corpo da mensagem.</p>
<p></p>
<p> Mas, resumindo, em um <span style="text-decoration: underline;">pseudo-código,</span> você pode fazer algo do tipo:</p>
<p></p>
<p><em> if(botao_pressionado)</em></p>
<p><em> envia(liga_rele); </em></p>
<p><em> else</em></p>
<p><em> envia(desliga_rele);</em></p>
<p></p>
<p>Dessa forma será enviado o comando de ligar enquanto o botão estiver pressionado. Soltando-o, o comando de desliga será enviado.</p>
<p></p>
<p></p>
<p></p> Sugestãotag:labdegaragem.com,2019-06-09:6223006:Comment:7106112019-06-09T14:17:18.692Zmineirin RVhttps://labdegaragem.com/profile/RuiViana
<p><a href="http://labdegaragem.com/forum/topics/sugest-o-de-como-postar">Sugestão</a></p>
<p><a href="http://labdegaragem.com/forum/topics/sugest-o-de-como-postar">Sugestão</a></p> Ola.. perfeito o ESP now.. ma…tag:labdegaragem.com,2019-06-09:6223006:Comment:7106092019-06-09T02:24:10.688ZCLAUDIO RAIMUNDO DA COSTAhttps://labdegaragem.com/profile/CLAUDIORAIMUNDODACOSTA
<p>Ola.. perfeito o ESP now.. mas.......</p>
<p>A mesma pergunta que fiz ao nosso amigo Jose Augusto, faço á voce!</p>
<p>Esse exemplo abaixo eu consigo fazer a comunicação entre os ESPs perfeitamente, mas eu gostaria que o rele do outro ESP só fique acionando o tempo que o botão estiver apertado (acho que é PushBoton) e desligar assim que eu soltar o botão.. No exemplo o rele muda de estado toda vez que aperto o botao.. ou seja ora ligado, ora desligado!!</p>
<p>pode me dar uma dica onde…</p>
<p>Ola.. perfeito o ESP now.. mas.......</p>
<p>A mesma pergunta que fiz ao nosso amigo Jose Augusto, faço á voce!</p>
<p>Esse exemplo abaixo eu consigo fazer a comunicação entre os ESPs perfeitamente, mas eu gostaria que o rele do outro ESP só fique acionando o tempo que o botão estiver apertado (acho que é PushBoton) e desligar assim que eu soltar o botão.. No exemplo o rele muda de estado toda vez que aperto o botao.. ou seja ora ligado, ora desligado!!</p>
<p>pode me dar uma dica onde mexer??</p>
<p>Grato</p>
<p></p>
<p>exemplo EspNowBroadcast.ino</p>
<p></p>
<p>#include <WifiEspNowBroadcast.h><br/>#if defined(ESP8266)<br/>#include <ESP8266WiFi.h><br/>#elif defined(ESP32)<br/>#include <WiFi.h><br/>#endif</p>
<p>static const int BUTTON_PIN =5; // "flash" button on NodeMCU, Witty Cloud, etc<br/>static const int LED_PIN = 16; // ESP-12F blue LED</p>
<p>int ledState = HIGH;</p>
<p>void processRx(const uint8_t mac[6], const uint8_t* buf, size_t count, void* cbarg) {<br/>Serial.printf("Message from %02X:%02X:%02X:%02X:%02X:%02X\n", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]);<br/>for (int i = 0; i < count; ++i) {<br/>Serial.print(static_cast<char>(buf[i]));<br/>}<br/>Serial.println();</p>
<p>digitalWrite(LED_PIN, ledState);<br/>ledState = 1 - ledState;<br/>}</p>
<p>void setup() {<br/>Serial.begin(115200);<br/>Serial.println();</p>
<p>WiFi.persistent(false);<br/>bool ok = WifiEspNowBroadcast.begin("ESPNOW", 3);<br/>if (!ok) {<br/>Serial.println("WifiEspNowBroadcast.begin() failed");<br/>ESP.restart();<br/>}</p>
<p>WifiEspNowBroadcast.onReceive(processRx, nullptr);</p>
<p>pinMode(BUTTON_PIN, INPUT_PULLUP);<br/>pinMode(LED_PIN, OUTPUT);<br/>digitalWrite(LED_PIN, ledState);</p>
<p>Serial.print("MAC address of this node is ");<br/>Serial.println(WiFi.softAPmacAddress());<br/>Serial.println("Press the button to send a message");<br/>}</p>
<p>void sendMessage() {<br/>char msg[60];<br/>int len = snprintf(msg, sizeof(msg), "hello ESP-NOW from %s at %lu", WiFi.softAPmacAddress().c_str(), millis());<br/>WifiEspNowBroadcast.send(reinterpret_cast<const uint8_t*>(msg), len);</p>
<p>Serial.println("Sending message");<br/>Serial.println(msg);<br/>Serial.print("Recipients:");<br/>const int MAX_PEERS = 20;<br/>WifiEspNowPeerInfo peers[MAX_PEERS];<br/>int nPeers = std::min(WifiEspNow.listPeers(peers, MAX_PEERS), MAX_PEERS);<br/>for (int i = 0; i < nPeers; ++i) {<br/>Serial.printf(" %02X:%02X:%02X:%02X:%02X:%02X", peers[i].mac[0], peers[i].mac[1], peers[i].mac[2], peers[i].mac[3], peers[i].mac[4], peers[i].mac[5]);<br/>}<br/>Serial.println();<br/>}</p>
<p>void loop() {<br/>if (digitalRead(BUTTON_PIN) == LOW) { // button is pressed<br/>sendMessage();</p>
<p>while (digitalRead(BUTTON_PIN) == LOW) // wait for button release<br/>;<br/>}</p>
<p>WifiEspNowBroadcast.loop();<br/>delay(10);<br/>}</p> Ola..boa noite!! Sim, essa se…tag:labdegaragem.com,2019-06-09:6223006:Comment:7107042019-06-09T02:20:19.952ZCLAUDIO RAIMUNDO DA COSTAhttps://labdegaragem.com/profile/CLAUDIORAIMUNDODACOSTA
<p>Ola..boa noite!! Sim, essa seria uma soluçao! Eu estou fazendo uns testes com esse protocolo mas estou preso no seguinte problema:</p>
<p>Esse exemplo abaixo eu consigo fazer a comunicação entre os ESPs perfeitamente, mas eu gostaria que o rele do outro ESP só fique acionando o tempo que o botão estiver apertado (acho que é PushBoton) e desligar assim que eu soltar o botão.. No exemplo o rele muda de estado toda vez que aperto o botao.. ou seja ora ligado, ora desligado!!</p>
<p>pode me…</p>
<p>Ola..boa noite!! Sim, essa seria uma soluçao! Eu estou fazendo uns testes com esse protocolo mas estou preso no seguinte problema:</p>
<p>Esse exemplo abaixo eu consigo fazer a comunicação entre os ESPs perfeitamente, mas eu gostaria que o rele do outro ESP só fique acionando o tempo que o botão estiver apertado (acho que é PushBoton) e desligar assim que eu soltar o botão.. No exemplo o rele muda de estado toda vez que aperto o botao.. ou seja ora ligado, ora desligado!!</p>
<p>pode me dar uma dica onde mexer??</p>
<p>Grato</p>
<p></p>
<p>exemplo EspNowBroadcast.ino</p>
<p></p>
<p>#include <WifiEspNowBroadcast.h><br/>#if defined(ESP8266)<br/>#include <ESP8266WiFi.h><br/>#elif defined(ESP32)<br/>#include <WiFi.h><br/>#endif</p>
<p>static const int BUTTON_PIN =5; // "flash" button on NodeMCU, Witty Cloud, etc<br/>static const int LED_PIN = 16; // ESP-12F blue LED</p>
<p>int ledState = HIGH;</p>
<p>void processRx(const uint8_t mac[6], const uint8_t* buf, size_t count, void* cbarg) {<br/> Serial.printf("Message from %02X:%02X:%02X:%02X:%02X:%02X\n", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]);<br/> for (int i = 0; i < count; ++i) {<br/> Serial.print(static_cast<char>(buf[i]));<br/> }<br/> Serial.println();</p>
<p>digitalWrite(LED_PIN, ledState);<br/> ledState = 1 - ledState;<br/>}</p>
<p>void setup() {<br/> Serial.begin(115200);<br/> Serial.println();</p>
<p>WiFi.persistent(false);<br/> bool ok = WifiEspNowBroadcast.begin("ESPNOW", 3);<br/> if (!ok) {<br/> Serial.println("WifiEspNowBroadcast.begin() failed");<br/> ESP.restart();<br/> }</p>
<p>WifiEspNowBroadcast.onReceive(processRx, nullptr);</p>
<p>pinMode(BUTTON_PIN, INPUT_PULLUP);<br/> pinMode(LED_PIN, OUTPUT);<br/> digitalWrite(LED_PIN, ledState);</p>
<p>Serial.print("MAC address of this node is ");<br/> Serial.println(WiFi.softAPmacAddress());<br/> Serial.println("Press the button to send a message");<br/>}</p>
<p>void sendMessage() {<br/> char msg[60];<br/> int len = snprintf(msg, sizeof(msg), "hello ESP-NOW from %s at %lu", WiFi.softAPmacAddress().c_str(), millis());<br/> WifiEspNowBroadcast.send(reinterpret_cast<const uint8_t*>(msg), len);</p>
<p>Serial.println("Sending message");<br/> Serial.println(msg);<br/> Serial.print("Recipients:");<br/> const int MAX_PEERS = 20;<br/> WifiEspNowPeerInfo peers[MAX_PEERS];<br/> int nPeers = std::min(WifiEspNow.listPeers(peers, MAX_PEERS), MAX_PEERS);<br/> for (int i = 0; i < nPeers; ++i) {<br/> Serial.printf(" %02X:%02X:%02X:%02X:%02X:%02X", peers[i].mac[0], peers[i].mac[1], peers[i].mac[2], peers[i].mac[3], peers[i].mac[4], peers[i].mac[5]);<br/> }<br/> Serial.println();<br/>}</p>
<p>void loop() {<br/> if (digitalRead(BUTTON_PIN) == LOW) { // button is pressed<br/> sendMessage();</p>
<p>while (digitalRead(BUTTON_PIN) == LOW) // wait for button release<br/> ;<br/> }</p>
<p>WifiEspNowBroadcast.loop();<br/> delay(10);<br/>}</p>
<p></p>
<p></p>
<p></p>
<p></p> BOA NOITE... Sim, com o uso d…tag:labdegaragem.com,2019-06-09:6223006:Comment:7105862019-06-09T02:09:13.946ZCLAUDIO RAIMUNDO DA COSTAhttps://labdegaragem.com/profile/CLAUDIORAIMUNDODACOSTA
<p>BOA NOITE... Sim, com o uso de aplicativo fica facil... mas quero uma comunicação direta e somente entre os dois e sem internet... apenas usando a comunicação WIFI interna dos dois!!</p>
<p>Valeu</p>
<p>BOA NOITE... Sim, com o uso de aplicativo fica facil... mas quero uma comunicação direta e somente entre os dois e sem internet... apenas usando a comunicação WIFI interna dos dois!!</p>
<p>Valeu</p> Uma boa alternativa é u…tag:labdegaragem.com,2019-06-08:6223006:Comment:7106022019-06-08T19:36:32.002ZJoao Vitorhttps://labdegaragem.com/profile/jvsilvictor
<p></p>
<p></p>
<p> Uma boa alternativa é utilizar a lib ESP-NOW da prórpia Espressif, como sugerido pelo José Gustavo. É um protocolo para comunicação entre ESPs que dispensa um intermediário (um roteador, ou um Broker - no caso do MQTT).</p>
<p></p>
<p>Referências:</p>
<p><a href="https://www.espressif.com/en/products/software/esp-now/overview" rel="nofollow">https://www.espressif.com/en/products/software/esp-now/overview…</a></p>
<p></p>
<p></p>
<p></p>
<p> Uma boa alternativa é utilizar a lib ESP-NOW da prórpia Espressif, como sugerido pelo José Gustavo. É um protocolo para comunicação entre ESPs que dispensa um intermediário (um roteador, ou um Broker - no caso do MQTT).</p>
<p></p>
<p>Referências:</p>
<p><a rel="nofollow" href="https://www.espressif.com/en/products/software/esp-now/overview">https://www.espressif.com/en/products/software/esp-now/overview</a></p>
<p><a rel="nofollow" href="https://docs.espressif.com/projects/esp-idf/en/latest/api-reference/network/esp_now.html">https://docs.espressif.com/projects/esp-idf/en/latest/api-reference...</a></p>
<p><a rel="nofollow" href="https://github.com/espressif/arduino-esp32/tree/master/libraries/ESP32/examples/ESPNow">https://github.com/espressif/arduino-esp32/tree/master/libraries/ES...</a></p>
<p> </p>
<p></p>
<p></p>
<p></p>
<p></p>