Merge branch 'main' into 'main-idf5'
# Conflicts: # src/MQTT.c
This commit is contained in:
commit
d2b9f7fa29
|
|
@ -71,6 +71,8 @@ void PPPModemSoftRestart(void);
|
||||||
void PPPModemStart(void);
|
void PPPModemStart(void);
|
||||||
|
|
||||||
void PPPModemGetRSSI(void);
|
void PPPModemGetRSSI(void);
|
||||||
|
void ModemSendSMS(void);
|
||||||
|
void ModemSendAT(char *cmd, char *resp, int timeout);
|
||||||
|
|
||||||
void MQTTRun(void);
|
void MQTTRun(void);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -298,5 +298,17 @@ void PPPModemGetRSSI(void)
|
||||||
ESP_LOGW(TAG, "Signal %d, ber %d", rssi, ber);
|
ESP_LOGW(TAG, "Signal %d, ber %d", rssi, ber);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ModemSendAT(char *cmd, char *resp, int timeout)
|
||||||
|
{
|
||||||
|
esp_modem_at(dce, cmd, resp, timeout);
|
||||||
|
ESP_LOGI(TAG, "Command:%s", cmd);
|
||||||
|
ESP_LOGW(TAG, "%s", resp);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ModemSendSMS(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,7 @@
|
||||||
|
|
||||||
#include "HTTPServer.h"
|
#include "HTTPServer.h"
|
||||||
#include "LoRaWAN.h"
|
#include "LoRaWAN.h"
|
||||||
|
#include "Helpers.h"
|
||||||
|
|
||||||
static const char *TAG = "HTTPServerPost";
|
static const char *TAG = "HTTPServerPost";
|
||||||
|
|
||||||
|
|
@ -97,7 +98,7 @@ static HTTP_IO_RESULT AfterPostHandler(httpd_req_t *req, const char *filename, c
|
||||||
|
|
||||||
static HTTP_IO_RESULT HTTPPostAdaptersSettings(httpd_req_t *req, char *PostData)
|
static HTTP_IO_RESULT HTTPPostAdaptersSettings(httpd_req_t *req, char *PostData)
|
||||||
{
|
{
|
||||||
char tmp[32];
|
char tmp[33];
|
||||||
#if CONFIG_WEBGUIAPP_ETHERNET_ENABLE
|
#if CONFIG_WEBGUIAPP_ETHERNET_ENABLE
|
||||||
|
|
||||||
bool TempIsETHEnabled = false;
|
bool TempIsETHEnabled = false;
|
||||||
|
|
@ -218,6 +219,30 @@ static HTTP_IO_RESULT HTTPPostAdaptersSettings(httpd_req_t *req, char *PostData)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if CONFIG_WEBGUIAPP_LORAWAN_ENABLE
|
||||||
|
bool TempIsLoRaEnabled = false;
|
||||||
|
if (httpd_query_key_value(PostData, "lren", tmp, sizeof(tmp)) == ESP_OK)
|
||||||
|
{
|
||||||
|
if (!strcmp((const char*) tmp, (const char*) "1"))
|
||||||
|
TempIsLoRaEnabled = true;
|
||||||
|
}
|
||||||
|
if (httpd_query_key_value(PostData, "lrdvid", tmp, sizeof(tmp)) == ESP_OK)
|
||||||
|
{
|
||||||
|
if (strlen(tmp) == 16)
|
||||||
|
StrToBytesLen((unsigned char*) tmp, (unsigned char*) GetSysConf()->lorawanSettings.DevEui, 16);
|
||||||
|
}
|
||||||
|
if (httpd_query_key_value(PostData, "lrapid", tmp, sizeof(tmp)) == ESP_OK)
|
||||||
|
{
|
||||||
|
if (strlen(tmp) == 16)
|
||||||
|
StrToBytesLen((unsigned char*) tmp, (unsigned char*) GetSysConf()->lorawanSettings.AppEui, 16);
|
||||||
|
}
|
||||||
|
if (httpd_query_key_value(PostData, "lrapkey", tmp, sizeof(tmp)) == ESP_OK)
|
||||||
|
{
|
||||||
|
if (strlen(tmp) == 32)
|
||||||
|
StrToBytesLen((unsigned char*) tmp, (unsigned char*) GetSysConf()->lorawanSettings.AppKey, 32);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if (httpd_query_key_value(PostData, "wifisc", tmp, 4) == ESP_OK)
|
if (httpd_query_key_value(PostData, "wifisc", tmp, 4) == ESP_OK)
|
||||||
{
|
{
|
||||||
if (!strcmp(tmp, (const char*) "prs"))
|
if (!strcmp(tmp, (const char*) "prs"))
|
||||||
|
|
@ -259,6 +284,13 @@ static HTTP_IO_RESULT HTTPPostAdaptersSettings(httpd_req_t *req, char *PostData)
|
||||||
GetSysConf()->gsmSettings.Flags1.bIsGSMEnabled = TempIsGSMEnabled;
|
GetSysConf()->gsmSettings.Flags1.bIsGSMEnabled = TempIsGSMEnabled;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
else if (!strcmp(tmp, (const char*) "lora"))
|
||||||
|
{
|
||||||
|
#if CONFIG_WEBGUIAPP_LORAWAN_ENABLE
|
||||||
|
GetSysConf()->lorawanSettings.Flags1.bIsLoRaWANEnabled = TempIsLoRaEnabled;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if (httpd_query_key_value(PostData, "apply", tmp, 5) == ESP_OK)
|
if (httpd_query_key_value(PostData, "apply", tmp, 5) == ESP_OK)
|
||||||
{
|
{
|
||||||
|
|
@ -484,21 +516,29 @@ static HTTP_IO_RESULT HTTPPostSystemSettings(httpd_req_t *req, char *PostData)
|
||||||
{
|
{
|
||||||
if (!strcmp(tmp, (const char*) "1"))
|
if (!strcmp(tmp, (const char*) "1"))
|
||||||
{
|
{
|
||||||
|
|
||||||
return HTTP_IO_DONE_NOREFRESH;
|
return HTTP_IO_DONE_NOREFRESH;
|
||||||
}
|
}
|
||||||
|
#if CONFIG_WEBGUIAPP_GPRS_ENABLE
|
||||||
else if (!strcmp(tmp, (const char*) "2"))
|
else if (!strcmp(tmp, (const char*) "2"))
|
||||||
{
|
{
|
||||||
WiFiDisconnect();
|
char resp[256] = {0};
|
||||||
|
ModemSendAT("AT+CCLK?\r", resp, 200);
|
||||||
return HTTP_IO_DONE_NOREFRESH;
|
return HTTP_IO_DONE_NOREFRESH;
|
||||||
}
|
}
|
||||||
else if (!strcmp(tmp, (const char*) "3"))
|
else if (!strcmp(tmp, (const char*) "3"))
|
||||||
{
|
{
|
||||||
|
char resp[256] = {0};
|
||||||
|
ModemSendAT("ATD+79022518532;\r", resp, 200);
|
||||||
return HTTP_IO_DONE_NOREFRESH;
|
return HTTP_IO_DONE_NOREFRESH;
|
||||||
}
|
}
|
||||||
else if (!strcmp(tmp, (const char*) "4"))
|
else if (!strcmp(tmp, (const char*) "4"))
|
||||||
{
|
{
|
||||||
|
char resp[256] = {0};
|
||||||
|
ModemSendAT("ATH\r", resp, 200);
|
||||||
return HTTP_IO_DONE_NOREFRESH;
|
return HTTP_IO_DONE_NOREFRESH;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
else if (!strcmp(tmp, (const char*) "5"))
|
else if (!strcmp(tmp, (const char*) "5"))
|
||||||
{
|
{
|
||||||
return HTTP_IO_DONE_NOREFRESH;
|
return HTTP_IO_DONE_NOREFRESH;
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,7 @@
|
||||||
#include "esp_wifi.h"
|
#include "esp_wifi.h"
|
||||||
#include "NetTransport.h"
|
#include "NetTransport.h"
|
||||||
#include "esp_ota_ops.h"
|
#include "esp_ota_ops.h"
|
||||||
#include "ROMFS.h"
|
#include "romfs.h"
|
||||||
#include "esp_idf_version.h"
|
#include "esp_idf_version.h"
|
||||||
#include "jWrite.h"
|
#include "jWrite.h"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -62,9 +62,12 @@ void regLoRaUserReceiveHandler(
|
||||||
|
|
||||||
esp_err_t LORASendData(LORA_DATA_SEND_STRUCT *pdss)
|
esp_err_t LORASendData(LORA_DATA_SEND_STRUCT *pdss)
|
||||||
{
|
{
|
||||||
|
if (LORAMessagesQueueHandle == NULL)
|
||||||
|
return ESP_ERR_INVALID_ARG;
|
||||||
char *ptr = (char*) malloc(MESSAGE_LENGTH);
|
char *ptr = (char*) malloc(MESSAGE_LENGTH);
|
||||||
if (ptr)
|
if (ptr)
|
||||||
{
|
{
|
||||||
|
ESP_LOGW(TAG, "memory allocate %d byte", MESSAGE_LENGTH);
|
||||||
memcpy(ptr, pdss->raw_data_ptr, MESSAGE_LENGTH);
|
memcpy(ptr, pdss->raw_data_ptr, MESSAGE_LENGTH);
|
||||||
LORA_DATA_SEND_STRUCT DSS;
|
LORA_DATA_SEND_STRUCT DSS;
|
||||||
DSS.raw_data_ptr = ptr;
|
DSS.raw_data_ptr = ptr;
|
||||||
|
|
@ -75,6 +78,7 @@ esp_err_t LORASendData(LORA_DATA_SEND_STRUCT *pdss)
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
free(ptr);
|
free(ptr);
|
||||||
|
ESP_LOGW(TAG, "memory free (queue full) %d byte", MESSAGE_LENGTH);
|
||||||
return ESP_ERR_TIMEOUT;
|
return ESP_ERR_TIMEOUT;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -93,8 +97,8 @@ void messageReceived(const uint8_t *message, size_t length, ttn_port_t port)
|
||||||
ESP_LOGI(TAG, "Received=%s", P);
|
ESP_LOGI(TAG, "Received=%s", P);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
if(LoRaUserReceiveHandler != NULL)
|
if (LoRaUserReceiveHandler != NULL)
|
||||||
LoRaUserReceiveHandler((char*)message, length, (int)port);
|
LoRaUserReceiveHandler((char*) message, length, (int) port);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -118,6 +122,7 @@ void LoRaWANTransportTask(void *pvParameter)
|
||||||
#endif
|
#endif
|
||||||
ttn_transmit_message((const uint8_t*) DSS.raw_data_ptr, MESSAGE_LENGTH, 1, true);
|
ttn_transmit_message((const uint8_t*) DSS.raw_data_ptr, MESSAGE_LENGTH, 1, true);
|
||||||
free(DSS.raw_data_ptr);
|
free(DSS.raw_data_ptr);
|
||||||
|
ESP_LOGW(TAG, "memory free (transmitted) %d byte", MESSAGE_LENGTH);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
@ -128,7 +133,6 @@ void LoRaWANTransportTask(void *pvParameter)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void LoRaWANRejoin(void)
|
void LoRaWANRejoin(void)
|
||||||
{
|
{
|
||||||
ttn_rejoin();
|
ttn_rejoin();
|
||||||
|
|
@ -174,7 +178,6 @@ void LoRaWANInitJoinTask(void *pvParameter)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
void LoRaWANStart(void)
|
void LoRaWANStart(void)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_WEBGUIAPP_LORAWAN_ENABLE
|
#ifdef CONFIG_WEBGUIAPP_LORAWAN_ENABLE
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,8 @@
|
||||||
#define MQTT_MESSAGE_BUFER_LENTH 5 //size of mqtt queue
|
#define MQTT_MESSAGE_BUFER_LENTH 5 //size of mqtt queue
|
||||||
#define MQTT_RECONNECT_CHANGE_ADAPTER 3
|
#define MQTT_RECONNECT_CHANGE_ADAPTER 3
|
||||||
|
|
||||||
|
#define MQTT_RECONNECT_TIMEOUT 40
|
||||||
|
|
||||||
#if CONFIG_WEBGUIAPP_MQTT_ENABLE
|
#if CONFIG_WEBGUIAPP_MQTT_ENABLE
|
||||||
|
|
||||||
QueueHandle_t MQTT1MessagesQueueHandle;
|
QueueHandle_t MQTT1MessagesQueueHandle;
|
||||||
|
|
@ -297,8 +299,13 @@ static void start_mqtt()
|
||||||
strcpy(tmp, GetSysConf()->mqttStation[i].ClientID);
|
strcpy(tmp, GetSysConf()->mqttStation[i].ClientID);
|
||||||
strcat(tmp, "-");
|
strcat(tmp, "-");
|
||||||
strcat(tmp, GetSysConf()->ID);
|
strcat(tmp, GetSysConf()->ID);
|
||||||
|
<<<<<<< src/MQTT.c
|
||||||
//mqtt_cfg.client_id = tmp;
|
//mqtt_cfg.client_id = tmp;
|
||||||
mqtt_cfg.credentials.client_id = tmp;
|
mqtt_cfg.credentials.client_id = tmp;
|
||||||
|
=======
|
||||||
|
mqtt_cfg.client_id = tmp;
|
||||||
|
mqtt_cfg.reconnect_timeout_ms = MQTT_RECONNECT_TIMEOUT * 1000;
|
||||||
|
>>>>>>> src/MQTT.c
|
||||||
mqtt[i].is_connected = false;
|
mqtt[i].is_connected = false;
|
||||||
mqtt[i].mqtt_index = i;
|
mqtt[i].mqtt_index = i;
|
||||||
//mqtt_cfg.user_context = (void*) &mqtt[i];
|
//mqtt_cfg.user_context = (void*) &mqtt[i];
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user