Не могу вывести в приложение показания 18В20

Народ, второй день бьюсь.
Wemos D1 mini. ds18b20
Упорно не хочет передавать показания в приложение. В порт передает.
При этом я спокойно управляю релюшкой.
Получается передавать таймер в приложение, Счетчик импульсов от таймера (читал примеры).
Всю голову сломал.

День добрый, собственно где код? иначе тут не поможешь

#define BLYNK_PRINT Serial

#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#include <TimeLib.h>

#define ONE_WIRE_BUS D2


// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "хххххххххх";


// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "home";
char pass[] = "ххххххххх";

OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);




void setup() 
{
Serial.begin(115200);
Blynk.begin(auth, ssid, pass);
sensors.begin();


}

void sendTemps()

{
sensors.requestTemperatures();

float temp = sensors.getTempCByIndex(0); 


Serial.println(temp);

Blynk.virtualWrite(V0, temp);

}

void loop() 

{
Blynk.run();

sendTemps();

}

код надо форматировать перед отправкой.
и у вас функция не правильно вызывается нельзя такое в луп пихать, вызов по таймеру можно сделать.

Изначально код взял с обзоров из Ютуба.
Пример из ссылки пробовал, но приходит счетчик (увеличивается значение на 1 раз в секунду).
Как эти 2 кода срастить не понял.
Я программы в FLProg пишу.

подскажите как правильно?

#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#include <TimeLib.h>
#include <SimpleTimer.h>

#define ONE_WIRE_BUS 4

OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);

char auth[] = "хххххххххх";
char ssid[] = "home";
char pass[] = "ххххххххх";

SimpleTimer timer;

void setup()
{
  Serial.begin(115200);
  Blynk.begin(auth, ssid, pass);

  sensors.begin();

  timer.setInterval(5000L, sendTemps); // Temperature sensor polling interval (5000L = 5 seconds)
}

void sendTemps()
{
  sensors.requestTemperatures(); // Polls the sensors

  float temp = sensors.getTempCByIndex(0); // Gets first probe on wire in lieu of by address
  Serial.print("Temperature: ");
  Serial.println(temp);
  Blynk.virtualWrite(V0, temp);
}

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

Спасибо за помощь, но не помогло. В телефоне по прежнему вместо показаний температуры %.3f

This code works with DS18B20. I don’t know what Blynk widget you are using for reading, but simple Value display will do. Other possibility is that your DS is not properly connected to D2 (GPIO4) pin, or that you are not using pull-up resistor (4K7) which is mandatory in this case. You can also use serial monitor in your IDE to see results.

This sounds like the float bug in the older ESP core… make sure you are updated to 2.4.2+

And don’t forget to search this forum for clues :wink:

https://community.blynk.cc/search?q=%25.3f%20floats%20order%3Alatest

В монитор порта все приходит, датчик работает.

Что надо обновить?
Я новичок.

Click on the green link (2.4.2+)… the ESP Arduino Core that you needed to have installed in-order to get this far… just update it according to their directions.

огромное спасибо. Обновил. Все заработало!

Just don’t say that in England, you could get busted.