Version 1.3

Removed a lot of unnecessary functions.
This commit is contained in:
2022-12-22 18:27:17 +03:00
parent 1d5198e0ab
commit b328ad916c
6 changed files with 17 additions and 219 deletions

View File

@@ -31,78 +31,15 @@ ZHNetwork &ZHNetwork::setOnConfirmReceivingCallback(on_confirm_t onConfirmReceiv
return *this;
}
error_code_t ZHNetwork::setWorkMode(const work_mode_t workMode)
{
if (workMode < ESP_NOW || workMode > ESP_NOW_STA)
return ERROR;
workMode_ = workMode;
return SUCCESS;
}
work_mode_t ZHNetwork::getWorkMode()
{
return workMode_;
}
error_code_t ZHNetwork::setNetName(const char *netName)
{
if (strlen(netName) < 1 || strlen(netName) > 20)
return ERROR;
strcpy(netName_, netName);
return SUCCESS;
}
String ZHNetwork::getNetName()
{
return netName_;
}
error_code_t ZHNetwork::setStaSetting(const char *ssid, const char *password)
{
if (strlen(ssid) < 1 || strlen(ssid) > 32 || strlen(password) > 64)
return ERROR;
strcpy(staSsid_, ssid);
strcpy(staPassword_, password);
return SUCCESS;
}
error_code_t ZHNetwork::setApSetting(const char *ssid, const char *password)
{
if (strlen(ssid) < 1 || strlen(ssid) > 32 || strlen(password) < 8 || strlen(password) > 64)
return ERROR;
strcpy(apSsid_, ssid);
strcpy(apPassword_, password);
return SUCCESS;
}
error_code_t ZHNetwork::begin()
error_code_t ZHNetwork::begin(const char *netName)
{
randomSeed(analogRead(0));
if (strlen(netName) > 1 && strlen(netName) < 20)
strcpy(netName_, netName);
#ifdef PRINT_LOG
Serial.begin(115200);
#endif
switch (workMode_)
{
case ESP_NOW:
WiFi.mode(WIFI_STA);
break;
case ESP_NOW_AP:
WiFi.mode(WIFI_AP_STA);
WiFi.softAP(apSsid_, apPassword_);
break;
case ESP_NOW_STA:
WiFi.mode(WIFI_STA);
WiFi.begin(staSsid_, staPassword_);
while (WiFi.status() != WL_CONNECTED)
{
if (WiFi.status() == WL_NO_SSID_AVAIL || WiFi.status() == WL_CONNECT_FAILED)
return ERROR;
delay(500);
}
break;
default:
break;
}
WiFi.mode(WIFI_STA);
esp_now_init();
#if defined(ESP8266)
wifi_get_macaddr(STATION_IF, localMAC);
@@ -116,15 +53,6 @@ error_code_t ZHNetwork::begin()
return SUCCESS;
}
error_code_t ZHNetwork::stop()
{
WiFi.mode(WIFI_OFF);
esp_now_deinit();
esp_now_unregister_recv_cb();
esp_now_unregister_send_cb();
return SUCCESS;
}
void ZHNetwork::sendBroadcastMessage(const char *data)
{
broadcastMessage(data, broadcastMAC, BROADCAST);
@@ -456,15 +384,6 @@ String ZHNetwork::getNodeMac()
return macToString(localMAC);
}
IPAddress ZHNetwork::getNodeIp()
{
if (workMode_ == ESP_NOW_AP)
return WiFi.softAPIP();
if (workMode_ == ESP_NOW_STA)
return WiFi.localIP();
return IPAddress(0, 0, 0, 0);
}
String ZHNetwork::getFirmwareVersion()
{
return firmware;

View File

@@ -50,13 +50,6 @@ typedef struct
uint8_t intermediateTargetMAC[6]{0};
} routing_table_t;
typedef enum
{
ESP_NOW = 1,
ESP_NOW_AP,
ESP_NOW_STA
} work_mode_t;
typedef enum
{
BROADCAST = 1,
@@ -87,17 +80,7 @@ public:
ZHNetwork &setOnUnicastReceivingCallback(on_message_t onUnicastReceivingCallback);
ZHNetwork &setOnConfirmReceivingCallback(on_confirm_t onConfirmReceivingCallback);
error_code_t setWorkMode(const work_mode_t workMode);
work_mode_t getWorkMode(void);
error_code_t setNetName(const char *netName);
String getNetName(void);
error_code_t setStaSetting(const char *ssid, const char *password);
error_code_t setApSetting(const char *ssid, const char *password);
error_code_t begin(void);
error_code_t stop(void);
error_code_t begin(const char *netName = "");
void sendBroadcastMessage(const char *data);
void sendUnicastMessage(const char *data, const uint8_t *target, const bool confirm = false);
@@ -105,7 +88,6 @@ public:
void maintenance(void);
String getNodeMac(void);
IPAddress getNodeIp(void);
String getFirmwareVersion(void);
String readErrorCode(error_code_t code); // Just for further development.
@@ -133,13 +115,8 @@ private:
static uint16_t lastMessageID[10];
static char netName_[20];
const char *firmware{"1.12"};
const char *firmware{"1.3"};
const uint8_t broadcastMAC[6]{0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
work_mode_t workMode_{ESP_NOW};
char apSsid_[32]{"ESP-NOW NODE"};
char apPassword_[64]{0};
char staSsid_[32]{0};
char staPassword_[64]{0};
uint8_t maxNumberOfAttempts_{3};
uint8_t maxWaitingTimeBetweenTransmissions_{50};
uint8_t numberOfAttemptsToSend{1};