WS: fix show negative temperature (#1980)
This commit is contained in:
		
							parent
							
								
									0a86ad43ca
								
							
						
					
					
						commit
						65005e71d2
					
				| @ -293,7 +293,7 @@ void ws_protocol_decoder_acurite_592txr_get_string(void* context, FuriString* ou | |||||||
|         "%s %dbit\r\n" |         "%s %dbit\r\n" | ||||||
|         "Key:0x%lX%08lX\r\n" |         "Key:0x%lX%08lX\r\n" | ||||||
|         "Sn:0x%lX Ch:%d  Bat:%d\r\n" |         "Sn:0x%lX Ch:%d  Bat:%d\r\n" | ||||||
|         "Temp:%d.%d C Hum:%d%%", |         "Temp:%3.1f C Hum:%d%%", | ||||||
|         instance->generic.protocol_name, |         instance->generic.protocol_name, | ||||||
|         instance->generic.data_count_bit, |         instance->generic.data_count_bit, | ||||||
|         (uint32_t)(instance->generic.data >> 32), |         (uint32_t)(instance->generic.data >> 32), | ||||||
| @ -301,7 +301,6 @@ void ws_protocol_decoder_acurite_592txr_get_string(void* context, FuriString* ou | |||||||
|         instance->generic.id, |         instance->generic.id, | ||||||
|         instance->generic.channel, |         instance->generic.channel, | ||||||
|         instance->generic.battery_low, |         instance->generic.battery_low, | ||||||
|         (int16_t)instance->generic.temp, |         (double)instance->generic.temp, | ||||||
|         abs(((int16_t)(instance->generic.temp * 10) - (((int16_t)instance->generic.temp) * 10))), |  | ||||||
|         instance->generic.humidity); |         instance->generic.humidity); | ||||||
| } | } | ||||||
|  | |||||||
| @ -234,7 +234,7 @@ void ws_protocol_decoder_acurite_606tx_get_string(void* context, FuriString* out | |||||||
|         "%s %dbit\r\n" |         "%s %dbit\r\n" | ||||||
|         "Key:0x%lX%08lX\r\n" |         "Key:0x%lX%08lX\r\n" | ||||||
|         "Sn:0x%lX Ch:%d  Bat:%d\r\n" |         "Sn:0x%lX Ch:%d  Bat:%d\r\n" | ||||||
|         "Temp:%d.%d C Hum:%d%%", |         "Temp:%3.1f C Hum:%d%%", | ||||||
|         instance->generic.protocol_name, |         instance->generic.protocol_name, | ||||||
|         instance->generic.data_count_bit, |         instance->generic.data_count_bit, | ||||||
|         (uint32_t)(instance->generic.data >> 32), |         (uint32_t)(instance->generic.data >> 32), | ||||||
| @ -242,7 +242,6 @@ void ws_protocol_decoder_acurite_606tx_get_string(void* context, FuriString* out | |||||||
|         instance->generic.id, |         instance->generic.id, | ||||||
|         instance->generic.channel, |         instance->generic.channel, | ||||||
|         instance->generic.battery_low, |         instance->generic.battery_low, | ||||||
|         (int16_t)instance->generic.temp, |         (double)instance->generic.temp, | ||||||
|         abs(((int16_t)(instance->generic.temp * 10) - (((int16_t)instance->generic.temp) * 10))), |  | ||||||
|         instance->generic.humidity); |         instance->generic.humidity); | ||||||
| } | } | ||||||
|  | |||||||
| @ -263,7 +263,7 @@ void ws_protocol_decoder_ambient_weather_get_string(void* context, FuriString* o | |||||||
|         "%s %dbit\r\n" |         "%s %dbit\r\n" | ||||||
|         "Key:0x%lX%08lX\r\n" |         "Key:0x%lX%08lX\r\n" | ||||||
|         "Sn:0x%lX Ch:%d  Bat:%d\r\n" |         "Sn:0x%lX Ch:%d  Bat:%d\r\n" | ||||||
|         "Temp:%d.%d C Hum:%d%%", |         "Temp:%3.1f C Hum:%d%%", | ||||||
|         instance->generic.protocol_name, |         instance->generic.protocol_name, | ||||||
|         instance->generic.data_count_bit, |         instance->generic.data_count_bit, | ||||||
|         (uint32_t)(instance->generic.data >> 32), |         (uint32_t)(instance->generic.data >> 32), | ||||||
| @ -271,7 +271,6 @@ void ws_protocol_decoder_ambient_weather_get_string(void* context, FuriString* o | |||||||
|         instance->generic.id, |         instance->generic.id, | ||||||
|         instance->generic.channel, |         instance->generic.channel, | ||||||
|         instance->generic.battery_low, |         instance->generic.battery_low, | ||||||
|         (int16_t)instance->generic.temp, |         (double)instance->generic.temp, | ||||||
|         abs(((int16_t)(instance->generic.temp * 10) - (((int16_t)instance->generic.temp) * 10))), |  | ||||||
|         instance->generic.humidity); |         instance->generic.humidity); | ||||||
| } | } | ||||||
|  | |||||||
| @ -327,7 +327,7 @@ void ws_protocol_decoder_gt_wt_03_get_string(void* context, FuriString* output) | |||||||
|         "%s %dbit\r\n" |         "%s %dbit\r\n" | ||||||
|         "Key:0x%lX%08lX\r\n" |         "Key:0x%lX%08lX\r\n" | ||||||
|         "Sn:0x%lX Ch:%d  Bat:%d\r\n" |         "Sn:0x%lX Ch:%d  Bat:%d\r\n" | ||||||
|         "Temp:%d.%d C Hum:%d%%", |         "Temp:%3.1f C Hum:%d%%", | ||||||
|         instance->generic.protocol_name, |         instance->generic.protocol_name, | ||||||
|         instance->generic.data_count_bit, |         instance->generic.data_count_bit, | ||||||
|         (uint32_t)(instance->generic.data >> 32), |         (uint32_t)(instance->generic.data >> 32), | ||||||
| @ -335,7 +335,6 @@ void ws_protocol_decoder_gt_wt_03_get_string(void* context, FuriString* output) | |||||||
|         instance->generic.id, |         instance->generic.id, | ||||||
|         instance->generic.channel, |         instance->generic.channel, | ||||||
|         instance->generic.battery_low, |         instance->generic.battery_low, | ||||||
|         (int16_t)instance->generic.temp, |         (double)instance->generic.temp, | ||||||
|         abs(((int16_t)(instance->generic.temp * 10) - (((int16_t)instance->generic.temp) * 10))), |  | ||||||
|         instance->generic.humidity); |         instance->generic.humidity); | ||||||
| } | } | ||||||
|  | |||||||
| @ -283,7 +283,7 @@ void ws_protocol_decoder_infactory_get_string(void* context, FuriString* output) | |||||||
|         "%s %dbit\r\n" |         "%s %dbit\r\n" | ||||||
|         "Key:0x%lX%08lX\r\n" |         "Key:0x%lX%08lX\r\n" | ||||||
|         "Sn:0x%lX Ch:%d  Bat:%d\r\n" |         "Sn:0x%lX Ch:%d  Bat:%d\r\n" | ||||||
|         "Temp:%d.%d C Hum:%d%%", |         "Temp:%3.1f C Hum:%d%%", | ||||||
|         instance->generic.protocol_name, |         instance->generic.protocol_name, | ||||||
|         instance->generic.data_count_bit, |         instance->generic.data_count_bit, | ||||||
|         (uint32_t)(instance->generic.data >> 32), |         (uint32_t)(instance->generic.data >> 32), | ||||||
| @ -291,7 +291,6 @@ void ws_protocol_decoder_infactory_get_string(void* context, FuriString* output) | |||||||
|         instance->generic.id, |         instance->generic.id, | ||||||
|         instance->generic.channel, |         instance->generic.channel, | ||||||
|         instance->generic.battery_low, |         instance->generic.battery_low, | ||||||
|         (int16_t)instance->generic.temp, |         (double)instance->generic.temp, | ||||||
|         abs(((int16_t)(instance->generic.temp * 10) - (((int16_t)instance->generic.temp) * 10))), |  | ||||||
|         instance->generic.humidity); |         instance->generic.humidity); | ||||||
| } | } | ||||||
|  | |||||||
| @ -284,7 +284,7 @@ void ws_protocol_decoder_lacrosse_tx141thbv2_get_string(void* context, FuriStrin | |||||||
|         "%s %dbit\r\n" |         "%s %dbit\r\n" | ||||||
|         "Key:0x%lX%08lX\r\n" |         "Key:0x%lX%08lX\r\n" | ||||||
|         "Sn:0x%lX Ch:%d  Bat:%d\r\n" |         "Sn:0x%lX Ch:%d  Bat:%d\r\n" | ||||||
|         "Temp:%d.%d C Hum:%d%%", |         "Temp:%3.1f C Hum:%d%%", | ||||||
|         instance->generic.protocol_name, |         instance->generic.protocol_name, | ||||||
|         instance->generic.data_count_bit, |         instance->generic.data_count_bit, | ||||||
|         (uint32_t)(instance->generic.data >> 32), |         (uint32_t)(instance->generic.data >> 32), | ||||||
| @ -292,7 +292,6 @@ void ws_protocol_decoder_lacrosse_tx141thbv2_get_string(void* context, FuriStrin | |||||||
|         instance->generic.id, |         instance->generic.id, | ||||||
|         instance->generic.channel, |         instance->generic.channel, | ||||||
|         instance->generic.battery_low, |         instance->generic.battery_low, | ||||||
|         (int16_t)instance->generic.temp, |         (double)instance->generic.temp, | ||||||
|         abs(((int16_t)(instance->generic.temp * 10) - (((int16_t)instance->generic.temp) * 10))), |  | ||||||
|         instance->generic.humidity); |         instance->generic.humidity); | ||||||
| } | } | ||||||
|  | |||||||
| @ -247,7 +247,7 @@ void ws_protocol_decoder_nexus_th_get_string(void* context, FuriString* output) | |||||||
|         "%s %dbit\r\n" |         "%s %dbit\r\n" | ||||||
|         "Key:0x%lX%08lX\r\n" |         "Key:0x%lX%08lX\r\n" | ||||||
|         "Sn:0x%lX Ch:%d  Bat:%d\r\n" |         "Sn:0x%lX Ch:%d  Bat:%d\r\n" | ||||||
|         "Temp:%d.%d C Hum:%d%%", |         "Temp:%3.1f C Hum:%d%%", | ||||||
|         instance->generic.protocol_name, |         instance->generic.protocol_name, | ||||||
|         instance->generic.data_count_bit, |         instance->generic.data_count_bit, | ||||||
|         (uint32_t)(instance->generic.data >> 32), |         (uint32_t)(instance->generic.data >> 32), | ||||||
| @ -255,7 +255,6 @@ void ws_protocol_decoder_nexus_th_get_string(void* context, FuriString* output) | |||||||
|         instance->generic.id, |         instance->generic.id, | ||||||
|         instance->generic.channel, |         instance->generic.channel, | ||||||
|         instance->generic.battery_low, |         instance->generic.battery_low, | ||||||
|         (int16_t)instance->generic.temp, |         (double)instance->generic.temp, | ||||||
|         abs(((int16_t)(instance->generic.temp * 10) - (((int16_t)instance->generic.temp) * 10))), |  | ||||||
|         instance->generic.humidity); |         instance->generic.humidity); | ||||||
| } | } | ||||||
|  | |||||||
| @ -246,7 +246,7 @@ void ws_protocol_decoder_thermopro_tx4_get_string(void* context, FuriString* out | |||||||
|         "%s %dbit\r\n" |         "%s %dbit\r\n" | ||||||
|         "Key:0x%lX%08lX\r\n" |         "Key:0x%lX%08lX\r\n" | ||||||
|         "Sn:0x%lX Ch:%d  Bat:%d\r\n" |         "Sn:0x%lX Ch:%d  Bat:%d\r\n" | ||||||
|         "Temp:%d.%d C Hum:%d%%", |         "Temp:%3.1f C Hum:%d%%", | ||||||
|         instance->generic.protocol_name, |         instance->generic.protocol_name, | ||||||
|         instance->generic.data_count_bit, |         instance->generic.data_count_bit, | ||||||
|         (uint32_t)(instance->generic.data >> 32), |         (uint32_t)(instance->generic.data >> 32), | ||||||
| @ -254,7 +254,6 @@ void ws_protocol_decoder_thermopro_tx4_get_string(void* context, FuriString* out | |||||||
|         instance->generic.id, |         instance->generic.id, | ||||||
|         instance->generic.channel, |         instance->generic.channel, | ||||||
|         instance->generic.battery_low, |         instance->generic.battery_low, | ||||||
|         (int16_t)instance->generic.temp, |         (double)instance->generic.temp, | ||||||
|         abs(((int16_t)(instance->generic.temp * 10) - (((int16_t)instance->generic.temp) * 10))), |  | ||||||
|         instance->generic.humidity); |         instance->generic.humidity); | ||||||
| } | } | ||||||
|  | |||||||
| @ -75,12 +75,7 @@ void ws_view_receiver_info_draw(Canvas* canvas, WSReceiverInfoModel* model) { | |||||||
| 
 | 
 | ||||||
|     if(model->generic->temp != WS_NO_TEMPERATURE) { |     if(model->generic->temp != WS_NO_TEMPERATURE) { | ||||||
|         canvas_draw_icon(canvas, 18, 42, &I_Therm_7x16); |         canvas_draw_icon(canvas, 18, 42, &I_Therm_7x16); | ||||||
|         snprintf( |         snprintf(buffer, sizeof(buffer), "%3.1f C", (double)model->generic->temp); | ||||||
|             buffer, |  | ||||||
|             sizeof(buffer), |  | ||||||
|             "%3.2d.%d C", |  | ||||||
|             (int16_t)model->generic->temp, |  | ||||||
|             abs(((int16_t)(model->generic->temp * 10) - (((int16_t)model->generic->temp) * 10)))); |  | ||||||
|         canvas_draw_str_aligned(canvas, 63, 46, AlignRight, AlignTop, buffer); |         canvas_draw_str_aligned(canvas, 63, 46, AlignRight, AlignTop, buffer); | ||||||
|         canvas_draw_circle(canvas, 55, 45, 1); |         canvas_draw_circle(canvas, 55, 45, 1); | ||||||
|     } |     } | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Skorpionm
						Skorpionm