diff --git a/source/ble_config.cpp b/source/ble_config.cpp index 5829f34..abcf1db 100644 --- a/source/ble_config.cpp +++ b/source/ble_config.cpp @@ -26,14 +26,13 @@ BLECharacteristic cfgGitHash (0x1239); // GitHash R 8 bytes (7-char ha #endif #endif -// Charge mode +// Charge mode void applyChargeMode(ChargeMode mode) { switch (mode) { - case CHARGE_OFF: pinMode(PIN_HICHG, INPUT_PULLUP); break; - case CHARGE_SLOW: pinMode(PIN_HICHG, OUTPUT); digitalWrite(PIN_HICHG, HIGH); break; - case CHARGE_FAST: pinMode(PIN_HICHG, OUTPUT); digitalWrite(PIN_HICHG, LOW); break; + case CHARGE_SLOW: pinMode(PIN_HICHG, INPUT); break; + case CHARGE_FAST: pinMode(PIN_HICHG, OUTPUT); digitalWrite(PIN_HICHG, LOW); break; } - const char* n[] = {"OFF (~0mA)", "SLOW (50mA)", "FAST (100mA)"}; + const char* n[] = {"SLOW (50mA)", "FAST (100mA)"}; Serial.print("[CHG] "); Serial.println(n[mode]); } @@ -113,7 +112,7 @@ void onConfigBlobWrite(uint16_t h, BLECharacteristic* c, uint8_t* d, uint16_t l) cfg.accelStrength = b->accelStrength; if (b->curve <= 2) cfg.curve = (CurveType)b->curve; cfg.axisFlip = b->axisFlip; - if (b->chargeMode <= 2) { cfg.chargeMode = (ChargeMode)b->chargeMode; applyChargeMode(cfg.chargeMode); } + if (b->chargeMode <= 1) { cfg.chargeMode = (ChargeMode)b->chargeMode; applyChargeMode(cfg.chargeMode); } #ifdef FEATURE_TAP_DETECTION if (b->tapThreshold >= 1 && b->tapThreshold <= 31) { cfg.tapThreshold = b->tapThreshold; diff --git a/source/config.h b/source/config.h index 7a2ca83..b0999fa 100644 --- a/source/config.h +++ b/source/config.h @@ -54,7 +54,7 @@ // Persistence #define CONFIG_FILENAME "/imu_mouse_cfg.bin" -#define CONFIG_MAGIC 0xDEAD123DUL +#define CONFIG_MAGIC 0xDEAD123EUL // Physical button sentinel #define BTN_PIN_NONE 0xFF // Stored in btn*Pin when that button is disabled @@ -69,7 +69,7 @@ // Enums enum CurveType : uint8_t { CURVE_LINEAR=0, CURVE_SQUARE=1, CURVE_SQRT=2 }; -enum ChargeMode : uint8_t { CHARGE_OFF=0, CHARGE_SLOW=1, CHARGE_FAST=2 }; +enum ChargeMode : uint8_t { CHARGE_SLOW=0, CHARGE_FAST=1 }; enum ChargeStatus: uint8_t { CHGSTAT_DISCHARGING=0, CHGSTAT_CHARGING=1, CHGSTAT_FULL=2 }; // Tap action types diff --git a/web/app.js b/web/app.js index d376e2e..e6d056e 100644 --- a/web/app.js +++ b/web/app.js @@ -16,7 +16,7 @@ const FLAG_AUTO_RECAL_ENABLED = 0x04; const FLAG_ALL_DEFAULT = FLAG_TAP_ENABLED | FLAG_TEMP_COMP_ENABLED | FLAG_AUTO_RECAL_ENABLED; // Local shadow of the current config (kept in sync with device) -const config = { sensitivity:600, deadZone:0.06, accelStrength:0.08, curve:0, axisFlip:0, chargeMode:1, +const config = { sensitivity:600, deadZone:0.06, accelStrength:0.08, curve:0, axisFlip:0, chargeMode:0, tapThreshold:12, tapAction:0, tapKey:0, tapMod:0, tapFreezeEnabled:1, jerkThreshold:2000, featureFlags:FLAG_ALL_DEFAULT, btnLeftPin:0xFF, btnRightPin:0xFF, btnMiddlePin:0xFF }; @@ -210,7 +210,7 @@ async function checkHashMatch() { // ConfigBlob read / write // ConfigBlob layout (25 bytes LE): // float sensitivity [0], float deadZone [4], float accelStrength [8] -// uint8 curve [12], uint8 axisFlip [13], uint8 chargeMode [14] +// uint8 curve [12], uint8 axisFlip [13], uint8 chargeMode [14] (0=SLOW 1=FAST) // uint8 tapThreshold [15], uint8 tapAction [16], uint8 tapKey [17], uint8 tapMod [18], uint8 tapFreezeEnabled [19] // float jerkThreshold [20], uint8 featureFlags [24] @@ -384,15 +384,15 @@ function setChargeMode(val) { config.chargeMode = val; setChargeModeUI(val); writeConfigBlob(); - log(`Charge → ${['OFF','SLOW 50mA','FAST 100mA'][val]}`,'warn'); + log(`Charge → ${['SLOW 50mA','FAST 100mA'][val]}`,'warn'); } function setChargeModeUI(val) { - [['chgOff','off'],['chgSlow','slow'],['chgFast','fast']].forEach(([id,cls],i) => { + [['chgSlow','slow'],['chgFast','fast']].forEach(([id,cls],i) => { const b = document.getElementById(id); - b.classList.remove('active','off','slow','fast'); + b.classList.remove('active','slow','fast'); if (i===val) b.classList.add('active', cls); }); - document.getElementById('ciMode').textContent = ['Off (0mA)','50 mA','100 mA'][val] ?? '--'; + document.getElementById('ciMode').textContent = ['50 mA','100 mA'][val] ?? '--'; } function onCapTapChange(enabled) { diff --git a/web/index.html b/web/index.html index 9d781db..3ba723d 100644 --- a/web/index.html +++ b/web/index.html @@ -86,9 +86,8 @@