diff --git a/omnipod-dash/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/dash/driver/OmnipodDashManagerImpl.kt b/omnipod-dash/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/dash/driver/OmnipodDashManagerImpl.kt index 768613ce4e..2e3e5f62d6 100644 --- a/omnipod-dash/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/dash/driver/OmnipodDashManagerImpl.kt +++ b/omnipod-dash/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/dash/driver/OmnipodDashManagerImpl.kt @@ -49,7 +49,8 @@ class OmnipodDashManagerImpl @Inject constructor( private val observeConnectToPod: Observable get() = Observable.defer { - bleManager.connect().retryWithBackoff(retries = 2, delay = 3, timeUnit = TimeUnit.SECONDS) + bleManager.connect() + } // TODO are these reasonable values? private fun observeSendProgramBolusCommand( diff --git a/omnipod-dash/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/dash/driver/comm/endecrypt/CryptSequence.kt b/omnipod-dash/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/dash/driver/comm/endecrypt/CryptSequence.kt new file mode 100644 index 0000000000..edfc259215 --- /dev/null +++ b/omnipod-dash/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/dash/driver/comm/endecrypt/CryptSequence.kt @@ -0,0 +1,28 @@ +package info.nightscout.androidaps.plugins.pump.omnipod.dash.driver.comm.session + +import java.nio.ByteBuffer + +class CryptSequence(var sqn: Long) { + + fun incrementForEapAka():ByteArray { + sqn++ + return ByteBuffer.allocate(8) + .putLong(sqn) + .array() + .copyOfRange(2, 8) + } + + fun incrementForEnDecrypt(podReceiving: Boolean):ByteArray{ + sqn++ + val ret = ByteBuffer.allocate(8) + .putLong(sqn) + .array() + .copyOfRange(3, 8) + if (podReceiving) { + ret[0] = (ret[0].toInt() and 127).toByte() + } else { + ret[0] = (ret[0].toInt() or 128).toByte() + } + return ret + } +} \ No newline at end of file diff --git a/omnipod-dash/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/dash/driver/comm/session/EapSqn.kt b/omnipod-dash/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/dash/driver/comm/session/EapSqn.kt new file mode 100644 index 0000000000..1861167a50 --- /dev/null +++ b/omnipod-dash/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/dash/driver/comm/session/EapSqn.kt @@ -0,0 +1,4 @@ +package info.nightscout.androidaps.plugins.pump.omnipod.dash.driver.comm.session + +class EapSqn { +} \ No newline at end of file