Browse Source

Re-Fix SIM7000

v_master
Sara Damiano 5 years ago
parent
commit
d55b5e6ed6
2 changed files with 10 additions and 13 deletions
  1. +10
    -12
      src/TinyGsmClientSIM7000.h
  2. +0
    -1
      src/TinyGsmClientSIM800.h

+ 10
- 12
src/TinyGsmClientSIM7000.h View File

@ -481,7 +481,6 @@ TINY_GSM_MODEM_WAIT_FOR_NETWORK()
return TinyGsmIpFromString(getLocalIP());
}
/*
* Phone Call functions
*/
@ -726,7 +725,7 @@ TINY_GSM_MODEM_WAIT_FOR_NETWORK()
}
/*
* Battery functions
* Battery & temperature functions
*/
// Use: float vBatt = modem.getBattVoltage() / 1000.0;
@ -739,6 +738,7 @@ TINY_GSM_MODEM_WAIT_FOR_NETWORK()
streamSkipUntil(','); // Skip battery charge level
// return voltage in mV
uint16_t res = stream.readStringUntil(',').toInt();
// Wait for final OK
waitResponse();
return res;
}
@ -751,6 +751,7 @@ TINY_GSM_MODEM_WAIT_FOR_NETWORK()
streamSkipUntil(','); // Skip battery charge status
// Read battery charge level
int res = stream.readStringUntil(',').toInt();
// Wait for final OK
waitResponse();
return res;
}
@ -837,12 +838,8 @@ protected:
size_t len_confirmed = stream.readStringUntil('\n').toInt();
// ^^ Confirmed number of data bytes to be read, which may be less than requested.
// 0 indicates that no data can be read.
if (len_confirmed < len_requested) {
DBG(len_requested - len_confirmed, "fewer bytes confirmed than requested!");
}
sockets[mux]->sock_available = len_confirmed;
for (size_t i=0; i<TinyGsmMin(len_confirmed, len_requested) ; i++) {
// This is actually be the number of bytes that will be remaining after the read
for (size_t i=0; i<len_requested; i++) {
uint32_t startMillis = millis();
#ifdef TINY_GSM_USE_HEX
while (stream.available() < 2 && (millis() - startMillis < sockets[mux]->_timeout)) { TINY_GSM_YIELD(); }
@ -855,12 +852,12 @@ protected:
char c = stream.read();
#endif
sockets[mux]->rx.put(c);
sockets[mux]->sock_available--;
// ^^ One less character available after moving from modem's FIFO to our FIFO
}
DBG("### READ:", len_requested, "from", mux);
// sockets[mux]->sock_available = modemGetAvailable(mux);
sockets[mux]->sock_available = len_confirmed;
waitResponse();
DBG("### READ:", TinyGsmMin(len_confirmed, len_requested), "from", mux);
return TinyGsmMin(len_confirmed, len_requested);
return len_requested;
}
size_t modemGetAvailable(uint8_t mux) {
@ -872,6 +869,7 @@ protected:
result = stream.readStringUntil('\n').toInt();
waitResponse();
}
DBG("### Available:", result, "on", mux);
if (!result) {
sockets[mux]->sock_connected = modemGetConnected(mux);
}


+ 0
- 1
src/TinyGsmClientSIM800.h View File

@ -459,7 +459,6 @@ TINY_GSM_MODEM_WAIT_FOR_NETWORK()
return true;
}
/*
* IP Address functions
*/


Loading…
Cancel
Save