nightscout / nightscout/AndroidAPS

Kaleido integration

Open
#4,575 3 comments 9 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Kotlin
Stars
1.2k
Forks
6.4k
Avg merge
2d 7h
Merged PRs (30d)
19

Description

After the demise of the Accu-Check Combo, I'm looking at possible alternatives to integrate into AAPS.

One of my candidates is the Kaleido Pump due it being BLE, rather small and already supported by DBLG2/Diabeloop. In contrast to the YpsoPump, it apparently does not need a constant backend-connection to be usable (it comes with an offline handset for controlling the pump when not used with a closed loop).

We already tried to contact Kaleido - but unfortunately they do not want to communicate with us (out of fear about regulatory standards). Guess we have to accept that. Kaleido: If you're reading this... please revisit this decision and maybe dare to be different. It would fit your mission statement.

Well... whatever.
I decided to take that as a challenge - and while I don't have a Kaleido pump, I do have some reverse engineering skills. So here we go: https://github.com/savek-cc/kaleidoscope/blob/main/KALEIDO_PUMP_TECHNICAL_MANUAL.md

Apparently the pump communications have been designed for function and adequate but not overblown (hi Ypso) security. It relies on BLE encryption (standard) and a "password" to "unlock" the communication after BLE pairing. The linked documentation is work in progress - but actually should be quite complete.

If anyone has a Kaleido and is willing to test this, I guess we could create a new driver within weeks.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Kaleido pump technical manual linked in the issue and review its BLE communication, encryption, and unlock requirements. Confirm behavior with a Kaleido pump and assess how a new AndroidAPS driver would be tested; done means a working Kaleido integration suitable for closed-loop use.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
mobile-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.