SV data updates very slow, over 10 seconds between valid data.
yashmulgaonkar opened this issue · 7 comments
Subject of the issue
NAV_SAT data is severely delayed / slow, with a refresh every almost 15seconds between valid data.
Get the following error over I2C with an ESP32S3 running I2C at both 100khz and 400khz.
- Running Example 33 for NAV_SAT.
- Running on ESP32S3 dev kit.
- GPS: UBlox NEO-M9N over I2C
Here's a snippet of the debug output:
13:30:08.160 -> Sending: CLS:NAV ID:0x35 Len: 0x0 Payload:
13:30:08.160 -> sendCommand: Waiting for No ACK response
13:30:08.160 -> checkUbloxI2C: 70 bytes available
13:30:08.160 -> checkUbloxI2C: 5 bytes available
13:30:08.299 -> checkUbloxI2C: 32767 bytes available
13:30:09.125 -> Checksum failed: checksumA: 0 checksumB: 6 rollingChecksumA: 93 rollingChecksumB: 92
13:30:10.107 -> Checksum failed: checksumA: 0 checksumB: 0 rollingChecksumA: 26 rollingChecksumB: 34
13:30:11.342 -> processUBX: buffer overrun detected! activePacketBuffer: 0 maximum_payload_size: 3068
13:30:11.342 -> waitForNoACKResponse: CLS/ID match but failed CRC after 3198 msec
13:30:11.389 ->
13:30:11.389 -> Sending: CLS:NAV ID:0x35 Len: 0x0 Payload:
13:30:11.389 -> sendCommand: Waiting for No ACK response
13:30:11.669 -> checkUbloxI2C: 32767 bytes available
13:30:12.122 -> Checksum failed: checksumA: 89 checksumB: 0 rollingChecksumA: 229 rollingChecksumB: 60
13:30:13.121 -> Checksum failed: checksumA: 25 checksumB: 27 rollingChecksumA: 27 rollingChecksumB: 54
13:30:14.118 -> Checksum failed: checksumA: 29 checksumB: 83 rollingChecksumA: 185 rollingChecksumB: 194
13:30:14.759 -> waitForNoACKResponse: CLS/ID match but failed CRC after 3376 msec
Hi Yash (@yashmulgaonkar ),
I have Example33 running on a Feather ESP32S3 board with the SparkFun NEO-M9N SMA breakout connected on Qwiic I2C. Everything is working well (see below).
I suspect you are seeing I2C bus errors from a lack of pull-ups? Or maybe the combined pull-up resistance is too low? The bytes available showing as 32767 is very suspicious.
Please check if your dev kit has pull-ups on the SDA and SCL pins. If you are using a SparkFun NEO-M9N breakout, please check if the I2C jumpers are still closed / connected.
Best wishes,
Paul
22:38:03.152 -> New NAV SAT data received. It contains data for 31 SVs.
22:38:03.152 -> GPS 2
22:38:03.152 -> GPS 3 =========================
22:38:03.152 -> GPS 8
22:38:03.152 -> GPS 10
22:38:03.152 -> GPS 14 ======================================
22:38:03.152 -> GPS 17 ============================================
22:38:03.152 -> GPS 19 ======================
22:38:03.152 -> GPS 21 ==========================
22:38:03.152 -> GPS 22 ===============================
22:38:03.152 -> GPS 24
22:38:03.152 -> GPS 32 =============================
22:38:03.152 -> SBAS 123
22:38:03.152 -> SBAS 127
22:38:03.152 -> SBAS 136
22:38:03.152 -> Galileo 21 ===================================
22:38:03.152 -> BeiDou 9 ============
22:38:03.152 -> BeiDou 11 ===========================
22:38:03.152 -> BeiDou 19 ===========================
22:38:03.152 -> BeiDou 22 ===============================
22:38:03.152 -> BeiDou 23 =============================
22:38:03.152 -> BeiDou 34 ===============================
22:38:03.152 -> GLONASS 1 =====================
22:38:03.152 -> GLONASS 2 ============================
22:38:03.152 -> GLONASS 3 ========================
22:38:03.152 -> GLONASS 4
22:38:03.152 -> GLONASS 9 =================================
22:38:03.152 -> GLONASS 10 ===========================
22:38:03.152 -> GLONASS 11
22:38:03.152 -> GLONASS 17 ==============
22:38:03.152 -> GLONASS 18 =================
22:38:03.152 -> GLONASS 19 ======================
22:38:04.089 ->
22:38:04.089 -> New NAV SAT data received. It contains data for 31 SVs.
22:38:04.089 -> GPS 2
22:38:04.089 -> GPS 3 =========================
22:38:04.089 -> GPS 8
22:38:04.089 -> GPS 10
22:38:04.089 -> GPS 14 ======================================
22:38:04.089 -> GPS 17 ============================================
22:38:04.089 -> GPS 19 ======================
22:38:04.089 -> GPS 21 ==========================
22:38:04.089 -> GPS 22 ===============================
22:38:04.089 -> GPS 24
22:38:04.089 -> GPS 32 =============================
22:38:04.089 -> SBAS 123
22:38:04.089 -> SBAS 127
22:38:04.089 -> SBAS 136
22:38:04.089 -> Galileo 21 ===================================
22:38:04.089 -> BeiDou 9
22:38:04.089 -> BeiDou 11 ===========================
22:38:04.089 -> BeiDou 19 ===========================
22:38:04.089 -> BeiDou 22 ===============================
22:38:04.089 -> BeiDou 23 =============================
22:38:04.089 -> BeiDou 34 ===============================
22:38:04.089 -> GLONASS 1 =====================
22:38:04.089 -> GLONASS 2 ============================
22:38:04.089 -> GLONASS 3 =======================
22:38:04.089 -> GLONASS 4
22:38:04.089 -> GLONASS 9 =================================
22:38:04.089 -> GLONASS 10 ===========================
22:38:04.089 -> GLONASS 11
22:38:04.089 -> GLONASS 17 ==============
22:38:04.089 -> GLONASS 18 =================
22:38:04.089 -> GLONASS 19 ======================
Is it possible the module is in a weird state, with a high navigation rate? Please try adding the following to reset the module, at line 44 - after the myGNSS.begin()
:
myGNSS.factoryDefault();
delay(5000);
I do have I2C pullups (4.7K) on the ESP32 dev kit as well as the native pullups (2.2K) on the Sparkfun board.
That gives me an equivalent of a little under 1.5K pullups on each of the SDA/ SCL lines.
I have tried the factory defaults line before, and that did not help either.
I do agree with the 13:30:11.669 -> checkUbloxI2C: 32767 bytes available
line being suspicious.
OK. Please try opening the pull-up jumpers on the GNSS board.
Nope no dice - same behavior - tried with one other ESP32S3 dev kit and two other NEO-M9N modules I have on hand. So definitely not a module issue.
Hi Yash, (@yashmulgaonkar ),
OK - thanks. This has to be something to do with your setup, but I will help if I can.
- Please post a link to the exact dev board you are using
- Please post a photo of your setup showing the wires connecting the two boards
- Do you have any other boards connected?
- Have you made any changes to Example33? If so, please post them here.
- Which version of the Arduino IDE are you using?
- Which version of the ESP32 board package?
- Which board have you selected?
- Have you made any changes to the board settings (USB, partition scheme, PSRAM, etc.)? If so, please post them here.
Best,
Paul
Closing... Please re-open if you need more help with this.
Best wishes,
Paul