ตอนนี้ผมกำลังศึกษาเรื่องนี้ครับ เลยลองจากโค้ดใน example แล้วใส่ข้อมูลหมดแล้วครับ
โค้ดตัวเต็ม
#include <MicroGear.h>
#include <ESP8266WiFi.h>
#include "DHT.h"
const char* ssid = "Jaigere";
const char* password = "314159pp";
#define APPID "ProjectMicro001"
#define KEY "kLDcOoIUW9Lhf8L"
#define SECRET "AKoY3JFTe4rkScBm4GYWxa2YU"
#define ALIAS "NodeMCU1"
#define TargetWeb "HTML_web"
#define D4 2 // TXD1
#define DHTPIN D4 // what digital pin we're connected to
#define DHTTYPE DHT11 // DHT 11
DHT dht(DHTPIN, DHTTYPE);
WiFiClient client;
MicroGear microgear(client);
void onMsghandler(char *topic, uint8_t* msg, unsigned int msglen)
{
Serial.print("Incoming message --> ");
msg[msglen] = '\0';
Serial.println((char *)msg);
}
void onConnected(char *attribute, uint8_t* msg, unsigned int msglen)
{
Serial.println("Connected to NETPIE...");
microgear.setAlias(ALIAS);
}
void setup()
{
/* Event listener */
microgear.on(MESSAGE,onMsghandler);
microgear.on(CONNECTED,onConnected);
dht.begin();
Serial.begin(9600);
Serial.println("Starting...");
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED)
{
delay(250);
Serial.print(".");
}
Serial.println("WiFi connected");
Serial.println("IP address: ");
Serial.println(WiFi.localIP());
microgear.init(KEY,SECRET,ALIAS);
microgear.connect(APPID);
}
void loop()
{
if (microgear.connected())
{
microgear.loop();
Serial.println("connected");
float Humidity = dht.readHumidity();
float Temp = dht.readTemperature(); // Read temperature as Celsius (the default)
String data = "/" + String(Humidity) + "/" + String(Temp);
char msg[128];
data.toCharArray(msg,data.length());
Serial.println(msg);
microgear.chat(TargetWeb , msg);
}
else
{
Serial.println("connection lost, reconnect...");
microgear.connect(APPID);
}
delay(1500);
}
ส่วนอันนี้ error ครับ
error เต็ม
Arduino: 1.8.16 (Windows Store 1.8.51.0) (Windows 10), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Only Sketch, 115200"
C:\Users\User\Documents\Arduino\libraries\microgear-esp8266-arduino-master\MicroGear.cpp: In member function 'void MicroGear::syncTime(Client*, long unsigned int*)':
C:\Users\User\Documents\Arduino\libraries\microgear-esp8266-arduino-master\MicroGear.cpp:152:31: error: 'class BearSSL::WiFiClientSecure' has no member named 'verify'
152 | if (clientsecure->verify(tstr, gearauth)) {
| ^~~~~~
Multiple libraries were found for "MicroGear.h"
Used: C:\Users\User\Documents\Arduino\libraries\microgear-esp8266-arduino-master
Not used: C:\Users\User\Documents\Arduino\libraries\ESP8266_Microgear
exit status 1
Error compiling for board NodeMCU 1.0 (ESP-12E Module).
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.