diff --git a/Core/Inc/sts_lamp_bar.h b/Core/Inc/sts_lamp_bar.h
index 574639b..601ec88 100644
--- a/Core/Inc/sts_lamp_bar.h
+++ b/Core/Inc/sts_lamp_bar.h
@@ -48,8 +48,8 @@ enum sts_lamp_color {
 
 	STS_GREEN_DARK=0x10, 	//0b0001 0000 GREEN DARK
 	STS_RED_DARK=0x20, 		//0b0010 0000,
-	STS_BLUE_DARK=0x30, 	//0b0011 0000 BLUE DARK
-	STS_RED_BLUE=0x23 		//0b0010 0011  RED BLUE FLASH
+	STS_RED_BLUE=0x23, 		//0b0010 0011  RED BLUE FLASH
+	STS_BLUE_DARK=0x30 	//0b0011 0000 BLUE DARK
 };
 
 enum sts_oo_work_mode {
diff --git a/Core/Src/sts_lamp_bar.c b/Core/Src/sts_lamp_bar.c
index f6c8328..37640af 100644
--- a/Core/Src/sts_lamp_bar.c
+++ b/Core/Src/sts_lamp_bar.c
@@ -102,9 +102,9 @@ void STS_Lamp_Bar_Set_Dark(void)
 void STS_WS2812B_Refresh(void)
 {
 	//__disable_irq();
-	HAL_TIM_PWM_Start_DMA(&STS_LAMP_BAR_HTIM, STS_LAMP_BAR_TIM_CHANNEL, (uint32_t *)&rgb_buf, (WS2812B_DATA_LEN+1));
+	HAL_TIM_PWM_Start_DMA(&STS_LAMP_BAR_HTIM, STS_LAMP_BAR_TIM_CHANNEL, (uint32_t *)&rgb_buf, (WS2812B_DATA_LEN+24));
 	//__enable_irq();
-	//HAL_TIM_PWM_Start_IT(&STS_LAMP_BAR_HTIM, STS_LAMP_BAR_TIM_CHANNEL);
+	HAL_TIM_PWM_Start_IT(&STS_LAMP_BAR_HTIM, STS_LAMP_BAR_TIM_CHANNEL);
 }
 
 void STS_Lamp_Bar_Init(void)
@@ -159,8 +159,8 @@ void STS_Lamp_Bar_Set_RGB_Color(uint8_t red, uint8_t green, uint8_t blue )
 	uint8_t i =0;
 	//HAL_Delay(1);
 
-	//__disable_irq();
-	//UTIL_MEM_set_8((void*)rgb_buf.GRB,0x0,(WS2812B_DATA_LEN));
+	__disable_irq();
+	UTIL_MEM_set_8((void*)rgb_buf.GRB,0x0,(WS2812B_DATA_LEN+48));
 	//__enable_irq();
 
 	for(i = 0; i < STS_LAMP_BAR_LED_NUM; i++)
@@ -178,7 +178,7 @@ void STS_Lamp_Bar_Set_RGB_Color(uint8_t red, uint8_t green, uint8_t blue )
 	//if (sts_service_mask == STS_SERVICE_MASK_L0) {
 		STS_WS2812B_Refresh();
 	//}
-
+	__enable_irq();
 }
 
 void STS_Lamp_Bar_Refresh(void)
diff --git a/Core/Src/yunhorn_sts_process.c b/Core/Src/yunhorn_sts_process.c
index 9f8abd1..98af6cd 100644
--- a/Core/Src/yunhorn_sts_process.c
+++ b/Core/Src/yunhorn_sts_process.c
@@ -605,7 +605,7 @@ void STS_Combined_Status_Processing(void)
 		{
 			sts_lamp_bar_color = sts_status_color;
 
-			STS_Lamp_Bar_Set_STS_RGB_Color(sts_lamp_bar_color, luminance_level);
+			//STS_Lamp_Bar_Set_STS_RGB_Color(sts_lamp_bar_color, luminance_level);
 
 			last_lamp_bar_color = sts_lamp_bar_color;
 		}
