-
Notifications
You must be signed in to change notification settings - Fork 46
Home
Welcome to the openomni wiki! Here we describe how the Eros ("Classic") Omnipod and PDM communicate with each other. Because of the Pod is designed to be controlled by a single controller, we have to completely replace the PDM to use it for DIY closed loop. Read further if you want to understand what has been learned about Omnipod for DIY use.
The original test branch of Loop was released for public testing in April 2019 to use the Omnipod with Loop using a Rileylink. There have been several fixes, improvements, and releases since this testing branch was originally released for general use. At this time for Loop Omnipod use, it is recommended to use the master branch.
The Omnipod DASH uses all the same commands at the Message level as the Omnipod Eros, but uses bundled Bluetooth messages (not described here) instead of RF packets for the transport. Most modern DIY closed loop apps now support both Eros and DASH Omnipods. Omnipod 5 is a variant of Omnipod DASH and is not described here.
We first started decoding with this Python openomni RFcat reader, but when we needed extra data from the sub messages which were being send, we switched to a more detailed C program running on Linux to sniff RF packets using a much cheaper RTLSDR dongle.
Run Linux or create a Virtual Machine with Linux using Virtualbox or Parallels and go to this repo to install the software: https://github.com/ps2/rtlomni.
For the previously used openomni setup you can follow the readme guide on OSX computers on the main page or for a Windows machine this install guide: Alternate installation instructions for using RFcat.
- The protocol is described top-to-bottom in Protocol.
- Communications between PDM and Pod are sent over radio frequencies.
- The lowest level of information exchange is Packet Exchange.
- Packets are assembled into a specific Message Structure.
- Messages to the Pod consist of one or more Commands.
- Messages from the Pod consist of a single Response.
- OmniKit RileyLink Loop device driver for Eros
- AndroidAPS RileyLink Android device driver for Eros
- OpenAPS GoLang device driver
- OmniBLE Loop device driver for DASH