I am far from even being semi-technical but I can, very slowly following instructions and ask questions kindly, always saying please and thank you.
But I just saw an exchange on a site about figuring out how to break the codes on other pumps:
This week, there’s been some discussion on the Slack channel about how to get a bit deeper into the radio packets involved in the communication protocol. I’m semi-technically literate, but no where near the group of folks that are actively banging away on this problem, so I asked for an explanation of the current problem. Dan was kind enough to reply:
Think of the radio packet like an onion. it has several “layers.” the network layer is the outermost layer. we understand all of those fields. inside that layer is the data layer, which we understand many of the commands and fields. but there are a few bits of data that are used to verify the integrity of the command. think of this like a wax seal from the middle ages, used to verify the integrity of a letter from a king. we need to be able to re-create that wax seal, (the verification bytes) in order to reliably craft packets of data which the pod will accept.
There is an algorithm, which we think is a CRC style algorithm, that is used to generate that wax seal. I believe it’s a 16-bit CRC. Pete has pointed out that there is some “bit-masking” going on, which makes it hard to crack.