From 75f39aa1385f6ffd1f82fc7da0070a18eef7344b Mon Sep 17 00:00:00 2001 From: YunHorn Technology Date: Thu, 26 Jun 2025 16:42:01 +0800 Subject: [PATCH] new try to eliminate blue lamp bar overstay --- Core/Inc/sts_lamp_bar.h | 21 +++++-- Core/Src/sys_app.c | 2 +- LoRaWAN/App/lora_app.c | 6 +- STM32CubeIDE/.settings/language.settings.xml | 4 +- STM32CubeIDE/Release/WLE5CC_NODE_STS.bin | Bin 183956 -> 191728 bytes STM32CubeIDE/Release/WLE5CC_NODE_STS.elf | Bin 267480 -> 276352 bytes STS/Core/Inc/yunhorn_sts_prd_conf.h | 4 +- STS/Core/Inc/yunhorn_sts_sensors.h | 5 +- STS/Core/Src/yunhorn_sts_process.c | 63 +++++++++++++++---- STS/TOF/App/app_tof.c | 10 ++- 10 files changed, 89 insertions(+), 26 deletions(-) diff --git a/Core/Inc/sts_lamp_bar.h b/Core/Inc/sts_lamp_bar.h index 848d190..1b1d990 100644 --- a/Core/Inc/sts_lamp_bar.h +++ b/Core/Inc/sts_lamp_bar.h @@ -88,19 +88,28 @@ enum sts_lamp_color { #define STS_SOS_COLOR STS_RED_BLUE #define STS_FALL_NORMAL_COLOR STS_GREEN -#define STS_FALL_SUSPICIOUS_COLOR STS_YELLOW -#define STS_FALL_CONFIRMED_COLOR STS_RED +//#define STS_FALL_SUSPICIOUS_COLOR STS_YELLOW +//#define STS_FALL_CONFIRMED_COLOR STS_RED +#define STS_FALL_SUSPICIOUS_COLOR (sts_color_severity_l2_l3<<4) +#define STS_FALL_CONFIRMED_COLOR (sts_color_severity_l2_l3&0x0F) #define STS_HUMAN_MOVEMENT_MOTIONLESS_NORMAL STS_GREEN -#define STS_HUMAN_MOVEMENT_MOTIONLESS_SHORT_COLOR STS_YELLOW -#define STS_HUMAN_MOVEMENT_MOTIONLESS_LONG_COLOR STS_RED +//#define STS_HUMAN_MOVEMENT_MOTIONLESS_SHORT_COLOR STS_YELLOW +//#define STS_HUMAN_MOVEMENT_MOTIONLESS_LONG_COLOR STS_RED +#define STS_HUMAN_MOVEMENT_MOTIONLESS_SHORT_COLOR (sts_color_severity_l2_l3<<4) +#define STS_HUMAN_MOVEMENT_MOTIONLESS_LONG_COLOR (sts_color_severity_l2_l3&0x0F) #define STS_OCCUPANCY_NORMAL_COLOR STS_GREEN -#define STS_OCCUPANCY_STAYLONGER_COLOR STS_YELLOW //NOT REALLY USED, JUST TO ALIGN FOR COLORS PATTERN -#define STS_OCCUPANCY_OVERSTAY_COLOR STS_BLUE +//#define STS_OCCUPANCY_STAYLONGER_COLOR STS_YELLOW //NOT REALLY USED, JUST TO ALIGN FOR COLORS PATTERN +//#define STS_OCCUPANCY_OVERSTAY_COLOR STS_BLUE +#define STS_OCCUPANCY_STAYLONGER_COLOR (sts_color_severity_l2_l3<<4) +#define STS_OCCUPANCY_OVERSTAY_COLOR (sts_color_severity_l2_l3&0x0F) +#define STS_COLOR_SEVERITY_L2 (sts_color_severity_l2_l3<<4) +#define STS_COLOR_SEVERITY_L3 (sts_color_severity_l2_l3&0x0F) #endif + /* enum sts_oo_work_mode { STS_NETWORK_MODE = 0, // 0 NETWORK MODE diff --git a/Core/Src/sys_app.c b/Core/Src/sys_app.c index 7af21e7..e1bf19b 100644 --- a/Core/Src/sys_app.c +++ b/Core/Src/sys_app.c @@ -136,7 +136,7 @@ void SystemApp_Init(void) #if defined(STS_T6)||defined(L8) //STS_TOF_VL53LX_PresenceDetection_Process_Init(); - //STS_Lamp_Bar_Self_Test_Simple(); + STS_Lamp_Bar_Self_Test_Simple(); //STS_Lamp_Bar_Self_Test(); /* LED_GREEN_ON;HAL_Delay(50); diff --git a/LoRaWAN/App/lora_app.c b/LoRaWAN/App/lora_app.c index 7314483..997f09f 100644 --- a/LoRaWAN/App/lora_app.c +++ b/LoRaWAN/App/lora_app.c @@ -45,7 +45,7 @@ #include "app_tof_peoplecount.h" #include "yunhorn_sts_prd_conf.h" #include "yunhorn_sts_sensors.h" - +#include "app_tof.h" #if (defined(STS_O6)||defined(STS_T6)||defined(O1L)) #include "sts_lamp_bar.h" #endif @@ -615,6 +615,7 @@ void STS_Sensor_Init(void) LED_GREEN_ON;HAL_Delay(150); LED_RED_ON;HAL_Delay(150); LED_GREEN_OFF;HAL_Delay(150); + #if 0 LED_RED_OFF;HAL_Delay(150); LED_GREEN_ON;HAL_Delay(50); @@ -654,6 +655,8 @@ void STS_Sensor_Init(void) UTIL_TIMER_Start(&YunhornSTSWakeUpScanTimer); #endif + sts_lamp_bar_color = HALL1_STATE==0? STS_RED:STS_GREEN; // DOOR CLOSED=0, RED, DOOR OPEN=1 + UTIL_TIMER_Start(&STSLampBarColorTimer); UTIL_TIMER_Start(&STSDurationCheckTimer); @@ -1491,6 +1494,7 @@ static void OnRxTimerLedEvent(void *context) static void OnJoinTimerLedEvent(void *context) { HAL_GPIO_TogglePin(LED3_GPIO_Port, LED3_Pin); /* LED_RED */ + UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_YunhornSTSEventP3), CFG_SEQ_Prio_0); } /* USER CODE END PrFD_LedEvents */ diff --git a/STM32CubeIDE/.settings/language.settings.xml b/STM32CubeIDE/.settings/language.settings.xml index 6f79038..d7e3a93 100644 --- a/STM32CubeIDE/.settings/language.settings.xml +++ b/STM32CubeIDE/.settings/language.settings.xml @@ -5,7 +5,7 @@ - + @@ -16,7 +16,7 @@ - + diff --git a/STM32CubeIDE/Release/WLE5CC_NODE_STS.bin b/STM32CubeIDE/Release/WLE5CC_NODE_STS.bin index dfee3bf6913dead972a39ab943ebedcd03e04c23..1021669dba71ecd003c0f350979ab6d20ac00da1 100644 GIT binary patch delta 26791 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 delta 19329 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�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%0D-6rqh6ESS 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

3cA8{DHJ-C@=)!YESUtM8S+V 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

#-yAddAF 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 +#ifdef SERCO_PWH +volatile uint8_t sts_color_occupy_vacant = (STS_RED<<4)|(STS_GREEN&0x0f); +volatile uint8_t sts_color_severity_l2_l3 = (STS_RED<<4)|((STS_RED)&0x0F); +#else +volatile uint8_t sts_color_occupy_vacant = (STS_RED<<4)|(STS_GREEN&0x0f); +volatile uint8_t sts_color_severity_l2_l3 = (STS_YELLOW<<4)|((STS_BLUE)&0x0F); +#endif #if (defined(YUNHORN_STS_O6_ENABLED) && defined(USE_ACCONEER_A111)) extern volatile STS_OO_RSS_SensorTuneDataTypeDef sts_presence_rss_config; @@ -761,6 +770,29 @@ void USER_APP_Parse_CMD_P(uint8_t *parse_buffer, uint8_t parse_buffer_size) case 5: break; + case 6: // switch lamp bar color of occupy and vacant + // P 1 1 L O V --> P11L21 --> RED:2 for occupy, GREEN:1 for vacant + // P 1 1 S L2 L3 ---> P11S43 ---> YELLOW:4 ofr severity L2, BLUE:3 for severity L3 + if ((parse_buffer[CFG_CMD5]>='0')&& (parse_buffer[CFG_CMD5]<='9')&&(parse_buffer[CFG_CMD6]>='0')&& (parse_buffer[CFG_CMD6]<='9')) + { + if ((parse_buffer[CFG_CMD4] == 'L')){ + sts_cfg_nvm.color_occupy_vacant = ((uint8_t)(parse_buffer[CFG_CMD5]-0x30)<<4)|((uint8_t)(parse_buffer[CFG_CMD6]-0x30)); + sts_color_occupy_vacant = sts_cfg_nvm.color_occupy_vacant; + APP_LOG(TS_OFF, VLEVEL_M, "\r\n Workmode=%d Color Occupy=%02X Vacant=%02X \r\n", sts_work_mode, STS_COLOR_DEFAULT_OCCUPY, STS_COLOR_DEFAULT_VACANT); + + OnStoreSTSCFGContextRequest(); + + } else if ((parse_buffer[CFG_CMD4] == 'S')){ + sts_cfg_nvm.color_severity_l2_l3 = ((uint8_t)(parse_buffer[CFG_CMD5]-0x30)<<4)|((uint8_t)(parse_buffer[CFG_CMD6]-0x30)); + sts_color_severity_l2_l3 = sts_cfg_nvm.color_severity_l2_l3; + APP_LOG(TS_OFF, VLEVEL_M, "\r\n Workmode=%d Severity Color L2 =%02X L3=%02X \r\n", sts_work_mode, STS_COLOR_SEVERITY_L2, STS_COLOR_SEVERITY_L3); + + OnStoreSTSCFGContextRequest(); + + } + } + + break; // P11T XYYY for fall down, human movement, occupancy, SOS case 8: if ((parse_buffer[CFG_CMD4]=='T') && (parse_buffer[CFG_CMD5]>='0')&& (parse_buffer[CFG_CMD5]<='9')) @@ -1736,8 +1768,8 @@ void OnStoreSTSCFGContextRequest(void) to_store__value[i++] = (sts_cfg_nvm.p[j]); } #endif - to_store__value[i++] = sts_cfg_nvm.reserve02; - to_store__value[i++] = sts_cfg_nvm.reserve03; + to_store__value[i++] = sts_cfg_nvm.color_occupy_vacant; + to_store__value[i++] = sts_cfg_nvm.color_severity_l2_l3; to_store__value[i++] = sts_cfg_nvm.sensor_install_height_in_10cm; to_store__value[i++] = sts_cfg_nvm.alarm_parameter05; #ifdef L8 @@ -1850,8 +1882,11 @@ void STS_REBOOT_CONFIG_Init(void) APP_LOG(TS_OFF, VLEVEL_M, "%2d ", fhmos_bg.maskoff[j]); } #endif - sts_cfg_nvm.reserve02 =(uint8_t)nvm_store_value[NVM_RESERVE02]; - sts_cfg_nvm.reserve03 =(uint8_t)nvm_store_value[NVM_RESERVE03]; +// sts_cfg_nvm.reserve02 =(uint8_t)nvm_store_value[NVM_RESERVE02]; +// sts_cfg_nvm.reserve03 =(uint8_t)nvm_store_value[NVM_RESERVE03]; + sts_cfg_nvm.color_occupy_vacant =(uint8_t)nvm_store_value[NVM_RESERVE02]; + sts_cfg_nvm.color_severity_l2_l3 =(uint8_t)nvm_store_value[NVM_RESERVE03]; + sts_cfg_nvm.sensor_install_height_in_10cm =(uint8_t)nvm_store_value[NVM_SENSOR_INSTALL_HEIGHT]; sts_cfg_nvm.alarm_parameter05 =(uint8_t)nvm_store_value[NVM_ALARM_PARAMETER05]; #ifdef L8 @@ -1949,6 +1984,11 @@ void OnRestoreSTSCFGContextProcess(void) sts_work_mode = sts_cfg_nvm.work_mode; sts_service_mask = sts_cfg_nvm.sts_service_mask; sts_sensor_install_height = sts_cfg_nvm.sensor_install_height_in_10cm*100; + APP_LOG(TS_OFF, VLEVEL_M, "\r\n Color Severity L2L3=0x%02x Occupy Vacant=0x%02x \r\n", sts_color_severity_l2_l3, sts_color_occupy_vacant); + sts_color_severity_l2_l3 = sts_cfg_nvm.color_severity_l2_l3; + sts_color_occupy_vacant = sts_cfg_nvm.color_occupy_vacant; + + APP_LOG(TS_OFF, VLEVEL_M, "\r\n After restore from NVM ---> #### Color Severity L2L3=0x%02x Occupy Vacant=0x%02x \r\n", sts_color_severity_l2_l3, sts_color_occupy_vacant); #ifdef YUNHORN_STS_O6_ENABLED sts_lamp_bar_color = STS_GREEN; @@ -2430,10 +2470,11 @@ void YunhornSTSDurationCheckTimer(void) #endif LED_RED_ON; + APP_LOG(TS_OFF, VLEVEL_M, "\r\nSensor1 overstay process: sts_color_severity_l2_l3=0x%02x, STS_OCCUPANCY_OVERSTAY_COLOR = 0x%02x \r\n", sts_color_severity_l2_l3, STS_OCCUPANCY_OVERSTAY_COLOR); sts_lamp_bar_color = STS_OCCUPANCY_OVERSTAY_COLOR; -// APP_LOG(TS_OFF, VLEVEL_M, "\r\nSensor1 overstay set color to %d color:%s\r\n",sts_lamp_bar_color, (char*)code2color[sts_lamp_bar_color]); + APP_LOG(TS_OFF, VLEVEL_M, "\r\nSensor1 overstay set color to 0x%02x color:%s\r\n",sts_lamp_bar_color, (char*)code2color[sts_lamp_bar_color]); over_threshold |= 1<<0; -// APP_LOG(TS_OFF, VLEVEL_M, "\r\n 1<<1 Over Threshold =0x%02x \r\n", over_threshold); + APP_LOG(TS_OFF, VLEVEL_M, "\r\n 1<<1 Over Threshold =0x%02x \r\n", over_threshold); } @@ -3135,7 +3176,7 @@ void OnSensorL8AStateChanged(void) fhmos_data.head_low_level_start_time = sensor_event_time.Seconds; fhmos_data.state_fall_released = 0; - APP_LOG(TS_OFF, VLEVEL_L, "\r\n Head Level Low -------- state =%d last =%d \r\n", sts_head_level_low, last_head_level_low_state); + APP_LOG(TS_OFF, VLEVEL_M, "\r\n Head Level Low -------- state =%d last =%d \r\n", sts_head_level_low, last_head_level_low_state); sts_o7_sensorData.event_sensor3_fall_start_time = sensor_event_time.Seconds; @@ -3145,7 +3186,7 @@ void OnSensorL8AStateChanged(void) { fhmos_data.head_low_level_stop_time = sensor_event_time.Seconds; fhmos_data.state_fall = STS_FHMOS_FALL_STATE_NORMAL; - APP_LOG(TS_OFF, VLEVEL_L, "\r\n Head Level Rise up or Out of Focus Area ++++++++++ \r\n"); + APP_LOG(TS_OFF, VLEVEL_M, "\r\n Head Level Rise up or Out of Focus Area ++++++++++ \r\n"); sts_fhmos_state_changed = 1; fhmos_data.state_fall_released = 1; } //else { diff --git a/STS/TOF/App/app_tof.c b/STS/TOF/App/app_tof.c index 7af13bd..2bb1f27 100644 --- a/STS/TOF/App/app_tof.c +++ b/STS/TOF/App/app_tof.c @@ -57,7 +57,7 @@ extern volatile uint8_t sts_fhmos_bitmap_pending; #include "stm32wlxx_nucleo.h" //static int to_confirm = 0; static uint8_t yes_count=0, no_count=0; -#define TIME_C 2 +#define TIME_C 4 static uint32_t STS_Get_Center_Range_Distance(RANGING_SENSOR_Result_t *Result); uint16_t bg_distance[64]={0}; uint8_t idx[64]={0}; @@ -831,15 +831,20 @@ static void print_result(RANGING_SENSOR_Result_t *Result) if (yes_count < TIME_C) { yes_count ++; + APP_LOG(TS_OFF, VLEVEL_M, "\r\n YES++ %d\r\n", yes_count); + } else { no_count =0; } + } else if ((head_distance_from_ceiling_mm < (factor2_head_level_from_floor_mm - 150))) // TODO XXX 50mm gap to avoid flapping back and forth { if (no_count < TIME_C) { no_count ++; + APP_LOG(TS_OFF, VLEVEL_M, "\r\n NO++ %d\r\n", no_count); + } else { yes_count =0; } @@ -849,10 +854,13 @@ static void print_result(RANGING_SENSOR_Result_t *Result) { sts_head_level_low = 1; + APP_LOG(TS_OFF, VLEVEL_M, "\r\n lead low = 1\r\n"); + } else if (no_count > (TIME_C -1)) { sts_head_level_low = 0; + APP_LOG(TS_OFF, VLEVEL_M, "\r\n lead low = 0\r\n"); sts_fhmos_bitmap_pending = FHMOS_BITMAP_BLANK; APP_LOG(TS_OFF, VLEVEL_M, "\r\n return zero statues, bitmap status=%d \r\n", sts_fhmos_bitmap_pending); }