Commit graph

636 commits

Author SHA1 Message Date
Andrei Vereha 3dc4781692 use delivery status for checking if there is a tempbasal to cancel 2021-06-03 22:15:26 +02:00
Andrei Vereha 34103931f5 add comment 2021-06-03 22:00:42 +02:00
Andrei Vereha 25141d3939 undo the last change 2021-06-03 21:48:03 +02:00
Andrei Vereha 2afe220d28 suspend/resume 2021-06-03 19:43:59 +02:00
Milos Kozak fedba23405 code cleanup 2021-06-01 22:51:16 +02:00
Andrei Vereha d392caa6e9 move private fun at the end 2021-06-01 22:00:16 +02:00
Andrei Vereha 432e06adaa simplify: use lastUpdatedSystem for lastConnection 2021-06-01 21:50:55 +02:00
Andrei Vereha b91e8506a0 move the common code to getCommandConfirmationFromState 2021-06-01 21:41:13 +02:00
Andrei Vereha c8fee31ae8 cleanup 2021-06-01 08:12:03 +02:00
Andrei Vereha d0b1757268 bugfix: send error when we can't send the command 2021-06-01 00:18:38 +02:00
Andrei Vereha e867b1397d remove maybeMarkActiveCommandFailed. this logic was moved in "updateActiveCommand" 2021-05-31 22:15:39 +02:00
Andrei Vereha a20cc1cca3 simplify 2021-05-31 22:09:49 +02:00
Andrei Vereha 9d61c8ee8a remove unused function 2021-05-31 21:00:54 +02:00
Andrei Vereha 7dc01cb1f8 add comments 2021-05-31 00:13:52 +02:00
Andrei Vereha a2b3ab5991 add TODO 2021-05-31 00:04:25 +02:00
Andrei Vereha 8e64ca134f ktlintFormat 2021-05-31 00:01:54 +02:00
Andrei Vereha c989c6a1c5 duration is in ms 2021-05-30 23:55:47 +02:00
Andrei Vereha 3ca88ef51b bugfix: set the tempbasal timestamp to the time when the historyEntry was created, not a random number :) 2021-05-30 23:09:15 +02:00
Andrei Vereha 91957930ed display bluetooth connection status. display deliveryStatus. display lastConnection 2021-05-30 22:49:35 +02:00
Andrei Vereha 3b26068faf set temp basal beeps 2021-05-30 19:03:26 +02:00
Andrei Vereha 3314df7bb7 implement TempBasal pumpSync and confirmation 2021-05-30 18:35:53 +02:00
Andrei Vereha ebb3030169 make it compile 2021-05-28 23:37:00 +02:00
Andrei Vereha 684250a40f Merge branch 'avereha/dev2-merge' into avereha/temp-basals 2021-05-02 14:20:17 +02:00
Andrei Vereha c544ef6c19 merge tests 2021-05-02 14:19:46 +02:00
Andrei Vereha 5179670e9c merge for tests 2021-05-02 14:10:15 +02:00
Andrei Vereha dcfd9bcdbf merge 2021-05-02 14:02:10 +02:00
Andrei Vereha 976ae45057 ktlintFormat 2021-05-02 10:38:22 +02:00
Andrei Vereha dd8ebded1a merge: profile is not an interface 2021-05-02 10:37:06 +02:00
Andrei Vereha 2ae9f399aa s/utils.extensions/extensions/ 2021-05-02 10:31:47 +02:00
Andrei Vereha f197141cd5 merge:
.comment is now in Kotlin and it does not accept a String?
 symbol renames
