diff --git a/prj.conf b/prj.conf index bd0fc6e..e93626c 100644 --- a/prj.conf +++ b/prj.conf @@ -70,11 +70,11 @@ CONFIG_BT_BUF_ACL_TX_SIZE=251 CONFIG_BT_BUF_ACL_RX_SIZE=251 # Connection parameters -# Preferred minimum connection interval: 12 x 1.25ms = 15ms. -CONFIG_BT_PERIPHERAL_PREF_MIN_INT=12 -# Preferred maximum connection interval: 12 x 1.25ms = 15ms. -CONFIG_BT_PERIPHERAL_PREF_MAX_INT=12 -# Slave latency 0: do not skip connection events. +# Preferred minimum connection interval: 24 x 1.25ms = 30ms +CONFIG_BT_PERIPHERAL_PREF_MIN_INT=24 +# Preferred maximum connection interval: 48 x 1.25ms = 60ms +CONFIG_BT_PERIPHERAL_PREF_MAX_INT=48 +# Slave latency 0: do not skip connection events CONFIG_BT_PERIPHERAL_PREF_LATENCY=0 # Supervision timeout: 1000 x 10ms = 10s. CONFIG_BT_PERIPHERAL_PREF_TIMEOUT=1000 diff --git a/src/ble/ble_service.c b/src/ble/ble_service.c index b5cec68..e6b54c9 100644 --- a/src/ble/ble_service.c +++ b/src/ble/ble_service.c @@ -661,7 +661,7 @@ static void le_param_updated(struct bt_conn *conn, uint16_t interval, uint16_t l { ARG_UNUSED(conn); - DBG_PRINTF("[BLE] Params: interval=%u(%u.%01ums) latency=%u timeout=%u(%ums)\r\n", + DBG_PRINTF("[BLE] Conn param updated: interval=%u(%u.%01ums) latency=%u timeout=%u(%ums)\r\n", interval, (interval * 125U) / 100U, ((interval * 125U) % 100U) / 10U, diff --git a/src/ble/ble_service.h b/src/ble/ble_service.h index 16ec9b4..168a199 100644 --- a/src/ble/ble_service.h +++ b/src/ble/ble_service.h @@ -14,8 +14,8 @@ #define APP_ADV_INTERVAL 64 // 64 x 0.625ms = 40ms #define APP_ADV_DURATION 60000 // 60000 x 10ms = 600s (10 min) -#define BLE_MIN_CONN_INTERVAL 12 // 15ms / 1.25ms = 12 -#define BLE_MAX_CONN_INTERVAL 24 // 24ms / 1.25ms = 24 +#define BLE_MIN_CONN_INTERVAL 24 // 30ms / 1.25ms = 24 +#define BLE_MAX_CONN_INTERVAL 48 // 60ms / 1.25ms = 48 #define BLE_SLAVE_LATENCY 0 #define BLE_CONN_SUP_TIMEOUT 1000 // 10000ms / 10ms = 1000 diff --git a/src/ble/ble_tx_power.c b/src/ble/ble_tx_power.c index 09e9c3f..20229ff 100644 --- a/src/ble/ble_tx_power.c +++ b/src/ble/ble_tx_power.c @@ -18,9 +18,9 @@ #define BLE_RSSI_STRESS_DBM (-80) #define BLE_RSSI_STRESS_COUNT 3 #define BLE_RSSI_MONITOR_INTERVAL_MS 2000 -#define BLE_TX_SLOW_MS 50 -#define BLE_TX_CRITICAL_MS 100 -#define BLE_TX_STUCK_MS 200 +#define BLE_TX_SLOW_MS 100 +#define BLE_TX_CRITICAL_MS 200 +#define BLE_TX_STUCK_MS 500 #define BLE_TX_SLOW_COUNT 3 #define BLE_TX_BUSY_STRESS_RETRY 4 #define BLE_TX_RECOVER_HOLD_MS 10000 diff --git a/src/main.h b/src/main.h index 0f50d2e..df4c81b 100644 --- a/src/main.h +++ b/src/main.h @@ -18,7 +18,7 @@ #define HARDWARE_VERSION "VB0HW0000" #define SERIAL_NUMBER "VBT2608000Z" #define DEFAULT_PASSKEY "123456" -#define FIRMWARE_VERSION "VBTFW0204" +#define FIRMWARE_VERSION "VBTFW0205" /* * Firmware Version History @@ -28,6 +28,7 @@ * 2026-08-05 | VBTFW0202 | 2.0.2+0 | Added production command(mpd?) * 2026-08-25 | VBTFW0203 | 2.0.3+0 | Fixed piezo power on/off timing, piezo sweep timing, and BLE settings * 2026-08-28 | VBTFW0204 | 2.0.4+0 | Align IMU direct read(mbb?) FSR with FIFO scale + * 2026-08-28 | VBTFW0205 | 2.0.5+0 | Fixed BLE connection interval(15~30ms -> 30~60ms) for battery life improvement */ /*==============================================================================