diff --git a/project/ble_peripheral/ble_app_bladder_patch/fstorage.c b/project/ble_peripheral/ble_app_bladder_patch/fstorage.c index 0441b1d..b8d3786 100644 --- a/project/ble_peripheral/ble_app_bladder_patch/fstorage.c +++ b/project/ble_peripheral/ble_app_bladder_patch/fstorage.c @@ -94,8 +94,8 @@ static fds_record_t const m_dummy_record = /* 기본 설정값 상수 */ -int8_t reset_status_dflt = 99; /* 리셋 상태 기본값 */ -uint8_t static_passkey_dflt[6] = "123456"; /* BLE 패스키 기본값 */ +int8_t reset_status_dflt = 99; /* 리셋 상태 기본값 */ +uint8_t static_passkey_dflt[6] = DEFAULT_PASSKEY; /* BLE 패스키 기본값 */ /** * @brief 기본 설정값 초기화 @@ -105,12 +105,13 @@ uint8_t static_passkey_dflt[6] = "123456"; /* BLE 패스키 기본값 */ */ void fds_default_value_set(void) { - /* HW Number - empty (set via BLE command) */ + /* HW Number - default from HARDWARE_VERSION */ memset(m_config.hw_no, 0, 12); + memcpy(m_config.hw_no, HARDWARE_VERSION, strlen(HARDWARE_VERSION)); /* Serial Number - default from FIRMWARE_SERIAL_NO */ memset(m_config.serial_no, 0, 12); - memcpy(m_config.serial_no, "VB026030000", 11); + memcpy(m_config.serial_no, FIRMWARE_SERIAL_NO, strlen(FIRMWARE_SERIAL_NO)); /* Static Passkey */ memcpy(m_config.static_passkey, static_passkey_dflt, 6); diff --git a/project/ble_peripheral/ble_app_bladder_patch/fstorage.h b/project/ble_peripheral/ble_app_bladder_patch/fstorage.h index 9a731db..fe70c5b 100644 --- a/project/ble_peripheral/ble_app_bladder_patch/fstorage.h +++ b/project/ble_peripheral/ble_app_bladder_patch/fstorage.h @@ -36,6 +36,26 @@ #include "nordic_common.h" #include +/* ------------------------------------------------------------------------- +* 기본 버전 정보 (FDS 초기값 및 빈 필드 복구 시 사용) +* +* 하드웨어 식별 코드 +* - VBTHW0100 = 개발(시험)용 Ver 1.00 +* - VB0HW0100 = 양산용 Ver 1.00 +* +* Firmware 식별 코드 +* - VBTFW0100 = 개발(시험)용 Ver 1.00 +* - VB0FW0100 = 양산용 Ver 1.00 +* +* 시리얼 넘버 식별 코드 +* - VBT26030001 = 개발(시험)용 26년 3월 생산 1번 +* - VB026030001 = 양산용 26년 3월 생산 1번 +------------------------------------------------------------------------- */ +#define HARDWARE_VERSION "VBTHW0100" +#define FIRMWARE_VERSION "VBTFW0100" +#define FIRMWARE_SERIAL_NO "VBT26030001" +#define DEFAULT_PASSKEY "123456" + #pragma pack(1) typedef struct { diff --git a/project/ble_peripheral/ble_app_bladder_patch/main.c b/project/ble_peripheral/ble_app_bladder_patch/main.c index 39f3669..5a7b6eb 100644 --- a/project/ble_peripheral/ble_app_bladder_patch/main.c +++ b/project/ble_peripheral/ble_app_bladder_patch/main.c @@ -116,10 +116,6 @@ #include "dr_piezo.h" /* 피에조 초음파 드라이버 */ -#define HARDWARE_VERSION "VB0HW0000" -#define FIRMWARE_VERSION "VB0FW0000" -#define FIRMWARE_SERIAL_NO "VB026030000" - /*============================================================================== * 빌드 설정 @@ -270,14 +266,14 @@ static uint8_t s_tx_pending_buf[BLE_NUS_MAX_DATA_LEN]; /* 대기 static uint16_t s_tx_pending_len = 0; /* 대기 중인 패킷 길이 */ -char m_static_passkey[PASSKEY_LENGTH] = "123456"; /* 정적 패스키 (6자리, FDS에서 로드) */ -char SERIAL_NO[SERIAL_NO_LENGTH]; /* 시리얼 번호 (BLE 디바이스 이름으로 사용) */ -char HW_NO[HW_NO_LENGTH]; /* 하드웨어 번호 (FDS 저장/읽기) */ -bool bond_data_delete; /* 본딩 데이터 삭제 요청 플래그 */ -uint32_t m_life_cycle; /* 디바이스 수명 사이클 카운터 */ -uint8_t resetCount = 0; /* 통신 타임아웃 카운터 (리셋 감지용) */ -bool info4; /* 센서 측정 정보(배터리/IMU/온도) 포함 측정 플래그 */ -uint8_t m_reset_status; /* 리셋 상태 코드 (1=정상, 2=SW리셋, 5=보안리셋, 10=본딩완료) */ +char m_static_passkey[PASSKEY_LENGTH] = DEFAULT_PASSKEY; /* 정적 패스키 (6자리, FDS에서 로드) */ +char SERIAL_NO[SERIAL_NO_LENGTH]; /* 시리얼 번호 (BLE 디바이스 이름으로 사용) */ +char HW_NO[HW_NO_LENGTH]; /* 하드웨어 번호 (FDS 저장/읽기) */ +bool bond_data_delete; /* 본딩 데이터 삭제 요청 플래그 */ +uint32_t m_life_cycle; /* 디바이스 수명 사이클 카운터 */ +uint8_t resetCount = 0; /* 통신 타임아웃 카운터 (리셋 감지용) */ +bool info4; /* 센서 측정 정보(배터리/IMU/온도) 포함 측정 플래그 */ +uint8_t m_reset_status; /* 리셋 상태 코드 (1=정상, 2=SW리셋, 5=보안리셋, 10=본딩완료) */ /*============================================================================== * 미사용 변수 경고 억제