2021-05-02 10:28:45 +02:00
Andrei Vereha c36e521efb use concat(listOf()) 2021-05-02 10:00:11 +02:00
Andrei Vereha 4bd5e7c625 observe there is no activeCommand 2021-05-01 20:56:02 +02:00
Andrei Vereha b7db79f296 interface updates 2021-05-01 20:28:42 +02:00
Andrei Vereha e3f7608de7 Merge remote-tracking branch 'upstream/dev2_dana_combo_only' into avereha/dev2-merge 2021-05-01 20:11:48 +02:00
Andrei Vereha 24e5223ad1 val 2021-05-01 19:28:01 +02:00
Andrei Vereha 9e770601f3 merge CommandConfirmed and CommandDenied 2021-05-01 19:19:18 +02:00
Andrei Vereha ee73cd5f2b remove comment 2021-05-01 18:54:17 +02:00
Andrei Vereha 912c847dcb rename to historyId 2021-05-01 18:43:11 +02:00
Andrei Vereha c759e651c5 remove TODO 2021-05-01 18:39:06 +02:00
Andrei Vereha 19ff47e53d add comments 2021-05-01 17:59:22 +02:00
Andrei Vereha 8d112a12ca rename 2021-04-26 21:57:32 +02:00
Andrei Vereha cddf7a3f68 add check for onError whent the command was sent 2021-04-26 21:56:54 +02:00
Andrei Vereha b64d530ae9 ktlintFormat 2021-04-21 23:29:16 +02:00
Andrei Vereha d3c73f9665 update on CommandSendNotConfirmed 2021-04-21 23:14:25 +02:00
Andrei Vereha 0fad1bc6c7 add comment 2021-04-21 22:54:47 +02:00
Andrei Vereha 20560f2a4e remove the active command if we get an error sending it 2021-04-21 22:52:22 +02:00
Andrei Vereha 3a2fa6d04f defer 2021-04-21 22:37:58 +02:00
Andrei Vereha 1e4cda01a3 Revert "Revert "remove duplication""
This reverts commit d49b87d124.
2021-04-21 20:44:26 +02:00
Andrei Vereha d49b87d124 Revert "remove duplication"
This reverts commit 05047029ea.
2021-04-19 21:55:45 +02:00
Andrei Vereha 05047029ea remove duplication 2021-04-19 21:46:50 +02:00
Milos Kozak cada2919d1 prepare Profile interface 2021-04-19 18:44:17 +02:00
Andrei Vereha 142ad126b5 add history, command confirmation for more commands 2021-04-18 21:54:50 +02:00
Andrei Vereha 842f196ae8 confirm/deny commands 2021-04-18 21:39:20 +02:00
Milos Kozak 24164eee98 PumpInterface rename 2021-04-14 19:36:13 +02:00
Andrei Vereha 821135edec dash ble: Supress deteket 2021-04-04 21:04:21 +02:00
Andrei Vereha 40ac1d189a dash ble: detekt reduce number of arguments 2021-04-04 17:57:17 +02:00
Andrei Vereha 513007f6ae dash: undo the temporary discardButtonEnabled test 2021-04-04 17:15:44 +02:00
Andrei Vereha 0c35eb7da9 dash: bugfix DefaultStatusResponse and add more tests 2021-04-04 17:10:17 +02:00
Andrei Vereha 6d2d5a7e76 dash ble: detekt 2021-04-04 16:06:39 +02:00
Andrei Vereha c1426941cf dash: address feedback 2021-04-04 13:43:39 +02:00
Andrei Vereha 14af90e9e3 dash: ktlintFormat 2021-04-04 13:36:33 +02:00
Andrei Vereha ff6a67cc97 detekt 2021-04-04 13:32:09 +02:00
Andrei Vereha 64fbea6afe dash ble: detekt 2021-04-04 13:16:05 +02:00
Andrei Vereha 210a446123 dash ble: ktLintFormat 2021-04-04 12:43:17 +02:00
Andrei Vereha 5b10ad13ec dash ble: handle disconnects 2021-04-04 12:40:28 +02:00
Andrei Vereha 547454de6c dash ble: check for RTS 2021-04-03 23:31:43 +02:00
Andrei Vereha 9597922058 dash ble: fix reconnection and improve logging for BleCallbacks
When reconnecting, we have to use the discovered Characteristics and not
the ones that we used for the previous connection
2021-04-03 22:58:54 +02:00
Andrei Vereha a29874dc6d implement EAP-AKA resynchronization 2021-04-03 12:20:11 +02:00
Andrei Vereha c4291113a6 fixes 2021-04-02 16:31:27 +02:00
Andrei Vereha 20179781ef dash ble: warnings 2021-04-02 14:33:18 +02:00
Andrei Vereha 0f58185109 simplify read error handling 2021-04-02 14:32:00 +02:00
Andrei Vereha e8bc50f458 merge 2021-04-02 14:31:12 +02:00
Milos Kozak e26e023ebf prepare TemporaryBasal 2021-04-01 23:46:21 +02:00
Bart Sopers afd28656d9 Merge branch 'bart/create-responses' into bart/implement-pump-plugin 2021-03-31 11:25:20 +02:00
Bart Sopers 12dad6662c Merge branch 'dash' into bart/create-responses 2021-03-31 11:21:59 +02:00
Bart Sopers fe9c5d00a7 WIP on implementing OmnipodDashPumpPlugin + some autoformatting 2021-03-31 11:18:58 +02:00
Andrei Vereha 470b21aad4 detekt 2021-03-31 08:26:35 +02:00
Bart Sopers 811f136830 Implement most methods in OmnipodDashManagerImpl + cleanup 2021-03-31 01:10:21 +02:00
Andrei Vereha 89bcd52994 detekt 2021-03-30 23:33:59 +02:00
Bart Sopers 19a132c596 Remove unused constants 2021-03-30 01:33:01 +02:00
Bart Sopers 76c4d01ee7 Bugfix in setting Dash basal 2021-03-30 01:21:35 +02:00
Andrei Vereha 5209386fc1 compile 2021-03-28 23:24:38 +02:00
Andrei Vereha 189b791c5c detekt 2021-03-28 23:24:12 +02:00
Andrei Vereha 6c9aa90679 ktLintFormat 2021-03-28 23:17:15 +02:00
Andrei Vereha b630c4d21a format 2021-03-28 23:15:42 +02:00
Andrei Vereha 96b1b177a6 call readyToRead on BleIOs 2021-03-28 23:14:41 +02:00
Andrei Vereha 2f87620050 compile 2021-03-28 23:12:17 +02:00
Andrei Vereha 38a1d9c6bc add BusyException 2021-03-28 23:09:44 +02:00
Andrei Vereha 8d2d38163a simplify exceptions 2021-03-28 21:43:32 +02:00
Andrei Vereha 4b49392200 improve error handling 2021-03-28 20:48:11 +02:00
Milos Kozak 7f0fe881b6 DetailedBolusInfo, MealLink UI 2021-03-25 17:48:07 +01:00
Andrei Vereha ae08e43109 add retries when sending commands 2021-03-21 15:12:33 +01:00
Andrei Vereha 7be0afda27 dash ble: implement retries when receiving messages 2021-03-21 14:56:32 +01:00
Bart Sopers 653deff0b6 Omnipod Dash: improve logging and fix prime timeouts 2021-03-20 20:45:53 +01:00
Andrei Vereha de6ca939ed dash ble: move parsing logic out of PayloadJoiner to BlePacket 2021-03-16 22:45:02 +01:00
Bart Sopers ebdc2aebe0 More WIP on Omnipod Dash Pod activation 2021-03-15 01:34:02 +01:00
Bart Sopers 6d4521ca6b WIP on integrating Omnipod Dash activation wizard 2021-03-15 00:51:07 +01:00
Bart Sopers dd480134e2 Remove unused variables 2021-03-14 23:13:41 +01:00
Bart Sopers 06de8a04e2 Log actual received message type for unknown Omnipod Dash responses 2021-03-14 23:11:48 +01:00
Bart Sopers 137908eb20 Fix crash in Omnipod Dash Pod activation 2021-03-14 22:49:25 +01:00
Bart Sopers 98dc2f92ef Add delay for prime and cannula insertion for Omnipod Dash 2021-03-14 22:39:07 +01:00
Andrei Vereha 8868f29ab2 dash ble: use higher timeout when reading a message
This timeout(4s) is the same that the PDM uses to send messaged with
`eqos` when they are not acknowledged
2021-03-14 22:06:52 +01:00
Bart Sopers 1872e1ceb7 Correctly handle NAK response for Omnipod Dash 2021-03-14 21:45:52 +01:00
Bart Sopers 10c316edd9 Omnipod Dash: provide and verify expected response type 2021-03-14 21:25:15 +01:00
Andrei Vereha 442a0b274f dash ble: add comment about why I think the NACK logic is not ok 2021-03-14 21:21:47 +01:00
Andrei Vereha 109f66a48d dash ble: start implementing retries
Handle NACKs for now.
2021-03-14 21:21:47 +01:00
AdrianLxM 95d7f0737c fix gitignore and tests 2021-03-14 21:19:24 +01:00
Bart Sopers aff38851e1 Add Omnipod Dash response parsing 2021-03-14 20:14:11 +01:00
AdrianLxM 7db5c28632 delint 2021-03-14 19:52:08 +01:00
AdrianLxM bf3fe19a4e only open for tests/debug 2021-03-14 19:42:02 +01:00
AdrianLxM 3d93e4d84d mock provider instead of constructor parameter 2021-03-14 18:24:15 +01:00
Andrei Vereha b33c55273c dash ble: fix detekt issues 2021-03-14 16:14:00 +01:00
Andrei Vereha b71f065974 dash ble tests: ktlintFormat 2021-03-14 16:00:59 +01:00
Andrei Vereha a94d6ce652 dash ble test: remove fixed TODO 2021-03-14 15:59:36 +01:00
Andrei Vereha 379c0cd8c7 dash bke tests: fix decrypt test
We were trying to use an encryption NONCE for decryption.
The fix was to replac data with data from logs.
2021-03-14 15:58:12 +01:00
Andrei Vereha 752f393f3b dash ble: add test for MessagePacket 2021-03-14 15:57:16 +01:00
Andrei Vereha eff6247f77 dash ble: remove unused class 2021-03-14 15:57:16 +01:00
Andrei Vereha eda52857e5 dash ble: add tests for StringLengthPrefixEncodingTest
We tested this part with a real pod and confirmed that it's working
2021-03-14 15:57:16 +01:00
Andrei Vereha 5f71e1b27f dash ble: add tests for payload splitting and joining 2021-03-14 15:57:16 +01:00
Andrei Vereha 50d1dad786 dash LTK: add test
Now that we know this part is working, I'm adding a test with data from
logs
Moved the key exchange logic to its own class so it is easier to
test
2021-03-14 15:44:28 +01:00
Andrei Vereha 27daa4554a
Merge pull request #22 from 0pen-dash/andrei/detekt-max-issues
dash detekt: set maxIssues to -1
2021-03-14 15:42:03 +01:00
Andrei Vereha 0396b9ca99 dash ble: use .let(Id::fromLong)
https://github.com/0pen-dash/AndroidAPS/pull/21#pullrequestreview-610227073
2021-03-11 23:06:00 +01:00
Andrei Vereha a1f8cf807d dash detekt: set maxIssues to -1
I noticed that with this setting I can detekt from android-studio and
see all the issues reported in the Build Output.

