Skip to content

Errors seen with NMEA GPS TX pass-through #9

@thewraith2008

Description

@thewraith2008

Testing with:

  • Firmware: v0.1.16
  • Clone Bluepill: chipID 0x414, Flash=256k, SDRAM=64k, pagesize=2048, F1xx High-density - Original one in GPSDO
  • Clone Bluepill: chipID 0x410, Flash=128k, SDRAM=20k, pagesize=1024 F1xx Medium-density - Additional testing with
  • GPS module: ATGM336H set at 9600

When I use a TTL to USB serial port adapter (with a transistor inverter) directly to the GPS module TX pin and monitor with GNSSToolKit3, I see no errors over a 24hr period.

However, if I use the TX pass-through pin from the MCU (A2) with the same setup as above, I see a lot of errors being generated on and off during the course of a 24hr period and beyond. (see LOG at bottom, there is sort of a pattern to times and duration of events)
Errors seem to occur for 1hr+ at a time then stop for a period of time.
When errors are occurring, they are seen at 1 to 4 second intervals.
Sentences are missing one or more characters: "$", "*", ",", checksum, , or sentence fields.

I added some code to test the XOR checksum of the sentences and some other conditionals and try to determine if errors are coming from the TX input of MCU or it's output.

  • The errors sometimes can occur from the GPS TX input to MCU @ B11 with a bad checksum seen. (or missing '$' or )
  • The errors also sometimes can occur from the GPS TX pass-though output from MCU @ A2. with a bad checksum seen. (or missing '$' or )
  • I think it's possible that both can/are generating errors at same time.

Not sure really whats going on here.
Is it a configuration issue with the USARTs?
Are interrupts affecting USARTs operation?
Are code delays/timings affecting USARTs operation?
Is the clone bluepill USARTs not good (I've tried other clone bluepills with same result)

Thanks for your time.

LOG:
Capture session: 21/02/2026 12:49:37 AM to 23/02/2026 9:34:00 AM
21/02/2026 h:mm
Errors started from: 12:57:47 AM to 1:11:12 AM - Duration: 0:15 A - had already started with errors at time of capture start.
Errors started from: 4:00:09 AM to 5:34:57 AM - Duration: 1:34 B
Errors started from: 11:49:33 AM to 11:51:34 AM - Duration: 0:02
Errors started from: 3:55:39 PM to 4:41:09 PM - Duration: 0:46 C
Errors started from: 6:57:01 PM to 9:20:08 PM - Duration: 2:23 D
Errors started from: 10:28:20 PM to 11:37:29 PM - Duration: 1:09
22/02/2026
Errors started from: 3:21:34 AM to 5:14:04 AM - Duration: 1:53 B
Errors started from: 4:14:09 PM to 4:38:48 PM - Duration: 0:24 C
Errors started from: 5:40:14 PM to 5:53:34 PM - Duration: 0:13
Errors started from: 6:33:05 PM to 9:17:05 PM - Duration: 2:44 D
Errors started from: 10:32:01 PM to 10:33:56 PM - Duration: 0:01
Errors started from: 11:25:33 PM to 1:05:31 AM - Duration: 1:40 A
23/02/2026
Errors started from: 3:34:42 AM to 5:07:54 AM - Duration: 1:33 B
Errors started from: 11:41:02 AM to 11:56:44 AM - Duration: 0:15
Errors started from: 4:05:38 PM to 4:32:25 PM - Duration: 0:27 C
Errors started from: 6:44:10 PM to 8:52:37 PM - Duration: 2:08 D
Errors started from: 10:04:53 PM to 10:05:37 PM - Duration: 0:01

Errors started from: 10:20:35 PM to 10:30:43 PM - Duration: 0:10
Errors started from: 10:36:36 PM to 10:41:13 PM - Duration: 0:05
Errors started from: 11:43:28 PM to 1:23:37 AM - Duration: 1:40 A
24/02/2026
Errors started from: 2:39:38 AM to 2:57:14 AM - Duration: 0:18
Errors started from: 3:11:56 AM to 5:40:21 AM - Duration: 2:29 B
Errors started from: 7:44:21 AM to 7:44:54 AM - Duration: 0:01
End

NOTE: A,B,C,D (at end of each entry) are to show similar events.
Matching A,B,C,D entries appear to occur around same time of day with similar duration's.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions