From 3d305b6270070e9d4646ff26ad6ccf881f408017 Mon Sep 17 00:00:00 2001 From: jhchun Date: Mon, 3 Aug 2026 13:51:09 +0900 Subject: [PATCH] =?UTF-8?q?=EC=A0=84=EC=9B=90=20ON=20=ED=9B=84=20=EC=B4=88?= =?UTF-8?q?=EB=A1=9D=20LED=202=EC=B4=88=EA=B0=84=20=EC=A0=90=EB=93=B1=20?= =?UTF-8?q?=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/power/power_control.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/power/power_control.c b/src/power/power_control.c index 8ba0684..7733587 100644 --- a/src/power/power_control.c +++ b/src/power/power_control.c @@ -33,6 +33,7 @@ static struct k_timer m_power_off_delay_timer; // 전원 OFF 지연 타 static struct k_timer m_power_timer; // 전원 시퀀스 반복 타이머 static struct k_work adv_start_work; // advertising 시작 work +static struct k_work_delayable power_on_complete_work; // power on LED done -> advertising start work static struct k_work adv_stop_work; // advertising 중지 work static struct k_work bond_reset_work; // 전원 버튼 15초 롱프레스 본드 삭제 work @@ -52,7 +53,16 @@ static void adv_start_work_handler(struct k_work *work) ble_advertising_start(); } -/* 시스템 워크에서 BLE advertising 중지 */ +/* Power ON LED done -> BLE advertising start */ +static void power_on_complete_work_handler(struct k_work *work) +{ + ARG_UNUSED(work); + led_set_state(LED_STATE_ADVERTISING); + k_work_submit(&adv_start_work); + battery_timer_start(); + m_reset_status = 1; +} +/* BLE advertising stop */ static void adv_stop_work_handler(struct k_work *work) { ARG_UNUSED(work); @@ -355,6 +365,7 @@ void power_control_init(void) k_timer_init(&m_power_on_delay_timer, main_s, NULL); k_timer_init(&m_power_off_delay_timer, t_power_off_timeout_handler, NULL); k_work_init(&adv_start_work, adv_start_work_handler); + k_work_init_delayable(&power_on_complete_work, power_on_complete_work_handler); k_work_init(&adv_stop_work, adv_stop_work_handler); k_work_init(&bond_reset_work, bond_reset_work_handler); power_timer_init();