Without it, I can only see: "Build failed with X issues."
2021-03-11 21:43:25 +01:00
Andrei Vereha 27e9b25e86 dash: update TODO comment 2021-03-11 21:40:51 +01:00
Andrei Vereha 1a678a9507 dash/ble: stop reading a message on send
We were receiving a message in that case just because we used the `eqos`
parameter incorrectly.
2021-03-11 21:36:43 +01:00
Andrei Vereha 2aed2005ef dash ble: renames and fixes after testing 2021-03-11 21:27:18 +01:00
Andrei Vereha 8154e16c94 dash ble: add a separate method for activating a new pod
So we can call it explicitly instead of activating a new pod on
connect()
2021-03-09 23:19:22 +01:00
Andrei Vereha c337b52aa0 dash/ble: support both 1 and 2 byte command
It seems that the PDM is sending 1 byte commands and the POD answers
with 2 byte commands.

Add logging for decrypted responses.

I think `eqos` means that we are expecting an ACK for the last message.
Read (and log for now) a pending message if the POD is trying to sending it back while we want
to send a command.
2021-03-08 22:52:04 +01:00
Andrei Vereha db51b762ca dash ble: disconnect on errors 2021-03-08 22:52:04 +01:00
Andrei Vereha 64aa05f7f9 dash en/decrypt test: add comment about failing test 2021-03-08 22:52:04 +01:00
Andrei Vereha 923d8d33ef dash eap: bugfix
Shift the MSB of the lenght by 1 byte, not one bit.
2021-03-08 22:52:04 +01:00
Andrei Vereha 7dd8fc1bf6 dash/ble: ktlintFormat 2021-03-08 22:52:04 +01:00
Andrei Vereha e7a9e24093 dash: start using podState for BLE
implement disconnect()
various fixes after testing with a real pod(cmd is 2 bytes, message
joining, etc)
2021-03-08 22:52:04 +01:00
Andrei Vereha 4046828567 format: ktlint 2021-03-08 22:52:04 +01:00
Andrei Vereha c71433ad1a format: remove trailing commao 2021-03-08 22:52:04 +01:00
Andrei Vereha 5211d4ddc6 dash ble: implement sessions and sending commands
Tested with the fake pod:
```
DEBU[0185] got command. CRC: 82b2. Type: 7 :: GET_VERSION
DEBU[0185] got command. CRC: 0003. Type: 3 :: SET_UNIQUE_ID
DEBU[0186] got command. CRC: 019a. Type: 19 :: PROGRAM_ALERTS
DEBU[0186] got command. CRC: 0385. Type: 19 :: PROGRAM_ALERTS
DEBU[0187] got command. CRC: 81f3. Type: 1a :: PROGRAM_INSULIN
DEBU[0187] got command. CRC: 8178. Type: e :: GET_STATUS
```
2021-03-08 22:52:04 +01:00
Andrei Vereha 5647007190 dash/ble: remove retries for connect for now
It's easier to debug for now if we stop on the first issue/error
2021-03-08 22:52:04 +01:00
Andrei Vereha 9c586c4942 dash encryption: add encryption and decryption for messsages 2021-03-08 22:52:04 +01:00
Milos Kozak 91e323b5f5
New Crowdin updates (#388)
* New translations exam.xml (Portuguese)

* New translations validator.xml (Slovak)

* New translations alert_descriptions.xml (Slovak)

* New translations strings.xml (Slovak)

* New translations strings.xml (Slovak)

* New translations strings.xml (Slovak)

* New translations strings.xml (Slovak)

* New translations strings.xml (Slovak)

* New translations strings.xml (Slovak)

* New translations strings.xml (Slovak)

* New translations strings.xml (Tamil)

* New translations strings.xml (Tamil)

* New translations alert_titles.xml (Tamil)

* New translations alert_descriptions.xml (Tamil)

* New translations alert_codes.xml (Tamil)

* New translations strings.xml (Tamil)

* New translations validator.xml (Tamil)

* New translations strings.xml (Tamil)

* New translations strings.xml (Tamil)

* New translations strings.xml (Tamil)

* New translations exam.xml (Tamil)

* New translations strings.xml (Tamil)

* New translations strings.xml (Tamil)

* New translations strings.xml (Tamil)

* New translations strings.xml (Tamil)

* New translations strings.xml (Tamil)

* New translations strings.xml (Tamil)

* New translations objectives.xml (Tamil)

* New translations exceptions.xml (Tamil)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Swedish)

