adafruit / Adafruit_GPS

An interrupt-based GPS Arduino library for no-parsing-required use
Other
475 stars 318 forks source link

Gps parse improvements #156

Open jpuderer opened 8 months ago

jpuderer commented 8 months ago

This pull request fixes issues #128 #153 and #154

It has been thoroughly tested and creates a smaller footprint than the original parser, so it should not cause issues with the Arduino Uno.

Compiling GPS_SoftwareSerial_Parsing for Arduino Uno before refactor:

Sketch uses 15042 bytes (46%) of program storage space. Maximum is 32256 bytes.
Global variables use 1470 bytes (71%) of dynamic memory, leaving 578 bytes for local variables. Maximum is 2048 bytes.

Compiling GPS_SoftwareSerial_Parsing for Arduino Uno after refactor:

Sketch uses 14848 bytes (46%) of program storage space. Maximum is 32256 bytes.
Global variables use 1470 bytes (71%) of dynamic memory, leaving 578 bytes for local variables. Maximum is 2048 bytes.
jpuderer commented 2 months ago

Can someone have a look at this please? It was a fair amount of work, and is a substantial improvement to the parsing.

It addresses #153 and #154