ต่อ esp8266 ส่งค่าไป Blynk แต่ค่าไม่ขึ้นที่แอพครับ

code ;

#define BLYNK_PRINT Serial


#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <SimpleDHT.h>
#include <SimpleTimer.h>

// DHT Config
int pinDHT22 = D5;
SimpleDHT22 dht22;

// SET Timer
SimpleTimer timer;

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

// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "PCR008-5G";
char pass[] = "0874597999";

BLYNK_CONNECTED() {
    Blynk.syncAll();
}

void setup()
{
  // Debug console
  Serial.begin(9600);

  Blynk.begin(auth, ssid, pass);
  // You can also specify server:
  //Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 8442);
  //Blynk.begin(auth, ssid, pass, IPAddress(192,168,1,100), 8442);
  timer.setInterval(4000L, sendTemp);
}

void sendTemp()
{
  float temperature = 0;
  float humidity = 0;
  int err = SimpleDHTErrSuccess;
  if ((err = dht22.read2(pinDHT22, &temperature, &humidity, NULL)) != SimpleDHTErrSuccess) {
    Serial.print("Read DHT22 failed, err="); Serial.println(err);delay(1000);
    return;
  }  
  Blynk.virtualWrite(10, temperature); // virtual pin 
  Blynk.virtualWrite(11, humidity); // virtual pin 
}

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

ใช้ server ของที่ไหนครับ

ตอนตั้งค่าผมใส่ไปตามนี้ครับ

Untitled

อัพเดทครับ

แก้ตามนี้ครับ

#define BLYNK_PRINT Serial

#include <ESP8266WiFi.h>

#include <BlynkSimpleEsp8266.h>

#include <SimpleDHT.h>

#include <SimpleTimer.h>

// DHT Config

int pinDHT22 = D5;

SimpleDHT22 dht22;

// SET Timer

SimpleTimer timer;

// You should get Auth Token in the Blynk App.

// Go to the Project Settings (nut icon).

char auth[] = " 2giJUJkaaVIk4Z9_0r8p7UAn3w2bN-bP";

// Your WiFi credentials.

// Set password to "" for open networks.

char ssid[] = "PCR008-5G";

char pass[] = "0874597999";

BLYNK_CONNECTED() {

    Blynk.syncAll();

}

void setup()

{

  // Debug console

  Serial.begin(9600);

 

  // You can also specify server:

  Blynk.begin(auth, ssid, pass, "blynk.iot-cm.com", 8080);

  timer.setInterval(4000L, sendTemp);

}

void sendTemp()

{

  float temperature = 0;

  float humidity = 0;

  int err = SimpleDHTErrSuccess;

  if ((err = dht22.read2(pinDHT22, &temperature, &humidity, NULL)) != SimpleDHTErrSuccess) {

    Serial.print("Read DHT22 failed, err="); Serial.println(err);delay(1000);

    return;

  }  

  Blynk.virtualWrite(10, temperature); // virtual pin 

  Blynk.virtualWrite(11, humidity); // virtual pin 

}

void loop()

{

  Blynk.run();

  timer.run();

}

ยังไม่ขึ้นเหมือนเดิมเลยครับ

ขอดูที่ Serial หน่อยครับ

นี่ครับ

ศึกษา จากกระทู้นี้ครับให้เริ่มต้นจาก Code กระทู้นี้

อย่าลิมเปลี่ยน url ที่เราใช้ด้วย

ลองทำตามในกระทู้แลล้วครับ ขึ้นเหมือนในกระทู้ พอลองมาแก้โค้ดของตัวเองยังขึ้นแบบเดิมอยู่คือขึ้น offline ครับ

ขอดูโค้ตล่าสุดหน่อยครับ

ตอนนี้มี energy อยู่เท่าไหร่

ตอนนี้มีอยู่ 999400 ครับ
code:

#define BLYNK_PRINT Serial

#include <ESP8266WiFi.h>

#include <BlynkSimpleEsp8266.h>

#include <SimpleDHT.h>

#include <SimpleTimer.h>

// DHT Config

int pinDHT22 = D0;

SimpleDHT22 dht22;

// SET Timer

SimpleTimer timer;

// You should get Auth Token in the Blynk App.

// Go to the Project Settings (nut icon).

char auth[] = " NVETWXeiR_ps_p8_42Nqvtnc1iEWV34T";

// Your WiFi credentials.

// Set password to "" for open networks.
char server[] = "blynk.iot-cm.com";
char ssid[] = "PCR008-5G";
char pass[] = "0874597999";
int port = 9443;
BLYNK_CONNECTED() {

    Blynk.syncAll();
Serial.println("App Blynk ทำงาน!");
}

void setup()

{Serial.begin(9600);
  Serial.println("กำลังเชื่อมต่อไปที่ Blynk Server");
  pinMode(D0, OUTPUT); //กำหนดโหมด ว่าเป็น INPUT หรือ OUTPUT
    WiFi.begin(ssid, pass); //เชื่อมต่อ WiFi
  Blynk.config(auth, server, port); //กำหนด Token key , ชื่อ Server และ port
  Blynk.connect(); //เชื่อมต่อไปยัง Blynk
    // You can also specify server:

  Blynk.begin(auth, ssid, pass, "blynk.iot-cm.com", 9443);

  timer.setInterval(4000L, sendTemp);

}

void sendTemp()

{

  float temperature = 0;

  float humidity = 0;

  int err = SimpleDHTErrSuccess;

  if ((err = dht22.read2(pinDHT22, &temperature, &humidity, NULL)) != SimpleDHTErrSuccess) {

    Serial.print("Read DHT22 failed, err="); Serial.println(err);delay(1000);

    return;

  }  

  Blynk.virtualWrite(10, temperature); // virtual pin 

  Blynk.virtualWrite(11, humidity); // virtual pin 

}

void loop()

{

  Blynk.run();

  timer.run();

}

ผมไม่ค่อยมีความรู้เกี่ยวกับเรื่องพวกนี้เลย ต้องขอโทษด้วยนะครับ

ไม่รู้ก็ถามครับ ที่นี้ชอบให้คนถามนะครับ มีเทคนิกดีๆ ก็เอามาแชร์กันครับ

ตรงนี้ใส่ผิดครับ 9443 ใช้สำหรับ เชื่อม app

image

แต่ในโค้ต จะใช้เป็น 8080 เท่านั้นครับ

เปลี่ยน

Blynk.begin(auth, ssid, pass, "blynk.iot-cm.com", 9443);

เป็น

Blynk.begin(auth, ssid, pass, "blynk.iot-cm.com", 8080);

ใน void setup() ใส่แค่นี้พอ

void setup(){
  Serial.begin(9600);
  Serial.println("กำลังเชื่อมต่อไปที่ Blynk Server");
  pinMode(D0, OUTPUT); //กำหนดโหมด ว่าเป็น INPUT หรือ OUTPUTrt
  Blynk.begin(auth, ssid, pass, "blynk.iot-cm.com", 8080);
  Blynk.connect(); //เชื่อมต่อไปยัง Blynk
  timer.setInterval(4000L, sendTemp);

}

ขอบคุณมากครับ ผมลองเปลี่ยนตามที่แก้แล้วแต่ยังขึ้นoffline อยู่เลยครับ

ใส่ตามที่ผมบอกเท่านั้นครับ ใส่เกินมันก็เป็นเหมือนเดิม

image

ขออภัยครับผมเบลอ55555 แก้ตามที่บอกแล้วครับแต่น้องเขาก็ยัง offline เหมือนเดิม