Доброго дня, такая ситуация:
Есть 2 МК esp8266 и esp32 и wi-fi роутер.
Задача отправить данные с датчика освещенности temt6000 который подключен к esp8266 на esp32, который должен эти данные отправить в приложение. Все МК подключенны к одной wi-fi сети, а между собой связаны с помощью blynk Bridge. (Есть другие варианты решения, более простые, но нужно сделать именно так.)
Я прочитал документацию к Bridge, смотрел примеры в интернете, различные варианты кода, но все равно не понимаю как работает эта штука.
Вот код первого МК esp8266 который должен отсылать данные на esp32:
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
int analogy = A0;
float light;
int light_value;
char auth[] = "";
char ssid[] = "";
char pass[] = "";
WidgetBridge bridge1(V1);
BlynkTimer timer;
static bool value = true;
void blynkAnotherDevice()
{
bridge1.virtualWrite(V5, light);
delay (1000);}
BLYNK_CONNECTED() {
bridge1.setAuthToken("");
}
void setup()
{
pinMode(analogy, INPUT);
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
timer.setInterval(1000L, blynkAnotherDevice);
}
void loop () {
int light_value = analogRead(analogy);
light = light_value * 0.0976;// расчет процента
Serial.println(light);
delay(1000);
Blynk.run ();
timer.run ();
}
Я отправляю данные на V5 (исходя из примера), а на втором МК esp32 нужно их обработать и отправить в приложение. Вот код esp32:
#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
char auth[] = "";
char ssid[] = "";
char pass[] = "";
BlynkTimer timer;
BLYNK_WRITE(V5)
{
int pinData = param.asInt();
}
void setup()
{
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
}
void loop()
{
Blynk.run();
timer.run();
}
По идее данные должны записываться на виртуальном пине V5 и отправляться в приложение?
Я попробовал разные варианты с BLYNK_READ, пробовал использовать разные виртуальные пины, пробовал дописывать в коде esp32 Blynk.digitalWrite что бы оно отправлялось в приложение, но оно не отправляет именно с esp32.
Если esp32 отключить от сети или вообще не подключать, то показания датчика приходят в приложение с 1-го МК es8266 если на этот пин вирутальный, V5, подключить монитор, но как сделать так чтоб именно esp32 их отправлял. сначала принимал, от 1-го МК, а потом отправлял в приложение.