diff --git a/LoRaWAN/App/lora_app.c b/LoRaWAN/App/lora_app.c
index 01a7be2..1c0e1a0 100644
--- a/LoRaWAN/App/lora_app.c
+++ b/LoRaWAN/App/lora_app.c
@@ -612,7 +612,7 @@ void LoRaWAN_Init(void)
 
   UTIL_TIMER_Create(&TxLedTimer, LED_PERIOD_TIME, UTIL_TIMER_ONESHOT, OnTxTimerLedEvent, NULL);
   UTIL_TIMER_Create(&RxLedTimer, LED_PERIOD_TIME, UTIL_TIMER_ONESHOT, OnRxTimerLedEvent, NULL);
-  UTIL_TIMER_Create(&JoinLedTimer, LED_PERIOD_TIME, UTIL_TIMER_PERIODIC, OnJoinTimerLedEvent, NULL);
+  UTIL_TIMER_Create(&JoinLedTimer, LED_PERIOD_TIME, UTIL_TIMER_ONESHOT, OnJoinTimerLedEvent, NULL);
   UTIL_TIMER_Create(&STSLampBarColorTimer, LED_PERIOD_TIME, UTIL_TIMER_PERIODIC, OnYunhornSTSLampBarColorTimerEvent, NULL);
   UTIL_TIMER_Create(&STSDurationCheckTimer, 20*LED_PERIOD_TIME, UTIL_TIMER_PERIODIC, OnYunhornSTSDurationCheckTimerEvent, NULL);
 
@@ -1156,6 +1156,7 @@ static void OnYunhornSTSLampBarColorTimerEvent(void *context)
   //HAL_GPIO_TogglePin(LED1_GPIO_Port, LED1_Pin); /* STS GREEN */
   //if ((sts_work_mode != STS_WIRED_MODE))
 	uint8_t high4=(sts_lamp_bar_color>>4)&0x0f, low4=sts_lamp_bar_color&0x0f;
+	HAL_Delay(10);
 		if (high4==0)
 		{
 			  if (last_sts_lamp_bar_color != sts_lamp_bar_color)
@@ -1170,48 +1171,24 @@ static void OnYunhornSTSLampBarColorTimerEvent(void *context)
 		} else {
 			  if (r_b)
 			  {
-				  __disable_irq();
+				  //__disable_irq();
 				  STS_Lamp_Bar_Set_STS_RGB_Color(high4, DEFAULT_LUMINANCE_LEVEL);
-				  __enable_irq();
+				  //__enable_irq();
 				  last_sts_lamp_bar_color = high4;
 				  //STS_WS2812B_Refresh();
 			  }
 			  else {
-				  __disable_irq();
+				  //__disable_irq();
 				  STS_Lamp_Bar_Set_STS_RGB_Color(low4, DEFAULT_LUMINANCE_LEVEL);
-				  __enable_irq();
+				  //__enable_irq();
 				  last_sts_lamp_bar_color = low4;
 				  //STS_WS2812B_Refresh();
 			  }
 
 			  r_b = !r_b;
 		}
-#if 0
-	  if (sts_lamp_bar_color == STS_RED_BLUE) {
-	  if (r_b)
-		  STS_Lamp_Bar_Set_STS_RGB_Color(STS_RED, DEFAULT_LUMINANCE_LEVEL);
-	  else
-		  STS_Lamp_Bar_Set_STS_RGB_Color(STS_BLUE, DEFAULT_LUMINANCE_LEVEL);
 
-	  r_b = !r_b;
-	  } else if (sts_lamp_bar_color == STS_RED_DARK) {
-		  if (r_b)
-		  		  STS_Lamp_Bar_Set_STS_RGB_Color(STS_RED, DEFAULT_LUMINANCE_LEVEL);
-		  	  else
-		  		  STS_Lamp_Bar_Set_STS_RGB_Color(STS_DARK, DEFAULT_LUMINANCE_LEVEL);
-
-		  	  r_b = !r_b;
-	  }
-	  else {
-		  if (last_sts_lamp_bar_color != sts_lamp_bar_color)
-		  {
-			  STS_Lamp_Bar_Set_STS_RGB_Color(sts_lamp_bar_color, DEFAULT_LUMINANCE_LEVEL);
-			  last_sts_lamp_bar_color = sts_lamp_bar_color;
-		  }
-	  }
-
-  }
-#endif
+UTIL_TIMER_Start(&STSLampBarColorTimer);
 
 }