121 lines
3.5 KiB
Plaintext
121 lines
3.5 KiB
Plaintext
# VesiScan BASIC - Zephyr configuration
|
|
# Stage 1: GPIO + Power Control + LED + Debug Logging
|
|
# Stage 2: BLE (NUS)
|
|
|
|
CONFIG_GPIO=y
|
|
|
|
# Logging via RTT
|
|
CONFIG_LOG=y
|
|
CONFIG_LOG_MODE_IMMEDIATE=y
|
|
CONFIG_LOG_DEFAULT_LEVEL=3
|
|
CONFIG_LOG_BACKEND_SHOW_COLOR=n
|
|
CONFIG_LOG_BACKEND_RTT=y
|
|
CONFIG_LOG_BACKEND_UART=n
|
|
CONFIG_USE_SEGGER_RTT=y
|
|
CONFIG_PRINTK=y
|
|
CONFIG_CONSOLE=y
|
|
CONFIG_RTT_CONSOLE=y
|
|
CONFIG_SERIAL=n
|
|
CONFIG_UART_CONSOLE=n
|
|
CONFIG_LOG_BACKEND_RTT_MODE_BLOCK=y
|
|
CONFIG_LOG_BACKEND_RTT_OUTPUT_BUFFER_SIZE=1024
|
|
|
|
# BLE stack
|
|
CONFIG_BT=y
|
|
CONFIG_BT_LOG_LEVEL_WRN=y
|
|
CONFIG_BT_PERIPHERAL=y
|
|
CONFIG_BT_DEVICE_NAME="VB0260300ZZ" # Zephyr 기본 BLE 이름
|
|
CONFIG_BT_DEVICE_NAME_DYNAMIC=y
|
|
CONFIG_BT_DEVICE_NAME_MAX=16
|
|
|
|
# BLE NUS (Nordic UART Service)
|
|
CONFIG_BT_NUS=y
|
|
|
|
# GATT / MTU
|
|
CONFIG_BT_GATT_CLIENT=y
|
|
CONFIG_BT_L2CAP_TX_MTU=247
|
|
CONFIG_BT_BUF_ACL_TX_SIZE=251
|
|
CONFIG_BT_BUF_ACL_RX_SIZE=251
|
|
|
|
# Connection parameters
|
|
CONFIG_BT_PERIPHERAL_PREF_MIN_INT=24
|
|
CONFIG_BT_PERIPHERAL_PREF_MAX_INT=24
|
|
CONFIG_BT_PERIPHERAL_PREF_LATENCY=0
|
|
CONFIG_BT_PERIPHERAL_PREF_TIMEOUT=400
|
|
|
|
# BLE security (production)
|
|
CONFIG_BT_SMP=y
|
|
CONFIG_BT_BONDABLE=y
|
|
CONFIG_BT_APP_PASSKEY=y
|
|
CONFIG_BT_SMP_ENFORCE_MITM=y
|
|
CONFIG_BT_SMP_SC_ONLY=y
|
|
CONFIG_BT_SETTINGS=y
|
|
|
|
# ADC (battery, temperature)
|
|
CONFIG_ADC=y
|
|
|
|
# I2C (IMU: ICM42670P)
|
|
CONFIG_I2C=y
|
|
|
|
# Direct nrfx SPIM3 driver for ADC121S051
|
|
CONFIG_NRFX_SPIM=y
|
|
|
|
# System
|
|
# 런타임 중 동적으로 확보해서 사용하는 메모리 크기
|
|
CONFIG_HEAP_MEM_POOL_SIZE=4096
|
|
# 백그라운드 작업 처리 스레드 작업 공간(workqueue) 크기
|
|
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048
|
|
|
|
# BLE RX stack sizes (prevent stack overflow on BT RX WQ)
|
|
CONFIG_BT_RX_STACK_SIZE=4096
|
|
|
|
# DFU
|
|
# 애플리케이션이 MCUboot 환경(부트로더)에서 동작(MCUboot: FW 교체 판단, 서명 검증)
|
|
CONFIG_BOOTLOADER_MCUBOOT=y
|
|
CONFIG_ZCBOR=y
|
|
# major.minor.revision+build 형식으로 버전 문자열 지정 (빌드 시스템에서 자동으로 버전 정보 채워 넣음)
|
|
CONFIG_MCUBOOT_IMGTOOL_SIGN_VERSION="0.0.2+0"
|
|
|
|
# 내부 Flash Meory 활성화
|
|
CONFIG_FLASH=y
|
|
CONFIG_FLASH_MAP=y
|
|
|
|
# Persistent application settings (FDS replacement)
|
|
CONFIG_NVS=y
|
|
CONFIG_SETTINGS=y
|
|
CONFIG_SETTINGS_NVS=y
|
|
CONFIG_SETTINGS_NVS_SECTOR_COUNT=2
|
|
CONFIG_PM_PARTITION_SIZE_SETTINGS_STORAGE=0x2000
|
|
|
|
# mcumgr 프레임워크 활성화
|
|
CONFIG_MCUMGR=y
|
|
# BLE를 통해 mcumgr 메시지 송수신
|
|
CONFIG_MCUMGR_TRANSPORT_BT=y
|
|
# BLE로 수신된 mcumgr 메시지에 대해 읽기/쓰기 권한 허용
|
|
CONFIG_MCUMGR=y
|
|
CONFIG_MCUMGR_TRANSPORT_BT=y
|
|
CONFIG_MCUMGR_TRANSPORT_BT_PERM_RW_AUTHEN=y
|
|
# BLE로 분할 수신된 SMP 패킷 재조립
|
|
CONFIG_MCUMGR_TRANSPORT_BT_REASSEMBLY=y
|
|
# DFU image chunk를 받을 mcumgr transport 버퍼 크기
|
|
CONFIG_MCUMGR_TRANSPORT_NETBUF_SIZE=1024
|
|
# CBOR data byte string 최대 길이
|
|
CONFIG_ZCBOR_MAX_STR_LEN=512
|
|
# DFU 진행 상태를 앱 콜백으로 받기
|
|
CONFIG_MCUMGR_MGMT_NOTIFICATION_HOOKS=y
|
|
CONFIG_MCUMGR_GRP_IMG_STATUS_HOOKS=y
|
|
CONFIG_MCUMGR_SMP_COMMAND_STATUS_HOOKS=y
|
|
# mcumgr 이미지 관리 그룹 활성화 (이미지 업로드, 테스트, 확인, 슬롯 상태 조회)
|
|
CONFIG_MCUMGR_GRP_IMG=y
|
|
# mcumgr OS 관리 그룹 활성화 (시스템 정보 조회, 재부팅 등 OS 관련 명령 지원)
|
|
CONFIG_MCUMGR_GRP_OS=y
|
|
|
|
# MCUboot 이미지 관리 활성화 (이미지 검증, 교체, 롤백 등)
|
|
CONFIG_IMG_MANAGER=y
|
|
# 플래시 메모리를 스트림으로 접근하여 이미지 업로드/교체 처리
|
|
CONFIG_STREAM_FLASH=y
|
|
|
|
# Netcore HCI IPC (BLE 통신을 위한 인터페이스) : 2 cores 간 IPC 활성화
|
|
#CONFIG_SB_CONFIG_NETCORE_HCI_IPC=y
|
|
#SB_CONFIG_NETCORE_HCI_IPC=y
|