* New translations strings.xml (Slovak)

* New translations strings.xml (Russian)

* New translations strings.xml (Portuguese)

* New translations exam.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Polish)

* New translations strings.xml (Dutch)

* New translations strings.xml (Romanian)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Korean)

* New translations strings.xml (Italian)

* New translations strings.xml (Greek)

* New translations strings.xml (German)

* New translations strings.xml (Czech)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Spanish)

* New translations strings.xml (French)

* New translations strings.xml (German)

* New translations validator.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Hebrew)

* New translations objectives.xml (Hebrew)

* New translations strings.xml (Czech)

* New translations strings.xml (Italian)

* New translations strings.xml (Portuguese)

* New translations alert_titles.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Russian)

* New translations strings.xml (Portuguese)

* New translations exam.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations validator.xml (French)

* New translations alert_descriptions.xml (French)

* New translations alert_titles.xml (French)

* New translations strings.xml (French)

* New translations strings.xml (German)

* New translations strings.xml (French)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Russian)

* New translations strings.xml (Czech)

* New translations strings.xml (Italian)

* New translations strings.xml (Norwegian)

* New translations strings.xml (French)

* New translations alert_descriptions.xml (Swedish)

* New translations alert_titles.xml (Swedish)

* New translations strings.xml (Swedish)

* New translations exam.xml (Swedish)

* New translations strings.xml (Swedish)

* New translations strings.xml (Swedish)

* New translations strings.xml (Swedish)

* New translations strings.xml (Swedish)

* New translations strings.xml (Swedish)

* New translations strings.xml (Swedish)
2021-03-08 20:22:45 +01:00
Milos Kozak 563bee2faf PumpDescription -> kt 2021-03-07 15:19:51 +01:00
Andrei Vereha c2627176cf dash BleIO: s/let/also 2021-03-03 17:07:18 +01:00
Andrei Vereha 7976df596e dash eap-aka: use named parameters 2021-03-03 17:02:59 +01:00
Andrei Vereha c3d7cf9483 dash LTK exchange: s/var/val 2021-03-03 17:02:12 +01:00
Andrei Vereha 7c0e2af053 dash: rename EAP AKA to SessionEstablisher 2021-03-03 14:24:23 +01:00
Andrei Vereha b2797fa57f dash: undo ktLint 2021-03-03 14:22:09 +01:00
Andrei Vereha da84c35b31 format: CTRL+Alt+L 2021-03-03 14:18:20 +01:00
Andrei Vereha 154e74fc22 dash ble: fix detekt issues 2021-03-03 14:10:33 +01:00
Andrei Vereha c9beb21404 format: klintFormat 2021-03-02 22:22:03 +01:00
Andrei Vereha ada3560f49 format: remove trailing commas 2021-03-02 22:20:30 +01:00
Andrei Vereha e90bda0234 dash eap-aka: complete the session key exchange
Fake pod logs
```
INFO[0021] got CK: daff384a4098571975d136a480a71b36
INFO[0021] got Nonce: 33a0c6dd0a0a0a0a
```

