diff --git a/TinyGsmCommon.h b/TinyGsmCommon.h index 36c4f57..3abc48a 100644 --- a/TinyGsmCommon.h +++ b/TinyGsmCommon.h @@ -72,12 +72,14 @@ const T& TinyGsmMax(const T& a, const T& b) } template -uint32_t TinyGsmAutoBaud(T& SerialAT) +uint32_t TinyGsmAutoBaud(T& SerialAT, uint32_t minimum = 9600, uint32_t maximum = 115200) { static uint32_t rates[] = { 115200, 57600, 38400, 19200, 9600, 74400, 74880, 230400, 460800, 2400, 4800, 14400, 28800 }; for (unsigned i = 0; i < sizeof(rates)/sizeof(rates[0]); i++) { uint32_t rate = rates[i]; + if (rate < minimum || rate > maximum) continue; + DBG("Trying baud rate", rate, "..."); SerialAT.begin(rate); delay(10);