Removed recursive calls to maitain (shouldn't I have leared)
This commit is contained in:
@@ -656,7 +656,6 @@ protected:
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
// TODO: Wait for ACK? AT+QISEND=id,0
|
// TODO: Wait for ACK? AT+QISEND=id,0
|
||||||
maintain(); // look for a very quick response from the remote
|
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -675,7 +674,6 @@ protected:
|
|||||||
}
|
}
|
||||||
waitResponse();
|
waitResponse();
|
||||||
DBG("### READ:", len, "from", mux);
|
DBG("### READ:", len, "from", mux);
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -692,7 +690,6 @@ protected:
|
|||||||
if (!result) {
|
if (!result) {
|
||||||
sockets[mux]->sock_connected = modemGetConnected(mux);
|
sockets[mux]->sock_connected = modemGetConnected(mux);
|
||||||
}
|
}
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -711,7 +708,6 @@ protected:
|
|||||||
int res = stream.readStringUntil(',').toInt(); // socket state
|
int res = stream.readStringUntil(',').toInt(); // socket state
|
||||||
|
|
||||||
waitResponse();
|
waitResponse();
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
|
|
||||||
// 0 Initial, 1 Opening, 2 Connected, 3 Listening, 4 Closing
|
// 0 Initial, 1 Opening, 2 Connected, 3 Listening, 4 Closing
|
||||||
return 2 == res;
|
return 2 == res;
|
||||||
|
@@ -708,7 +708,6 @@ protected:
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
waitResponse(5000L);
|
waitResponse(5000L);
|
||||||
maintain(); // look for a very quick response from the remote
|
|
||||||
|
|
||||||
// streamSkipUntil(','); // Skip mux
|
// streamSkipUntil(','); // Skip mux
|
||||||
// return stream.readStringUntil('\n').toInt();
|
// return stream.readStringUntil('\n').toInt();
|
||||||
@@ -730,7 +729,6 @@ protected:
|
|||||||
}
|
}
|
||||||
waitResponse();
|
waitResponse();
|
||||||
DBG("### READ:", len, "from", mux);
|
DBG("### READ:", len, "from", mux);
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -747,7 +745,6 @@ protected:
|
|||||||
if (!result) {
|
if (!result) {
|
||||||
sockets[mux]->sock_connected = modemGetConnected(mux);
|
sockets[mux]->sock_connected = modemGetConnected(mux);
|
||||||
}
|
}
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -766,7 +763,6 @@ protected:
|
|||||||
int res = stream.readStringUntil(',').toInt(); // socket state
|
int res = stream.readStringUntil(',').toInt(); // socket state
|
||||||
|
|
||||||
waitResponse();
|
waitResponse();
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
|
|
||||||
// 0 Initial, 1 Opening, 2 Connected, 3 Listening, 4 Closing
|
// 0 Initial, 1 Opening, 2 Connected, 3 Listening, 4 Closing
|
||||||
return 2 == res;
|
return 2 == res;
|
||||||
|
@@ -740,7 +740,6 @@ protected:
|
|||||||
// streamSkipUntil(','); // Skip mux
|
// streamSkipUntil(','); // Skip mux
|
||||||
// return stream.readStringUntil('\n').toInt();
|
// return stream.readStringUntil('\n').toInt();
|
||||||
|
|
||||||
maintain(); // look for a very quick response from the remote
|
|
||||||
return len; // TODO
|
return len; // TODO
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -759,7 +758,6 @@ protected:
|
|||||||
}
|
}
|
||||||
waitResponse();
|
waitResponse();
|
||||||
DBG("### READ:", len, "from", mux);
|
DBG("### READ:", len, "from", mux);
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -776,7 +774,6 @@ protected:
|
|||||||
if (!result) {
|
if (!result) {
|
||||||
sockets[mux]->sock_connected = modemGetConnected(mux);
|
sockets[mux]->sock_connected = modemGetConnected(mux);
|
||||||
}
|
}
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -795,7 +792,6 @@ protected:
|
|||||||
int res = stream.readStringUntil(',').toInt(); // socket state
|
int res = stream.readStringUntil(',').toInt(); // socket state
|
||||||
|
|
||||||
waitResponse();
|
waitResponse();
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
|
|
||||||
// 0 Initial, 1 Opening, 2 Connected, 3 Listening, 4 Closing
|
// 0 Initial, 1 Opening, 2 Connected, 3 Listening, 4 Closing
|
||||||
return 2 == res;
|
return 2 == res;
|
||||||
|
@@ -960,7 +960,6 @@ protected:
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
streamSkipUntil(','); // Skip mux
|
streamSkipUntil(','); // Skip mux
|
||||||
maintain(); // look for a very quick response from the remote
|
|
||||||
return stream.readStringUntil('\n').toInt();
|
return stream.readStringUntil('\n').toInt();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1003,7 +1002,6 @@ protected:
|
|||||||
}
|
}
|
||||||
waitResponse();
|
waitResponse();
|
||||||
DBG("### READ:", len_confirmed, "from", mux);
|
DBG("### READ:", len_confirmed, "from", mux);
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
return len_confirmed;
|
return len_confirmed;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1019,7 +1017,6 @@ protected:
|
|||||||
if (!result) {
|
if (!result) {
|
||||||
sockets[mux]->sock_connected = modemGetConnected(mux);
|
sockets[mux]->sock_connected = modemGetConnected(mux);
|
||||||
}
|
}
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1027,7 +1024,6 @@ protected:
|
|||||||
sendAT(GF("+CIPSTATUS="), mux);
|
sendAT(GF("+CIPSTATUS="), mux);
|
||||||
int res = waitResponse(GF(",\"CONNECTED\""), GF(",\"CLOSED\""), GF(",\"CLOSING\""), GF(",\"INITIAL\""));
|
int res = waitResponse(GF(",\"CONNECTED\""), GF(",\"CLOSED\""), GF(",\"CLOSING\""), GF(",\"INITIAL\""));
|
||||||
waitResponse();
|
waitResponse();
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
return 1 == res;
|
return 1 == res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -883,7 +883,6 @@ protected:
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
streamSkipUntil(','); // Skip mux
|
streamSkipUntil(','); // Skip mux
|
||||||
maintain(); // look for a very quick response from the remote
|
|
||||||
return stream.readStringUntil('\n').toInt();
|
return stream.readStringUntil('\n').toInt();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -926,7 +925,6 @@ protected:
|
|||||||
}
|
}
|
||||||
waitResponse();
|
waitResponse();
|
||||||
DBG("### READ:", len_confirmed, "from", mux);
|
DBG("### READ:", len_confirmed, "from", mux);
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
return len_confirmed;
|
return len_confirmed;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -942,7 +940,6 @@ protected:
|
|||||||
if (!result) {
|
if (!result) {
|
||||||
sockets[mux]->sock_connected = modemGetConnected(mux);
|
sockets[mux]->sock_connected = modemGetConnected(mux);
|
||||||
}
|
}
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -950,7 +947,6 @@ protected:
|
|||||||
sendAT(GF("+CIPSTATUS="), mux);
|
sendAT(GF("+CIPSTATUS="), mux);
|
||||||
int res = waitResponse(GF(",\"CONNECTED\""), GF(",\"CLOSED\""), GF(",\"CLOSING\""), GF(",\"INITIAL\""));
|
int res = waitResponse(GF(",\"CONNECTED\""), GF(",\"CLOSED\""), GF(",\"CLOSING\""), GF(",\"INITIAL\""));
|
||||||
waitResponse();
|
waitResponse();
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
return 1 == res;
|
return 1 == res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -62,8 +62,8 @@ public:
|
|||||||
sock_connected = false;
|
sock_connected = false;
|
||||||
got_data = false;
|
got_data = false;
|
||||||
|
|
||||||
// Don't attach the socket here because we won't know the mux channel number
|
at->sockets[mux] = this;
|
||||||
// until the u-blox assigns it upon opening the socket
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -88,11 +88,14 @@ public:
|
|||||||
}
|
}
|
||||||
TINY_GSM_YIELD();
|
TINY_GSM_YIELD();
|
||||||
rx.clear();
|
rx.clear();
|
||||||
// sock_connected = at->modemConnect(host, port, mux);
|
|
||||||
|
uint8_t oldMux = mux;
|
||||||
sock_connected = at->modemConnect(host, port, &mux);
|
sock_connected = at->modemConnect(host, port, &mux);
|
||||||
|
if (mux != oldMux) {
|
||||||
|
DBG("WARNING: Mux number changed from", oldMux, "to", mux);
|
||||||
|
at->sockets[oldMux] = NULL;
|
||||||
|
}
|
||||||
at->sockets[mux] = this;
|
at->sockets[mux] = this;
|
||||||
// Attach the socket after attempting connection because u-blox will assign
|
|
||||||
// whatever mux number is next regardless of the number requested.
|
|
||||||
at->maintain();
|
at->maintain();
|
||||||
return sock_connected;
|
return sock_connected;
|
||||||
}
|
}
|
||||||
@@ -276,15 +279,8 @@ public:
|
|||||||
#endif
|
#endif
|
||||||
waitResponse();
|
waitResponse();
|
||||||
|
|
||||||
String name = getModemName();
|
getModemName();
|
||||||
DBG(GF("### Modem:"), name);
|
|
||||||
if (name.startsWith("u-blox SARA-R4") or name.startsWith("u-blox SARA-N4")) {
|
|
||||||
DBG(GF("### This is an LTE-M modem!"), name);
|
|
||||||
isCatM = true;
|
|
||||||
}
|
|
||||||
else if (name.startsWith("u-blox SARA-N2")) {
|
|
||||||
DBG(GF("### SARA N2 NB-IoT modems not supported!"), name);
|
|
||||||
}
|
|
||||||
int ret = getSimStatus();
|
int ret = getSimStatus();
|
||||||
// if the sim isn't ready and a pin has been provided, try to unlock the sim
|
// if the sim isn't ready and a pin has been provided, try to unlock the sim
|
||||||
if (ret != SIM_READY && pin != NULL && strlen(pin) > 0) {
|
if (ret != SIM_READY && pin != NULL && strlen(pin) > 0) {
|
||||||
@@ -317,8 +313,18 @@ public:
|
|||||||
}
|
}
|
||||||
res2.replace(GSM_NL "OK" GSM_NL, "");
|
res2.replace(GSM_NL "OK" GSM_NL, "");
|
||||||
res2.trim();
|
res2.trim();
|
||||||
|
|
||||||
|
String name = res1 + String(' ') + res2;
|
||||||
|
DBG("### Modem:", name);
|
||||||
|
if (name.startsWith("u-blox SARA-R4") or name.startsWith("u-blox SARA-N4")) {
|
||||||
|
DBG("### This is an LTE-M modem!");
|
||||||
|
isCatM = true;
|
||||||
|
}
|
||||||
|
else if (name.startsWith("u-blox SARA-N2")) {
|
||||||
|
DBG("### SARA N2 NB-IoT modems not supported!");
|
||||||
|
}
|
||||||
|
|
||||||
return res1 + String(' ') + res2;
|
return name;
|
||||||
}
|
}
|
||||||
|
|
||||||
void setBaud(unsigned long baud) {
|
void setBaud(unsigned long baud) {
|
||||||
@@ -835,7 +841,6 @@ protected:
|
|||||||
streamSkipUntil(','); // Skip mux
|
streamSkipUntil(','); // Skip mux
|
||||||
int sent = stream.readStringUntil('\n').toInt();
|
int sent = stream.readStringUntil('\n').toInt();
|
||||||
waitResponse(); // sends back OK after the confirmation of number sent
|
waitResponse(); // sends back OK after the confirmation of number sent
|
||||||
maintain(); // look for a very quick response from the remote
|
|
||||||
return sent;
|
return sent;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -857,7 +862,6 @@ protected:
|
|||||||
streamSkipUntil('\"');
|
streamSkipUntil('\"');
|
||||||
waitResponse();
|
waitResponse();
|
||||||
DBG("### READ:", len, "from", mux);
|
DBG("### READ:", len, "from", mux);
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -876,7 +880,6 @@ protected:
|
|||||||
if (!result && res != 2 && res != 3) { // Don't check modemGetConnected after an error
|
if (!result && res != 2 && res != 3) { // Don't check modemGetConnected after an error
|
||||||
sockets[mux]->sock_connected = modemGetConnected(mux);
|
sockets[mux]->sock_connected = modemGetConnected(mux);
|
||||||
}
|
}
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -902,7 +905,6 @@ protected:
|
|||||||
// 9: the socket is in LAST_ACK status
|
// 9: the socket is in LAST_ACK status
|
||||||
// 10: the socket is in TIME_WAIT status
|
// 10: the socket is in TIME_WAIT status
|
||||||
waitResponse();
|
waitResponse();
|
||||||
maintain(); // Listen for a close or other URC
|
|
||||||
return (result != 0);
|
return (result != 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user