Documentation and python library for decoding omnipod communications. Join the Slack channel to discuss this work.
- 433.923MHz center signal
- 2-FSK, with 26.37kHz deviation
- 40625bps data rate (before manchester)
- Manchester coded, non-ieee
- 8-bit crc
- Status: 0e01
- POD Status Response: 1d18
- POD Status Response with Temp Basal Running: 1d28
- Bolus: 1a0e
- Temp Basal: 1a0e
- Resume Basal Insulin: 1a1e
- Basal Program: 1a1#
- Cancel Bolus: 1f05
Prerequisites:
- python 2.7
- pip
- rfcat
- PyUSB - you can install this with pip:
pip install pyusb
, orsudo pip install pyusb
- On mac, you'll need libusb.
brew install libusb
You can install openomni in editable mode like this:
git clone https://github.com/openaps/openomni.git
cd openomni
pip install -e .
** note: you may need to add 'sudo' before the pip install line if you are using a system python install
=======
** Please note the below is notes about a project created to better understand how the omnipod communicates **
For SDR capture, you can use one of the following devices, or any SDR capable of capturing 2048000 samples per second at the 433.90MHz rf range. You'll need software to demodulate this data (see below):
For hardware based demodulation, you can use a cc111x based device like one of these:
- SDR# - to capture sdr iq data
- omnipod_decode This code will extract packets of correct length from raw sdr iq data, and will verify CRCs.
- baudline will show signal characteristics
- rfcat
- omni.py - tool to explore omnipod signals with rfcat
- SmartRF Studio and an omnipod configuration for it.
We may add more content to the wiki here Wiki
Join the Slack channel to discuss this work.
(To view, you must be logged into the OmniAPS Slack channel. Click here to join.)
- @dan
- @larsonlr
- @t1djoe
- @joakimornstedt
- @pete
- @marius
- @DanaMLewis
- @Garidan
- @SeattleBrighton
- Find out more about the NightScout community here.
- Find out more about the OpenAPS open source DIY artificial pancreas project here.
- Thanks for supporting this effort!!
- All code updates require the use of Pull Requests
- Documentation updates can be made directly on master
https://files.slack.com/files-pri/T0B2X082E-F0D390KTP/download/pod_datacap_23oct2015.odt