1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/coloz-blinker-library

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
BlinkerSimpleESP32_MQTT.h 2.6 КБ
Копировать Редактировать Исходные данные Просмотреть построчно История
i3water Отправлено 7 лет назад 8c6af6b
#ifndef BlinkerSimplerESP32_MQTT_H
#define BlinkerSimplerESP32_MQTT_H
#include "Adapters/BlinkerMQTT.h"
class BlinkerSimpleESP32_MQTT
: public BlinkerProtocol<BlinkerMQTT>
{
typedef BlinkerProtocol<BlinkerMQTT> Base;
public :
BlinkerSimpleESP32_MQTT(BlinkerMQTT &transp)
: Base(transp)
{}
#if defined(BLINKER_ESP_SMARTCONFIG)
void begin(const char* _auth) {
Base::begin(_auth);
smartconfig();
this->conn.begin(_auth);
BLINKER_LOG1("ESP32_MQTT Initialled...");
}
#endif
void begin( const char* _auth,
const char* _ssid,
const char* _pswd)
{
Base::begin(_auth);
connectWiFi(_ssid, _pswd);
this->conn.begin(_auth);
BLINKER_LOG1("ESP32_MQTT Initialled...");
}
private :
#if defined(BLINKER_ESP_SMARTCONFIG)
void smartconfig() {
WiFi.mode(WIFI_AP_STA);
WiFi.beginSmartConfig();
BLINKER_LOG1("Waiting for SmartConfig.");
while (!WiFi.smartConfigDone()) {
::delay(500);
}
BLINKER_LOG1("SmartConfig received.");
BLINKER_LOG1("Waiting for WiFi");
while (WiFi.status() != WL_CONNECTED) {
::delay(500);
}
BLINKER_LOG1("WiFi Connected.");
BLINKER_LOG1("IP Address: ");
BLINKER_LOG1(WiFi.localIP());
// mDNSInit();
}
#endif
void connectWiFi(const char* _ssid, const char* _pswd)
{
uint32_t connectTime = millis();
BLINKER_LOG2(("Connecting to "), _ssid);
WiFi.mode(WIFI_STA);
if (_pswd && strlen(_pswd)) {
WiFi.begin(_ssid, _pswd);
}
else {
WiFi.begin(_ssid);
}
while (WiFi.status() != WL_CONNECTED) {
::delay(50);
if (millis() - connectTime > BLINKER_CONNECT_TIMEOUT_MS && WiFi.status() != WL_CONNECTED) {
connectTime = millis();
BLINKER_LOG1(("WiFi connect timeout, please check ssid and pswd!"));
BLINKER_LOG1(("Retring WiFi connect again!"));
}
}
BLINKER_LOG1(("Connected"));
IPAddress myip = WiFi.localIP();
BLINKER_LOG2(("Your IP is: "), myip);
// mDNSInit();
}
};
static BlinkerMQTT _blinkerTransport;
BlinkerSimpleESP32_MQTT Blinker(_blinkerTransport);
#endif

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://gitlife.ru/oschina-mirror/coloz-blinker-library.git
git@gitlife.ru:oschina-mirror/coloz-blinker-library.git
oschina-mirror
coloz-blinker-library
coloz-blinker-library
0.1.4