- Fixed bugs for pump firmware 3.0
- Changing basal limit values for each pump firmware version. - Pump log DB processing modification.
This commit is contained in:
parent
7ad425ae1d
commit
7b4b9fd0dc
|
@ -21,7 +21,6 @@ class DiaconnG8Pump @Inject constructor(
|
||||||
private val dateUtil: DateUtil
|
private val dateUtil: DateUtil
|
||||||
) {
|
) {
|
||||||
|
|
||||||
|
|
||||||
var maxBolusePerDay: Double = 0.0
|
var maxBolusePerDay: Double = 0.0
|
||||||
var pumpIncarnationNum: Int = 65536
|
var pumpIncarnationNum: Int = 65536
|
||||||
var isPumpVersionGe2_63: Boolean = false // is pumpVersion higher then 2.63
|
var isPumpVersionGe2_63: Boolean = false // is pumpVersion higher then 2.63
|
||||||
|
@ -37,6 +36,7 @@ class DiaconnG8Pump @Inject constructor(
|
||||||
var injectionBlockGrade: Int = 0
|
var injectionBlockGrade: Int = 0
|
||||||
var lastConnection: Long = 0
|
var lastConnection: Long = 0
|
||||||
var lastSettingsRead: Long = 0
|
var lastSettingsRead: Long = 0
|
||||||
|
var mealLimitTime: Int = 0
|
||||||
|
|
||||||
// time
|
// time
|
||||||
private var pumpTime: Long = 0
|
private var pumpTime: Long = 0
|
||||||
|
|
|
@ -2,7 +2,12 @@ package info.nightscout.androidaps.diaconn.packet
|
||||||
|
|
||||||
import dagger.android.HasAndroidInjector
|
import dagger.android.HasAndroidInjector
|
||||||
import info.nightscout.androidaps.diaconn.DiaconnG8Pump
|
import info.nightscout.androidaps.diaconn.DiaconnG8Pump
|
||||||
|
import info.nightscout.androidaps.diaconn.R
|
||||||
|
import info.nightscout.androidaps.diaconn.pumplog.PumplogUtil
|
||||||
import info.nightscout.androidaps.logging.LTag
|
import info.nightscout.androidaps.logging.LTag
|
||||||
|
import info.nightscout.androidaps.utils.StringUtils
|
||||||
|
import info.nightscout.androidaps.utils.resources.ResourceHelper
|
||||||
|
import info.nightscout.androidaps.utils.sharedPreferences.SP
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -11,6 +16,8 @@ import javax.inject.Inject
|
||||||
class BasalLimitInquireResponsePacket(injector: HasAndroidInjector) : DiaconnG8Packet(injector ) {
|
class BasalLimitInquireResponsePacket(injector: HasAndroidInjector) : DiaconnG8Packet(injector ) {
|
||||||
|
|
||||||
@Inject lateinit var diaconnG8Pump: DiaconnG8Pump
|
@Inject lateinit var diaconnG8Pump: DiaconnG8Pump
|
||||||
|
@Inject lateinit var sp: SP
|
||||||
|
@Inject lateinit var rh: ResourceHelper
|
||||||
|
|
||||||
init {
|
init {
|
||||||
msgType = 0x92.toByte()
|
msgType = 0x92.toByte()
|
||||||
|
@ -32,7 +39,12 @@ class BasalLimitInquireResponsePacket(injector: HasAndroidInjector) : DiaconnG8P
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
diaconnG8Pump.maxBasalPerHours = getShortToInt(bufferData).toDouble() / 100.0 // not include tempbasal limit
|
diaconnG8Pump.maxBasalPerHours = getShortToInt(bufferData).toDouble() / 100.0 // not include tempbasal limit
|
||||||
diaconnG8Pump.maxBasal = diaconnG8Pump.maxBasalPerHours * 2 // include tempbasal
|
val pumpFirmwareVersion = sp.getString(rh.gs(R.string.pumpversion), "")
|
||||||
|
if(!StringUtils.emptyString(pumpFirmwareVersion) && PumplogUtil.isPumpVersionGe(pumpFirmwareVersion, 3, 0)) {
|
||||||
|
diaconnG8Pump.maxBasal = diaconnG8Pump.maxBasalPerHours * 2.5 // include tempbasal
|
||||||
|
} else {
|
||||||
|
diaconnG8Pump.maxBasal = diaconnG8Pump.maxBasalPerHours * 2.0 // include tempbasal
|
||||||
|
}
|
||||||
|
|
||||||
aapsLogger.debug(LTag.PUMPCOMM, "Result --> ${diaconnG8Pump.result}")
|
aapsLogger.debug(LTag.PUMPCOMM, "Result --> ${diaconnG8Pump.result}")
|
||||||
aapsLogger.debug(LTag.PUMPCOMM, "maxBasal --> ${diaconnG8Pump.maxBasal}")
|
aapsLogger.debug(LTag.PUMPCOMM, "maxBasal --> ${diaconnG8Pump.maxBasal}")
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package info.nightscout.androidaps.diaconn.packet
|
package info.nightscout.androidaps.diaconn.packet
|
||||||
|
|
||||||
|
import android.util.Log
|
||||||
import dagger.android.HasAndroidInjector
|
import dagger.android.HasAndroidInjector
|
||||||
import info.nightscout.androidaps.diaconn.DiaconnG8Pump
|
import info.nightscout.androidaps.diaconn.DiaconnG8Pump
|
||||||
import info.nightscout.androidaps.diaconn.R
|
import info.nightscout.androidaps.diaconn.R
|
||||||
|
@ -167,9 +168,10 @@ class BigAPSMainInfoInquireResponsePacket(
|
||||||
|
|
||||||
// 16. 1hour basal limit
|
// 16. 1hour basal limit
|
||||||
diaconnG8Pump.maxBasalPerHours = getShortToInt(bufferData).toDouble() / 100.0 // not include tempbasal limit
|
diaconnG8Pump.maxBasalPerHours = getShortToInt(bufferData).toDouble() / 100.0 // not include tempbasal limit
|
||||||
diaconnG8Pump.maxBasal = diaconnG8Pump.maxBasalPerHours * 2 // include tempbasal
|
diaconnG8Pump.maxBasal = diaconnG8Pump.maxBasalPerHours * 2.5 // include tempbasal
|
||||||
|
|
||||||
// 17. snack limit
|
// 17. snack limit
|
||||||
|
diaconnG8Pump.mealLimitTime = getByteToInt(bufferData) // mealLimittime
|
||||||
diaconnG8Pump.maxBolus = getShortToInt(bufferData).toDouble() / 100
|
diaconnG8Pump.maxBolus = getShortToInt(bufferData).toDouble() / 100
|
||||||
diaconnG8Pump.maxBolusePerDay = getShortToInt(bufferData).toDouble() / 100
|
diaconnG8Pump.maxBolusePerDay = getShortToInt(bufferData).toDouble() / 100
|
||||||
|
|
||||||
|
@ -323,6 +325,7 @@ class BigAPSMainInfoInquireResponsePacket(
|
||||||
aapsLogger.debug(LTag.PUMPCOMM, "maxBasal > " + diaconnG8Pump.maxBasal)
|
aapsLogger.debug(LTag.PUMPCOMM, "maxBasal > " + diaconnG8Pump.maxBasal)
|
||||||
aapsLogger.debug(LTag.PUMPCOMM, "maxBolus > " + diaconnG8Pump.maxBolus)
|
aapsLogger.debug(LTag.PUMPCOMM, "maxBolus > " + diaconnG8Pump.maxBolus)
|
||||||
aapsLogger.debug(LTag.PUMPCOMM, "maxBolusePerDay > " + diaconnG8Pump.maxBolusePerDay)
|
aapsLogger.debug(LTag.PUMPCOMM, "maxBolusePerDay > " + diaconnG8Pump.maxBolusePerDay)
|
||||||
|
aapsLogger.debug(LTag.PUMPCOMM, "mealLimitTime > " + diaconnG8Pump.mealLimitTime)
|
||||||
aapsLogger.debug(LTag.PUMPCOMM, "beepAndAlarm > " + diaconnG8Pump.beepAndAlarm)
|
aapsLogger.debug(LTag.PUMPCOMM, "beepAndAlarm > " + diaconnG8Pump.beepAndAlarm)
|
||||||
aapsLogger.debug(LTag.PUMPCOMM, "alarmIntesity > " + diaconnG8Pump.alarmIntesity)
|
aapsLogger.debug(LTag.PUMPCOMM, "alarmIntesity > " + diaconnG8Pump.alarmIntesity)
|
||||||
aapsLogger.debug(LTag.PUMPCOMM, "lcdOnTimeSec > " + diaconnG8Pump.lcdOnTimeSec)
|
aapsLogger.debug(LTag.PUMPCOMM, "lcdOnTimeSec > " + diaconnG8Pump.lcdOnTimeSec)
|
||||||
|
|
|
@ -246,8 +246,8 @@ class DiaconnG8Service : DaggerService() {
|
||||||
val apsIncarnationNum = sp.getInt(rh.gs(R.string.apsIncarnationNo), 65536)
|
val apsIncarnationNum = sp.getInt(rh.gs(R.string.apsIncarnationNo), 65536)
|
||||||
// aps last log num
|
// aps last log num
|
||||||
val pumpSerialNo = sp.getInt(rh.gs(R.string.pumpserialno), 0)
|
val pumpSerialNo = sp.getInt(rh.gs(R.string.pumpserialno), 0)
|
||||||
val apsWrappingCount = sp.getInt(rh.gs(R.string.apsWrappingCount), 0)
|
var apsWrappingCount = sp.getInt(rh.gs(R.string.apsWrappingCount), 0)
|
||||||
val apsLastLogNum = sp.getInt(rh.gs(R.string.apslastLogNum), 0)
|
var apsLastLogNum = sp.getInt(rh.gs(R.string.apslastLogNum), 0)
|
||||||
|
|
||||||
// if first install app
|
// if first install app
|
||||||
if(apsWrappingCount == 0 && apsLastLogNum == 0 ) {
|
if(apsWrappingCount == 0 && apsLastLogNum == 0 ) {
|
||||||
|
@ -266,6 +266,9 @@ class DiaconnG8Service : DaggerService() {
|
||||||
sp.putInt(rh.gs(R.string.pumpserialno), diaconnG8Pump.serialNo)
|
sp.putInt(rh.gs(R.string.pumpserialno), diaconnG8Pump.serialNo)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
apsWrappingCount = sp.getInt(rh.gs(R.string.apsWrappingCount), 0)
|
||||||
|
apsLastLogNum = sp.getInt(rh.gs(R.string.apslastLogNum), 0)
|
||||||
|
|
||||||
val apsLastNum = apsWrappingCount * 10000 + apsLastLogNum
|
val apsLastNum = apsWrappingCount * 10000 + apsLastLogNum
|
||||||
if((pumpWrappingCount * 10000 + pumpLastNum) < apsLastLogNum ) {
|
if((pumpWrappingCount * 10000 + pumpLastNum) < apsLastLogNum ) {
|
||||||
pumpLogDefaultSetting()
|
pumpLogDefaultSetting()
|
||||||
|
|
Loading…
Reference in a new issue