Avoid unecessary handling for duplicate packets.
A simple "is this the same packet as the last one we handled, and if so, drop it" should cut down on most of the duplicates.
Yeah, that's what I'm doing, though equality is defined as lhs.pumpDate == rhs.pumpDate && lhs.glucoseDate == rhs.glucoseDate since the sequence numbers will differ.
Same logic is done in both Loop and RileyLink. Though I would like to record what the actual MySentry does, as I remember it had a way of ACKing that avoided subsequent packets being sent from the pump.
The original problem with my attempts to ACK was not replying with the sequence number. You figured that out during refactoring of the sentry pairing, so maybe we should try again.
I'd love to get that 10s back every 5 minutes to ease my phone's battery usage.