Commit graph

124 commits

Author SHA1 Message Date
AdrianLxM
ae30387a25 cleanups 2021-02-26 21:45:17 +01:00
Andrei Vereha
fb7a84bdf7 ble: add meaninful constants in the PayloadSplitter and getPodId 2021-02-26 21:30:29 +01:00
Andrei Vereha
358748654e ble: reformat(Ctrl+Alt+L) 2021-02-26 18:30:59 +01:00
Bart Sopers
dbff1c6e50 Add Profile to BasalProgram mapper function, add some preliminary code in OmnipodDashManagerImpl 2021-02-26 17:38:45 +01:00
Andrei Vereha
9170cc6f76 move the test code to "connect"
this is wrong, for now I just need an easy way to test the initial handshake
2021-02-26 17:06:03 +01:00
Andrei Vereha
4664d21ddf format, cleanups 2021-02-26 17:01:53 +01:00
Andrei Vereha
badf8fe24d ble: sending the first SP1/SP2 pairing command
from the fake pod logs
```
INFO[0007] Received SP1 SP2 payload 5350313d0004000010912c5350323d000bffc32dbd08030e0100008a
TRAC[0007] Read field: SP1= :: 00001091 :: 4
TRAC[0007] Read field: ,SP2= :: ffc32dbd08030e0100008a :: 11
INFO[0007] Received SP1 SP2: 00001091 :: ffc32dbd08030e0100008a
```
2021-02-26 17:01:53 +01:00
Andrei Vereha
318c0c642c WIP: sp1sp2 2021-02-26 17:01:53 +01:00
Andrei Vereha
4e6ad3f113 add comments with the LTK steps 2021-02-26 17:01:53 +01:00
Andrei Vereha
1661d978d0 mark not implemented yet functions 2021-02-26 17:01:53 +01:00
Andrei Vereha
ea4db2c17b ble: start implementing message reading 2021-02-26 17:01:53 +01:00
Andrei Vereha
af1d505e36 ble:
- address review comments: renames and removed unused vars
 - implement serialization for BlePackets
 - improve logging, add .toHex() where we have []byte

```
INFO[0009] Received SP1 SP2 payload 5350313d0004024200032c5350323d000bffc32dbd20030e01000016
TRAC[0009] Read field: SP1= :: 02420003 :: 4
TRAC[0009] Read field: ,SP2= :: ffc32dbd20030e01000016 :: 11
INFO[0009] Received SP1 SP2: 02420003 :: ffc32dbd20030e01000016
```
2021-02-26 17:01:53 +01:00
Andrei Vereha
08ff02dd4f ble: start implementing message splitting and sending 2021-02-26 17:01:50 +01:00
Bart Sopers
29c0b62978 Merge branch 'dash' into dash-bart-random 2021-02-26 16:11:21 +01:00
Andrei Vereha
72d0ca774f define connection status as enum class 2021-02-26 16:04:26 +01:00
Bart Sopers
69c0b5afa7 Add Omnipod Dash GetStatusCommand and ProgramBeepsCommand 2021-02-26 14:41:18 +01:00
Andrei Vereha
f0e333da6c format 2021-02-26 13:37:44 +01:00
Andrei Vereha
a23c3f2cd8 Define OmnipodDashBleManager interface 2021-02-26 13:35:01 +01:00
Andrei Vereha
2675592a54 Revert "Define OmnipodDashBleManager interface"
This reverts commit 2c9e9e7e74.
2021-02-26 13:34:16 +01:00
Andrei Vereha
2c9e9e7e74 Define OmnipodDashBleManager interface 2021-02-26 13:33:13 +01:00
Bart Sopers
85140dfb01 More formatting 2021-02-26 10:41:13 +01:00
Bart Sopers
29617b5d8c Remove redundant qualifiers 2021-02-26 10:26:30 +01:00
Bart Sopers
04cd03f99f Address review comments 2021-02-26 10:21:26 +01:00
Bart Sopers
1a12d6cd9d Formatting after Kotlin conversion 2021-02-26 10:04:33 +01:00
Bart Sopers
cc3b9b7f32 Copied from OmnipodErosOverviewFragment to OmnipodDashOverviewFragment and added lots of TODOS there 2021-02-26 04:12:11 +01:00
Bart Sopers
acfd40e6d1 Add methods to OmnipodDashManager 2021-02-26 02:49:13 +01:00
Bart Sopers
97aac063ee Add OmnipodDashManagerImpl 2021-02-26 02:45:44 +01:00
Bart Sopers
f32d605567 Add OmnipodDashManager interface 2021-02-26 02:34:30 +01:00
Bart Sopers
a348cb74e7 Implement more methods in OmnipodDashPodStateManagerImpl 2021-02-26 02:15:49 +01:00
Bart Sopers
bd0afdaf16 Resolve TODO 2021-02-26 01:31:13 +01:00
Bart Sopers
41b2602d61 Add OmnipodDashPodStateManager 2021-02-26 01:26:21 +01:00
Bart Sopers
bc8eefaffd Convert OmnipodDashPumpPlugin to Kotlin 2021-02-25 23:55:12 +01:00
Bart Sopers
d5679e51dd Merge remote-tracking branch 'origin/adrian/kotlinify-driver-pod' into dash-mgr 2021-02-25 23:22:16 +01:00
AdrianLxM
566d8f172b make automatic kotlin conversion build - untested, still not idiomatic 2021-02-25 23:11:18 +01:00
Andrei Vereha
9b7d31ba2c ble: address review comments: renames and removed unused vars 2021-02-25 19:19:06 +01:00
Andrei Vereha
f2fed8adc4 Implement more suggestions after the switch to Kotlin 2021-02-25 11:20:10 +01:00
AdrianLxM
2a14d60bee kotlin a bit more idiomatic after conversion from Java 2021-02-25 11:20:10 +01:00
Andrei Vereha
647793e0b7 Switch to Kotlin.
and

