summaryrefslogtreecommitdiffstats
path: root/freestyle_hid (unfollow)
Commit message (Collapse)AuthorFilesLines
2023-08-03console: allow sending a single command to the device.HEADfreestyle-hid-1.1.1mainDiego Elio Pettenò1-0/+14
This avoids having to open the session and makes scripting a lot easier particularly when changing the settings of the device and needing a restart to continue.
2023-08-03Use empty `__init__.py` files.Diego Elio Pettenò2-6/+0
This avoids adding SPDX tagging on empty files.
2023-08-03Update typing to PEP 585 style.Diego Elio Pettenò2-5/+7
This replaces the usage of generics from `typing` with built-in or from `collections.abc` since Python 3.9 is the minimum supported version.
2023-08-03Be more verbose on error messages and parsing with construct.Diego Elio Pettenò3-44/+119
Instead of manually combining and parsing integers (particularly IV that is a 56-bit integer), use construct formats to handle the parsing.
2023-08-03Don't depend on product ID to enable encrypted protocol.Diego Elio Pettenò2-6/+21
This is a little less automatic in the way it works, but it allows the caller to decide whether to enable the encrypted protocol for the session or not. It also raises earlier in case the encryption keys are not found.
2023-08-03If present, load the actual keys from freestyle-keys package.Diego Elio Pettenò2-10/+26
2023-08-03Reformat to pass pre-commit checks.Diego Elio Pettenò2-40/+75
2023-08-03Update authors and headers information.Diego Elio Pettenò1-1/+5
2023-08-03initial encrypted protocol supportMPM11072-22/+198
2023-04-16Reformat with the new black.Diego Elio Pettenò1-1/+0
2021-05-16Use the new usbmon-tools 3 DeviceAddress command line flags.freestyle-hid-1.0.3Diego Elio Pettenò2-5/+15
2021-05-16Fix tests: DeviceAddress objects cannot be joined.Diego Elio Pettenò1-1/+4
2021-05-16Use the new APIs from usbmon-tools to simplify chatter extraction.Diego Elio Pettenò1-48/+20
The HID support module, together with the search by IDs make it easier to write a reliable extractor.
2021-03-03Allow selecting which encoding to use for decoding text commands.Diego Elio Pettenò2-12/+18
The FreeStyle Libre at least allows patient names and other strings to be set in UTF-8 so there is no reason to force ascii everywhere. Instead, allow the session to define an encoding for ease of integration with downstream tools.
2021-03-03Calculate multirecords checksum based on the raw bytes.Diego Elio Pettenò1-7/+14
The original FreeStyle Libre software is known for incorrectly truncating strings with UTF-8, which causes the multi-record strings not to decode correctly. But since the Libre actually sends these as they are provided, we can calculate the checksum correctly if we do that _before_ replacing the invalid codepoints. This splits the `send_text_command` method into a public and a private interface, with the public returning the expected string, while the private returns the raw bytes. It should probably be changed to always return bytes instead. This change fixes https://github.com/glucometers-tech/glucometerutils/issues/103.
2020-10-04Backport the one test that was present in glucometerutils.Diego Elio Pettenò2-0/+25
This also sets up the whole pytest configuration and Travis CI integration.