BLYNK
HOME       📲 GETTING STARTED       📗 DOCS       ❓HELP CENTER       👉 SKETCH BUILDER

Arduino nano,esp 01(classic)

Всех снова приветствую!Вообщем решил все сделать,как и все с помощью прошивки baaaaobab 1.5.4.Все установил в скетче,как мне кажется правильно,но esp почему не может подключиться к серверу.Мучаюсь вопросом - почему?:grin:


Сам код:

#include <ESP8266_Lib.h>
#include <BlynkSimpleShieldEsp8266.h>
#include <TimeLib.h>
#include <WidgetRTC.h>


// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "";
//char server[] = "blynk-cloud.com";
char ssid[] = "HUAWEI";
char pass[] = "";
//int port = 8080;
char currentTime[16];
char currentDate[16];
//int pos = 0;
#define EspSerial Serial
#define ESP8266_BAUD 9600
ESP8266 wifi(&Serial);

BlynkTimer timer;


WidgetRTC rtc;


// Digital clock display of the time
void clockDisplay()
{
  // You can call hour(), minute(), ... at any time
  // Please see Time library examples for details

  String currentTime = String(hour()) + ":" + minute() + ":" + second();
  String currentDate = String(day()) + " " + month() + " " + year();
  Serial.print("Current time: ");
  Serial.print(currentTime);
  Serial.print(" ");
  Serial.print(currentDate);
  Serial.println();

  // Send time to the App
  Blynk.virtualWrite(V1, currentTime);
  // Send date to the App
  Blynk.virtualWrite(V2, currentDate);
}


void setup()
{
  Serial.begin(9600);

  // Blynk will work through Serial
  // Do not read or write this serial manually in your sketch
  EspSerial.begin(ESP8266_BAUD);
  Blynk.begin(auth, wifi, ssid, pass, "blynk-cloud.com", 8442);
  rtc.begin();
  setSyncInterval(10 * 60); // Sync interval in seconds (10 minutes)


  // Display digital clock every 10 seconds
  timer.setInterval(10000L, clockDisplay);

}



void loop() {
  Blynk.run();
  timer.run();
}```

Сам модуль выдает такую преамбулу:
```AT
ATE0
AT+GMR
AT+CIPMUX=1
AT+CWMODE?
AT+CWJAP="HUAWEI",""
AT+CIFSR
AT+CIPCLOSE=1
AT+CIPCLOSE=1
AT+CIPSTART=1,"TCP","blynk-cloud.com",8442
AT+CIPSEND=1,37```
И так по кругу постоянно.Для соединения модуля с ардуино использую такой вот адаптер,как на картинке

Подскажите пожалуйста,какую ошибку я допускаю?Вроде все пересмотрел и не увидел учевидного:thinking:

Все работает,как и часы.Почему то потребовалось пересоздавать проект,хотя придыдущий был с абсолютно той же платой,а почему,мне так и не стало ясно:roll_eyes:

Продолжил дальше свои эксперименты,не долго радовался.Подключил емкостные датчики влажности к Blynk’y через Blynk.virtualWrite(V, val) и он теперь вообще не подсоединяется к приложение,кто-нибудь может подсказать,в чем моя ошибка?
Сам код:

#include <ESP8266_Lib.h>
#include <BlynkSimpleShieldEsp8266.h>
#include <TimeLib.h>
#include <WidgetRTC.h>


// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "";
//char server[] = "blynk-cloud.com";
char ssid[] = "HUAWEI";
char pass[] = "";
//int port = 8080;
char currentTime[16];
char currentDate[16];
//int pos = 0;
#define EspSerial Serial
#define ESP8266_BAUD 9600
#define SENSOR A7
#define SENSOR1 A6
#define SENSOR2 A5
#define SENSOR3 A4
#define MIN 500
#define MAX 900
uint16_t sensor;
uint16_t sensor1;
uint16_t sensor2;
uint16_t sensor3;

ESP8266 wifi(&Serial);

BlynkTimer timer;


WidgetRTC rtc;


// Digital clock display of the time
void clockDisplay()
{
  // You can call hour(), minute(), ... at any time
  // Please see Time library examples for details

  String currentTime = String(hour()) + ":" + minute() + ":" + second();
  String currentDate = String(day()) + " " + month() + " " + year();
  Serial.print("Current time: ");
  Serial.print(currentTime);
  Serial.print(" ");
  Serial.print(currentDate);
  Serial.println();

  // Send time to the App
  Blynk.virtualWrite(V1, currentTime);
  // Send date to the App
  Blynk.virtualWrite(V2, currentDate);
}


void setup()
{
  sensor = analogRead(SENSOR);
  sensor = constrain(sensor, 500, 900);
  sensor = map(sensor, MIN, MAX, 0, 100);
  Blynk.virtualWrite(V3, sensor);
  sensor1 = analogRead(SENSOR1);
  sensor1 = constrain(sensor1, 500, 900);
  sensor1 = map(sensor1, MIN, MAX, 0, 100);
  Blynk.virtualWrite(V4, sensor1);
  sensor2 = analogRead(SENSOR2);
  sensor2 = constrain(sensor2, 500, 900);
  sensor2 = map(sensor2, MIN, MAX, 0, 100);
  Blynk.virtualWrite(V5, sensor3);
  sensor3 = analogRead(SENSOR3);
  sensor3 = constrain(sensor3, 500, 900);
  sensor3 = map(sensor3, MIN, MAX, 0, 100);
  Blynk.virtualWrite(V6, sensor3);
  Serial.begin(9600);

  // Blynk will work through Serial
  // Do not read or write this serial manually in your sketch
  EspSerial.begin(ESP8266_BAUD);
  Blynk.begin(auth, wifi, ssid, pass, "blynk-cloud.com", 8442);
  rtc.begin();
  setSyncInterval(10 * 60); // Sync interval in seconds (10 minutes)


  // Display digital clock every 10 seconds
  timer.setInterval(10000L, clockDisplay);

}



void loop() {
  Blynk.run();
  timer.run();
}```