small fixes after conversion
2021-02-25 11:19:59 +01:00
Andrei Vereha
b4d769844c ble-io: implement confirmation for writes
and make sure there is only one one IO operation in progress.
In theory, we could have parallel IO operations on each characteristic,
but I'm not sure yet if we really need to support that.

implement reads

enable notifications. Use BlockingQueue for write confirmations
2021-02-25 11:16:39 +01:00
Andrei Vereha
1ca69ec414 Ble updates
- stop Thread.sleep()ing and use CountDownLatches for connection
    and service discovery state
   - prepare BleIO for reading/writing
   - define CharacteristicType for the CMD/DATA characteristics
   - prepare BlePacket for DATA packets(the equivalent of BleCommand)
2021-02-24 11:49:24 +01:00
Andrei Vereha
d9cebbbad7 mark BleCommand as abstract 2021-02-23 21:41:20 +01:00
Andrei Vereha
fa8fdd9816 Implement ble-scanning for a new pod 2021-02-23 21:21:17 +01:00
Bart Sopers
12ff37123d Add and wire some Omnipod Dash UI 2021-02-23 01:26:57 +01:00
Bart Sopers
567c215388 More work in progress on moving stuff from omnipod-eros to omnipod-common 2021-02-21 22:01:59 +01:00
Bart Sopers
d7a9413a18 Remove redundant class 2021-02-20 17:01:47 +01:00
Bart Sopers
9d2fadf00d Add PumpDescription in OmnipodDashPumpPlugin 2021-02-20 03:43:04 +01:00
Bart Sopers
c2c9f391dd Add Omnipod Dash overview 2021-02-20 03:31:50 +01:00
Bart Sopers
87d4ba14cb WIP on moving parts of omnipod-eros to omnipod-common 2021-02-19 21:19:40 +01:00
Bart Sopers
ecfabccffb Move several parts of Omnipod Eros driver to omnipod-common, did some renaming and added some preliminary Dash stuff 2021-02-19 09:40:59 +01:00
Bart Sopers
d142da37e8 Finish program temp basal command for Omnipod Dash 2021-02-18 10:42:50 +01:00
Bart Sopers
5347ae4f2d WIP on Omnipod program temp basal command 2021-02-18 00:31:25 +01:00
Bart Sopers
23450aee7e Add Omnipod Dash bolus command 2021-02-17 19:20:27 +01:00
Bart Sopers
a3b0044874 Finished Omnipod Dash program basal command 2021-02-17 16:10:18 +01:00
Bart Sopers
8d554fa35b Rename Omnipod Dash address to uniqueId 2021-02-17 14:42:01 +01:00
Bart Sopers
79c9e9a938 More WIP on Omnipod Dash program basal command 2021-02-17 14:34:08 +01:00
Bart Sopers
1c490f72ae WIP on Omnipod Dash program basal command 2021-02-17 12:38:16 +01:00
Bart Sopers
c183a68798 WIP on Omnipod Dash set basal and some refactoring 2021-02-14 21:12:22 +01:00
Bart Sopers
6972405809 WIP on Omnipod Dash set basal 2021-02-14 19:45:43 +01:00
Bart Sopers
34553bbcf6 Refactoring 2021-02-14 18:39:18 +01:00
Bart Sopers
d1bf9cefad Add Encodable interface 2021-02-12 21:47:16 +01:00
Bart Sopers
d944df725f WIP on ProgramBasalCommand 2021-02-12 21:06:10 +01:00
Bart Sopers
e2e2c579d4 Small fix 2021-02-12 20:17:12 +01:00
Bart Sopers
323f7ae30e Introduce builder for Omnipod Dash commands 2021-02-12 17:36:58 +01:00
Bart Sopers
e7e6f52305 Add StopDeliveryCommand, add test for NakResponse 2021-02-10 23:52:48 +01:00
Bart Sopers
93e4e924fa Add NakResponse (untested) 2021-02-10 22:55:42 +01:00
Bart Sopers
43c3b42912 Add SilenceAlertsCommand (untested) 2021-02-10 22:35:44 +01:00
Bart Sopers
1afc0ae2a9 Remove comment 2021-02-10 21:58:14 +01:00
Bart Sopers
d4ec8464ea Add AlarmStatusResponse (Status response page 2) 2021-02-10 21:53:26 +01:00
Bart Sopers
e77f08cd23 Add DefaultStatusResponse 2021-02-10 19:36:45 +01:00
Bart Sopers
eb46c973a3 Add ProgramAlertsCommand 2021-02-10 18:00:34 +01:00
Bart Sopers
af35253f0b Add SetUniqueIdCommand and DeactivateCommand; add captures for ProgramAlertsCommand 2021-02-10 15:16:28 +01:00
Bart Sopers
f1d095d9c8 Add GetVersionCommand 2021-02-10 01:22:53 +01:00
Bart Sopers
fc4065b71c Add GetVersionResponse and SetUniqueIdResponse; add some definitions 2021-02-10 00:17:14 +01:00
Bart Sopers
43409eb864 Add empty Omnipod Dash module 2021-02-09 21:21:30 +01:00