/openomni

Documentation and library for decoding omnipod communications.

Primary LanguageJupyter NotebookMIT LicenseMIT

OpenOmni

Documentation and 2 programs for decoding omnipod communications for RTLSDR and RFCAT devices.

Join the Slack channel to discuss this work.

All the found messages can be found in the documentation on the wiki

Current Status

We have figured out the RF modulation and packet/message encoding. We are now working on decoding the meaning of the bytes in the body for each of the Message Types.

Device drivers for Rileylink are currently being developped with use of this documentation:

  1. Rileylink branch Omnikit for using the pump with Loop
  2. RileylinkAAPS branch dev_omnikit for using the pump with AndoidAPS

Areas to focus on

There are two ways we could use your help.

  1. Capture data from different pods and commands using omni_listen_rfcat. If you can document what was being done with the PDM while the packets were recorded, that would be a plus, but raw data can be helpful too. Submit these as new wiki pages and add your new page to the Packet Captures page.
  2. Start decoding fields for individual commands. A good way to start doing this is to repeatedly perform a certain type of action on the PDM tweaking 1 thing each time, and inspecting the generated packets to see which bytes differ.

What you'll need

There are 2 ways you can build a radio capture and parsing setup:

  1. RFCAT Omni

This was the first python based capture program, which parsed the data as raw or as txt. This needs a compatible RF Cat USB stick and has done a great job in capturing, but was expensive because you will need to flash firmware onto it using a CC-Debugger and we later discovered it was missing some packages. Files and Install guide rfcatomni

  1. RTL-SDR Omni

This program was later developped to capture the pure wav files in C which can parsed directly. It can also parse the raw txt data of the RFCAT above. This solution uses an inexpensive RTL-SDR USB stick with an antenna (really needed to get a good recording) as cheaper hardware solution. Files and install guide rtlomni

=======

** Please note the details below are related to a project created to better understand how the omnipod communicates **

Stay Up to Date!

Join the Slack channel to discuss this work.

Contributors on Slack: (in no particular order)

(To view, you must be logged into the OmniAPS Slack channel. Click here to join.)

Rules for Contributing to this Repository

  • 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