В мониторе теперь вот так вот:
```AT
AT+CIPCLOSE=1
AT+CIPCLOSE=1
AT+CIPSTART=1,"TCP","blynk-cloud.com",8442
AT+CIPCLOSE=1
AT+CIPCLOSE=1
AT+CIPSTART=1,"TCP","blynk-cloud.com",8442
AT+CIPCLOSE=1
AT+CIPCLOSE=1
AT+CIPSTART=1,"TCP","blynk-cloud.com",8442```
Подскажите пожалуйста,что не так?:face_with_raised_eyebrow:

С 23 попытки он все-таки загрузился :stuck_out_tongue:
Но пришлось такой код использовать:

#include <ESP8266_Lib.h>
#include <BlynkSimpleShieldEsp8266.h>
#include <TimeLib.h>
#include <WidgetRTC.h>


// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "";
//char server[] = "blynk-cloud.com";
char ssid[] = "HUAWEI";
char pass[] = "";
//int port = 8080;
char currentTime[16];
char currentDate[16];
//int pos = 0;
#define EspSerial Serial
#define ESP8266_BAUD 9600
#define SENSOR A7
#define SENSOR1 A6
#define SENSOR2 A5
#define SENSOR3 A4
#define MIN 500
#define MAX 900
uint16_t sensor;
uint16_t sensor1;
uint16_t sensor2;
uint16_t sensor3;

ESP8266 wifi(&Serial);

BlynkTimer timer;


WidgetRTC rtc;


// Digital clock display of the time
void clockDisplay()
{
  // You can call hour(), minute(), ... at any time
  // Please see Time library examples for details

  String currentTime = String(hour()) + ":" + minute() + ":" + second();
  String currentDate = String(day()) + " " + month() + " " + year();
  Serial.print("Current time: ");
  Serial.print(currentTime);
  Serial.print(" ");
  Serial.print(currentDate);
  Serial.println();

  // Send time to the App
  Blynk.virtualWrite(V1, currentTime);
  // Send date to the App
  Blynk.virtualWrite(V2, currentDate);
}


void setup()
{
  sensor = analogRead(SENSOR);
  sensor = constrain(sensor, 500, 900);
  sensor = map(sensor, MIN, MAX, 0, 100);
  //Blynk.virtualWrite(V3, sensor);
  sensor1 = analogRead(SENSOR1);
  sensor1 = constrain(sensor1, 500, 900);
  sensor1 = map(sensor1, MIN, MAX, 0, 100);
  //Blynk.virtualWrite(V4, sensor1);
  sensor2 = analogRead(SENSOR2);
  sensor2 = constrain(sensor2, 500, 900);
  sensor2 = map(sensor2, MIN, MAX, 0, 100);
  //Blynk.virtualWrite(V5, sensor3);
  sensor3 = analogRead(SENSOR3);
  sensor3 = constrain(sensor3, 500, 900);
  sensor3 = map(sensor3, MIN, MAX, 0, 100);
  //Blynk.virtualWrite(V6, sensor3);
  {
  
  Serial.begin(9600);

  // Blynk will work through Serial
  // Do not read or write this serial manually in your sketch
  EspSerial.begin(ESP8266_BAUD);
  Blynk.begin(auth, wifi, ssid, pass, "blynk-cloud.com", 8442);
  rtc.begin();
  setSyncInterval(10 * 60); // Sync interval in seconds (10 minutes)


  // Display digital clock every 10 seconds
  timer.setInterval(10000L, clockDisplay);

}
}
BLYNK_READ(V3)
{
  Blynk.virtualWrite(V3, sensor);
}
BLYNK_READ(V4) 
{
  Blynk.virtualWrite(V4, sensor1);
}
BLYNK_READ(V5)
{
  Blynk.virtualWrite(V5, sensor2);
}
BLYNK_READ(V6)
{
  Blynk.virtualWrite(V6, sensor3);
}


void loop() {
  Blynk.run();
  timer.run();
}```
В сериал монитор датчики реагировали на нажатие-отжатие,а вот в приложение встали намертво.
Использовал labaled value push(5,10,2,1,sec),но показания почему то не меняются,дайте  подсказку,почему так быть может?