Режим сна Ublox Neo 8M с ESP32 не работает - PullRequest
0 голосов
/ 01 февраля 2020

У меня это GPS-приемник.

Я использую это руководство; стр. 225.

Чтобы отправить GPS в режиме энергосбережения, следуйте данному руководству ; Я написал:

void send_GPS_to_PowerDown() {
  ubxPacket ubxp = {};
  ubxp.cls = 0x0A;
  ubxp.id = 0x04;
  ubxp.len = 0;
  ubxp.startingSpot = 40;

  byte incomingByte;

  uint8_t ackPacket [9];

  uint32_t CK_A=0, CK_B=0;

  ackPacket[0] = 0xB5;  // header
  ackPacket[1] = 0x62;  // header
  ackPacket[2] = 0x06;  // class
  ackPacket[3] = 0x11;  // id
  ackPacket[4] = 0x02;  // length
  ackPacket[5] = 0x00;
  ackPacket[6] = 0x01;  // power save
  ackPacket[7] = 0;     // CK_A
  ackPacket[8] = 0;     // CK_B

  for(int i=0; i<9; i++){
    CK_A = CK_A + ackPacket[i];
    CK_B = CK_B + CK_A;
    CK_A  = CK_A & 0xff;
    CK_B = CK_B & 0xff;
    Serial.println("CK_A= " + String(CK_A));
    Serial.println("CK_B= " + String(CK_B));
  }

 ackPacket[7] = CK_A;     // CK_A
 ackPacket[8] = CK_B;     // CK_B

  for(int i =0; i<9; i++) {
    SerialGPS.print(ackPacket[i], HEX); // initialized with 9600 Baud
    Serial.print(ackPacket[i], HEX);
    Serial.print(", ");
    }


    while (SerialGPS.available() > 0) {
    // read the incoming byte:
    incomingByte = SerialGPS.read();

    // say what you got:
    Serial.print("I received: ");
    Serial.println(incomingByte, DEC);
  }
}

Но ни GPS go не находится в режиме энергосбережения, ни я не вижу ответа от GPS в моем сериале. Что не так? Спасибо.

...