The application logs:
```
[OmnipodDashBleManagerImpl$connect$1.subscribe():139]: CK: daff384a4098571975d136a480a71b36
 [OmnipodDashBleManagerImpl$connect$1.subscribe():140]: noncePrefix: 33a0c6dd0a0a0a0a
```
2021-03-02 22:17:11 +01:00
Andrei Vereha 9c42e5749f ble/milenage: fix and add tests 2021-03-02 18:39:03 +01:00
Andrei Vereha 099ec0a328 ble scan: improve log message 2021-03-02 18:37:45 +01:00
Andrei Vereha b6692a5ac6 WIP: add Milenage
AUTN is not correct yet
2021-03-02 10:44:36 +01:00
Milos Kozak b5dcf27b07
New Crowdin updates (#378)
* New translations validator.xml (Dutch)

* New translations validator.xml (German)

* New translations alert_descriptions.xml (German)

* New translations alert_titles.xml (German)

* New translations strings.xml (German)

* New translations strings.xml (German)

* New translations strings.xml (German)

* New translations strings.xml (German)

* New translations validator.xml (Romanian)

* New translations alert_descriptions.xml (Romanian)

* New translations strings.xml (Romanian)

* New translations exam.xml (Romanian)

* New translations strings.xml (Romanian)

* New translations strings.xml (Romanian)

* New translations strings.xml (Romanian)

* New translations strings.xml (Romanian)

* New translations strings.xml (Romanian)

* New translations strings.xml (Romanian)

* New translations strings.xml (Romanian)

* New translations strings.xml (Romanian)

* New translations strings.xml (Romanian)

* New translations validator.xml (Romanian)

* New translations strings.xml (Romanian)

* New translations strings.xml (Romanian)

* New translations strings.xml (Romanian)

* New translations strings.xml (Romanian)
2021-03-01 23:55:55 +01:00
Andrei Vereha e82826bf5a dash/ble: start implement EAP-AKA 2021-03-01 15:22:52 +01:00
Andrei Vereha 0523f7c17c format: remove trailing commas 2021-03-01 15:20:02 +01:00
AdrianLxM 89ff502518 a bit more formatting 2021-03-01 14:35:50 +01:00
AdrianLxM 5ef07dd0be detekt resolve a few more 2021-03-01 13:52:43 +01:00
AdrianLxM e7b3d85639 detekt resolve a few 2021-03-01 13:49:39 +01:00
AdrianLxM 77c816e813 ktlint format 2021-03-01 13:39:02 +01:00
AdrianLxM 9a6a81248d Merge remote-tracking branch 'origin/bart/implement-managers' into adrian/linting 2021-03-01 12:40:42 +01:00
AdrianLxM 070ba1cfc2 add ktlint and detekt 2021-03-01 12:34:47 +01:00
Bart Sopers 59bfa7a04d Implement Pod activation command flow 2021-03-01 01:23:40 +01:00
Bart Sopers 82d2f9ae36 Merge branch 'dash' into bart/improvements 2021-02-28 21:10:09 +01:00
Andrei Vereha c8bded99ab remove tailing comma 2021-02-28 19:45:21 +01:00
Andrei Vereha a7ca5fd863 format code: Ctrl+Alt+L 2021-02-28 19:44:10 +01:00
Bart Sopers 8e7b1d3612 Review: use fold in AlertUtil.encodeAlerts 2021-02-28 19:28:52 +01:00
Andrei Vereha 57c2d2d9a1 Address review comments:
- move think dependency to core_dependencies and make it's version
   configurable: https://github.com/0pen-dash/AndroidAPS/pull/10#discussion_r584329468
 - add message string to exceptions. Renames
2021-02-28 19:11:42 +01:00
Bart Sopers 8e7e2450ae Update active alerts from default status response in Pod state 2021-02-28 18:46:49 +01:00
Bart Sopers bf060da878 Fix typo 2021-02-28 18:42:17 +01:00
Andrei Vereha b1f099c506 rename LTK to Pair 2021-02-28 18:38:43 +01:00
Andrei Vereha ee0ac46c5a Finish implementing the LTK exchange
On the fake pod:
```
INFO[0067] LTK 21f4a9d825ce5e57bad5b4958c6ff95e
```
Logcat:
```
2021-02-28 18:21:04.763 19530-22490/info.nightscout.androidaps I/PUMPCOMM: [AsyncTask #4]: [OmnipodDashBleManagerImpl.connect():86]: Got LTK: 21f4a9d825ce5e57bad5b4958c6ff95e
``
2021-02-28 18:37:36 +01:00
Andrei Vereha ddb1c18349 ble ltk: implement encryption and message parsing 2021-02-28 18:33:07 +01:00
Andrei Vereha ddfbd2e7bd dash ble tlk: start generating keys 2021-02-28 18:33:07 +01:00
Andrei Vereha 39408ac535 BLE LTK: define all the steps 2021-02-28 18:33:07 +01:00
Andrei Vereha 1aa6d02893 ble: implement message reading&joining
Now are able to read the first message:
```
INFO[0005] Received SPS1  6b943ec06b594f8a0383f384a3c916da75e1c7846c3e1b73f72f86ee2dc48774b2b4e5ad62d798b76cfd06be1cd4c937
DEBU[0005] Donna LTK: b874cb3cbe487040442138452faeb02d284ac55f489f19593265ff52f7310f1f
DEBU[0005] First key 58cb3b742dc48774000000001cd4c937 :: 16
DEBU[0005] CMACY: 16
DEBU[0005] Intermediar key 4c13eebc4cf09795a07c50bf13786c18 :: 16
DEBU[0005] Pod public 2fe57da347cd62431528daac5fbb290730fff684afc4cfc2ed90995f58cb3b74 :: 32
DEBU[0005] Pod nonce 00000000000000000000000000000000 :: 16
DEBU[0005] Generated SPS1: 535053313d00302fe57da347cd62431528daac5fbb290730fff684afc4cfc2ed90995f58cb3b7400000000000000000000000000000000
TRAC[0005] CMD notification return: 4/00
TRAC[0005] received CMD:  01
TRAC[0005] Sending message: 54570003000006e00000109100001092535053313d00302fe57da347cd62431528daac5fbb290730fff684afc4cfc2ed90995f58cb3b7400000000000000000000000000000000
TRAC[0005] DATA notification return: 23/000354570003000006e000001091000010925350
TRAC[0005] DATA notification return: 23/0153313d00302fe57da347cd62431528daac5fbb
TRAC[0005] DATA notification return: 23/02290730fff684afc4cfc2ed90995f58cb3b7400
TRAC[0005] DATA notification return: 23/030f7d02931d0000000000000000000000000000
TRAC[0005] DATA notification return: 23/0401000000000000000000000000000000000000
TRAC[0005] received CMD:  04
```
2021-02-28 18:33:05 +01:00
Andrei Vereha 81ad52ebce implement SPS1 command
I had to add a new dependency: `tink-android:1.5.0` for X25519
2021-02-28 18:32:21 +01:00
Andrei Vereha 11633995f6
Merge pull request #11 from 0pen-dash/bart/observable-connect
Make OmnipodDashBleManager.connect() return an Observable of PodEvents
2021-02-28 18:30:06 +01:00
Bart Sopers c93705e88f Add retry for connecting to Pod 2021-02-28 18:22:56 +01:00
Bart Sopers 256cfe077d Replace single booleans for alerts with EnumSet of AlertType and introduce sealed class AlertTrigger 2021-02-28 18:20:17 +01:00
Bart Sopers 5c8ba98682 Remove TODO 2021-02-28 15:30:12 +01:00
Bart Sopers aa14843d33 Address review findings 2021-02-28 15:18:10 +01:00
AdrianLxM 76756fabaa a bit more readable 2021-02-28 14:18:17 +01:00
AdrianLxM 6dce871ed4 fix database 2021-02-28 03:55:01 +01:00
AdrianLxM 2d0d38f70f database integration test working 2021-02-28 03:30:13 +01:00
Bart Sopers 634b9c20e7 Add interceptors for PodEvents and errors 2021-02-28 00:42:32 +01:00
Bart Sopers 8d629977ec Improvement 2021-02-27 23:52:06 +01:00
AdrianLxM 86d965a7f1 initial history database 2021-02-27 23:50:51 +01:00
Bart Sopers 7e5667705d Minor improvement 2021-02-27 23:46:57 +01:00
Bart Sopers d08a979da3 Make OmnipodDashManager.connect() return an Observable of PodEvents 2021-02-27 23:21:09 +01:00
Andrei Vereha 5ca622a923 Merge branch 'dash-bart-random' into ble-message 2021-02-27 18:45:01 +01:00
Andrei Vereha 899a3d4213 Merge branch 'dash-bart-random' into ble-message 2021-02-27 18:35:14 +01:00
Bart Sopers dcf7672a24 More cleanup after conversion 2021-02-27 00:39:55 +01:00
Bart Sopers ba65a47380 Merge branch 'dash-bart-random' into adrian/something 2021-02-26 22:12:39 +01:00
Bart Sopers 0a013b6d2b Serializable instead of Any for data in PodEvent 2021-02-26 22:10:25 +01:00
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 f2922057c0 Convert Omnipod Dash tests to Kotlin 2021-02-26 13:21:27 +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
Milos Kozak b6cb9edaa3
New Crowdin updates (#374)
* New translations strings.xml (Afrikaans)

* New translations alert_descriptions.xml (Portuguese)

* New translations alert_titles.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations validator.xml (Russian)

* New translations strings.xml (Russian)

* New translations alert_descriptions.xml (Russian)

* New translations strings.xml (Russian)
2021-02-26 09:23:39 +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
Milos Kozak 3fb9e6ce5f
New Crowdin updates (#372)
* New translations strings.xml (Bulgarian)

* New translations alert_codes.xml (Bulgarian)

* New translations alert_descriptions.xml (Bulgarian)

* New translations alert_titles.xml (Bulgarian)

* New translations exceptions.xml (Bulgarian)

* New translations validator.xml (Catalan)

* New translations strings.xml (Catalan)

* New translations alert_descriptions.xml (Catalan)

* New translations alert_titles.xml (Afrikaans)

* New translations alert_titles.xml (Catalan)

* New translations exceptions.xml (Catalan)

* New translations validator.xml (Czech)

* New translations strings.xml (Czech)

* New translations alert_codes.xml (Czech)

* New translations alert_descriptions.xml (Czech)

* New translations alert_titles.xml (Czech)

* New translations exceptions.xml (Czech)

* New translations exceptions.xml (Afrikaans)

* New translations alert_descriptions.xml (Afrikaans)

* New translations strings.xml (Danish)

* New translations alert_titles.xml (French)

* New translations alert_codes.xml (Romanian)

* New translations alert_descriptions.xml (Romanian)

* New translations alert_titles.xml (Romanian)

* New translations exceptions.xml (Romanian)

* New translations validator.xml (French)

* New translations strings.xml (French)

* New translations alert_codes.xml (French)

* New translations alert_descriptions.xml (French)

* New translations exceptions.xml (French)

* New translations alert_codes.xml (Afrikaans)

* New translations validator.xml (Spanish)

* New translations strings.xml (Spanish)

* New translations alert_codes.xml (Spanish)

* New translations alert_descriptions.xml (Spanish)

* New translations alert_titles.xml (Spanish)

* New translations exceptions.xml (Spanish)

* New translations validator.xml (Afrikaans)

* New translations strings.xml (Afrikaans)

* New translations validator.xml (Danish)

* New translations alert_codes.xml (Danish)

* New translations strings.xml (Italian)

* New translations strings.xml (Hebrew)

* New translations validator.xml (Hebrew)

* New translations strings.xml (Hebrew)

* New translations alert_codes.xml (Hebrew)

* New translations alert_descriptions.xml (Hebrew)

* New translations alert_titles.xml (Hebrew)

* New translations exceptions.xml (Hebrew)

* New translations validator.xml (Italian)

* New translations exceptions.xml (Irish)

* New translations alert_descriptions.xml (Danish)

* New translations validator.xml (Greek)

* New translations alert_titles.xml (Danish)

* New translations exceptions.xml (Danish)

* New translations validator.xml (German)

* New translations strings.xml (German)

* New translations alert_codes.xml (German)

* New translations alert_descriptions.xml (German)

* New translations alert_titles.xml (German)

* New translations exceptions.xml (German)

* New translations strings.xml (Greek)

* New translations alert_titles.xml (Irish)

* New translations alert_codes.xml (Greek)

* New translations alert_descriptions.xml (Greek)

* New translations alert_titles.xml (Greek)

* New translations exceptions.xml (Greek)

* New translations validator.xml (Irish)

* New translations strings.xml (Irish)

* New translations alert_codes.xml (Irish)

* New translations alert_descriptions.xml (Irish)

* New translations exceptions.xml (Croatian)

* New translations validator.xml (Hebrew)

* New translations strings.xml (French)

* New translations strings.xml (French)

* New translations strings.xml (French)

* New translations strings.xml (French)

* New translations strings.xml (French)

* New translations strings.xml (Romanian)

* New translations alert_titles.xml (French)

* New translations alert_titles.xml (Spanish)

* New translations alert_descriptions.xml (Spanish)

* New translations alert_codes.xml (Spanish)

* New translations strings.xml (Spanish)

* New translations exceptions.xml (French)

* New translations alert_descriptions.xml (French)

* New translations alert_codes.xml (French)

* New translations strings.xml (French)

* New translations exceptions.xml (Romanian)

* New translations alert_titles.xml (Romanian)

* New translations alert_descriptions.xml (Romanian)

* New translations alert_codes.xml (Romanian)

* New translations exceptions.xml (Spanish)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Russian)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Russian)

* New translations strings.xml (Russian)

* New translations strings.xml (Russian)

* New translations strings.xml (Russian)

* New translations strings.xml (Italian)

* New translations exceptions.xml (Korean)

* New translations alert_titles.xml (Korean)

* New translations alert_descriptions.xml (Korean)

* New translations alert_codes.xml (Korean)

* New translations strings.xml (Korean)

* New translations exceptions.xml (Italian)

* New translations alert_titles.xml (Italian)

* New translations alert_descriptions.xml (Italian)

* New translations alert_codes.xml (Italian)

* New translations strings.xml (Lithuanian)

* New translations exceptions.xml (Hebrew)

* New translations alert_titles.xml (Hebrew)

* New translations alert_descriptions.xml (Hebrew)

* New translations alert_codes.xml (Hebrew)

* New translations strings.xml (Hebrew)

* New translations alert_codes.xml (Lithuanian)

* New translations alert_titles.xml (Norwegian)

* New translations alert_descriptions.xml (Portuguese)

* New translations alert_codes.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations exceptions.xml (Polish)

* New translations alert_titles.xml (Polish)

* New translations alert_descriptions.xml (Polish)

* New translations alert_codes.xml (Polish)

* New translations strings.xml (Polish)

* New translations exceptions.xml (Norwegian)

* New translations alert_descriptions.xml (Norwegian)

* New translations alert_descriptions.xml (Lithuanian)

* New translations alert_codes.xml (Norwegian)

* New translations strings.xml (Norwegian)

* New translations exceptions.xml (Dutch)

* New translations alert_titles.xml (Dutch)

* New translations alert_descriptions.xml (Dutch)

* New translations alert_codes.xml (Dutch)

* New translations strings.xml (Dutch)

* New translations exceptions.xml (Lithuanian)

* New translations alert_titles.xml (Lithuanian)

* New translations exceptions.xml (Portuguese)

* New translations exceptions.xml (Czech)

* New translations alert_titles.xml (Czech)

* New translations alert_descriptions.xml (Czech)

* New translations alert_codes.xml (Czech)

* New translations strings.xml (Czech)

* New translations validator.xml (Czech)

* New translations strings.xml (Catalan)

* New translations exceptions.xml (Bulgarian)

* New translations strings.xml (Danish)

* New translations alert_titles.xml (Bulgarian)

* New translations alert_descriptions.xml (Bulgarian)

* New translations alert_codes.xml (Bulgarian)

* New translations strings.xml (Bulgarian)

* New translations exceptions.xml (Afrikaans)

* New translations alert_titles.xml (Afrikaans)

* New translations alert_descriptions.xml (Afrikaans)

* New translations alert_codes.xml (Afrikaans)

* New translations strings.xml (Czech)

* New translations exceptions.xml (Portuguese, Brazilian)

* New translations alert_titles.xml (Portuguese)

* New translations strings.xml (Russian)

* New translations alert_codes.xml (Russian)

* New translations alert_descriptions.xml (Russian)

* New translations strings.xml (Irish)

* New translations exceptions.xml (Greek)

* New translations exceptions.xml (Russian)

* New translations alert_codes.xml (German)

* New translations strings.xml (German)

* New translations alert_descriptions.xml (German)

* New translations alert_titles.xml (Greek)

* New translations alert_titles.xml (German)

* New translations exceptions.xml (German)

* New translations strings.xml (Greek)

* New translations alert_codes.xml (Greek)

* New translations alert_descriptions.xml (Greek)

* New translations alert_titles.xml (Russian)

* New translations alert_titles.xml (Portuguese, Brazilian)

* New translations alert_codes.xml (Chinese Simplified)

* New translations alert_codes.xml (Turkish)

* New translations alert_descriptions.xml (Turkish)

* New translations alert_titles.xml (Turkish)

* New translations exceptions.xml (Turkish)

* New translations strings.xml (Chinese Simplified)

* New translations alert_descriptions.xml (Chinese Simplified)

* New translations alert_titles.xml (Chinese Simplified)

* New translations exceptions.xml (Chinese Simplified)

* New translations strings.xml (Portuguese, Brazilian)

* New translations alert_codes.xml (Portuguese, Brazilian)

* New translations alert_descriptions.xml (Portuguese, Brazilian)

* New translations strings.xml (Turkish)

* New translations exceptions.xml (Swedish)

* New translations strings.xml (Slovak)

* New translations alert_codes.xml (Slovak)

* New translations alert_descriptions.xml (Slovak)

* New translations alert_titles.xml (Slovak)

* New translations exceptions.xml (Slovak)

* New translations alert_titles.xml (Swedish)

* New translations strings.xml (Swedish)

* New translations alert_codes.xml (Swedish)

* New translations alert_descriptions.xml (Swedish)

* New translations validator.xml (Bulgarian)

* New translations strings.xml (Bulgarian)

* New translations alert_titles.xml (Italian)

* New translations validator.xml (Italian)

* New translations alert_descriptions.xml (Italian)

* New translations strings.xml (Italian)

* New translations strings.xml (Italian)

* New translations strings.xml (Italian)

* New translations strings.xml (Italian)

* New translations validator.xml (Italian)

* New translations strings.xml (Italian)

* New translations strings.xml (Italian)

* New translations strings.xml (Italian)

* New translations strings.xml (Italian)

* New translations strings.xml (Italian)

* New translations strings.xml (Italian)

* New translations strings.xml (Hebrew)

* New translations alert_descriptions.xml (Hebrew)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Turkish)

* New translations strings.xml (Swedish)

* New translations strings.xml (Slovenian)

* New translations strings.xml (Slovak)

* New translations strings.xml (Russian)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Polish)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Dutch)

* New translations strings.xml (Korean)

* New translations strings.xml (Romanian)

* New translations strings.xml (Italian)

* New translations strings.xml (Irish)

* New translations strings.xml (Greek)

* New translations strings.xml (German)

* New translations strings.xml (Danish)

* New translations strings.xml (Czech)

* New translations strings.xml (Catalan)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Spanish)

* New translations strings.xml (French)

* New translations strings.xml (Croatian)

* New translations validator.xml (Norwegian)

* New translations alert_descriptions.xml (Norwegian)

* New translations alert_titles.xml (Norwegian)
2021-02-25 14:46:25 +01:00
Milos Kozak a76b60d13c fix tests 2021-02-25 12:13:22 +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
Milos Kozak bf952cca33 Merge branch 'preference_warning_fix' of https://github.com/osodebailar/AndroidAPS-Nightscout_Fork into osodebailar-preference_warning_fix 2021-02-24 17:19:52 +01:00
Milos Kozak fdb6bcc178 @NonNull lints 2021-02-24 13:46:38 +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
Milos Kozak 699b4269cc
New Crowdin updates (#366)
* New translations strings.xml (Romanian)

* New translations strings.xml (Irish)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Polish)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Dutch)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Korean)

* New translations strings.xml (Italian)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Greek)

* New translations strings.xml (Romanian)

* New translations strings.xml (German)

* New translations strings.xml (Danish)

* New translations strings.xml (Czech)

* New translations strings.xml (Catalan)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Spanish)

* New translations strings.xml (French)

* New translations strings.xml (Slovak)

* New translations strings.xml (Russian)

* New translations strings.xml (Slovenian)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Dutch)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Korean)

* New translations strings.xml (Korean)

* New translations strings.xml (Italian)

* New translations strings.xml (Italian)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Irish)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Irish)

* New translations strings.xml (Greek)

* New translations strings.xml (Greek)

* New translations strings.xml (German)

* New translations strings.xml (German)

* New translations strings.xml (Danish)

* New translations strings.xml (Danish)

* New translations strings.xml (Czech)

* New translations strings.xml (Dutch)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Catalan)

* New translations strings.xml (Swedish)

* New translations strings.xml (Croatian)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Turkish)

* New translations strings.xml (Turkish)

* New translations strings.xml (Swedish)

* New translations strings.xml (Slovenian)

* New translations strings.xml (Polish)

* New translations strings.xml (Slovenian)

* New translations strings.xml (Slovak)

* New translations strings.xml (Slovak)

* New translations strings.xml (Russian)

* New translations strings.xml (Russian)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Polish)

* New translations strings.xml (Czech)

* New translations strings.xml (Catalan)

* New translations strings.xml (Swedish)

* New translations strings.xml (Catalan)

* New translations strings.xml (Korean)

* New translations strings.xml (Italian)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Irish)

* New translations strings.xml (Greek)

* New translations strings.xml (German)

* New translations strings.xml (Danish)

* New translations strings.xml (Czech)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Dutch)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Spanish)

* New translations strings.xml (French)

* New translations strings.xml (Romanian)

* New translations strings.xml (Croatian)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Turkish)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Romanian)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Spanish)

* New translations strings.xml (Spanish)

* New translations strings.xml (French)

* New translations strings.xml (French)

* New translations strings.xml (Romanian)

* New translations strings.xml (Croatian)

* New translations strings.xml (Polish)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Turkish)

* New translations strings.xml (Swedish)

* New translations strings.xml (Slovenian)

* New translations strings.xml (Slovak)

* New translations strings.xml (Russian)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Irish)

* New translations strings.xml (Spanish)

* New translations strings.xml (Norwegian)

* New translations strings.xml (German)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Dutch)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Korean)

* New translations strings.xml (Italian)

* New translations strings.xml (Irish)

* New translations strings.xml (Greek)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Slovak)

* New translations strings.xml (Spanish)

* New translations strings.xml (French)

* New translations strings.xml (French)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Polish)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Czech)

* New translations strings.xml (Russian)

* New translations strings.xml (Italian)

* New translations strings.xml (German)

* New translations strings.xml (Czech)

* New translations strings.xml (French)

* New translations strings.xml (Swedish)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Italian)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Turkish)

* New translations strings.xml (Greek)

* New translations strings.xml (Slovenian)

* New translations strings.xml (Slovak)

* New translations strings.xml (Russian)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Dutch)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Korean)

* New translations strings.xml (Hebrew)

* New translations strings.xml (German)

* New translations strings.xml (Turkish)

* New translations strings.xml (Danish)

* New translations strings.xml (Czech)

* New translations strings.xml (Catalan)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Romanian)

* New translations strings.xml (Polish)

* New translations strings.xml (Swedish)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Croatian)

* New translations strings.xml (Croatian)

* New translations strings.xml (Dutch)
2021-02-22 22:23:20 +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 b56a3d8132 Merge remote-tracking branch 'upstream/dev' into dash 2021-02-20 18:48:06 +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
Milos Kozak b6788d210b Dana module test & lints 2021-02-19 10:29:35 +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
Milos Kozak d7ad8eeefc migrate rest of gradle module files 2021-02-18 23:35:23 +01:00
Bart Sopers 2a38578439 Add empty omnipod-common module 2021-02-18 23:31:31 +01:00
Bart Sopers 9d21338f10 Rename 2021-02-18 10:51:29 +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 e961a7990e Move Omnipod Dash dependencies to core 2021-02-17 19:34:01 +01:00
Bart Sopers 23450aee7e Add Omnipod Dash bolus command 2021-02-17 19:20:27 +01:00
Bart Sopers cfbd8aeea4 Remove print statement 2021-02-17 16:10:36 +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 1a866e970f Variable version in Omnipod Eros and Omnipod Dash build.gradle 2021-02-11 11:24:31 +01:00
Bart Sopers b2c56ba48e Update Omnipod Eros and Omnipod Dash build.gradle 2021-02-11 11:01:18 +01:00
Bart Sopers fa05163019 Add test for SilenceAlertsCommand 2021-02-11 00:10:14 +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