diff --git a/LoRaWAN/App/lora_app.c b/LoRaWAN/App/lora_app.c index 1f7a3c9..1f45b86 100644 --- a/LoRaWAN/App/lora_app.c +++ b/LoRaWAN/App/lora_app.c @@ -800,7 +800,8 @@ static void SendTxData(void) { heart_beat_timer = 0; AppData.Port = LORAWAN_USER_HTBT_PORT; //LORAWAN_USER_APP_PORT+1; - APP_LOG(TS_ON, VLEVEL_L, "\r\n------------ Heart-Beat ------------- \r\n ------------------Distance = %d mm, VBAT=%d%%\r\n", r0_data.distance_mm, r0_data.battery_Pct); + APP_LOG(TS_ON, VLEVEL_L, "\r\n------------ Heart-Beat ------------- \r\n ------------------\r\nDistance0 = %d mm, \r\nDistance1 = %d mm,\r\nDistance2 = %d mm, \r\nVBAT=%d\r\n", + r0_data.distance_mm,r0_data.distance1_mm,r0_data.distance2_mm, r0_data.battery_Pct); } else if ((upload_message_timer)||(sensor_data_ready)) //sensor_data_ready for manual push button-1 trigger) { @@ -808,15 +809,15 @@ static void SendTxData(void) sensor_data_ready =0; upload_message_timer =0; - AppData.Buffer[i++] = (uint8_t)(r0_data.distance_mm_h); //#05 - AppData.Buffer[i++] = (uint8_t)(r0_data.distance_mm_l); //#06 + AppData.Buffer[i++] = (uint8_t)(r0_data.distance_mm >>8)&0xff; //#05 + AppData.Buffer[i++] = (uint8_t)(r0_data.distance_mm)&0xff; //#06 AppData.Buffer[i++] = (uint8_t)(r0_data.distance1_mm >>8)&0xff; //#07 - AppData.Buffer[i++] = (uint8_t)(r0_data.distance1_mm)&0xff; //#08 + AppData.Buffer[i++] = (uint8_t)(r0_data.distance1_mm)&0xff; //#08 AppData.Buffer[i++] = (uint8_t)(r0_data.distance2_mm >>8)&0xff; //#09 - AppData.Buffer[i++] = (uint8_t)(r0_data.distance2_mm)&0xff; //#10 + AppData.Buffer[i++] = (uint8_t)(r0_data.distance2_mm)&0xff; //#10 - - APP_LOG(TS_ON, VLEVEL_L, "\r\n------------ Periodicity Upload Heart-Beat ------------- \r\n ------------------Distance = %d mm, VBAT=%d%%\r\n", r0_data.distance_mm, r0_data.battery_Pct); + APP_LOG(TS_ON, VLEVEL_L, "\r\n------------ Heart-Beat ------------- \r\n ------------------\r\nDistance0 = %d mm, \r\nDistance1 = %d mm,\r\nDistance2 = %d mm, \r\nVBAT=%d\r\n", + r0_data.distance_mm,r0_data.distance1_mm,r0_data.distance2_mm, r0_data.battery_Pct); } AppData.BufferSize = (sts_service_mask >1?0:i); diff --git a/TOF/App/app_tof.c b/TOF/App/app_tof.c index fef642b..b35cba7 100644 --- a/TOF/App/app_tof.c +++ b/TOF/App/app_tof.c @@ -103,9 +103,9 @@ void MX_TOF_Process(void) #ifdef STS_USE_TOF_VL53L0X STS_SENSOR_Power_ON(1); - HAL_Delay(500); + HAL_Delay(100); STS_TOF_VL53L0X_Range_Process(); - HAL_Delay(500); + HAL_Delay(100); STS_SENSOR_Power_OFF(1); #endif @@ -120,13 +120,7 @@ void MX_TOF_Process(void) } void STS_R0_SENSOR_Read(STS_R0_SensorDataTypeDef *r0_data) { - if (sts_tof_distance_data[0] != 0) - r0_data->distance_mm = sts_tof_distance_data[0]; - else if (sts_tof_distance_data[1] != 0) - r0_data->distance_mm = sts_tof_distance_data[1]; - else if (sts_tof_distance_data[2] != 0) - r0_data->distance_mm = sts_tof_distance_data[2]; - + r0_data->distance_mm = sts_tof_distance_data[0]; r0_data->distance1_mm = sts_tof_distance_data[1]; r0_data->distance2_mm = sts_tof_distance_data[2]; diff --git a/TOF/App/app_tof_vl53l0x_range.c b/TOF/App/app_tof_vl53l0x_range.c index 497aa83..f049507 100644 --- a/TOF/App/app_tof_vl53l0x_range.c +++ b/TOF/App/app_tof_vl53l0x_range.c @@ -83,7 +83,7 @@ int nDevMask=0; int nSensorPresent; -volatile int sts_tof_distance_data[MAX_TOF_COUNT]; +volatile int sts_tof_distance_data[MAX_TOF_COUNT]={0,0,0}; extern volatile uint8_t sensor_data_ready; VL53L0X_Dev_t VL53L0XDevs[]={ @@ -109,8 +109,9 @@ void sts_tof_vl53l0x_SetupSingleShot(RangingConfig_e rangingConfig); * @param err Error case code */ void HandleError(int err){ - char msg[16]; - sprintf(msg,"Er%d", err); + //char msg[16]; + //sprintf(msg,"Er%d", err); + APP_LOG(TS_OFF, VLEVEL_L,"Er%d\r\n",err); while(1){}; } @@ -131,9 +132,9 @@ int sts_tof_vl53l0x_DetectSensors(void) nDevPresent = 0; HAL_GPIO_WritePin(TOF_C_XSHUT_GPIO_Port, TOF_C_XSHUT_Pin, GPIO_PIN_RESET); - HAL_Delay(30); + HAL_Delay(10); HAL_GPIO_WritePin(TOF_C_XSHUT_GPIO_Port, TOF_C_XSHUT_Pin, GPIO_PIN_SET); - //HAL_Delay(30); + HAL_Delay(10); //HAL_GPIO_WritePin(TOF_C_XSHUT_GPIO_Port, TOF_C_XSHUT_Pin, GPIO_PIN_SET); //HAL_Delay(100); @@ -351,11 +352,15 @@ void STS_TOF_VL53L0X_Range_Process(void) if (VL53L0XDevs[i].Present ==1) { APP_LOG(TS_OFF, VLEVEL_L, "\r\nStart Ranging #%u sensor, position mask 0x%02x \r\n", i, nDevMask); + status = VL53L0X_PerformSingleRangingMeasurement(&VL53L0XDevs[i], &RangingMeasurementData); + APP_LOG(TS_OFF, VLEVEL_L, "\r\nRanging status =0x%04x \r\n", status); + if( status ==0 ) { sts_tof_vl53l0x_Sensor_SetNewRange(&VL53L0XDevs[i],&RangingMeasurementData); /* Display distance in mm */ + APP_LOG(TS_OFF, VLEVEL_L, "\r\nSet New Range status =%u \r\n", RangingMeasurementData.RangeStatus); if( RangingMeasurementData.RangeStatus == 0 ) { sts_tof_distance_data[i] = (int)VL53L0XDevs[i].LeakyRange; @@ -377,7 +382,7 @@ void STS_TOF_VL53L0X_Range_Process(void) } // for i < MAX_TOF_COUNT - APP_LOG(TS_OFF, VLEVEL_L, "\r\n## Measured Range: \r\nTOF #0 = %4d mm, \r\nTOF #1 = %4d mm, \r\nTOF #2 = %4d mm\r\n", + APP_LOG(TS_OFF, VLEVEL_L, "\r\n## Measured Range: \r\nTOF #0 = %4u mm, \r\nTOF #1 = %4u mm, \r\nTOF #2 = %4u mm\r\n", (int)sts_tof_distance_data[0],(int)sts_tof_distance_data[1],(int)sts_tof_distance_data[2]); } // nSensorPresent >0 }