jh.chun
4a3e71774f
BLE TX power/RSSI 모니터 로직 분리
2026-07-20 12:27:12 +09:00
jh.chun
3f2c2e774b
BLE RX 단일 슬롯에서 8-depth 링버퍼로 변경
...
- 연결 직후 초기화 명령이 몰릴 때, 앞 명령 처리 중 도착한 명령이 drop: command busy로 버려지던 문제 해결- 큐가 가득 찰 때만 drop: queue full로 처리
2026-07-16 17:24:53 +09:00
jh.chun
ba64e2bb81
BLE TX Power 동적 제어 (기본 4 dBm / Boost 8 dBm / 복귀 4 dBm)
...
- 광고, 연결 모두 기본 4 dBm 강제 (컨트롤러 기본이 +8이므로 명시적으로 낮춤)
- 연결 RSSI 추적 활성화(CONFIG_BT_CTLR_CONN_RSSI) + RSSI 모니터 재활성화
2026-07-16 16:53:10 +09:00
jh.chun
bfe71b7e37
max tx power 정의 4 → 8
2026-07-15 18:08:46 +09:00
jh.chun
e07dc99256
max tx power 정의 4 → 8
2026-07-15 17:54:36 +09:00
jh.chun
58b5243729
BLE 연결 파라미터가 이미 목표값인 경우 재요청 생략
...
- 요청 전 bt_conn_get_info()로 현재 체결값 조회
- Connection Interval, Supervision Timeout, Slave latency
2026-07-15 16:01:49 +09:00
jh.chun
7cccee7cf2
IMU FIFO 샘플 대기 함수 추가
...
- 샘플 부족 방지 안전장치
2026-07-15 15:45:08 +09:00
jh.chun
4ed23a103c
코드/주석 정리
2026-07-15 12:06:42 +09:00
jh.chun
69c4e20f34
BLE 연결 파라미터 협상 복구
...
- 연결 5초 후 15 ms connection interval 요청
- Latency 0, supervision timeout 10 s 설정 요청
- 목표 파라미터 미적용 시 30초 간격으로 최대 3회 재요청
- Central이 최종 적용 여부 결정
- 요청 실패 또는 미적용 시에도 연결은 유지
* 연결 직후에는 pairing/security/초기 GATT 처리 때문에 요청이 무시되거나 늦게 반영될 수 있음
* 첫 요청 타이밍에 폰 상태가 안 좋아서 preferred 값이 안 먹을 수 있음
* 일정 시간 뒤 다시 요청하면 그때는 받아질 가능성이 있음
* 실패해도 연결을 끊지 않으므로 리스크가 크지 않음
2026-07-15 10:54:30 +09:00
jh.chun
ba6f0e452e
캡처 중 전원 버튼 허용
2026-07-15 10:46:09 +09:00
jh.chun
39e7895057
IMU FIFO 캡처 중 msp/mim 동시 접근 방지
...
- IMU FIFO 캡처 중인 경우 조용히 무시
2026-07-15 09:41:03 +09:00
jh.chun
36c8958e03
빌드 포함 전체 삭제 + APPROTECT 잠금 배치 파일 생성(양산용)
...
- 배치 내부에서 cmake --build로 merged.hex 갱신
- chiperase + program + verify 후 nrfjprog --rbp ALL로 SWD 디버그 포트 잠금
2026-07-14 17:41:43 +09:00
jh.chun
f478815cde
전체 삭제 + APPROTECT 잠금 플래시 스크립트 추가(양산용)
...
- chiperase + program + verify 후 nrfjprog --rbp ALL로 SWD 디버그 포트 잠금
- VS Code Run Task에 "Flash + Lock" 항목 추가(tasks.json)
- 해제: nrfjprog --recover
2026-07-14 17:38:14 +09:00
jh.chun
281aa36f32
DFU 진행 watchdog
...
- 앱만 멈추고 BLE 링크가 유지되는 경우 대비
- DFU 업로드 중 30초동안 CHUNK가 오지 않는 경우 강제 disconnect 후 SMP로 재광고(초록 LED 점멸, 10분 타임아웃)
- 초록 LED 무한 점등 상황 방지
2026-07-14 16:10:45 +09:00
jh.chun
7fb01e3968
DFU(SMP) 전환 시 10분 타임아웃 추가
...
- SMP UUID로 광고 시 일반 NUS 스캔이 불가능
- DFU가 시작되지 못한 채 방치되는 경우 대비
2026-07-14 14:44:15 +09:00
jh.chun
e39b0c1810
BLE 명령으로 본딩 정보 삭제 및 재부팅 시 본딩 정보 삭제 후 주황 LED ON 추가
...
- 전원 버튼 롱프레스를 통한 본딩 정보 삭제와 동일한 LED 상태
2026-07-14 14:40:14 +09:00
jh.chun
113ee0ee25
BLE 연결 해제 후 재광고 타임아웃
...
- 수동으로 연결을 해제한 경우 10분간 광고 후 연결되지 않는 경우 전원 OFF
- 비정상 연결 해제 시(거리가 멀어져서 연결이 끊어진 경우 등) 무제한 광고하며 재연결 대기
2026-07-14 14:21:02 +09:00
jh.chun
9a7bfcd9f3
전원 버튼 롱프레스 본드 삭제 및 재부팅
...
- 전원 꺼진 상태에서 15초 이상 전원 버튼 누르고 있는 경우 본드 삭제 및 재부팅
- 본드 삭제 완료 시 주황 LED ON
2026-07-14 11:39:24 +09:00
jh.chun
fee9c08378
Secure Boot 무결성 보장을 위해 flash patch 비활성화(서명된 flash 코드만 실행)
...
- flash patch: 코드 일부를 다른 코드로 우회해서 실행 가능한 기능
- 출고용 보안
2026-07-13 13:55:16 +09:00
jh.chun
f24bb7ef69
MCUboot DFU 서명 키를 기본키에서 프로젝트 개인키로 변경
2026-07-13 13:51:08 +09:00
jh.chun
8b31639477
전원 버튼 boot threshold 시간 변경
2026-07-10 16:14:48 +09:00
jh.chun
f470010069
정렬모드 탐지완료 시 초록색 LED 상시 점등
2026-07-09 18:51:42 +09:00
jh.chun
8c0a5d1f49
burst 주파수 옵션 추가: 1.8 MHz ~ 2.3 MHz
2026-07-09 12:17:36 +09:00
jh.chun
7cba63c143
dummy burst ADC capture 추가
2026-07-08 09:08:54 +09:00
jh.chun
38ec75ad78
Initial Commit
2026-07-06 12:06:24 +09:00
jh.chun
e55b283b39
Initial Commit
2026-07-06 11:14:35 +09:00
jh.chun
e6de6e8cc3
코드정리
2026-07-01 15:44:10 +09:00
jh.chun
9b1154b9f1
burst 간 gap 500us에서 650 us로 변경
...
- 데이터 안정화를 위함
2026-07-01 12:16:48 +09:00
jh.chun
828687b9ac
preserve flash / full erase flash
...
- preserve: bonding 정보 및 settings/NVS 유지, application만 다시 올리는 용도
2026-07-01 10:54:02 +09:00
jh.chun
822789ff82
주석 정리
2026-06-30 18:20:39 +09:00
jh.chun
a01c0fb01b
커맨드 구조 분리
2026-06-30 15:42:18 +09:00
jh.chun
9b042dfef2
piezo_measure 파일 분리
...
- parser.c: BLE 커맨드 파싱/측정 함수 호출/응담 패킷 생성 및 전송
- piezo.c: Piezo 관련 GPIO 제어
- piezo_measure.c: 실제 측정 시퀀스
2026-06-30 15:38:32 +09:00
jh.chun
3207caa3bf
배터리/온도 보호 판정 정책 추가 수정
2026-06-30 15:18:22 +09:00
jh.chun
d53c6cb287
Zephyr 로그 기본 출력 레벨 변경
...
- 3 → 2
- LOG_INF(), LOG_WRN(), LOG_ERR() 출력 / LOG_DBG() X
2026-06-29 16:51:58 +09:00
jh.chun
749e1d4e0e
배터리/온도 보호 판정 정책 변경
...
1. 정렬모드 - 판정하지 않음2. 연속 측정 모드 - 측정 응답에 포함되는 배터리/IMU 온도 값으로 저전압/고온 카운트 및 판정 - 배터리 3500mV 이하 또는 온도 40℃ 이상 30회 연속인 경우 약 5분 후 전원 OFF - FW 내부 60초 주기 모니터는 skip - 측정에 실패하는 경우 저전압/고온 카운트는 유지3. 정렬모드도 연속 측정 모드도 아닌 경우 - FW 내부 60초 주기 모니터로 저전압/고온 카운트 및 판정 - 배터리 3500mV 이하 또는 온도 40℃ 이상 5회 연속인 경우 약 5분 후 전원 OFF
2026-06-29 16:50:21 +09:00
jh.chun
ad38741b46
링크 스트레시 기반 TX power 동적 제어
...
- 확인 필요
2026-06-29 16:15:34 +09:00
jh.chun
1a78656c8f
코드 정리
2026-06-26 17:20:45 +09:00
jh.chun
6c7fa6d0e6
ADC 최대 샘플 수 118개로 수정
2026-06-26 17:19:56 +09:00
jh.chun
571df7df05
BLE connection disconnect(reason)에 따른 Advertising Timeout
...
- 비정상 연결 해제 시 무제한 광고
- 그 외 10분 광고 후 전원 OFF
2026-06-26 11:00:18 +09:00
jh.chun
147e975cbc
prj.conf 주석 정리
2026-06-25 18:09:15 +09:00
jh.chun
c247c54e79
reb: 패킷 ADC 데이터 샘플 수 80~117 정의 및 검증
2026-06-25 18:08:48 +09:00
jh.chun
42f745e39b
명령 오류 응답(rxs:, rxn:) 추가
2026-06-25 17:45:09 +09:00
jh.chun
dba33baf1c
msr? 명령 수신 시 본딩 즉시 삭제 후 재부팅
...
- 재부팅 로직 추가
2026-06-25 17:43:13 +09:00
jh.chun
c835513727
정렬모드(IMU FIFO) 중에는 배터리/온도 보호 체크 스킵
2026-06-25 17:03:41 +09:00
jh.chun
4c5e624830
전원 OFF 시 2초 후 종료
...
- LED도 2초간 점등 후 종료
2026-06-25 16:21:15 +09:00
jh.chun
f679050087
전원 버튼 누르는 시간 줄임
...
- 초기화(MCU 부팅 + main 초기화 + BLE init) 후 버튼 카운트 시작
2026-06-25 14:23:18 +09:00
jh.chun
dc630b5120
BLE 광고 이름을 실제 Serial Number 값으로 반영
2026-06-25 14:16:53 +09:00
jh.chun
244551ab25
최대 bond 개수 정의
...
- 기존 nRF5 SDK 프로젝트의 경우 bond 저장은 사실상 FDS 용량까지 여러개 가능
- 현재 Zephyr 프로젝트는 정의하지 않을 경우 1개
- 기존 프로젝트에 맞추기 위해 임의로 20개로 정의함
2026-06-25 14:15:54 +09:00
jh.chun
c4cc1205d6
BLE 연결 파라미터 기존과 동일하게 변경
2026-06-19 18:12:58 +09:00
jh.chun
f68b3296ee
Flash할 때 NVS 보존
2026-06-19 14:22:35 +09:00