Fixed Xbee reset de-assert

This commit is contained in:
Jan Gromeš 2018-04-13 20:51:12 +02:00
parent 0aead0a3d9
commit 917fb2834b
2 changed files with 15 additions and 2 deletions

View file

@ -73,7 +73,7 @@ bool Module::ATsendData(uint8_t* data, uint32_t len) {
}
bool Module::ATgetResponse() {
String data;
String data = "";
uint32_t start = millis();
while (millis() - start < _ATtimeout) {
while(ModuleSerial->available() > 0) {
@ -83,6 +83,7 @@ bool Module::ATgetResponse() {
#endif
data += c;
}
if(data.indexOf("OK") != -1) {
#ifdef DEBUG
Serial.println();
@ -94,6 +95,7 @@ bool Module::ATgetResponse() {
#endif
return(false);
}
}
#ifdef DEBUG
Serial.println();

View file

@ -12,9 +12,11 @@ XBee::XBee(Module* module) {
uint8_t XBee::begin(long speed) {
pinMode(A4, OUTPUT);
pinMode(A5, OUTPUT);
pinMode(3, INPUT);
//pinMode(3, INPUT);
pinMode(3, OUTPUT);
digitalWrite(A4, LOW);
digitalWrite(A5, LOW);
digitalWrite(3, HIGH);
_mod->AtLineFeed = "\r";
@ -133,6 +135,15 @@ bool XBee::enterCmdMode() {
Serial.println(" of 10 tries)");
#endif
pinMode(3, OUTPUT);
delay(10);
digitalWrite(3, HIGH);
delay(500);
digitalWrite(3, LOW);
delay(500);
pinMode(3, INPUT);
delay(500);
_mod->ATsendCommand("ATCN");
if(i == 9) {