From 294f908b5d189f00cc1c6d83cfebef4591023ef9 Mon Sep 17 00:00:00 2001 From: YunHorn Technology <dp.s@yunhorn.com> Date: Mon, 30 Sep 2024 18:48:16 +0800 Subject: [PATCH 1/4] wip --- Core/Inc/main.h | 2 +- Core/Inc/utilities_def.h | 2 +- LoRaWAN/App/lora_app.c | 6 ++ STM32CubeIDE/.cproject | 2 +- .../Release/Application/User/Core/subdir.mk | 38 +++++------ .../Application/User/LoRaWAN/App/subdir.mk | 8 +-- .../Application/User/LoRaWAN/Target/subdir.mk | 2 +- .../Application/User/STS/Core/Src/subdir.mk | 6 +- .../Application/User/STS/TOF/App/subdir.mk | 4 +- .../Application/User/STS/TOF/Target/subdir.mk | 2 +- .../User/STS/TOF/vl53l1x_uld/subdir.mk | 8 +-- .../Drivers/BSP/STM32WLxx_Nucleo/subdir.mk | 4 +- STM32CubeIDE/Release/Drivers/CMSIS/subdir.mk | 2 +- .../Drivers/STM32WLxx_HAL_Driver/subdir.mk | 48 +++++++------- .../Release/Middlewares/LoRaWAN/subdir.mk | 66 +++++++++---------- .../Release/Middlewares/SubGHz_Phy/subdir.mk | 6 +- STM32CubeIDE/Release/Utilities/subdir.mk | 16 ++--- STS/Core/Inc/yunhorn_sts_prd_conf.h | 17 ++++- STS/Core/Src/yunhorn_sts_process.c | 3 + STS/TOF/App/app_tof_peoplecount.c | 16 +++++ STS/TOF/App/app_tof_peoplecount.h | 12 ++++ 21 files changed, 159 insertions(+), 111 deletions(-) diff --git a/Core/Inc/main.h b/Core/Inc/main.h index 8d33239..11b7966 100644 --- a/Core/Inc/main.h +++ b/Core/Inc/main.h @@ -113,7 +113,7 @@ void Error_Handler(void); #if (defined(TOF_1)||defined(TOF_2)||defined(STS_R1)||defined(STS_R5)||defined(STS_R1D)) #define VL53L0 -#elif defined(STS_P2) +#elif (defined(STS_P2)||defined(STS_T6)) #define VL53LX 1 #endif diff --git a/Core/Inc/utilities_def.h b/Core/Inc/utilities_def.h index c0fe858..32a810d 100644 --- a/Core/Inc/utilities_def.h +++ b/Core/Inc/utilities_def.h @@ -92,7 +92,7 @@ typedef enum #if defined(STS_R1)||defined(STS_R1D)||defined(STS_R5)||defined(STS_R2) CFG_SEQ_Task_YunhornSTSEventP4, /* TOF RANGE */ #endif -#ifdef STS_P2 +#if defined(STS_P2)||defined(STS_T6) CFG_SEQ_Task_YunhornSTSEventP5, /* TOF IN-OUT */ #endif #ifdef STS_R4 diff --git a/LoRaWAN/App/lora_app.c b/LoRaWAN/App/lora_app.c index 4c96e8b..9cb3d5c 100644 --- a/LoRaWAN/App/lora_app.c +++ b/LoRaWAN/App/lora_app.c @@ -752,6 +752,8 @@ static void SendTxData(void) UTIL_TIMER_Time_t nextTxIn = 0; #ifdef STS_P2 sts_people_count_sensor_data_t sts_p2_sensor_data={0x0}; +#elif defined(STS_T6) + sts_tof_presence_detection_sensor_data_t sts_t6_sensor_data={0x0}; #elif defined(STS_R1)||defined(STS_R1D)||defined(STS_R2)||defined(STS_R5) sts_tof_range_data_t sts_rr_sensor_data={0x0,0x0,0x0}; #elif defined(STS_R4) @@ -792,7 +794,11 @@ static void SendTxData(void) #ifdef VL53LX +#ifdef STS_P2 STS_people_count_sensor_Read(&sts_p2_sensor_data); +#elif defined(STS_T6) + STS_tof_presence_detection_sensor_Read(&sts_t6_sensor_data); +#endif #endif #ifdef VL53L0 diff --git a/STM32CubeIDE/.cproject b/STM32CubeIDE/.cproject index dc1d683..5434398 100644 --- a/STM32CubeIDE/.cproject +++ b/STM32CubeIDE/.cproject @@ -133,7 +133,7 @@ <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel.633674641" name="Debug level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel.value.g0" valueType="enumerated"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.1119592399" name="Optimization level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.value.os" valueType="enumerated"/> <option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.definedsymbols.2024044405" name="Define symbols (-D)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.definedsymbols" useByScannerDiscovery="false" valueType="definedSymbols"> - <listOptionValue builtIn="false" value="STS_P2"/> + <listOptionValue builtIn="false" value="STS_T6"/> <listOptionValue builtIn="false" value="CORE_CM4"/> <listOptionValue builtIn="false" value="USE_HAL_DRIVER"/> <listOptionValue builtIn="false" value="STM32WLE5xx"/> diff --git a/STM32CubeIDE/Release/Application/User/Core/subdir.mk b/STM32CubeIDE/Release/Application/User/Core/subdir.mk index 868d83e..a5d5258 100644 --- a/STM32CubeIDE/Release/Application/User/Core/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/Core/subdir.mk @@ -73,43 +73,43 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes Application/User/Core/adc.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/adc_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc_if.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/dma.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/dma.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/flash_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/flash_if.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/gpio.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/gpio.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/i2c.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/i2c.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/main.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/main.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/rtc.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/rtc.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/stm32_lpm_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32_lpm_if.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/stm32wlxx_hal_msp.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_hal_msp.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/stm32wlxx_it.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_it.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/subghz.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/subghz.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/sys_app.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_app.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/sys_debug.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_debug.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/sys_sensors.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_sensors.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/%.o Application/User/Core/%.su Application/User/Core/%.cyclo: ../Application/User/Core/%.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/timer_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/timer_if.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/usart.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/usart_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart_if.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-Core diff --git a/STM32CubeIDE/Release/Application/User/LoRaWAN/App/subdir.mk b/STM32CubeIDE/Release/Application/User/LoRaWAN/App/subdir.mk index 2f979cb..97b1ee8 100644 --- a/STM32CubeIDE/Release/Application/User/LoRaWAN/App/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/LoRaWAN/App/subdir.mk @@ -25,13 +25,13 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes Application/User/LoRaWAN/App/CayenneLpp.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/CayenneLpp.c Application/User/LoRaWAN/App/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/LoRaWAN/App/app_lorawan.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/app_lorawan.c Application/User/LoRaWAN/App/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/LoRaWAN/App/lora_app.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_app.c Application/User/LoRaWAN/App/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/LoRaWAN/App/lora_info.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_info.c Application/User/LoRaWAN/App/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-LoRaWAN-2f-App diff --git a/STM32CubeIDE/Release/Application/User/LoRaWAN/Target/subdir.mk b/STM32CubeIDE/Release/Application/User/LoRaWAN/Target/subdir.mk index c9c84fe..31957c9 100644 --- a/STM32CubeIDE/Release/Application/User/LoRaWAN/Target/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/LoRaWAN/Target/subdir.mk @@ -16,7 +16,7 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes Application/User/LoRaWAN/Target/radio_board_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/Target/radio_board_if.c Application/User/LoRaWAN/Target/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-LoRaWAN-2f-Target diff --git a/STM32CubeIDE/Release/Application/User/STS/Core/Src/subdir.mk b/STM32CubeIDE/Release/Application/User/STS/Core/Src/subdir.mk index 08bce5a..696d0a3 100644 --- a/STM32CubeIDE/Release/Application/User/STS/Core/Src/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/STS/Core/Src/subdir.mk @@ -22,11 +22,11 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes Application/User/STS/Core/Src/cmox_low_level.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/cmox_low_level.c Application/User/STS/Core/Src/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/STS/Core/Src/sts_cmox_hmac_sha.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/sts_cmox_hmac_sha.c Application/User/STS/Core/Src/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/STS/Core/Src/yunhorn_sts_process.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/yunhorn_sts_process.c Application/User/STS/Core/Src/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-STS-2f-Core-2f-Src diff --git a/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk b/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk index d7654f1..3a3daf7 100644 --- a/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk @@ -19,9 +19,9 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes Application/User/STS/TOF/App/app_tof.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c Application/User/STS/TOF/App/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/STS/TOF/App/app_tof_peoplecount.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c Application/User/STS/TOF/App/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-App diff --git a/STM32CubeIDE/Release/Application/User/STS/TOF/Target/subdir.mk b/STM32CubeIDE/Release/Application/User/STS/TOF/Target/subdir.mk index 7c2d37a..c8ddbb2 100644 --- a/STM32CubeIDE/Release/Application/User/STS/TOF/Target/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/STS/TOF/Target/subdir.mk @@ -16,7 +16,7 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes Application/User/STS/TOF/Target/app_tof_pin_conf.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/Target/app_tof_pin_conf.c Application/User/STS/TOF/Target/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-Target diff --git a/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l1x_uld/subdir.mk b/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l1x_uld/subdir.mk index c51f0d3..b3073e0 100644 --- a/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l1x_uld/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l1x_uld/subdir.mk @@ -25,13 +25,13 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_api.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_calibration.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/vl53l1_platform.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l1x_uld diff --git a/STM32CubeIDE/Release/Drivers/BSP/STM32WLxx_Nucleo/subdir.mk b/STM32CubeIDE/Release/Drivers/BSP/STM32WLxx_Nucleo/subdir.mk index 10302b9..9a73b44 100644 --- a/STM32CubeIDE/Release/Drivers/BSP/STM32WLxx_Nucleo/subdir.mk +++ b/STM32CubeIDE/Release/Drivers/BSP/STM32WLxx_Nucleo/subdir.mk @@ -19,9 +19,9 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.o: D:/ONEDRIVE/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.c Drivers/BSP/STM32WLxx_Nucleo/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo_radio.o: D:/ONEDRIVE/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo_radio.c Drivers/BSP/STM32WLxx_Nucleo/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Drivers-2f-BSP-2f-STM32WLxx_Nucleo diff --git a/STM32CubeIDE/Release/Drivers/CMSIS/subdir.mk b/STM32CubeIDE/Release/Drivers/CMSIS/subdir.mk index 869078e..ea0d16e 100644 --- a/STM32CubeIDE/Release/Drivers/CMSIS/subdir.mk +++ b/STM32CubeIDE/Release/Drivers/CMSIS/subdir.mk @@ -16,7 +16,7 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes Drivers/CMSIS/system_stm32wlxx.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/system_stm32wlxx.c Drivers/CMSIS/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Drivers-2f-CMSIS diff --git a/STM32CubeIDE/Release/Drivers/STM32WLxx_HAL_Driver/subdir.mk b/STM32CubeIDE/Release/Drivers/STM32WLxx_HAL_Driver/subdir.mk index 8a6ee2c..ca019d3 100644 --- a/STM32CubeIDE/Release/Drivers/STM32WLxx_HAL_Driver/subdir.mk +++ b/STM32CubeIDE/Release/Drivers/STM32WLxx_HAL_Driver/subdir.mk @@ -85,53 +85,53 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_cortex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_cortex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_exti.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_exti.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_gpio.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_gpio.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_subghz.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_ll_adc.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_ll_adc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Drivers-2f-STM32WLxx_HAL_Driver diff --git a/STM32CubeIDE/Release/Middlewares/LoRaWAN/subdir.mk b/STM32CubeIDE/Release/Middlewares/LoRaWAN/subdir.mk index 5759297..5286078 100644 --- a/STM32CubeIDE/Release/Middlewares/LoRaWAN/subdir.mk +++ b/STM32CubeIDE/Release/Middlewares/LoRaWAN/subdir.mk @@ -112,71 +112,71 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes Middlewares/LoRaWAN/LmHandler.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/LmHandler.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/LmhpCompliance.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpCompliance.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/LmhpPackagesRegistration.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpPackagesRegistration.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/LoRaMac.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMac.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/LoRaMacAdr.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacAdr.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/LoRaMacClassB.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacClassB.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/LoRaMacCommands.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCommands.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/LoRaMacConfirmQueue.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacConfirmQueue.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/LoRaMacCrypto.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCrypto.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/LoRaMacParser.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacParser.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/LoRaMacSerializer.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacSerializer.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/NvmDataMgmt.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/NvmDataMgmt.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/Region.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/Region.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionAS923.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAS923.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionAU915.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAU915.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionBaseUS.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionBaseUS.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionCN470.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionCN470A20.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A20.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionCN470A26.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A26.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionCN470B20.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B20.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionCN470B26.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B26.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionCN779.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN779.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionCommon.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCommon.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionEU433.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU433.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionEU868.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU868.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionIN865.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionIN865.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionKR920.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionKR920.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionRU864.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionRU864.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/RegionUS915.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionUS915.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/cmac.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/cmac.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/lorawan_aes.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/lorawan_aes.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/soft-se.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/soft-se.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/LoRaWAN/utilities.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Utilities/utilities.c Middlewares/LoRaWAN/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Middlewares-2f-LoRaWAN diff --git a/STM32CubeIDE/Release/Middlewares/SubGHz_Phy/subdir.mk b/STM32CubeIDE/Release/Middlewares/SubGHz_Phy/subdir.mk index d955283..cfc3fda 100644 --- a/STM32CubeIDE/Release/Middlewares/SubGHz_Phy/subdir.mk +++ b/STM32CubeIDE/Release/Middlewares/SubGHz_Phy/subdir.mk @@ -22,11 +22,11 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes Middlewares/SubGHz_Phy/radio.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio.c Middlewares/SubGHz_Phy/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/SubGHz_Phy/radio_driver.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_driver.c Middlewares/SubGHz_Phy/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Middlewares/SubGHz_Phy/radio_fw.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_fw.c Middlewares/SubGHz_Phy/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Middlewares-2f-SubGHz_Phy diff --git a/STM32CubeIDE/Release/Utilities/subdir.mk b/STM32CubeIDE/Release/Utilities/subdir.mk index c97e83c..a4317bb 100644 --- a/STM32CubeIDE/Release/Utilities/subdir.mk +++ b/STM32CubeIDE/Release/Utilities/subdir.mk @@ -37,21 +37,21 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes Utilities/stm32_adv_trace.o: D:/ONEDRIVE/STM32WLV13/Utilities/trace/adv_trace/stm32_adv_trace.c Utilities/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Utilities/stm32_lpm.o: D:/ONEDRIVE/STM32WLV13/Utilities/lpm/tiny_lpm/stm32_lpm.c Utilities/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Utilities/stm32_mem.o: D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_mem.c Utilities/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Utilities/stm32_seq.o: D:/ONEDRIVE/STM32WLV13/Utilities/sequencer/stm32_seq.c Utilities/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Utilities/stm32_systime.o: D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_systime.c Utilities/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Utilities/stm32_timer.o: D:/ONEDRIVE/STM32WLV13/Utilities/timer/stm32_timer.c Utilities/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Utilities/stm32_tiny_sscanf.o: D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_tiny_sscanf.c Utilities/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Utilities/stm32_tiny_vsnprintf.o: D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_tiny_vsnprintf.c Utilities/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Utilities diff --git a/STS/Core/Inc/yunhorn_sts_prd_conf.h b/STS/Core/Inc/yunhorn_sts_prd_conf.h index 27e18ba..ad08d0b 100644 --- a/STS/Core/Inc/yunhorn_sts_prd_conf.h +++ b/STS/Core/Inc/yunhorn_sts_prd_conf.h @@ -54,6 +54,8 @@ #define YUNHORN_STS_P2_ENABLED 1U #elif defined(STS_O6T) /* STS_O6T for occupancy sensor via ToF */ #define YUNHORN_STS_O6T_ENABLED 1U +#elif defined(STS_T6) /* STS_O6T for occupancy sensor via ToF */ +#define YUNHORN_STS_T6_ENABLED 1U #elif defined(STS_R4) /* STS_O6T for occupancy sensor via ToF */ #define YUNHORN_STS_R4_ENABLED 1U #endif @@ -125,6 +127,15 @@ #endif +#ifdef STS_T6 +#define YUNHORN_STS_T6_LORA_APP_DATA_PORT 14U +#define YUNHORN_STS_T6_LORA_APP_HTBT_PORT 15U +#define YUNHORN_STS_PRD_STRING "STS_T6" +#define sts_mtmcode1 0U +#define sts_mtmcode2 14U + +#endif + #ifdef STS_M1 #define YUNHORN_STS_M1_LORA_APP_DATA_PORT 6U #define YUNHORN_STS_M1_LORA_APP_HTBT_PORT 6U @@ -153,15 +164,15 @@ //#define YUNHORN_STS_M10_LORA_APP_DATA_PORT 9U //#define YUNHORN_STS_M10_LORA_APP_HTBT_PORT 9U -#define sts_senddataport (YUNHORN_STS_P2_LORA_APP_DATA_PORT) -#define sts_sendhtbtport (YUNHORN_STS_P2_LORA_APP_HTBT_PORT) +#define sts_senddataport (YUNHORN_STS_T6_LORA_APP_DATA_PORT) +#define sts_sendhtbtport (YUNHORN_STS_T6_LORA_APP_HTBT_PORT) #define sts_appctrlport (YUNHORN_STS_USER_APP_CTRL_PORT) #define sts_appctrl_reply_port (YUNHORN_STS_USER_APP_CTRL_REPLY_PORT) /* General Settings */ #define MajorVer 24U #define MinorVer 9U -#define SubMinorVer 20U +#define SubMinorVer 30U #define FirmwareVersion 3U #define YUNHORN_STS_MAX_NVM_CFG_SIZE 64U #define YUNHORN_STS_AC_CODE_SIZE 20U diff --git a/STS/Core/Src/yunhorn_sts_process.c b/STS/Core/Src/yunhorn_sts_process.c index f48a1cd..81607ef 100644 --- a/STS/Core/Src/yunhorn_sts_process.c +++ b/STS/Core/Src/yunhorn_sts_process.c @@ -417,7 +417,10 @@ void STS_YunhornSTSEventP5_Process(void) { #ifdef STS_P2 STS_TOF_VL53LX_PeopleCounting_Process_Start(); +#elif defined(STS_T6) + STS_TOF_VL53LX_PresenceDetection_Process_Start(); #endif + } /* diff --git a/STS/TOF/App/app_tof_peoplecount.c b/STS/TOF/App/app_tof_peoplecount.c index 08b1f59..3883e14 100644 --- a/STS/TOF/App/app_tof_peoplecount.c +++ b/STS/TOF/App/app_tof_peoplecount.c @@ -224,6 +224,10 @@ int ProcessPeopleCountingData(int16_t Distance, uint8_t zone, uint8_t RangeStatu return(PeopleCount); } +void STS_tof_presence_detection_sensor_Read(sts_tof_presence_detection_sensor_data_t *sts_t6_sensor_data) +{ + sts_t6_sensor_data->tof_range_presence_state = sts_tof_presence_state; +} void STS_people_count_sensor_Read(sts_people_count_sensor_data_t *sts_p2_sensor_data) { @@ -372,6 +376,18 @@ void STS_TOF_VL53LX_PeopleCounting_Process_Start(void) } +void STS_TOF_VL53LX_PresenceDetection_Process_Start(void) +{ + + //APP_LOG(TS_OFF, VLEVEL_M,"############### TOF VL53LX_ PRESENCE DETECTION SUB-PROCESS \r\n"); + { + status = sts_tof_vl53lx_presence_detection_start(); + sts_people_count_sensor_data.Count_Valid = (status ==0)? 1:0; + //APP_LOG(TS_OFF, VLEVEL_M,"############### SUB-PROCESS running .... \r\n"); + } + +} + int sts_tof_vl53lx_peoplecount_init(void) { //int8_t error; diff --git a/STS/TOF/App/app_tof_peoplecount.h b/STS/TOF/App/app_tof_peoplecount.h index 1e6ecb6..ad7dcde 100644 --- a/STS/TOF/App/app_tof_peoplecount.h +++ b/STS/TOF/App/app_tof_peoplecount.h @@ -137,13 +137,25 @@ } sts_people_count_sensor_data_t; + typedef struct STS_TOF_Presence_Detection_Sensor_Data_Type { + uint8_t tof_range_presence_state; // 1: presence, 0: no presence + uint8_t gesture_multi_state; // 0: push, 1: swing left, 2: swing right + uint8_t tof_motion_presence_state; + uint8_t measure_window_threshold_low_dm; // dm= 100mm = 10 cm, low = 0 dm + uint8_t measure_window_threshold_high_dm; // dm= 100mm = 10 cm, high=40dm + uint8_t measure_critiera; // below, 0, in window 1, above 2 + uint8_t Count_Valid; + } sts_tof_presence_detection_sensor_data_t; + void STS_TOF_VL53LX_PeopleCounting_Process_Init(void); void STS_TOF_VL53LX_PeopleCounting_Process_Start(void); +void STS_TOF_VL53LX_PresenceDetection_Process_Start(void); int sts_tof_vl53lx_peoplecount_init(void); int sts_tof_vl53lx_peoplecount_start(void); //int sts_tof_vl53lx_peoplecount(void); int ProcessPeopleCountingData(int16_t Distance, uint8_t zone, uint8_t RangeStatus); void STS_people_count_sensor_Read(sts_people_count_sensor_data_t *sts_p2_sensor_data); +void STS_tof_presence_detection_sensor_Read(sts_tof_presence_detection_sensor_data_t *sts_t6_sensor_data); #ifdef __cplusplus } -- 2.40.1 From e4126783fb16747526dcc4e727afce4c0ce59b17 Mon Sep 17 00:00:00 2001 From: sundp <dp.s@yunhorn.com> Date: Sun, 6 Oct 2024 16:45:13 +0800 Subject: [PATCH 2/4] WIP, revised distance mode and config --- README.md | 16 +- .../com.st.stm32cube.ide.mcu.sfrview.prefs | 4 +- STM32CubeIDE/.settings/language.settings.xml | 4 +- .../Application/User/STS/TOF/App/subdir.mk | 64 +- .../Application/User/STS/TOF/Target/subdir.mk | 54 +- .../User/STS/TOF/vl53l1x_uld/subdir.mk | 84 +- .../Release/Application/User/Core/subdir.mk | 72 +- .../Application/User/LoRaWAN/App/subdir.mk | 16 +- .../Application/User/LoRaWAN/Target/subdir.mk | 4 +- .../Application/User/STS/Core/Src/subdir.mk | 60 +- .../Application/User/STS/TOF/App/subdir.mk | 54 +- .../Application/User/STS/TOF/Target/subdir.mk | 48 +- .../User/STS/TOF/vl53l0x/subdir.mk | 66 +- .../User/STS/TOF/vl53l1x_uld/subdir.mk | 66 +- .../Drivers/BSP/STM32WLxx_Nucleo/subdir.mk | 8 +- STM32CubeIDE/Release/Drivers/CMSIS/subdir.mk | 4 +- .../Drivers/STM32WLxx_HAL_Driver/subdir.mk | 96 +- .../Release/Middlewares/LoRaWAN/subdir.mk | 132 +- .../Release/Middlewares/SubGHz_Phy/subdir.mk | 12 +- STM32CubeIDE/Release/Utilities/subdir.mk | 32 +- STM32CubeIDE/Release/makefile | 5 +- STM32CubeIDE/Release/sources.mk | 1 + STS/TOF/App/X-WL55_WLE5_53L0X.c | 502 +- STS/TOF/App/X-WL55_WLE5_53L0X.h | 602 +- STS/TOF/App/app_tof_peoplecount.c | 79 +- STS/TOF/App/app_tof_peoplecount.h | 8 +- STS/TOF/App/app_tof_vl53l0x_range.c | 906 +-- STS/TOF/vl53l0x/vl53l0x_api.c | 6070 ++++++++--------- STS/TOF/vl53l0x/vl53l0x_api.h | 3900 +++++------ STS/TOF/vl53l0x/vl53l0x_api_calibration.c | 2552 +++---- STS/TOF/vl53l0x/vl53l0x_api_calibration.h | 170 +- STS/TOF/vl53l0x/vl53l0x_api_core.c | 4478 ++++++------ STS/TOF/vl53l0x/vl53l0x_api_core.h | 216 +- STS/TOF/vl53l0x/vl53l0x_api_ranging.c | 84 +- STS/TOF/vl53l0x/vl53l0x_api_ranging.h | 94 +- STS/TOF/vl53l0x/vl53l0x_api_strings.c | 924 +-- STS/TOF/vl53l0x/vl53l0x_api_strings.h | 554 +- STS/TOF/vl53l0x/vl53l0x_def.h | 1280 ++-- STS/TOF/vl53l0x/vl53l0x_device.h | 514 +- .../vl53l0x_interrupt_threshold_settings.h | 388 +- STS/TOF/vl53l0x/vl53l0x_platform.c | 474 +- STS/TOF/vl53l0x/vl53l0x_platform.h | 534 +- STS/TOF/vl53l0x/vl53l0x_platform_log.c | 118 +- STS/TOF/vl53l0x/vl53l0x_platform_log.h | 242 +- STS/TOF/vl53l0x/vl53l0x_tuning.h | 292 +- STS/TOF/vl53l0x/vl53l0x_types.h | 222 +- hk_as923_decoder.js | 1132 +-- 47 files changed, 13631 insertions(+), 13606 deletions(-) diff --git a/README.md b/README.md index 049426a..f81cc4b 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ ---- STS-P2 --- - 2024 09 11 START P2A - 2024 09 12 GOOD P2A merge to P2 - 2024 09 20 Overall good of Yunhorn STS AUTO RESPONDER PARSE - - 2024 09 20 START RR - 2024 09 25 START R1D - 2024 09 27 GOOD STS-R4 on single board RM2_1 +--- STS-P2 --- + 2024 09 11 START P2A + 2024 09 12 GOOD P2A merge to P2 + 2024 09 20 Overall good of Yunhorn STS AUTO RESPONDER PARSE + + 2024 09 20 START RR + 2024 09 25 START R1D + 2024 09 27 GOOD STS-R4 on single board RM2_1 diff --git a/STM32CubeIDE/.settings/com.st.stm32cube.ide.mcu.sfrview.prefs b/STM32CubeIDE/.settings/com.st.stm32cube.ide.mcu.sfrview.prefs index 98a69fc..9a16796 100644 --- a/STM32CubeIDE/.settings/com.st.stm32cube.ide.mcu.sfrview.prefs +++ b/STM32CubeIDE/.settings/com.st.stm32cube.ide.mcu.sfrview.prefs @@ -1,2 +1,2 @@ -eclipse.preferences.version=1 -sfrviewstate={"fFavorites"\:{"fLists"\:{}},"fProperties"\:{"fNodeProperties"\:{}}} +eclipse.preferences.version=1 +sfrviewstate={"fFavorites"\:{"fLists"\:{}},"fProperties"\:{"fNodeProperties"\:{}}} diff --git a/STM32CubeIDE/.settings/language.settings.xml b/STM32CubeIDE/.settings/language.settings.xml index 0ec3934..515be7c 100644 --- a/STM32CubeIDE/.settings/language.settings.xml +++ b/STM32CubeIDE/.settings/language.settings.xml @@ -5,7 +5,7 @@ <provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> <provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/> <provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/> - <provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="1048471218779752885" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> + <provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1137263677548078264" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> <language-scope id="org.eclipse.cdt.core.gcc"/> <language-scope id="org.eclipse.cdt.core.g++"/> </provider> @@ -16,7 +16,7 @@ <provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> <provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/> <provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/> - <provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="1048471218779752885" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> + <provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1137263677548078264" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> <language-scope id="org.eclipse.cdt.core.gcc"/> <language-scope id="org.eclipse.cdt.core.g++"/> </provider> diff --git a/STM32CubeIDE/Debug/Application/User/STS/TOF/App/subdir.mk b/STM32CubeIDE/Debug/Application/User/STS/TOF/App/subdir.mk index 03015e8..790f211 100644 --- a/STM32CubeIDE/Debug/Application/User/STS/TOF/App/subdir.mk +++ b/STM32CubeIDE/Debug/Application/User/STS/TOF/App/subdir.mk @@ -1,32 +1,32 @@ -################################################################################ -# Automatically-generated file. Do not edit! -# Toolchain: GNU Tools for STM32 (12.3.rel1) -################################################################################ - -# Add inputs and outputs from these tool invocations to the build variables -C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c - -OBJS += \ -./Application/User/STS/TOF/App/app_tof.o \ -./Application/User/STS/TOF/App/app_tof_peoplecount.o - -C_DEPS += \ -./Application/User/STS/TOF/App/app_tof.d \ -./Application/User/STS/TOF/App/app_tof_peoplecount.d - - -# Each subdirectory must supply rules for building sources it contributes -Application/User/STS/TOF/App/app_tof.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c Application/User/STS/TOF/App/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/App/app_tof_peoplecount.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c Application/User/STS/TOF/App/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" - -clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-App - -clean-Application-2f-User-2f-STS-2f-TOF-2f-App: - -$(RM) ./Application/User/STS/TOF/App/app_tof.cyclo ./Application/User/STS/TOF/App/app_tof.d ./Application/User/STS/TOF/App/app_tof.o ./Application/User/STS/TOF/App/app_tof.su ./Application/User/STS/TOF/App/app_tof_peoplecount.cyclo ./Application/User/STS/TOF/App/app_tof_peoplecount.d ./Application/User/STS/TOF/App/app_tof_peoplecount.o ./Application/User/STS/TOF/App/app_tof_peoplecount.su - -.PHONY: clean-Application-2f-User-2f-STS-2f-TOF-2f-App - +################################################################################ +# Automatically-generated file. Do not edit! +# Toolchain: GNU Tools for STM32 (12.3.rel1) +################################################################################ + +# Add inputs and outputs from these tool invocations to the build variables +C_SRCS += \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c + +OBJS += \ +./Application/User/STS/TOF/App/app_tof.o \ +./Application/User/STS/TOF/App/app_tof_peoplecount.o + +C_DEPS += \ +./Application/User/STS/TOF/App/app_tof.d \ +./Application/User/STS/TOF/App/app_tof_peoplecount.d + + +# Each subdirectory must supply rules for building sources it contributes +Application/User/STS/TOF/App/app_tof.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c Application/User/STS/TOF/App/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" +Application/User/STS/TOF/App/app_tof_peoplecount.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c Application/User/STS/TOF/App/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + +clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-App + +clean-Application-2f-User-2f-STS-2f-TOF-2f-App: + -$(RM) ./Application/User/STS/TOF/App/app_tof.cyclo ./Application/User/STS/TOF/App/app_tof.d ./Application/User/STS/TOF/App/app_tof.o ./Application/User/STS/TOF/App/app_tof.su ./Application/User/STS/TOF/App/app_tof_peoplecount.cyclo ./Application/User/STS/TOF/App/app_tof_peoplecount.d ./Application/User/STS/TOF/App/app_tof_peoplecount.o ./Application/User/STS/TOF/App/app_tof_peoplecount.su + +.PHONY: clean-Application-2f-User-2f-STS-2f-TOF-2f-App + diff --git a/STM32CubeIDE/Debug/Application/User/STS/TOF/Target/subdir.mk b/STM32CubeIDE/Debug/Application/User/STS/TOF/Target/subdir.mk index 323fd97..4f433dc 100644 --- a/STM32CubeIDE/Debug/Application/User/STS/TOF/Target/subdir.mk +++ b/STM32CubeIDE/Debug/Application/User/STS/TOF/Target/subdir.mk @@ -1,27 +1,27 @@ -################################################################################ -# Automatically-generated file. Do not edit! -# Toolchain: GNU Tools for STM32 (12.3.rel1) -################################################################################ - -# Add inputs and outputs from these tool invocations to the build variables -C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/Target/app_tof_pin_conf.c - -OBJS += \ -./Application/User/STS/TOF/Target/app_tof_pin_conf.o - -C_DEPS += \ -./Application/User/STS/TOF/Target/app_tof_pin_conf.d - - -# Each subdirectory must supply rules for building sources it contributes -Application/User/STS/TOF/Target/app_tof_pin_conf.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/Target/app_tof_pin_conf.c Application/User/STS/TOF/Target/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" - -clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-Target - -clean-Application-2f-User-2f-STS-2f-TOF-2f-Target: - -$(RM) ./Application/User/STS/TOF/Target/app_tof_pin_conf.cyclo ./Application/User/STS/TOF/Target/app_tof_pin_conf.d ./Application/User/STS/TOF/Target/app_tof_pin_conf.o ./Application/User/STS/TOF/Target/app_tof_pin_conf.su - -.PHONY: clean-Application-2f-User-2f-STS-2f-TOF-2f-Target - +################################################################################ +# Automatically-generated file. Do not edit! +# Toolchain: GNU Tools for STM32 (12.3.rel1) +################################################################################ + +# Add inputs and outputs from these tool invocations to the build variables +C_SRCS += \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/Target/app_tof_pin_conf.c + +OBJS += \ +./Application/User/STS/TOF/Target/app_tof_pin_conf.o + +C_DEPS += \ +./Application/User/STS/TOF/Target/app_tof_pin_conf.d + + +# Each subdirectory must supply rules for building sources it contributes +Application/User/STS/TOF/Target/app_tof_pin_conf.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/Target/app_tof_pin_conf.c Application/User/STS/TOF/Target/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + +clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-Target + +clean-Application-2f-User-2f-STS-2f-TOF-2f-Target: + -$(RM) ./Application/User/STS/TOF/Target/app_tof_pin_conf.cyclo ./Application/User/STS/TOF/Target/app_tof_pin_conf.d ./Application/User/STS/TOF/Target/app_tof_pin_conf.o ./Application/User/STS/TOF/Target/app_tof_pin_conf.su + +.PHONY: clean-Application-2f-User-2f-STS-2f-TOF-2f-Target + diff --git a/STM32CubeIDE/Debug/Application/User/STS/TOF/vl53l1x_uld/subdir.mk b/STM32CubeIDE/Debug/Application/User/STS/TOF/vl53l1x_uld/subdir.mk index cc13d50..db6f1e3 100644 --- a/STM32CubeIDE/Debug/Application/User/STS/TOF/vl53l1x_uld/subdir.mk +++ b/STM32CubeIDE/Debug/Application/User/STS/TOF/vl53l1x_uld/subdir.mk @@ -1,42 +1,42 @@ -################################################################################ -# Automatically-generated file. Do not edit! -# Toolchain: GNU Tools for STM32 (12.3.rel1) -################################################################################ - -# Add inputs and outputs from these tool invocations to the build variables -C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_api.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_calibration.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/vl53l1_platform.c - -OBJS += \ -./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.o \ -./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.o \ -./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.o \ -./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.o - -C_DEPS += \ -./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.d \ -./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.d \ -./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.d \ -./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.d - - -# Each subdirectory must supply rules for building sources it contributes -Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_api.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_calibration.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/vl53l1_platform.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" - -clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l1x_uld - -clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l1x_uld: - -$(RM) ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.cyclo ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.d ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.o ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.su ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.cyclo ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.d ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.o ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.su ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.cyclo ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.d ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.o ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.su ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.cyclo ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.d ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.o ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.su - -.PHONY: clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l1x_uld - +################################################################################ +# Automatically-generated file. Do not edit! +# Toolchain: GNU Tools for STM32 (12.3.rel1) +################################################################################ + +# Add inputs and outputs from these tool invocations to the build variables +C_SRCS += \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_api.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_calibration.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/vl53l1_platform.c + +OBJS += \ +./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.o \ +./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.o \ +./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.o \ +./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.o + +C_DEPS += \ +./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.d \ +./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.d \ +./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.d \ +./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.d + + +# Each subdirectory must supply rules for building sources it contributes +Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_api.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" +Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_calibration.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" +Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" +Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/vl53l1_platform.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + +clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l1x_uld + +clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l1x_uld: + -$(RM) ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.cyclo ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.d ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.o ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.su ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.cyclo ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.d ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.o ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.su ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.cyclo ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.d ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.o ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.su ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.cyclo ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.d ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.o ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.su + +.PHONY: clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l1x_uld + diff --git a/STM32CubeIDE/Release/Application/User/Core/subdir.mk b/STM32CubeIDE/Release/Application/User/Core/subdir.mk index a5d5258..e0450bb 100644 --- a/STM32CubeIDE/Release/Application/User/Core/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/Core/subdir.mk @@ -5,26 +5,26 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc_if.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/dma.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/flash_if.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/gpio.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/i2c.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/main.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/rtc.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32_lpm_if.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_hal_msp.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_it.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/subghz.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_app.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_debug.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_sensors.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc_if.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/dma.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/flash_if.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/gpio.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/i2c.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/main.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/rtc.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32_lpm_if.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_hal_msp.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_it.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/subghz.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_app.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_debug.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_sensors.c \ ../Application/User/Core/syscalls.c \ ../Application/User/Core/sysmem.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/timer_if.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart_if.c +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/timer_if.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart_if.c OBJS += \ ./Application/User/Core/adc.o \ @@ -72,43 +72,43 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Application/User/Core/adc.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc.c Application/User/Core/subdir.mk +Application/User/Core/adc.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/adc_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc_if.c Application/User/Core/subdir.mk +Application/User/Core/adc_if.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc_if.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/dma.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/dma.c Application/User/Core/subdir.mk +Application/User/Core/dma.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/dma.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/flash_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/flash_if.c Application/User/Core/subdir.mk +Application/User/Core/flash_if.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/flash_if.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/gpio.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/gpio.c Application/User/Core/subdir.mk +Application/User/Core/gpio.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/gpio.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/i2c.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/i2c.c Application/User/Core/subdir.mk +Application/User/Core/i2c.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/i2c.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/main.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/main.c Application/User/Core/subdir.mk +Application/User/Core/main.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/main.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/rtc.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/rtc.c Application/User/Core/subdir.mk +Application/User/Core/rtc.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/rtc.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/stm32_lpm_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32_lpm_if.c Application/User/Core/subdir.mk +Application/User/Core/stm32_lpm_if.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32_lpm_if.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/stm32wlxx_hal_msp.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_hal_msp.c Application/User/Core/subdir.mk +Application/User/Core/stm32wlxx_hal_msp.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_hal_msp.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/stm32wlxx_it.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_it.c Application/User/Core/subdir.mk +Application/User/Core/stm32wlxx_it.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_it.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/subghz.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/subghz.c Application/User/Core/subdir.mk +Application/User/Core/subghz.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/subghz.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/sys_app.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_app.c Application/User/Core/subdir.mk +Application/User/Core/sys_app.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_app.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/sys_debug.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_debug.c Application/User/Core/subdir.mk +Application/User/Core/sys_debug.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_debug.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/sys_sensors.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_sensors.c Application/User/Core/subdir.mk +Application/User/Core/sys_sensors.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_sensors.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/%.o Application/User/Core/%.su Application/User/Core/%.cyclo: ../Application/User/Core/%.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/timer_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/timer_if.c Application/User/Core/subdir.mk +Application/User/Core/timer_if.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/timer_if.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/usart.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart.c Application/User/Core/subdir.mk +Application/User/Core/usart.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/usart_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart_if.c Application/User/Core/subdir.mk +Application/User/Core/usart_if.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart_if.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-Core diff --git a/STM32CubeIDE/Release/Application/User/LoRaWAN/App/subdir.mk b/STM32CubeIDE/Release/Application/User/LoRaWAN/App/subdir.mk index 97b1ee8..6063bbc 100644 --- a/STM32CubeIDE/Release/Application/User/LoRaWAN/App/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/LoRaWAN/App/subdir.mk @@ -5,10 +5,10 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/CayenneLpp.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/app_lorawan.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_app.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_info.c +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/CayenneLpp.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/app_lorawan.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_app.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_info.c OBJS += \ ./Application/User/LoRaWAN/App/CayenneLpp.o \ @@ -24,13 +24,13 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Application/User/LoRaWAN/App/CayenneLpp.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/CayenneLpp.c Application/User/LoRaWAN/App/subdir.mk +Application/User/LoRaWAN/App/CayenneLpp.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/CayenneLpp.c Application/User/LoRaWAN/App/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/LoRaWAN/App/app_lorawan.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/app_lorawan.c Application/User/LoRaWAN/App/subdir.mk +Application/User/LoRaWAN/App/app_lorawan.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/app_lorawan.c Application/User/LoRaWAN/App/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/LoRaWAN/App/lora_app.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_app.c Application/User/LoRaWAN/App/subdir.mk +Application/User/LoRaWAN/App/lora_app.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_app.c Application/User/LoRaWAN/App/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/LoRaWAN/App/lora_info.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_info.c Application/User/LoRaWAN/App/subdir.mk +Application/User/LoRaWAN/App/lora_info.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_info.c Application/User/LoRaWAN/App/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-LoRaWAN-2f-App diff --git a/STM32CubeIDE/Release/Application/User/LoRaWAN/Target/subdir.mk b/STM32CubeIDE/Release/Application/User/LoRaWAN/Target/subdir.mk index 31957c9..58976f4 100644 --- a/STM32CubeIDE/Release/Application/User/LoRaWAN/Target/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/LoRaWAN/Target/subdir.mk @@ -5,7 +5,7 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/Target/radio_board_if.c +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/Target/radio_board_if.c OBJS += \ ./Application/User/LoRaWAN/Target/radio_board_if.o @@ -15,7 +15,7 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Application/User/LoRaWAN/Target/radio_board_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/Target/radio_board_if.c Application/User/LoRaWAN/Target/subdir.mk +Application/User/LoRaWAN/Target/radio_board_if.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/Target/radio_board_if.c Application/User/LoRaWAN/Target/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-LoRaWAN-2f-Target diff --git a/STM32CubeIDE/Release/Application/User/STS/Core/Src/subdir.mk b/STM32CubeIDE/Release/Application/User/STS/Core/Src/subdir.mk index 696d0a3..c07f08d 100644 --- a/STM32CubeIDE/Release/Application/User/STS/Core/Src/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/STS/Core/Src/subdir.mk @@ -1,37 +1,37 @@ -################################################################################ -# Automatically-generated file. Do not edit! -# Toolchain: GNU Tools for STM32 (12.3.rel1) -################################################################################ - -# Add inputs and outputs from these tool invocations to the build variables +################################################################################ +# Automatically-generated file. Do not edit! +# Toolchain: GNU Tools for STM32 (12.3.rel1) +################################################################################ + +# Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/cmox_low_level.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/sts_cmox_hmac_sha.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/yunhorn_sts_process.c - +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/cmox_low_level.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/sts_cmox_hmac_sha.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/yunhorn_sts_process.c + OBJS += \ ./Application/User/STS/Core/Src/cmox_low_level.o \ ./Application/User/STS/Core/Src/sts_cmox_hmac_sha.o \ -./Application/User/STS/Core/Src/yunhorn_sts_process.o - +./Application/User/STS/Core/Src/yunhorn_sts_process.o + C_DEPS += \ ./Application/User/STS/Core/Src/cmox_low_level.d \ ./Application/User/STS/Core/Src/sts_cmox_hmac_sha.d \ -./Application/User/STS/Core/Src/yunhorn_sts_process.d - - -# Each subdirectory must supply rules for building sources it contributes -Application/User/STS/Core/Src/cmox_low_level.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/cmox_low_level.c Application/User/STS/Core/Src/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/Core/Src/sts_cmox_hmac_sha.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/sts_cmox_hmac_sha.c Application/User/STS/Core/Src/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/Core/Src/yunhorn_sts_process.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/yunhorn_sts_process.c Application/User/STS/Core/Src/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" - -clean: clean-Application-2f-User-2f-STS-2f-Core-2f-Src - -clean-Application-2f-User-2f-STS-2f-Core-2f-Src: - -$(RM) ./Application/User/STS/Core/Src/cmox_low_level.cyclo ./Application/User/STS/Core/Src/cmox_low_level.d ./Application/User/STS/Core/Src/cmox_low_level.o ./Application/User/STS/Core/Src/cmox_low_level.su ./Application/User/STS/Core/Src/sts_cmox_hmac_sha.cyclo ./Application/User/STS/Core/Src/sts_cmox_hmac_sha.d ./Application/User/STS/Core/Src/sts_cmox_hmac_sha.o ./Application/User/STS/Core/Src/sts_cmox_hmac_sha.su ./Application/User/STS/Core/Src/yunhorn_sts_process.cyclo ./Application/User/STS/Core/Src/yunhorn_sts_process.d ./Application/User/STS/Core/Src/yunhorn_sts_process.o ./Application/User/STS/Core/Src/yunhorn_sts_process.su - -.PHONY: clean-Application-2f-User-2f-STS-2f-Core-2f-Src - +./Application/User/STS/Core/Src/yunhorn_sts_process.d + + +# Each subdirectory must supply rules for building sources it contributes +Application/User/STS/Core/Src/cmox_low_level.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/cmox_low_level.c Application/User/STS/Core/Src/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" +Application/User/STS/Core/Src/sts_cmox_hmac_sha.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/sts_cmox_hmac_sha.c Application/User/STS/Core/Src/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" +Application/User/STS/Core/Src/yunhorn_sts_process.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/yunhorn_sts_process.c Application/User/STS/Core/Src/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + +clean: clean-Application-2f-User-2f-STS-2f-Core-2f-Src + +clean-Application-2f-User-2f-STS-2f-Core-2f-Src: + -$(RM) ./Application/User/STS/Core/Src/cmox_low_level.cyclo ./Application/User/STS/Core/Src/cmox_low_level.d ./Application/User/STS/Core/Src/cmox_low_level.o ./Application/User/STS/Core/Src/cmox_low_level.su ./Application/User/STS/Core/Src/sts_cmox_hmac_sha.cyclo ./Application/User/STS/Core/Src/sts_cmox_hmac_sha.d ./Application/User/STS/Core/Src/sts_cmox_hmac_sha.o ./Application/User/STS/Core/Src/sts_cmox_hmac_sha.su ./Application/User/STS/Core/Src/yunhorn_sts_process.cyclo ./Application/User/STS/Core/Src/yunhorn_sts_process.d ./Application/User/STS/Core/Src/yunhorn_sts_process.o ./Application/User/STS/Core/Src/yunhorn_sts_process.su + +.PHONY: clean-Application-2f-User-2f-STS-2f-Core-2f-Src + diff --git a/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk b/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk index 3a3daf7..d06e63c 100644 --- a/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk @@ -1,32 +1,32 @@ -################################################################################ -# Automatically-generated file. Do not edit! -# Toolchain: GNU Tools for STM32 (12.3.rel1) -################################################################################ - -# Add inputs and outputs from these tool invocations to the build variables +################################################################################ +# Automatically-generated file. Do not edit! +# Toolchain: GNU Tools for STM32 (12.3.rel1) +################################################################################ + +# Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c - +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c + OBJS += \ ./Application/User/STS/TOF/App/app_tof.o \ -./Application/User/STS/TOF/App/app_tof_peoplecount.o - +./Application/User/STS/TOF/App/app_tof_peoplecount.o + C_DEPS += \ ./Application/User/STS/TOF/App/app_tof.d \ -./Application/User/STS/TOF/App/app_tof_peoplecount.d - - -# Each subdirectory must supply rules for building sources it contributes -Application/User/STS/TOF/App/app_tof.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c Application/User/STS/TOF/App/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/App/app_tof_peoplecount.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c Application/User/STS/TOF/App/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" - -clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-App - -clean-Application-2f-User-2f-STS-2f-TOF-2f-App: - -$(RM) ./Application/User/STS/TOF/App/app_tof.cyclo ./Application/User/STS/TOF/App/app_tof.d ./Application/User/STS/TOF/App/app_tof.o ./Application/User/STS/TOF/App/app_tof.su ./Application/User/STS/TOF/App/app_tof_peoplecount.cyclo ./Application/User/STS/TOF/App/app_tof_peoplecount.d ./Application/User/STS/TOF/App/app_tof_peoplecount.o ./Application/User/STS/TOF/App/app_tof_peoplecount.su - -.PHONY: clean-Application-2f-User-2f-STS-2f-TOF-2f-App - +./Application/User/STS/TOF/App/app_tof_peoplecount.d + + +# Each subdirectory must supply rules for building sources it contributes +Application/User/STS/TOF/App/app_tof.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c Application/User/STS/TOF/App/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" +Application/User/STS/TOF/App/app_tof_peoplecount.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c Application/User/STS/TOF/App/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + +clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-App + +clean-Application-2f-User-2f-STS-2f-TOF-2f-App: + -$(RM) ./Application/User/STS/TOF/App/app_tof.cyclo ./Application/User/STS/TOF/App/app_tof.d ./Application/User/STS/TOF/App/app_tof.o ./Application/User/STS/TOF/App/app_tof.su ./Application/User/STS/TOF/App/app_tof_peoplecount.cyclo ./Application/User/STS/TOF/App/app_tof_peoplecount.d ./Application/User/STS/TOF/App/app_tof_peoplecount.o ./Application/User/STS/TOF/App/app_tof_peoplecount.su + +.PHONY: clean-Application-2f-User-2f-STS-2f-TOF-2f-App + diff --git a/STM32CubeIDE/Release/Application/User/STS/TOF/Target/subdir.mk b/STM32CubeIDE/Release/Application/User/STS/TOF/Target/subdir.mk index c8ddbb2..671c64e 100644 --- a/STM32CubeIDE/Release/Application/User/STS/TOF/Target/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/STS/TOF/Target/subdir.mk @@ -1,27 +1,27 @@ -################################################################################ -# Automatically-generated file. Do not edit! -# Toolchain: GNU Tools for STM32 (12.3.rel1) -################################################################################ - -# Add inputs and outputs from these tool invocations to the build variables +################################################################################ +# Automatically-generated file. Do not edit! +# Toolchain: GNU Tools for STM32 (12.3.rel1) +################################################################################ + +# Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/Target/app_tof_pin_conf.c - +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/Target/app_tof_pin_conf.c + OBJS += \ -./Application/User/STS/TOF/Target/app_tof_pin_conf.o - +./Application/User/STS/TOF/Target/app_tof_pin_conf.o + C_DEPS += \ -./Application/User/STS/TOF/Target/app_tof_pin_conf.d - - -# Each subdirectory must supply rules for building sources it contributes -Application/User/STS/TOF/Target/app_tof_pin_conf.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/Target/app_tof_pin_conf.c Application/User/STS/TOF/Target/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" - -clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-Target - -clean-Application-2f-User-2f-STS-2f-TOF-2f-Target: - -$(RM) ./Application/User/STS/TOF/Target/app_tof_pin_conf.cyclo ./Application/User/STS/TOF/Target/app_tof_pin_conf.d ./Application/User/STS/TOF/Target/app_tof_pin_conf.o ./Application/User/STS/TOF/Target/app_tof_pin_conf.su - -.PHONY: clean-Application-2f-User-2f-STS-2f-TOF-2f-Target - +./Application/User/STS/TOF/Target/app_tof_pin_conf.d + + +# Each subdirectory must supply rules for building sources it contributes +Application/User/STS/TOF/Target/app_tof_pin_conf.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/Target/app_tof_pin_conf.c Application/User/STS/TOF/Target/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + +clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-Target + +clean-Application-2f-User-2f-STS-2f-TOF-2f-Target: + -$(RM) ./Application/User/STS/TOF/Target/app_tof_pin_conf.cyclo ./Application/User/STS/TOF/Target/app_tof_pin_conf.d ./Application/User/STS/TOF/Target/app_tof_pin_conf.o ./Application/User/STS/TOF/Target/app_tof_pin_conf.su + +.PHONY: clean-Application-2f-User-2f-STS-2f-TOF-2f-Target + diff --git a/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l0x/subdir.mk b/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l0x/subdir.mk index efbab81..7effbaf 100644 --- a/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l0x/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l0x/subdir.mk @@ -1,57 +1,9 @@ -################################################################################ -# Automatically-generated file. Do not edit! -# Toolchain: GNU Tools for STM32 (12.3.rel1) -################################################################################ - -# Add inputs and outputs from these tool invocations to the build variables -C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l0x/vl53l0x_api.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l0x/vl53l0x_api_calibration.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l0x/vl53l0x_api_core.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l0x/vl53l0x_api_ranging.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l0x/vl53l0x_api_strings.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l0x/vl53l0x_platform.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l0x/vl53l0x_platform_log.c - -OBJS += \ -./Application/User/STS/TOF/vl53l0x/vl53l0x_api.o \ -./Application/User/STS/TOF/vl53l0x/vl53l0x_api_calibration.o \ -./Application/User/STS/TOF/vl53l0x/vl53l0x_api_core.o \ -./Application/User/STS/TOF/vl53l0x/vl53l0x_api_ranging.o \ -./Application/User/STS/TOF/vl53l0x/vl53l0x_api_strings.o \ -./Application/User/STS/TOF/vl53l0x/vl53l0x_platform.o \ -./Application/User/STS/TOF/vl53l0x/vl53l0x_platform_log.o - -C_DEPS += \ -./Application/User/STS/TOF/vl53l0x/vl53l0x_api.d \ -./Application/User/STS/TOF/vl53l0x/vl53l0x_api_calibration.d \ -./Application/User/STS/TOF/vl53l0x/vl53l0x_api_core.d \ -./Application/User/STS/TOF/vl53l0x/vl53l0x_api_ranging.d \ -./Application/User/STS/TOF/vl53l0x/vl53l0x_api_strings.d \ -./Application/User/STS/TOF/vl53l0x/vl53l0x_platform.d \ -./Application/User/STS/TOF/vl53l0x/vl53l0x_platform_log.d - - -# Each subdirectory must supply rules for building sources it contributes -Application/User/STS/TOF/vl53l0x/vl53l0x_api.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l0x/vl53l0x_api.c Application/User/STS/TOF/vl53l0x/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/vl53l0x/vl53l0x_api_calibration.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l0x/vl53l0x_api_calibration.c Application/User/STS/TOF/vl53l0x/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/vl53l0x/vl53l0x_api_core.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l0x/vl53l0x_api_core.c Application/User/STS/TOF/vl53l0x/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/vl53l0x/vl53l0x_api_ranging.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l0x/vl53l0x_api_ranging.c Application/User/STS/TOF/vl53l0x/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/vl53l0x/vl53l0x_api_strings.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l0x/vl53l0x_api_strings.c Application/User/STS/TOF/vl53l0x/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/vl53l0x/vl53l0x_platform.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l0x/vl53l0x_platform.c Application/User/STS/TOF/vl53l0x/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/vl53l0x/vl53l0x_platform_log.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l0x/vl53l0x_platform_log.c Application/User/STS/TOF/vl53l0x/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" - -clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l0x - -clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l0x: - -$(RM) ./Application/User/STS/TOF/vl53l0x/vl53l0x_api.cyclo ./Application/User/STS/TOF/vl53l0x/vl53l0x_api.d ./Application/User/STS/TOF/vl53l0x/vl53l0x_api.o ./Application/User/STS/TOF/vl53l0x/vl53l0x_api.su ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_calibration.cyclo ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_calibration.d ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_calibration.o ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_calibration.su ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_core.cyclo ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_core.d ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_core.o ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_core.su ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_ranging.cyclo ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_ranging.d ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_ranging.o ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_ranging.su ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_strings.cyclo ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_strings.d ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_strings.o ./Application/User/STS/TOF/vl53l0x/vl53l0x_api_strings.su ./Application/User/STS/TOF/vl53l0x/vl53l0x_platform.cyclo ./Application/User/STS/TOF/vl53l0x/vl53l0x_platform.d ./Application/User/STS/TOF/vl53l0x/vl53l0x_platform.o ./Application/User/STS/TOF/vl53l0x/vl53l0x_platform.su ./Application/User/STS/TOF/vl53l0x/vl53l0x_platform_log.cyclo ./Application/User/STS/TOF/vl53l0x/vl53l0x_platform_log.d ./Application/User/STS/TOF/vl53l0x/vl53l0x_platform_log.o ./Application/User/STS/TOF/vl53l0x/vl53l0x_platform_log.su - -.PHONY: clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l0x - +################################################################################ +# Automatically-generated file. Do not edit! +# Toolchain: GNU Tools for STM32 (12.3.rel1) +################################################################################ + +# Add inputs and outputs from these tool invocations to the build variables + +# Each subdirectory must supply rules for building sources it contributes + diff --git a/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l1x_uld/subdir.mk b/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l1x_uld/subdir.mk index b3073e0..f02d30e 100644 --- a/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l1x_uld/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l1x_uld/subdir.mk @@ -1,42 +1,42 @@ -################################################################################ -# Automatically-generated file. Do not edit! -# Toolchain: GNU Tools for STM32 (12.3.rel1) -################################################################################ - -# Add inputs and outputs from these tool invocations to the build variables +################################################################################ +# Automatically-generated file. Do not edit! +# Toolchain: GNU Tools for STM32 (12.3.rel1) +################################################################################ + +# Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_api.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_calibration.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/vl53l1_platform.c - +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_api.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_calibration.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.c \ +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/vl53l1_platform.c + OBJS += \ ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.o \ ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.o \ ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.o \ -./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.o - +./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.o + C_DEPS += \ ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.d \ ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.d \ ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.d \ -./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.d - - -# Each subdirectory must supply rules for building sources it contributes -Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_api.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_calibration.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/vl53l1_platform.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" - -clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l1x_uld - -clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l1x_uld: - -$(RM) ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.cyclo ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.d ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.o ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.su ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.cyclo ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.d ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.o ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.su ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.cyclo ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.d ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.o ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.su ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.cyclo ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.d ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.o ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.su - -.PHONY: clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l1x_uld - +./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.d + + +# Each subdirectory must supply rules for building sources it contributes +Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_api.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" +Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_calibration.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" +Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" +Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/vl53l1_platform.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + +clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l1x_uld + +clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l1x_uld: + -$(RM) ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.cyclo ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.d ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.o ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.su ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.cyclo ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.d ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.o ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.su ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.cyclo ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.d ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.o ./Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.su ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.cyclo ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.d ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.o ./Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.su + +.PHONY: clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l1x_uld + diff --git a/STM32CubeIDE/Release/Drivers/BSP/STM32WLxx_Nucleo/subdir.mk b/STM32CubeIDE/Release/Drivers/BSP/STM32WLxx_Nucleo/subdir.mk index 9a73b44..c53733a 100644 --- a/STM32CubeIDE/Release/Drivers/BSP/STM32WLxx_Nucleo/subdir.mk +++ b/STM32CubeIDE/Release/Drivers/BSP/STM32WLxx_Nucleo/subdir.mk @@ -5,8 +5,8 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo_radio.c +D:/OneDrive/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.c \ +D:/OneDrive/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo_radio.c OBJS += \ ./Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.o \ @@ -18,9 +18,9 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.o: D:/ONEDRIVE/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.c Drivers/BSP/STM32WLxx_Nucleo/subdir.mk +Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.o: D:/OneDrive/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.c Drivers/BSP/STM32WLxx_Nucleo/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo_radio.o: D:/ONEDRIVE/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo_radio.c Drivers/BSP/STM32WLxx_Nucleo/subdir.mk +Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo_radio.o: D:/OneDrive/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo_radio.c Drivers/BSP/STM32WLxx_Nucleo/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Drivers-2f-BSP-2f-STM32WLxx_Nucleo diff --git a/STM32CubeIDE/Release/Drivers/CMSIS/subdir.mk b/STM32CubeIDE/Release/Drivers/CMSIS/subdir.mk index ea0d16e..e7ccf34 100644 --- a/STM32CubeIDE/Release/Drivers/CMSIS/subdir.mk +++ b/STM32CubeIDE/Release/Drivers/CMSIS/subdir.mk @@ -5,7 +5,7 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/system_stm32wlxx.c +D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/system_stm32wlxx.c OBJS += \ ./Drivers/CMSIS/system_stm32wlxx.o @@ -15,7 +15,7 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Drivers/CMSIS/system_stm32wlxx.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/system_stm32wlxx.c Drivers/CMSIS/subdir.mk +Drivers/CMSIS/system_stm32wlxx.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/system_stm32wlxx.c Drivers/CMSIS/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Drivers-2f-CMSIS diff --git a/STM32CubeIDE/Release/Drivers/STM32WLxx_HAL_Driver/subdir.mk b/STM32CubeIDE/Release/Drivers/STM32WLxx_HAL_Driver/subdir.mk index ca019d3..986f368 100644 --- a/STM32CubeIDE/Release/Drivers/STM32WLxx_HAL_Driver/subdir.mk +++ b/STM32CubeIDE/Release/Drivers/STM32WLxx_HAL_Driver/subdir.mk @@ -5,30 +5,30 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc_ex.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_cortex.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma_ex.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_exti.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash_ex.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_gpio.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c_ex.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr_ex.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc_ex.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc_ex.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_subghz.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim_ex.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart_ex.c \ -D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_ll_adc.c +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc_ex.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_cortex.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma_ex.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_exti.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash_ex.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_gpio.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c_ex.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr_ex.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc_ex.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc_ex.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_subghz.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim_ex.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart_ex.c \ +D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_ll_adc.c OBJS += \ ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal.o \ @@ -84,53 +84,53 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_cortex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_cortex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_cortex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_cortex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_exti.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_exti.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_exti.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_exti.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_gpio.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_gpio.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_gpio.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_gpio.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_subghz.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_subghz.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_ll_adc.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_ll_adc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_ll_adc.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_ll_adc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Drivers-2f-STM32WLxx_HAL_Driver diff --git a/STM32CubeIDE/Release/Middlewares/LoRaWAN/subdir.mk b/STM32CubeIDE/Release/Middlewares/LoRaWAN/subdir.mk index 5286078..bda4cfd 100644 --- a/STM32CubeIDE/Release/Middlewares/LoRaWAN/subdir.mk +++ b/STM32CubeIDE/Release/Middlewares/LoRaWAN/subdir.mk @@ -5,39 +5,39 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/LmHandler.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpCompliance.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpPackagesRegistration.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMac.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacAdr.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacClassB.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCommands.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacConfirmQueue.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCrypto.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacParser.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacSerializer.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/NvmDataMgmt.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/Region.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAS923.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAU915.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionBaseUS.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A20.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A26.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B20.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B26.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN779.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCommon.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU433.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU868.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionIN865.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionKR920.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionRU864.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionUS915.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/cmac.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/lorawan_aes.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/soft-se.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Utilities/utilities.c +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/LmHandler.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpCompliance.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpPackagesRegistration.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMac.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacAdr.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacClassB.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCommands.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacConfirmQueue.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCrypto.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacParser.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacSerializer.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/NvmDataMgmt.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/Region.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAS923.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAU915.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionBaseUS.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A20.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A26.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B20.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B26.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN779.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCommon.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU433.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU868.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionIN865.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionKR920.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionRU864.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionUS915.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/cmac.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/lorawan_aes.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/soft-se.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Utilities/utilities.c OBJS += \ ./Middlewares/LoRaWAN/LmHandler.o \ @@ -111,71 +111,71 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Middlewares/LoRaWAN/LmHandler.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/LmHandler.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LmHandler.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/LmHandler.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LmhpCompliance.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpCompliance.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LmhpCompliance.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpCompliance.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LmhpPackagesRegistration.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpPackagesRegistration.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LmhpPackagesRegistration.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpPackagesRegistration.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMac.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMac.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMac.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMac.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMacAdr.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacAdr.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMacAdr.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacAdr.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMacClassB.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacClassB.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMacClassB.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacClassB.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMacCommands.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCommands.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMacCommands.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCommands.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMacConfirmQueue.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacConfirmQueue.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMacConfirmQueue.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacConfirmQueue.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMacCrypto.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCrypto.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMacCrypto.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCrypto.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMacParser.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacParser.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMacParser.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacParser.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMacSerializer.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacSerializer.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMacSerializer.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacSerializer.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/NvmDataMgmt.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/NvmDataMgmt.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/NvmDataMgmt.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/NvmDataMgmt.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/Region.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/Region.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/Region.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/Region.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionAS923.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAS923.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionAS923.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAS923.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionAU915.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAU915.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionAU915.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAU915.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionBaseUS.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionBaseUS.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionBaseUS.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionBaseUS.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionCN470.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionCN470.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionCN470A20.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A20.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionCN470A20.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A20.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionCN470A26.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A26.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionCN470A26.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A26.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionCN470B20.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B20.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionCN470B20.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B20.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionCN470B26.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B26.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionCN470B26.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B26.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionCN779.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN779.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionCN779.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN779.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionCommon.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCommon.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionCommon.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCommon.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionEU433.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU433.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionEU433.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU433.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionEU868.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU868.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionEU868.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU868.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionIN865.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionIN865.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionIN865.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionIN865.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionKR920.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionKR920.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionKR920.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionKR920.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionRU864.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionRU864.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionRU864.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionRU864.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionUS915.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionUS915.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionUS915.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionUS915.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/cmac.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/cmac.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/cmac.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/cmac.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/lorawan_aes.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/lorawan_aes.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/lorawan_aes.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/lorawan_aes.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/soft-se.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/soft-se.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/soft-se.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/soft-se.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/utilities.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Utilities/utilities.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/utilities.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Utilities/utilities.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Middlewares-2f-LoRaWAN diff --git a/STM32CubeIDE/Release/Middlewares/SubGHz_Phy/subdir.mk b/STM32CubeIDE/Release/Middlewares/SubGHz_Phy/subdir.mk index cfc3fda..f909c5b 100644 --- a/STM32CubeIDE/Release/Middlewares/SubGHz_Phy/subdir.mk +++ b/STM32CubeIDE/Release/Middlewares/SubGHz_Phy/subdir.mk @@ -5,9 +5,9 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_driver.c \ -D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_fw.c +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_driver.c \ +D:/OneDrive/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_fw.c OBJS += \ ./Middlewares/SubGHz_Phy/radio.o \ @@ -21,11 +21,11 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Middlewares/SubGHz_Phy/radio.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio.c Middlewares/SubGHz_Phy/subdir.mk +Middlewares/SubGHz_Phy/radio.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio.c Middlewares/SubGHz_Phy/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/SubGHz_Phy/radio_driver.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_driver.c Middlewares/SubGHz_Phy/subdir.mk +Middlewares/SubGHz_Phy/radio_driver.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_driver.c Middlewares/SubGHz_Phy/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/SubGHz_Phy/radio_fw.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_fw.c Middlewares/SubGHz_Phy/subdir.mk +Middlewares/SubGHz_Phy/radio_fw.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_fw.c Middlewares/SubGHz_Phy/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Middlewares-2f-SubGHz_Phy diff --git a/STM32CubeIDE/Release/Utilities/subdir.mk b/STM32CubeIDE/Release/Utilities/subdir.mk index a4317bb..d5b4557 100644 --- a/STM32CubeIDE/Release/Utilities/subdir.mk +++ b/STM32CubeIDE/Release/Utilities/subdir.mk @@ -5,14 +5,14 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Utilities/trace/adv_trace/stm32_adv_trace.c \ -D:/ONEDRIVE/STM32WLV13/Utilities/lpm/tiny_lpm/stm32_lpm.c \ -D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_mem.c \ -D:/ONEDRIVE/STM32WLV13/Utilities/sequencer/stm32_seq.c \ -D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_systime.c \ -D:/ONEDRIVE/STM32WLV13/Utilities/timer/stm32_timer.c \ -D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_tiny_sscanf.c \ -D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_tiny_vsnprintf.c +D:/OneDrive/STM32WLV13/Utilities/trace/adv_trace/stm32_adv_trace.c \ +D:/OneDrive/STM32WLV13/Utilities/lpm/tiny_lpm/stm32_lpm.c \ +D:/OneDrive/STM32WLV13/Utilities/misc/stm32_mem.c \ +D:/OneDrive/STM32WLV13/Utilities/sequencer/stm32_seq.c \ +D:/OneDrive/STM32WLV13/Utilities/misc/stm32_systime.c \ +D:/OneDrive/STM32WLV13/Utilities/timer/stm32_timer.c \ +D:/OneDrive/STM32WLV13/Utilities/misc/stm32_tiny_sscanf.c \ +D:/OneDrive/STM32WLV13/Utilities/misc/stm32_tiny_vsnprintf.c OBJS += \ ./Utilities/stm32_adv_trace.o \ @@ -36,21 +36,21 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Utilities/stm32_adv_trace.o: D:/ONEDRIVE/STM32WLV13/Utilities/trace/adv_trace/stm32_adv_trace.c Utilities/subdir.mk +Utilities/stm32_adv_trace.o: D:/OneDrive/STM32WLV13/Utilities/trace/adv_trace/stm32_adv_trace.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Utilities/stm32_lpm.o: D:/ONEDRIVE/STM32WLV13/Utilities/lpm/tiny_lpm/stm32_lpm.c Utilities/subdir.mk +Utilities/stm32_lpm.o: D:/OneDrive/STM32WLV13/Utilities/lpm/tiny_lpm/stm32_lpm.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Utilities/stm32_mem.o: D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_mem.c Utilities/subdir.mk +Utilities/stm32_mem.o: D:/OneDrive/STM32WLV13/Utilities/misc/stm32_mem.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Utilities/stm32_seq.o: D:/ONEDRIVE/STM32WLV13/Utilities/sequencer/stm32_seq.c Utilities/subdir.mk +Utilities/stm32_seq.o: D:/OneDrive/STM32WLV13/Utilities/sequencer/stm32_seq.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Utilities/stm32_systime.o: D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_systime.c Utilities/subdir.mk +Utilities/stm32_systime.o: D:/OneDrive/STM32WLV13/Utilities/misc/stm32_systime.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Utilities/stm32_timer.o: D:/ONEDRIVE/STM32WLV13/Utilities/timer/stm32_timer.c Utilities/subdir.mk +Utilities/stm32_timer.o: D:/OneDrive/STM32WLV13/Utilities/timer/stm32_timer.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Utilities/stm32_tiny_sscanf.o: D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_tiny_sscanf.c Utilities/subdir.mk +Utilities/stm32_tiny_sscanf.o: D:/OneDrive/STM32WLV13/Utilities/misc/stm32_tiny_sscanf.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Utilities/stm32_tiny_vsnprintf.o: D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_tiny_vsnprintf.c Utilities/subdir.mk +Utilities/stm32_tiny_vsnprintf.o: D:/OneDrive/STM32WLV13/Utilities/misc/stm32_tiny_vsnprintf.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Utilities diff --git a/STM32CubeIDE/Release/makefile b/STM32CubeIDE/Release/makefile index 148c484..797baa7 100644 --- a/STM32CubeIDE/Release/makefile +++ b/STM32CubeIDE/Release/makefile @@ -17,6 +17,7 @@ RM := rm -rf -include Drivers/BSP/STM32WLxx_Nucleo/subdir.mk -include Application/User/Startup/subdir.mk -include Application/User/STS/TOF/vl53l1x_uld/subdir.mk +-include Application/User/STS/TOF/vl53l0x/subdir.mk -include Application/User/STS/TOF/Target/subdir.mk -include Application/User/STS/TOF/App/subdir.mk -include Application/User/STS/Core/Src/subdir.mk @@ -71,8 +72,8 @@ all: main-build main-build: WLE5CC_NODE_STS.elf secondary-outputs # Tool invocations -WLE5CC_NODE_STS.elf WLE5CC_NODE_STS.map: $(OBJS) $(USER_OBJS) D:\ONEDRIVE\STM32WLV13\Projects\NUCLEO-WL55JC\Applications\LoRaWAN\WLE5CC_NODE_STS\STM32CubeIDE\STM32WLE5CCUX_FLASH.ld makefile objects.list $(OPTIONAL_TOOL_DEPS) - arm-none-eabi-gcc -o "WLE5CC_NODE_STS.elf" @"objects.list" $(USER_OBJS) $(LIBS) -mcpu=cortex-m4 -T"D:\ONEDRIVE\STM32WLV13\Projects\NUCLEO-WL55JC\Applications\LoRaWAN\WLE5CC_NODE_STS\STM32CubeIDE\STM32WLE5CCUX_FLASH.ld" --specs=nosys.specs -Wl,-Map="WLE5CC_NODE_STS.map" -Wl,--gc-sections -static -L../../../../../../../Middlewares/ST/STM32_Cryptographic/lib -z noexecstack -Wunused-but-set-variable -Wunused-variable -fshort-enums --specs=nano.specs -mfloat-abi=soft -mthumb -Wl,--start-group -lc -lm -Wl,--end-group +WLE5CC_NODE_STS.elf WLE5CC_NODE_STS.map: $(OBJS) $(USER_OBJS) D:\OneDrive\STM32WLV13\Projects\NUCLEO-WL55JC\Applications\LoRaWAN\WLE5CC_NODE_STS\STM32CubeIDE\STM32WLE5CCUX_FLASH.ld makefile objects.list $(OPTIONAL_TOOL_DEPS) + arm-none-eabi-gcc -o "WLE5CC_NODE_STS.elf" @"objects.list" $(USER_OBJS) $(LIBS) -mcpu=cortex-m4 -T"D:\OneDrive\STM32WLV13\Projects\NUCLEO-WL55JC\Applications\LoRaWAN\WLE5CC_NODE_STS\STM32CubeIDE\STM32WLE5CCUX_FLASH.ld" --specs=nosys.specs -Wl,-Map="WLE5CC_NODE_STS.map" -Wl,--gc-sections -static -L../../../../../../../Middlewares/ST/STM32_Cryptographic/lib -z noexecstack -Wunused-but-set-variable -Wunused-variable -fshort-enums --specs=nano.specs -mfloat-abi=soft -mthumb -Wl,--start-group -lc -lm -Wl,--end-group @echo 'Finished building target: $@' @echo ' ' diff --git a/STM32CubeIDE/Release/sources.mk b/STM32CubeIDE/Release/sources.mk index 126325a..d567a58 100644 --- a/STM32CubeIDE/Release/sources.mk +++ b/STM32CubeIDE/Release/sources.mk @@ -28,6 +28,7 @@ Application/User/LoRaWAN/Target \ Application/User/STS/Core/Src \ Application/User/STS/TOF/App \ Application/User/STS/TOF/Target \ +Application/User/STS/TOF/vl53l0x \ Application/User/STS/TOF/vl53l1x_uld \ Application/User/Startup \ Drivers/BSP/STM32WLxx_Nucleo \ diff --git a/STS/TOF/App/X-WL55_WLE5_53L0X.c b/STS/TOF/App/X-WL55_WLE5_53L0X.c index 5baf5ca..d76bb33 100644 --- a/STS/TOF/App/X-WL55_WLE5_53L0X.c +++ b/STS/TOF/App/X-WL55_WLE5_53L0X.c @@ -1,251 +1,251 @@ -/* USER CODE BEGIN Header */ -/** - ****************************************************************************** - * @file X-WL55_WLE5_53L0X.c - * @author Yunhorn (r) Technology Limited Application Team - * @brief implement X-WL55_WLE5_53L0X BSP - ****************************************************************************** - * @attention - * - * Copyright (c) 2023 Yunhorn Technology Limited. - * Copyright (c) 2023 Shenzhen Yunhorn Technology Co., Ltd. - * All rights reserved. - * - * This software is licensed under terms that can be found in the LICENSE file - * in the root directory of this software component. - * If no LICENSE file comes with this software, it is provided AS-IS. - * - ****************************************************************************** - */ -/* USER CODE END Header */ - - -#include <string.h> -#include "X-WL55_WLE5_53L0X.h" - -#include "stm32wlxx_hal.h" -#include "main.h" - -#ifndef HAL_I2C_MODULE_ENABLED -#define HAL_I2C_MODULE_ENABLED -#pragma message("hal conf should enable i2c") -#endif - -/* when not customized by application define dummy one */ -#ifndef XNUCLEO53L1A1_GetI2cBus -/** - * macro that can be overloaded by user to enforce i2c sharing in RTOS context - */ -#define XNUCLEO53L1A1_GetI2cBus(...) (void)0 -#endif - -#ifndef XNUCLEO53L1A1_PutI2cBus -/** macro can be overloaded by user to enforce i2c sharing in RTOS context - */ -# define XNUCLEO53L1A1_PutI2cBus(...) (void)0 -#endif - - - - -/**************************************************** - *@defgroup XNUCLEO53L1A1_globals - *@{ - */ - -/** - * i2c handle to be use of all i2c access - * end user shall provide it to - * can be @a XNUCLEO53L1A1_I2C1Configure() @sa XNUCLEO53L1A1_usage - * @warning do not use any XNUCLEO53L1A1_xxx prior to a first init with valid i2c handle - */ -extern I2C_HandleTypeDef hi2c2; - - -/** - * Expansion board i2c bus recovery - * - * We may get reset in middle of an i2c access (h/w reset button, debug or f/w load) - * hence some agent on bus may be in middle of a transaction and can create issue or even prevent starting (SDA is low) - * this routine does use gpio to manipulate and recover i2c bus line in all cases. - */ -static void _I2cFailRecover(){ - GPIO_InitTypeDef GPIO_InitStruct; - int i, nRetry=0; - - - // We can't assume bus state based on SDA and SCL state (we may be in a data or NAK bit so SCL=SDA=1) - // by setting SDA high and toggling SCL at least 10 time we ensure whatever agent and state - // all agent should end up seeing a "stop" and bus get back to an known idle i2c bus state - PME_ON; - // Enable I/O - __GPIOA_CLK_ENABLE(); - HAL_GPIO_WritePin(I2C2_SCL_PORT, I2C2_SCL_PIN, GPIO_PIN_SET); - HAL_GPIO_WritePin(I2C2_SDA_PORT, I2C2_SDA_PIN, GPIO_PIN_SET); - GPIO_InitStruct.Pin = I2C2_SCL_PIN|I2C2_SDA_PIN ; - GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_OD; - GPIO_InitStruct.Pull = GPIO_PULLUP; - HAL_GPIO_Init(I2C2_SDA_PORT, &GPIO_InitStruct); - //TODO we could do this faster by not using HAL delay 1ms for clk timing - do{ - for( i=0; i<10; i++){ - HAL_GPIO_WritePin(I2C2_SCL_PORT, I2C2_SCL_PIN, GPIO_PIN_RESET); - HAL_Delay(1); - HAL_GPIO_WritePin(I2C2_SCL_PORT, I2C2_SCL_PIN, GPIO_PIN_SET); - HAL_Delay(1); - } -// if( HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_9) == 0 ){ -// static int RetryRecover; -// RetryRecover++; -// } - }while(HAL_GPIO_ReadPin(I2C2_SDA_PORT, I2C2_SDA_PIN) == 0 && nRetry++<7); - - if( HAL_GPIO_ReadPin(I2C2_SDA_PORT, I2C2_SDA_PIN) == 0 ){ - __GPIOA_CLK_ENABLE(); - //We are still in bad i2c state warm user by blinking led but stay here - GPIO_InitStruct.Pin = LED1_Pin ; - GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; - GPIO_InitStruct.Pull = GPIO_NOPULL; - HAL_GPIO_Init(LED1_GPIO_Port, &GPIO_InitStruct); - do{ - HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_SET); - HAL_Delay(33); - HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET); - HAL_Delay(33); - HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_SET); - HAL_Delay(33); - HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET); - HAL_Delay(33*20); - }while(0); - } -} - - - -int XWL55_WLE5_53L0X_I2C2Configure() { - int status; - GPIO_InitTypeDef GPIO_InitStruct; - - _I2cFailRecover(); - - /* Peripheral clock enable */ - __GPIOA_CLK_ENABLE(); - __I2C2_CLK_ENABLE(); - - /**I2C1 GPIO Configuration\n - PB8 ------> I2C1_SCL\n - PB9 ------> I2C1_SDA - *I2C2 GPIO configuration - PA12 -------> I2C2_SCL - PA11 -------> I2C2_SDA - */ - GPIO_InitStruct.Pin = I2C2_SCL_PIN | I2C2_SDA_PIN; - GPIO_InitStruct.Mode = GPIO_MODE_AF_OD; - GPIO_InitStruct.Pull = GPIO_NOPULL; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; - GPIO_InitStruct.Alternate = GPIO_AF4_I2C2; - HAL_GPIO_Init(I2C2_SDA_PORT, &GPIO_InitStruct); - - hi2c2.Instance = I2C2; - //XNUCLEO53L1A1_hi2c.Init.Timing = 0x00300F38; /* set 400KHz fast mode i2c*/ - //XNUCLEO53L1A1_hi2c.Init.Timing = I2C2_FAST_400K; //UPDATE 2024-07-09 - hi2c2.Init.Timing = I2C2_STANDARD_100K; // UPDATE 2024-07-12 - //XNUCLEO53L1A1_hi2c.Init.Timing = 0x2010091A; //0x2010091A = 400K Fast Mode, 0x20303E5D, 100K Standard mode, 0x20000209 Fast Mode Plus, 1Mbps - - hi2c2.Init.OwnAddress1 = 0; - hi2c2.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT; - hi2c2.Init.DualAddressMode = I2C_DUALADDRESS_DISABLED; - hi2c2.Init.OwnAddress2 = 0; - hi2c2.Init.GeneralCallMode = I2C_GENERALCALL_DISABLED; - hi2c2.Init.NoStretchMode = I2C_NOSTRETCH_DISABLED; - status = HAL_I2C_Init(&hi2c2); - return status; -} - -int XWL55_WLE5_53L0X_SetIntrStateId(int EnableIntr, int DevNo) -{ - int status; - IRQn_Type IntrNo; - int IntrPin; - switch (DevNo){ - case 1: - IntrNo = VL53L0X_GPIO1_L_INTx; - IntrPin= VL53L0X_GPIO1_L_GPIO_PIN; - break; - case 0: - IntrNo = VL53L0X_GPIO1_C_INTx; - IntrPin= VL53L0X_GPIO1_C_GPIO_PIN; - break; - case 2: - IntrNo = VL53L0X_GPIO1_R_INTx; - IntrPin= VL53L0X_GPIO1_R_GPIO_PIN; - break; - - default: - break; - - } - /* - IntrNo = VL53L0X_GPIO1_C_INTx; - IntrPin= VL53L0X_GPIO1_C_GPIO_PIN; - */ - status = 0; - - if( EnableIntr ){ - __HAL_GPIO_EXTI_CLEAR_IT(IntrPin); - NVIC_ClearPendingIRQ(IntrNo); - HAL_NVIC_EnableIRQ(IntrNo); - /** - * @note When enabling interrupt end user shall check actual state of the line and soft trigger event if active - * Alternatively user can use API and device feature to clear device Interrupt status to possibly generates a new edge. - * on shared pin configuration this must be repeated for all device. - * The same shall be done after clearing a condition in device and interrupt remain active. - */ - } - else{ - HAL_NVIC_DisableIRQ(IntrNo); - __HAL_GPIO_EXTI_CLEAR_IT(IntrPin); - NVIC_ClearPendingIRQ(IntrNo); - } - - - return status; -} - -int XWL55_WLE5_53L0X_Init(void) -{ - int status; - status = XWL55_WLE5_53L0X_I2C2Configure(); - return status; -} - - -void XWL55_WLE5_53L0X_ResetId(uint8_t DevNo, int state) -{ - - switch(DevNo) { - case XNUCLEO53L0X_LEFT: -#if defined(TOF_2) - HAL_GPIO_WritePin(TOF_L_XSHUT_GPIO_Port, TOF_L_XSHUT_Pin, ((state == 1)?GPIO_PIN_SET:GPIO_PIN_RESET)); -#endif - break; -#if defined(TOF_1) - case XNUCLEO53L0X_CENTER: - HAL_GPIO_WritePin(TOF_C_XSHUT_GPIO_Port, TOF_C_XSHUT_Pin, ((state == 1)?GPIO_PIN_SET:GPIO_PIN_RESET)); - break; -#endif - case XNUCLEO53L0X_RIGHT: -#if defined(TOF_3) - HAL_GPIO_WritePin(TOF_R_XSHUT_GPIO_Port, TOF_R_XSHUT_Pin, ((state == 1)?GPIO_PIN_SET:GPIO_PIN_RESET)); -#endif - break; - - default: - break; - } -} - -/** - * - * @} X-WL55_WLE5_53L0X_top - */ +/* USER CODE BEGIN Header */ +/** + ****************************************************************************** + * @file X-WL55_WLE5_53L0X.c + * @author Yunhorn (r) Technology Limited Application Team + * @brief implement X-WL55_WLE5_53L0X BSP + ****************************************************************************** + * @attention + * + * Copyright (c) 2023 Yunhorn Technology Limited. + * Copyright (c) 2023 Shenzhen Yunhorn Technology Co., Ltd. + * All rights reserved. + * + * This software is licensed under terms that can be found in the LICENSE file + * in the root directory of this software component. + * If no LICENSE file comes with this software, it is provided AS-IS. + * + ****************************************************************************** + */ +/* USER CODE END Header */ + + +#include <string.h> +#include "X-WL55_WLE5_53L0X.h" + +#include "stm32wlxx_hal.h" +#include "main.h" + +#ifndef HAL_I2C_MODULE_ENABLED +#define HAL_I2C_MODULE_ENABLED +#pragma message("hal conf should enable i2c") +#endif + +/* when not customized by application define dummy one */ +#ifndef XNUCLEO53L1A1_GetI2cBus +/** + * macro that can be overloaded by user to enforce i2c sharing in RTOS context + */ +#define XNUCLEO53L1A1_GetI2cBus(...) (void)0 +#endif + +#ifndef XNUCLEO53L1A1_PutI2cBus +/** macro can be overloaded by user to enforce i2c sharing in RTOS context + */ +# define XNUCLEO53L1A1_PutI2cBus(...) (void)0 +#endif + + + + +/**************************************************** + *@defgroup XNUCLEO53L1A1_globals + *@{ + */ + +/** + * i2c handle to be use of all i2c access + * end user shall provide it to + * can be @a XNUCLEO53L1A1_I2C1Configure() @sa XNUCLEO53L1A1_usage + * @warning do not use any XNUCLEO53L1A1_xxx prior to a first init with valid i2c handle + */ +extern I2C_HandleTypeDef hi2c2; + + +/** + * Expansion board i2c bus recovery + * + * We may get reset in middle of an i2c access (h/w reset button, debug or f/w load) + * hence some agent on bus may be in middle of a transaction and can create issue or even prevent starting (SDA is low) + * this routine does use gpio to manipulate and recover i2c bus line in all cases. + */ +static void _I2cFailRecover(){ + GPIO_InitTypeDef GPIO_InitStruct; + int i, nRetry=0; + + + // We can't assume bus state based on SDA and SCL state (we may be in a data or NAK bit so SCL=SDA=1) + // by setting SDA high and toggling SCL at least 10 time we ensure whatever agent and state + // all agent should end up seeing a "stop" and bus get back to an known idle i2c bus state + PME_ON; + // Enable I/O + __GPIOA_CLK_ENABLE(); + HAL_GPIO_WritePin(I2C2_SCL_PORT, I2C2_SCL_PIN, GPIO_PIN_SET); + HAL_GPIO_WritePin(I2C2_SDA_PORT, I2C2_SDA_PIN, GPIO_PIN_SET); + GPIO_InitStruct.Pin = I2C2_SCL_PIN|I2C2_SDA_PIN ; + GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_OD; + GPIO_InitStruct.Pull = GPIO_PULLUP; + HAL_GPIO_Init(I2C2_SDA_PORT, &GPIO_InitStruct); + //TODO we could do this faster by not using HAL delay 1ms for clk timing + do{ + for( i=0; i<10; i++){ + HAL_GPIO_WritePin(I2C2_SCL_PORT, I2C2_SCL_PIN, GPIO_PIN_RESET); + HAL_Delay(1); + HAL_GPIO_WritePin(I2C2_SCL_PORT, I2C2_SCL_PIN, GPIO_PIN_SET); + HAL_Delay(1); + } +// if( HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_9) == 0 ){ +// static int RetryRecover; +// RetryRecover++; +// } + }while(HAL_GPIO_ReadPin(I2C2_SDA_PORT, I2C2_SDA_PIN) == 0 && nRetry++<7); + + if( HAL_GPIO_ReadPin(I2C2_SDA_PORT, I2C2_SDA_PIN) == 0 ){ + __GPIOA_CLK_ENABLE(); + //We are still in bad i2c state warm user by blinking led but stay here + GPIO_InitStruct.Pin = LED1_Pin ; + GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + GPIO_InitStruct.Pull = GPIO_NOPULL; + HAL_GPIO_Init(LED1_GPIO_Port, &GPIO_InitStruct); + do{ + HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_SET); + HAL_Delay(33); + HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET); + HAL_Delay(33); + HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_SET); + HAL_Delay(33); + HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET); + HAL_Delay(33*20); + }while(0); + } +} + + + +int XWL55_WLE5_53L0X_I2C2Configure() { + int status; + GPIO_InitTypeDef GPIO_InitStruct; + + _I2cFailRecover(); + + /* Peripheral clock enable */ + __GPIOA_CLK_ENABLE(); + __I2C2_CLK_ENABLE(); + + /**I2C1 GPIO Configuration\n + PB8 ------> I2C1_SCL\n + PB9 ------> I2C1_SDA + *I2C2 GPIO configuration + PA12 -------> I2C2_SCL + PA11 -------> I2C2_SDA + */ + GPIO_InitStruct.Pin = I2C2_SCL_PIN | I2C2_SDA_PIN; + GPIO_InitStruct.Mode = GPIO_MODE_AF_OD; + GPIO_InitStruct.Pull = GPIO_NOPULL; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; + GPIO_InitStruct.Alternate = GPIO_AF4_I2C2; + HAL_GPIO_Init(I2C2_SDA_PORT, &GPIO_InitStruct); + + hi2c2.Instance = I2C2; + //XNUCLEO53L1A1_hi2c.Init.Timing = 0x00300F38; /* set 400KHz fast mode i2c*/ + //XNUCLEO53L1A1_hi2c.Init.Timing = I2C2_FAST_400K; //UPDATE 2024-07-09 + hi2c2.Init.Timing = I2C2_STANDARD_100K; // UPDATE 2024-07-12 + //XNUCLEO53L1A1_hi2c.Init.Timing = 0x2010091A; //0x2010091A = 400K Fast Mode, 0x20303E5D, 100K Standard mode, 0x20000209 Fast Mode Plus, 1Mbps + + hi2c2.Init.OwnAddress1 = 0; + hi2c2.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT; + hi2c2.Init.DualAddressMode = I2C_DUALADDRESS_DISABLED; + hi2c2.Init.OwnAddress2 = 0; + hi2c2.Init.GeneralCallMode = I2C_GENERALCALL_DISABLED; + hi2c2.Init.NoStretchMode = I2C_NOSTRETCH_DISABLED; + status = HAL_I2C_Init(&hi2c2); + return status; +} + +int XWL55_WLE5_53L0X_SetIntrStateId(int EnableIntr, int DevNo) +{ + int status; + IRQn_Type IntrNo; + int IntrPin; + switch (DevNo){ + case 1: + IntrNo = VL53L0X_GPIO1_L_INTx; + IntrPin= VL53L0X_GPIO1_L_GPIO_PIN; + break; + case 0: + IntrNo = VL53L0X_GPIO1_C_INTx; + IntrPin= VL53L0X_GPIO1_C_GPIO_PIN; + break; + case 2: + IntrNo = VL53L0X_GPIO1_R_INTx; + IntrPin= VL53L0X_GPIO1_R_GPIO_PIN; + break; + + default: + break; + + } + /* + IntrNo = VL53L0X_GPIO1_C_INTx; + IntrPin= VL53L0X_GPIO1_C_GPIO_PIN; + */ + status = 0; + + if( EnableIntr ){ + __HAL_GPIO_EXTI_CLEAR_IT(IntrPin); + NVIC_ClearPendingIRQ(IntrNo); + HAL_NVIC_EnableIRQ(IntrNo); + /** + * @note When enabling interrupt end user shall check actual state of the line and soft trigger event if active + * Alternatively user can use API and device feature to clear device Interrupt status to possibly generates a new edge. + * on shared pin configuration this must be repeated for all device. + * The same shall be done after clearing a condition in device and interrupt remain active. + */ + } + else{ + HAL_NVIC_DisableIRQ(IntrNo); + __HAL_GPIO_EXTI_CLEAR_IT(IntrPin); + NVIC_ClearPendingIRQ(IntrNo); + } + + + return status; +} + +int XWL55_WLE5_53L0X_Init(void) +{ + int status; + status = XWL55_WLE5_53L0X_I2C2Configure(); + return status; +} + + +void XWL55_WLE5_53L0X_ResetId(uint8_t DevNo, int state) +{ + + switch(DevNo) { + case XNUCLEO53L0X_LEFT: +#if defined(TOF_2) + HAL_GPIO_WritePin(TOF_L_XSHUT_GPIO_Port, TOF_L_XSHUT_Pin, ((state == 1)?GPIO_PIN_SET:GPIO_PIN_RESET)); +#endif + break; +#if defined(TOF_1) + case XNUCLEO53L0X_CENTER: + HAL_GPIO_WritePin(TOF_C_XSHUT_GPIO_Port, TOF_C_XSHUT_Pin, ((state == 1)?GPIO_PIN_SET:GPIO_PIN_RESET)); + break; +#endif + case XNUCLEO53L0X_RIGHT: +#if defined(TOF_3) + HAL_GPIO_WritePin(TOF_R_XSHUT_GPIO_Port, TOF_R_XSHUT_Pin, ((state == 1)?GPIO_PIN_SET:GPIO_PIN_RESET)); +#endif + break; + + default: + break; + } +} + +/** + * + * @} X-WL55_WLE5_53L0X_top + */ diff --git a/STS/TOF/App/X-WL55_WLE5_53L0X.h b/STS/TOF/App/X-WL55_WLE5_53L0X.h index d99b124..cf1ddd9 100644 --- a/STS/TOF/App/X-WL55_WLE5_53L0X.h +++ b/STS/TOF/App/X-WL55_WLE5_53L0X.h @@ -1,301 +1,301 @@ -/** - * @file X-WL55_WLE5_53L0X.h - * - */ - -#ifndef _X_WL55_WLE5_53L0X_H_ -#define _X_WL55_WLE5_53L0X_H_ - -#include "stm32wlxx_hal.h" - -/** - * @defgroup VL53L0X_config VL53L0X static configuration - * @brief Configure BSP support for USART2 (nucleo virtual com) - * UART support implies that BSP exclusively manages: - * @li HAL_UART_MspInit and HAL_UART_MspDeInit - * @li DMA channel and interrupt - */ - - -/** @ingroup VL53L0X_config - * @{*/ - -#define MAX_TOF_COUNT 3 - -#ifndef VL53L0X_HAVE_UART -/** - * Define this macro at project level if UART is available - */ -#define VL53L0X_HAVE_UART 1 -#endif - - -#if VL53L0X_HAVE_UART - -/** - * User override of baud rate programmed for uart2 (default to 115200) - */ -#ifndef USART2_BAUD_RATE -# define USART2_BAUD_RATE 115200 -#endif - - -#ifndef VL53L0X_UART_DMA_RX -/** configure use of dma for uart rx - * - * Default to not use DMA RX when not defined explicitly - * - * require @a VL53L0X_HAVE_UART - */ -#define VL53L0X_UART_DMA_RX 0 -#endif //VL53L0X_UART_DMA_RX - -#ifndef VL53L0X_UART_DMA_TX -/** configure use of dma for uart tx - * - * Default to use DMA TX when not defined explicitly by user - * - * require @a VL53L0X_HAVE_UART - */ -#define VL53L0X_UART_DMA_TX 1 -#endif //VL53L0X_UART_DMA_RX - - -#ifndef VL53L0X_UART_DMA_RX_IRQ_PRI -/** configure usart max irq priority - * - * Default to 0 when not defined explicitly by user - * @warning may not be support by all mcu (only F401 tested) - */ -# define VL53L0X_UART_DMA_RX_IRQ_PRI 0 -#endif - -#ifndef VL53L0X_UART_DMA_TX_IRQ_PRI -/** configure usart dma tx irq priority - * - * Default to 0 when not defined explicitly - * @warning only F401 - */ - -#define VL53L0X_UART_DMA_TX_IRQ_PRI 0 -#endif - -#ifndef VL53L0X_UART_IRQ_PRI -/** - * User override default uart irq priority 0 to fit application needs - * @warning only supported for f401 - */ -#define VL53L0X_UART_IRQ_PRI 0 -#endif - -/* provided by MSP part */ -extern void XNUCLEO53L1A1_USART2_UART_Init(void); - -#else -# define XNUCLEO53L1A1_USART2_UART_Init(...) (void)0 -#endif - -/** @} */ - -/** - * Configure interrupt pins pins pull up/down - * - * set to GPIO_NOPULL or GPIO_PULLUP or GPIO_PULLDOWN - */ -#define VL53L0X_INTR_PIN_PUPD GPIO_PULLUP - - - -/** - * @ingroup VL53L0X_GPIO1_MAP - * @{ - */ - -#ifndef VL53L0X_GPIO1_SHARED -/** - * @brief select use of shared interrupt - * - * Must be set to 0 (or not defined) for one interrupt per sensor - * Must be set to non 0 for shared interrupt line - * see @sa VL53L0X_GPIO1_C_OPTION - */ -#define VL53L0X_GPIO1_SHARED 1 -#endif - - -#ifndef VL53L0X_GPIO1_C_OPTION -/** - * @def VL53L0X_GPIO1_C_OPTION - * @brief select GPIO1 to exti mapping for center or shared interrupt - * - * Set option value or un-define it to match with board configuration - * @li not defined or 0 : U14=On and U17=off => GPIO1_C = PA4 - * @li defined and not 0 : U14=Off and U17=on => GPIO1_C = PC1 - */ -#define VL53L0X_GPIO1_C_OPTION 1 -#endif -#if 0 -/* ############ FOR SHARED GPIO1 INTR TO MCU ###### */ -#define VL53L0X_GPIO1_C_GPIO_PORT GPIOA -#define VL53L0X_GPIO1_C_CLK_ENABLE __GPIOA_CLK_ENABLE -#define VL53L0X_GPIO1_C_GPIO_PIN GPIO_PIN_10 -#define VL53L0X_GPIO1_C_INTx EXTI15_10_IRQn - -#define VL53L0X_GPIO1_L_GPIO_PORT GPIOA -#define VL53L0X_GPIO1_L_CLK_ENABLE __GPIOA_CLK_ENABLE -#define VL53L0X_GPIO1_L_GPIO_PIN GPIO_PIN_10 -#define VL53L0X_GPIO1_L_INTx EXTI15_10_IRQn - -#define VL53L0X_GPIO1_R_GPIO_PORT GPIOA -#define VL53L0X_GPIO1_R_CLK_ENABLE __GPIOA_CLK_ENABLE -#define VL53L0X_GPIO1_R_GPIO_PIN GPIO_PIN_10 -#define VL53L0X_GPIO1_R_INTx EXTI15_10_IRQn -/* ############ FOR SHARED GPIO1 INTR TO MCU ###### */ -#endif -/* ############ FOR SHARED GPIO1 INTR TO MCU ###### */ -#ifndef RM2 -#define VL53L0X_GPIO1_C_GPIO_PORT GPIOB -#define VL53L0X_GPIO1_C_CLK_ENABLE __GPIOB_CLK_ENABLE -#define VL53L0X_GPIO1_C_GPIO_PIN GPIO_PIN_3 -#define VL53L0X_GPIO1_C_INTx EXTI3_IRQn - -#define VL53L0X_GPIO1_L_GPIO_PORT GPIOB -#define VL53L0X_GPIO1_L_CLK_ENABLE __GPIOB_CLK_ENABLE -#define VL53L0X_GPIO1_L_GPIO_PIN GPIO_PIN_3 -#define VL53L0X_GPIO1_L_INTx EXTI3_IRQn - -#define VL53L0X_GPIO1_R_GPIO_PORT GPIOB -#define VL53L0X_GPIO1_R_CLK_ENABLE __GPIOB_CLK_ENABLE -#define VL53L0X_GPIO1_R_GPIO_PIN GPIO_PIN_3 -#define VL53L0X_GPIO1_R_INTx EXTI3_IRQn -#elif defined(RM2) -#define VL53L0X_GPIO1_C_GPIO_PORT GPIOB -#define VL53L0X_GPIO1_C_CLK_ENABLE __GPIOB_CLK_ENABLE -#define VL53L0X_GPIO1_C_GPIO_PIN GPIO_PIN_5 -#define VL53L0X_GPIO1_C_INTx EXTI9_5_IRQn - -#define VL53L0X_GPIO1_L_GPIO_PORT GPIOB -#define VL53L0X_GPIO1_L_CLK_ENABLE __GPIOB_CLK_ENABLE -#define VL53L0X_GPIO1_L_GPIO_PIN GPIO_PIN_5 -#define VL53L0X_GPIO1_L_INTx EXTI9_5_IRQn - -#define VL53L0X_GPIO1_R_GPIO_PORT GPIOB -#define VL53L0X_GPIO1_R_CLK_ENABLE __GPIOB_CLK_ENABLE -#define VL53L0X_GPIO1_R_GPIO_PIN GPIO_PIN_5 -#define VL53L0X_GPIO1_R_INTx EXTI9_5_IRQn - -#endif -/* ############ FOR SHARED GPIO1 INTR TO MCU ###### */ -/** @} */ /* defgroup L53L1A1_GPIO1_MAP */ - -#ifndef XNUCLEO53L1A1_TRACE -/** - * @brief enable error output via trace - * - * when undefined (default) no trace no error logging is done, it is safe - * to at least count error just to see if any errors ever occur. - * - * Traces formating and output is end user defined via #trace_printf - */ -#define XNUCLEO53L1A1_TRACE TRACE_UART -#endif // XNUCLEO53L1A1_TRACE - - -/** - * @def XNUCLEO53L1A1_ErrLog(...) - * Macro used to report error log messages with printf format - * - * Our testing version use externally trace_printf, - * We trace out function names and line numbers plus any text formated with some extra arguments - */ -#if XNUCLEO53L1A1_TRACE -# define XNUCLEO53L1A1_ErrLog( msg, ...) trace_printf("[Err] %s l %d \t" msg "\n", __func__, __LINE__, ##__VA_ARGS__) -#else -# define XNUCLEO53L1A1_ErrLog(...) (void)0 -#endif - - - -/** @} */ /* group XNUCLEO53L1A1_Debugging */ - - -/** - * @defgroup X-WL55_WLE5_53L0X_Interface X-WL55_WLE5_53L0X BSP API - * @{ */ - -/** - * 53L0X Device selector - * - * @note Most functions are using a device selector as input. ASCII 'c', 'l' or 'r' are also accepted. - */ -enum XNUCLEO53L1A1_dev_e{ - XNUCLEO53L0X_LEFT = 0, //!< left satellite device P21 header : 'l' - XNUCLEO53L0X_CENTER = 1, //!< center (built-in) vl053 device : 'c" - XNUCLEO53L0X_RIGHT= 2 //!< Right satellite device P22 header : 'r' -}; - -/** - * I2C1 handle - * @note setup and configured by @ref XNUCLEO53L1A1_Init - */ -extern I2C_HandleTypeDef X_WL55_WLE5_53L0X_hi2c; -/** UART2 handle - * - * UART2 is the nucleo Virtual Com Port - * @note setup and configured by @ref XNUCLEO53L1A1_Init*/ -#if VL53L0X_HAVE_UART -extern UART_HandleTypeDef huart2; - -#if VL53L0X_UART_DMA_RX -/** UART2 DMA RX available only if support activated*/ -extern DMA_HandleTypeDef hdma_usart2_rx; -#endif - -#if VL53L0X_UART_DMA_TX -/** UART2 DMA TX available only if support activated */ -extern DMA_HandleTypeDef hdma_usart2_tx; -#endif -#endif//ifdef VL53L0X_HAVE_UART - -/** - * Initialize VL053L1A1 STM32 expansion board - * - * @note All VL53L0X devices XSDN are asserted and display is turned off - * @return 0 on success - */ -int XWL55_WLE5_53L0X_Init(void); - -/** - * Set Reset (XSDN) state of a given "id" device - * @param DevNo The device number use @ref XNUCLEO53L1A1_dev_e. Char 't' 'c' 'r' can also be used - * @param state State of the device reset (xsdn) pin @warning reset pin is active low - * @return 0 on success - */ - -void XWL55_WLE5_53L0X_ResetId(uint8_t DevNo, int state); - -/** - * Enable Disable interrupt at MCU level (MSP) - * - * Enable/Disable the interrupt for a given sensor Dev number - * - * End user is expected to override VL53L0X_EXTI_Callback to catch interrupts. - * When the vector is shared applicaton is passed the device and pin corretcy - * In shared line mode application is responsible to find what sensor cause the interrupt and deal with races on interrupt line - * - * @param EnableIntr "boolean" 0 to disable interrupt otherwise interrupt is enabled - * @param DevNo Device number "name" of the sensor see @ref XNUCLEO53L1A1_dev_e - * - * @warning In shared interrupt mode, use only center : other values are not supported and will return an error - * @warning If several lines share the same interrupt vector (l053 mcu), only one sensor interrupt shall be enable at a time - * otherwise the handler may fail to locate and clear the right source (no sharing management) - * - * @return 0 on success \n - * <0 for error (invalid id) - * >0 interrupt configured but with potential sharing on EXTI groups see @ref VL53L0X_GPIO1_MAP - */ -//int XNUCLEO53L1A1_SetIntrStateId(int EnableIntr, int DevNo); -int XWL55_WLE5_53L0X_SetIntrStateId(int EnableIntr, int DevNo); -int sts_tof_vl53l0x_DetectSensors(void); -void STS_TOF_VL53L0X_Range_Process(void); -#endif /* _X_WL55_WLE5_53L0X_H_ */ +/** + * @file X-WL55_WLE5_53L0X.h + * + */ + +#ifndef _X_WL55_WLE5_53L0X_H_ +#define _X_WL55_WLE5_53L0X_H_ + +#include "stm32wlxx_hal.h" + +/** + * @defgroup VL53L0X_config VL53L0X static configuration + * @brief Configure BSP support for USART2 (nucleo virtual com) + * UART support implies that BSP exclusively manages: + * @li HAL_UART_MspInit and HAL_UART_MspDeInit + * @li DMA channel and interrupt + */ + + +/** @ingroup VL53L0X_config + * @{*/ + +#define MAX_TOF_COUNT 3 + +#ifndef VL53L0X_HAVE_UART +/** + * Define this macro at project level if UART is available + */ +#define VL53L0X_HAVE_UART 1 +#endif + + +#if VL53L0X_HAVE_UART + +/** + * User override of baud rate programmed for uart2 (default to 115200) + */ +#ifndef USART2_BAUD_RATE +# define USART2_BAUD_RATE 115200 +#endif + + +#ifndef VL53L0X_UART_DMA_RX +/** configure use of dma for uart rx + * + * Default to not use DMA RX when not defined explicitly + * + * require @a VL53L0X_HAVE_UART + */ +#define VL53L0X_UART_DMA_RX 0 +#endif //VL53L0X_UART_DMA_RX + +#ifndef VL53L0X_UART_DMA_TX +/** configure use of dma for uart tx + * + * Default to use DMA TX when not defined explicitly by user + * + * require @a VL53L0X_HAVE_UART + */ +#define VL53L0X_UART_DMA_TX 1 +#endif //VL53L0X_UART_DMA_RX + + +#ifndef VL53L0X_UART_DMA_RX_IRQ_PRI +/** configure usart max irq priority + * + * Default to 0 when not defined explicitly by user + * @warning may not be support by all mcu (only F401 tested) + */ +# define VL53L0X_UART_DMA_RX_IRQ_PRI 0 +#endif + +#ifndef VL53L0X_UART_DMA_TX_IRQ_PRI +/** configure usart dma tx irq priority + * + * Default to 0 when not defined explicitly + * @warning only F401 + */ + +#define VL53L0X_UART_DMA_TX_IRQ_PRI 0 +#endif + +#ifndef VL53L0X_UART_IRQ_PRI +/** + * User override default uart irq priority 0 to fit application needs + * @warning only supported for f401 + */ +#define VL53L0X_UART_IRQ_PRI 0 +#endif + +/* provided by MSP part */ +extern void XNUCLEO53L1A1_USART2_UART_Init(void); + +#else +# define XNUCLEO53L1A1_USART2_UART_Init(...) (void)0 +#endif + +/** @} */ + +/** + * Configure interrupt pins pins pull up/down + * + * set to GPIO_NOPULL or GPIO_PULLUP or GPIO_PULLDOWN + */ +#define VL53L0X_INTR_PIN_PUPD GPIO_PULLUP + + + +/** + * @ingroup VL53L0X_GPIO1_MAP + * @{ + */ + +#ifndef VL53L0X_GPIO1_SHARED +/** + * @brief select use of shared interrupt + * + * Must be set to 0 (or not defined) for one interrupt per sensor + * Must be set to non 0 for shared interrupt line + * see @sa VL53L0X_GPIO1_C_OPTION + */ +#define VL53L0X_GPIO1_SHARED 1 +#endif + + +#ifndef VL53L0X_GPIO1_C_OPTION +/** + * @def VL53L0X_GPIO1_C_OPTION + * @brief select GPIO1 to exti mapping for center or shared interrupt + * + * Set option value or un-define it to match with board configuration + * @li not defined or 0 : U14=On and U17=off => GPIO1_C = PA4 + * @li defined and not 0 : U14=Off and U17=on => GPIO1_C = PC1 + */ +#define VL53L0X_GPIO1_C_OPTION 1 +#endif +#if 0 +/* ############ FOR SHARED GPIO1 INTR TO MCU ###### */ +#define VL53L0X_GPIO1_C_GPIO_PORT GPIOA +#define VL53L0X_GPIO1_C_CLK_ENABLE __GPIOA_CLK_ENABLE +#define VL53L0X_GPIO1_C_GPIO_PIN GPIO_PIN_10 +#define VL53L0X_GPIO1_C_INTx EXTI15_10_IRQn + +#define VL53L0X_GPIO1_L_GPIO_PORT GPIOA +#define VL53L0X_GPIO1_L_CLK_ENABLE __GPIOA_CLK_ENABLE +#define VL53L0X_GPIO1_L_GPIO_PIN GPIO_PIN_10 +#define VL53L0X_GPIO1_L_INTx EXTI15_10_IRQn + +#define VL53L0X_GPIO1_R_GPIO_PORT GPIOA +#define VL53L0X_GPIO1_R_CLK_ENABLE __GPIOA_CLK_ENABLE +#define VL53L0X_GPIO1_R_GPIO_PIN GPIO_PIN_10 +#define VL53L0X_GPIO1_R_INTx EXTI15_10_IRQn +/* ############ FOR SHARED GPIO1 INTR TO MCU ###### */ +#endif +/* ############ FOR SHARED GPIO1 INTR TO MCU ###### */ +#ifndef RM2 +#define VL53L0X_GPIO1_C_GPIO_PORT GPIOB +#define VL53L0X_GPIO1_C_CLK_ENABLE __GPIOB_CLK_ENABLE +#define VL53L0X_GPIO1_C_GPIO_PIN GPIO_PIN_3 +#define VL53L0X_GPIO1_C_INTx EXTI3_IRQn + +#define VL53L0X_GPIO1_L_GPIO_PORT GPIOB +#define VL53L0X_GPIO1_L_CLK_ENABLE __GPIOB_CLK_ENABLE +#define VL53L0X_GPIO1_L_GPIO_PIN GPIO_PIN_3 +#define VL53L0X_GPIO1_L_INTx EXTI3_IRQn + +#define VL53L0X_GPIO1_R_GPIO_PORT GPIOB +#define VL53L0X_GPIO1_R_CLK_ENABLE __GPIOB_CLK_ENABLE +#define VL53L0X_GPIO1_R_GPIO_PIN GPIO_PIN_3 +#define VL53L0X_GPIO1_R_INTx EXTI3_IRQn +#elif defined(RM2) +#define VL53L0X_GPIO1_C_GPIO_PORT GPIOB +#define VL53L0X_GPIO1_C_CLK_ENABLE __GPIOB_CLK_ENABLE +#define VL53L0X_GPIO1_C_GPIO_PIN GPIO_PIN_5 +#define VL53L0X_GPIO1_C_INTx EXTI9_5_IRQn + +#define VL53L0X_GPIO1_L_GPIO_PORT GPIOB +#define VL53L0X_GPIO1_L_CLK_ENABLE __GPIOB_CLK_ENABLE +#define VL53L0X_GPIO1_L_GPIO_PIN GPIO_PIN_5 +#define VL53L0X_GPIO1_L_INTx EXTI9_5_IRQn + +#define VL53L0X_GPIO1_R_GPIO_PORT GPIOB +#define VL53L0X_GPIO1_R_CLK_ENABLE __GPIOB_CLK_ENABLE +#define VL53L0X_GPIO1_R_GPIO_PIN GPIO_PIN_5 +#define VL53L0X_GPIO1_R_INTx EXTI9_5_IRQn + +#endif +/* ############ FOR SHARED GPIO1 INTR TO MCU ###### */ +/** @} */ /* defgroup L53L1A1_GPIO1_MAP */ + +#ifndef XNUCLEO53L1A1_TRACE +/** + * @brief enable error output via trace + * + * when undefined (default) no trace no error logging is done, it is safe + * to at least count error just to see if any errors ever occur. + * + * Traces formating and output is end user defined via #trace_printf + */ +#define XNUCLEO53L1A1_TRACE TRACE_UART +#endif // XNUCLEO53L1A1_TRACE + + +/** + * @def XNUCLEO53L1A1_ErrLog(...) + * Macro used to report error log messages with printf format + * + * Our testing version use externally trace_printf, + * We trace out function names and line numbers plus any text formated with some extra arguments + */ +#if XNUCLEO53L1A1_TRACE +# define XNUCLEO53L1A1_ErrLog( msg, ...) trace_printf("[Err] %s l %d \t" msg "\n", __func__, __LINE__, ##__VA_ARGS__) +#else +# define XNUCLEO53L1A1_ErrLog(...) (void)0 +#endif + + + +/** @} */ /* group XNUCLEO53L1A1_Debugging */ + + +/** + * @defgroup X-WL55_WLE5_53L0X_Interface X-WL55_WLE5_53L0X BSP API + * @{ */ + +/** + * 53L0X Device selector + * + * @note Most functions are using a device selector as input. ASCII 'c', 'l' or 'r' are also accepted. + */ +enum XNUCLEO53L1A1_dev_e{ + XNUCLEO53L0X_LEFT = 0, //!< left satellite device P21 header : 'l' + XNUCLEO53L0X_CENTER = 1, //!< center (built-in) vl053 device : 'c" + XNUCLEO53L0X_RIGHT= 2 //!< Right satellite device P22 header : 'r' +}; + +/** + * I2C1 handle + * @note setup and configured by @ref XNUCLEO53L1A1_Init + */ +extern I2C_HandleTypeDef X_WL55_WLE5_53L0X_hi2c; +/** UART2 handle + * + * UART2 is the nucleo Virtual Com Port + * @note setup and configured by @ref XNUCLEO53L1A1_Init*/ +#if VL53L0X_HAVE_UART +extern UART_HandleTypeDef huart2; + +#if VL53L0X_UART_DMA_RX +/** UART2 DMA RX available only if support activated*/ +extern DMA_HandleTypeDef hdma_usart2_rx; +#endif + +#if VL53L0X_UART_DMA_TX +/** UART2 DMA TX available only if support activated */ +extern DMA_HandleTypeDef hdma_usart2_tx; +#endif +#endif//ifdef VL53L0X_HAVE_UART + +/** + * Initialize VL053L1A1 STM32 expansion board + * + * @note All VL53L0X devices XSDN are asserted and display is turned off + * @return 0 on success + */ +int XWL55_WLE5_53L0X_Init(void); + +/** + * Set Reset (XSDN) state of a given "id" device + * @param DevNo The device number use @ref XNUCLEO53L1A1_dev_e. Char 't' 'c' 'r' can also be used + * @param state State of the device reset (xsdn) pin @warning reset pin is active low + * @return 0 on success + */ + +void XWL55_WLE5_53L0X_ResetId(uint8_t DevNo, int state); + +/** + * Enable Disable interrupt at MCU level (MSP) + * + * Enable/Disable the interrupt for a given sensor Dev number + * + * End user is expected to override VL53L0X_EXTI_Callback to catch interrupts. + * When the vector is shared applicaton is passed the device and pin corretcy + * In shared line mode application is responsible to find what sensor cause the interrupt and deal with races on interrupt line + * + * @param EnableIntr "boolean" 0 to disable interrupt otherwise interrupt is enabled + * @param DevNo Device number "name" of the sensor see @ref XNUCLEO53L1A1_dev_e + * + * @warning In shared interrupt mode, use only center : other values are not supported and will return an error + * @warning If several lines share the same interrupt vector (l053 mcu), only one sensor interrupt shall be enable at a time + * otherwise the handler may fail to locate and clear the right source (no sharing management) + * + * @return 0 on success \n + * <0 for error (invalid id) + * >0 interrupt configured but with potential sharing on EXTI groups see @ref VL53L0X_GPIO1_MAP + */ +//int XNUCLEO53L1A1_SetIntrStateId(int EnableIntr, int DevNo); +int XWL55_WLE5_53L0X_SetIntrStateId(int EnableIntr, int DevNo); +int sts_tof_vl53l0x_DetectSensors(void); +void STS_TOF_VL53L0X_Range_Process(void); +#endif /* _X_WL55_WLE5_53L0X_H_ */ diff --git a/STS/TOF/App/app_tof_peoplecount.c b/STS/TOF/App/app_tof_peoplecount.c index 3883e14..f6ba0f8 100644 --- a/STS/TOF/App/app_tof_peoplecount.c +++ b/STS/TOF/App/app_tof_peoplecount.c @@ -15,17 +15,24 @@ extern I2C_HandleTypeDef hi2c2; volatile sts_people_count_sensor_data_t sts_people_count_sensor_data={0,0,0,2,'M',0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1}; extern volatile uint32_t STS_TOFScanPeriod_sec, STS_TxPeriod_sec, STS_HeartBeatTimerPeriod_sec; -volatile sts_ppc_cfg_type_t ppc_cfg[3] = { - {DOOR_JAM_2000, 8, 2000,0,1600,8,33,DISTANCE_MODE_SHORT,175,247}, - {DOOR_JAM_2000, 8, 2000,0,1600,8,33,DISTANCE_MODE_SHORT,175,247}, - {DOOR_JAM_2400, 10, 2400,0,1600,8,33,DISTANCE_MODE_LONG,175,231}, +volatile uint8_t sts_tof_presence_state=0; + +/* TIMING_BUDGET, in ms possible values [15, 20, 50, 100, 200, 500] */ +/* DISTANCE_THRESHOLD = MAX - ASSUME_CHILD_HEIGHT(800mm) */ +volatile sts_ppc_cfg_type_t ppc_cfg[6] = { + {DOOR_JAM_2000, 8, 2000,0, 1200,8, tbms_33,DISTANCE_MODE_LONG,175,247}, + {DOOR_JAM_2400, 10, 2400,0, 1600,8, tbms_50,DISTANCE_MODE_LONG,175,231}, + {DOOR_JAM_3000, 10, 3000,0, 2200,8,tbms_100,DISTANCE_MODE_LONG,175,231}, + {DOOR_JAM_3500, 10, 3500,0, 2700,8,tbms_100,DISTANCE_MODE_LONG,175,231}, + {DOOR_JAM_4000, 10, 4000,0, 3200,8,tbms_200,DISTANCE_MODE_LONG,175,231}, + {DOOR_SIDE_1600, 8, 1600,0, 300,8, tbms_33,DISTANCE_MODE_SHORT,175,231}, }; volatile sts_zone_center_by_rows_of_spads_t zone_center[3]={ {4, 151, 247}, {6, 159, 239}, {8, 175, 231}, }; -volatile uint8_t sts_distance_mode = DISTANCE_MODE_LONG; +volatile uint8_t sts_distance_mode = DOOR_JAM_3000; volatile uint8_t sts_people_count_number_changed = 0; static uint32_t cnt_today=0, cnt_week=0; static uint8_t last_year=0, this_year=0,last_month=0, this_month=0,last_week=0, this_week=0,last_day=0, this_day=0; @@ -387,7 +394,69 @@ void STS_TOF_VL53LX_PresenceDetection_Process_Start(void) } } +int sts_tof_vl53lx_presence_detection_start(void) +{ + uint8_t byteData, sensorState=0; + uint16_t wordData; + /* MCU Configuration----------------------------------------------------------*/ + /* Reset of all peripherals, Initializes the Flash interface and the Systick. */ + /* Configure the system clock */ + /* Initialize all configured peripherals */ + //APP_LOG(TS_OFF, VLEVEL_H,"XNUCLEO53L1A1_Init Start .......... \r\n"); + status = XNUCLEO53L1A1_Init(); + //APP_LOG(TS_OFF, VLEVEL_H,"XNUCLEO53L1A1_Init Status : %X\n", status); + + + status = XNUCLEO53L1A1_ResetId(XNUCLEO53L1A1_DEV_CENTER, 0); // Reset ToF sensor + HAL_Delay(2); + status = XNUCLEO53L1A1_ResetId(XNUCLEO53L1A1_DEV_CENTER, 1); // Reset ToF sensor + + + // Those basic I2C read functions can be used to check your own I2C functions */ + status = VL53L1_RdByte(dev, 0x010F, &byteData); + //APP_LOG(TS_OFF, VLEVEL_H,"VL53L1X Model_ID: %X\n", byteData); + status = VL53L1_RdByte(dev, 0x0110, &byteData); + //APP_LOG(TS_OFF, VLEVEL_H,"VL53L1X Module_Type: %X\n", byteData); + status = VL53L1_RdWord(dev, 0x010F, &wordData); + //APP_LOG(TS_OFF, VLEVEL_H,"VL53L1X: %X\n", wordData); + sensor_id = wordData; + wordData = 0; + while (sensorState == 0) { + status = VL53L1X_BootState(dev, &sensorState); + HAL_Delay(2); + wordData ++; + if (wordData > 8000) { + APP_LOG(TS_OFF, VLEVEL_H,"\n\n ***Failed to boot Chip***\n\n\n"); + return status; + } + } + //APP_LOG(TS_OFF, VLEVEL_H,"\nChip booted\n\n"); + + /* Initialize and configure the device according to people counting need */ + status = VL53L1X_SensorInit(dev); + status += VL53L1X_SetDistanceMode(dev, ppc_cfg[sts_distance_mode].distance_mode); /* 1=short, 2=long, DISTANCE_MODE */ + status += VL53L1X_SetTimingBudgetInMs(dev, ppc_cfg[sts_distance_mode].timing_budget); /* TIMING_BUDGET, in ms possible values [15, 20, 50, 100, 200, 500] */ + status += VL53L1X_SetInterMeasurementInMs(dev, ppc_cfg[sts_distance_mode].timing_budget); + status += VL53L1X_SetROI(dev, ppc_cfg[sts_distance_mode].rows_of_SPADS, 16); /* minimum ROI 4,4 */ + center[0]=ppc_cfg[sts_distance_mode].front_zone_center; + center[1]=ppc_cfg[sts_distance_mode].back_zone_center; + if (status != 0) { + APP_LOG(TS_OFF, VLEVEL_H,"Initialization or configuration of the device\n"); + return (-1); + } + //APP_LOG(TS_OFF, VLEVEL_H,"\n\nStart counting people with profile : %s...\n\n", PROFILE_STRING); + status = VL53L1X_StartRanging(dev); /* This function has to be called to enable the ranging */ + + if (status != 0) { + APP_LOG(TS_OFF, VLEVEL_H,"Error in start ranging\n"); + return (-1); + } + return 0; + + + +} int sts_tof_vl53lx_peoplecount_init(void) { //int8_t error; diff --git a/STS/TOF/App/app_tof_peoplecount.h b/STS/TOF/App/app_tof_peoplecount.h index ad7dcde..df1cf9b 100644 --- a/STS/TOF/App/app_tof_peoplecount.h +++ b/STS/TOF/App/app_tof_peoplecount.h @@ -40,7 +40,9 @@ #define DOOR_JAM_2000 0 #define DOOR_JAM_2400 1 #define DOOR_JAM_3000 2 - #define ON_SIDE 3 + #define DOOR_JAM_3500 3 + #define DOOR_JAM_4000 4 + #define DOOR_SIDE_1600 5 @@ -83,8 +85,8 @@ /* Exported functions --------------------------------------------------------*/ enum distance_mode { DISTANCE_MODE_SIDE=0, - DISTANCE_MODE_SHORT, - DISTANCE_MODE_LONG, + DISTANCE_MODE_SHORT, // 1: for max distance less than 1.3m + DISTANCE_MODE_LONG, // 2: (default) for max distance less than 4.0m with time buedget 200ms }; typedef struct STS_ZONE_CENTRE_BY_ROWS_OF_SPADS diff --git a/STS/TOF/App/app_tof_vl53l0x_range.c b/STS/TOF/App/app_tof_vl53l0x_range.c index 3d2d74d..58f841f 100644 --- a/STS/TOF/App/app_tof_vl53l0x_range.c +++ b/STS/TOF/App/app_tof_vl53l0x_range.c @@ -1,453 +1,453 @@ -/* USER CODE BEGIN Header */ -/** - ****************************************************************************** - * @file app_tof_vl53l0x_range.c - * @author Yunhorn (r) Technology Limited Application Team - * @brief Application of the LRWAN Middleware - ****************************************************************************** - * @attention - * - * Copyright (c) 2023 Yunhorn Technology Limited. - * Copyright (c) 2023 Shenzhen Yunhorn Technology Co., Ltd. - * All rights reserved. - * - * This software is licensed under terms that can be found in the LICENSE file - * in the root directory of this software component. - * If no LICENSE file comes with this software, it is provided AS-IS. - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#ifdef VL53L0 - -/* USER CODE BEGIN Includes */ -#include <string.h> -#include "X-WL55_WLE5_53L0X.h" -#include "main.h" -#include "vl53l0x_api.h" -#include <limits.h> -#include "sys_app.h" -#include "yunhorn_sts_sensors.h" - -/** - * @defgroup Configuration Static configuration - * @{ - */ - -/** @} */ /* config group */ - -#ifndef MIN -# define MIN(a,b) ((a) < (b) ? (a) : (b)) -#endif - -/** - * @defgroup ErrCode Errors code shown on display - * @{ - */ -#if defined(STS_R1)||defined(STS_R1D) //short, accuracy ranging for jumbo sensors -#define STS_MAX_L0_RANGE ((uint32_t) 1000) -#endif - -#ifdef STS_R5 //long distance for waste bin sensor -#define STS_MAX_L0_RANGE ((uint32_t) 2500) -#endif - -#define ERR_DETECT -1 -#define ERR_DEMO_RANGE_ONE 1 -#define ERR_DEMO_RANGE_MULTI 2 -extern I2C_HandleTypeDef hi2c2; -#define X_WL55_WLE5_53L0X_hi2c hi2c2 - -/** }@} */ /* defgroup ErrCode */ - - -/* USER CODE END Includes */ - -/* Private variables ---------------------------------------------------------*/ - -/* USER CODE BEGIN PV */ -/* Private variables ---------------------------------------------------------*/ - -typedef enum { - LONG_RANGE = 0, /*!< Long range mode */ - HIGH_SPEED = 1, /*!< High speed mode */ - HIGH_ACCURACY = 2, /*!< High accuracy mode */ -} RangingConfig_e; - -/** - * Global ranging struct - */ -VL53L0X_RangingMeasurementData_t RangingMeasurementData; - -/** leaky factor for filtered range - * - * r(n) = averaged_r(n-1)*leaky +r(n)(1-leaky) - * - * */ -int LeakyFactorFix8 = (int)( 0.6 *256); // 0.6 for ranging, 0.0 for gesture detect -/** How many device detect set by @a DetectSensors()*/ -int nDevPresent=0; -/** bit is index in VL53L0XDevs that is not necessary the dev id of the BSP */ -int nDevMask=0; - -int nSensorPresent; - -volatile int sts_tof_distance_data[MAX_TOF_COUNT]={0x0}; -extern volatile uint8_t sensor_data_ready; - -VL53L0X_Dev_t VL53L0XDevs[]={ - {.Id=XNUCLEO53L0X_LEFT, .DevLetter='l',.I2cHandle=&X_WL55_WLE5_53L0X_hi2c, .I2cDevAddr=0x52}, - {.Id=XNUCLEO53L0X_CENTER,.DevLetter='c', .I2cHandle=&X_WL55_WLE5_53L0X_hi2c, .I2cDevAddr=0x52}, - {.Id=XNUCLEO53L0X_RIGHT, .DevLetter='r',.I2cHandle=&X_WL55_WLE5_53L0X_hi2c, .I2cDevAddr=0x52}, -}; - -/* USER CODE BEGIN PFP */ -/* Private function prototypes -----------------------------------------------*/ -//void ResetAndDetectSensor(int SetDisplay); - -void sts_tof_vl53l0x_Sensor_SetNewRange(VL53L0X_Dev_t *pDev, VL53L0X_RangingMeasurementData_t *pRange); -void sts_tof_vl53l0x_SetupSingleShot(RangingConfig_e rangingConfig); -/* USER CODE END PFP */ - -/* USER CODE BEGIN 0 */ - -/** - * Handle Error - * - * Set err on display and loop forever - * @param err Error case code - */ -void HandleError(int err){ - //char msg[16]; - //sprintf(msg,"Er%d", err); - APP_LOG(TS_OFF, VLEVEL_H,"Er %04u\r\n",err); - //while(1){}; -} - - - -/** - * Reset all sensor then goes true presence detection - * - * All present devices are data initiated and assigned with their final address - * @return - */ -int sts_tof_vl53l0x_DetectSensors(void) -{ - int i; - uint16_t Id; - int status; - int FinalAddress; - nDevPresent = 0; - - for (i=0; i < MAX_TOF_COUNT; i++) { - XWL55_WLE5_53L0X_ResetId(i,0); - //XWL55_WLE5_53L0X_SetIntrStateId(1,i); - } - - /* detect all sensors (even on-board)*/ - for (i=0; i < MAX_TOF_COUNT; i++) - { - VL53L0X_Dev_t *pDev; - pDev = &VL53L0XDevs[i]; - pDev->I2cDevAddr = 0x52; - pDev->Present = 0; - XWL55_WLE5_53L0X_ResetId(pDev->Id, 1); - HAL_Delay(3); - FinalAddress = 0x52+(i+1)*2; - - //APP_LOG(TS_OFF, VLEVEL_M, "\r\n Detect TOF sensors #%u with I2CDevAddr=0x%02x \r\n", i, pDev->I2cDevAddr); - - do { - /* Set I2C standard mode (400 KHz) before doing the first register access */ - //if (status == VL53L0X_ERROR_NONE) - //status = VL53L0X_WrByte(pDev, 0x88, 0x00); - - /* Try to read one register using default 0x52 address */ - status = VL53L0X_RdWord(pDev, VL53L0X_REG_IDENTIFICATION_MODEL_ID, &Id); - //APP_LOG(TS_OFF, VLEVEL_H, "#%u read id = %04X I2C ADDR=0x%2X\r\n",i, Id, pDev->I2cDevAddr); - if (status) { - APP_LOG(TS_OFF, VLEVEL_H, "# Read id fail \r\n"); - break; - } - if (Id == 0xEEAA) { - /* Sensor is found => Change its I2C address to final one */ - //APP_LOG(TS_OFF, VLEVEL_H, "\n Set Final i2c addr to %02X \r\n", FinalAddress); - status = VL53L0X_SetDeviceAddress(pDev,FinalAddress); - if (status != 0) { - APP_LOG(TS_OFF, VLEVEL_H, "#i VL53L0X_SetDeviceAddress fail\r\n"); - break; - } - pDev->I2cDevAddr = FinalAddress; - //APP_LOG(TS_OFF, VLEVEL_H, "\n pDev->I2CDevAddr set to: %02X \r\n", pDev->I2cDevAddr); - /* Check all is OK with the new I2C address and initialize the sensor */ - status = VL53L0X_RdWord(pDev, VL53L0X_REG_IDENTIFICATION_MODEL_ID, &Id); - if (status !=0) - { - APP_LOG(TS_OFF, VLEVEL_H, "#i VL53L0X_RdWord fail\r\n"); - break; - } - status = VL53L0X_DataInit(pDev); - if( status == 0 ){ - pDev->Present = 1; - nDevPresent++; - nDevMask |= 1 << i; - pDev->Present = 1; - } - else{ - APP_LOG(TS_OFF, VLEVEL_H, "VL53L0X_DataInit %d fail\r\n", Id); - break; - } - - } else { - APP_LOG(TS_OFF, VLEVEL_H, "# unknown ID %x\r\n", Id); - status = 1; - } - } while(0); - /* Display detected sensor(s) */ - if (status) { - XWL55_WLE5_53L0X_ResetId(i,0); - } - } - - return nDevPresent; -} - -/** - * Setup all detected sensors for single shot mode and setup ranging configuration - */ -void sts_tof_vl53l0x_SetupSingleShot(RangingConfig_e rangingConfig) -{ int i; - int status=VL53L0X_ERROR_NONE; - uint8_t VhvSettings; - uint8_t PhaseCal; - uint32_t refSpadCount; - uint8_t isApertureSpads; - FixPoint1616_t signalLimit = (FixPoint1616_t)(0.25*65536); - FixPoint1616_t sigmaLimit = (FixPoint1616_t)(18*65536); - uint32_t timingBudget = 33000; - uint8_t preRangeVcselPeriod = 14; - uint8_t finalRangeVcselPeriod = 10; - // uart_printf("\r\n######### start setup for single shot \r\n"); - for( i=0; i< MAX_TOF_COUNT; i++){ - - if( VL53L0XDevs[i].Present){ - - //APP_LOG(TS_OFF, VLEVEL_H, "\r\n ###### Starting Range #%u sensor \r\n",i); - - status=VL53L0X_StaticInit(&VL53L0XDevs[i]); - - status = VL53L0X_PerformRefCalibration(&VL53L0XDevs[i], &VhvSettings, &PhaseCal); - - status = VL53L0X_PerformRefSpadManagement(&VL53L0XDevs[i], &refSpadCount, &isApertureSpads); - - status = VL53L0X_SetDeviceMode(&VL53L0XDevs[i], VL53L0X_DEVICEMODE_SINGLE_RANGING); // Setup in single ranging mode - - status = VL53L0X_SetLimitCheckEnable(&VL53L0XDevs[i], VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, 1); // Enable Sigma limit - - status = VL53L0X_SetLimitCheckEnable(&VL53L0XDevs[i], VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE, 1); // Enable Signa limit - - /* Ranging configuration */ - switch(rangingConfig) { - case LONG_RANGE: - signalLimit = (FixPoint1616_t)(0.1*65536); - sigmaLimit = (FixPoint1616_t)(60*65536); - timingBudget = 33000; - preRangeVcselPeriod = 18; - finalRangeVcselPeriod = 14; - break; - case HIGH_ACCURACY: - signalLimit = (FixPoint1616_t)(0.25*65536); - sigmaLimit = (FixPoint1616_t)(18*65536); - timingBudget = 200000; - preRangeVcselPeriod = 14; - finalRangeVcselPeriod = 10; - break; - case HIGH_SPEED: - signalLimit = (FixPoint1616_t)(0.25*65536); - sigmaLimit = (FixPoint1616_t)(32*65536); - timingBudget = 20000; - preRangeVcselPeriod = 14; - finalRangeVcselPeriod = 10; - break; - default: - APP_LOG(TS_OFF, VLEVEL_H, "Not Supported"); - break; - } - - status = VL53L0X_SetLimitCheckValue(&VL53L0XDevs[i], VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE, signalLimit); - - status = VL53L0X_SetLimitCheckValue(&VL53L0XDevs[i], VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, sigmaLimit); - - status = VL53L0X_SetMeasurementTimingBudgetMicroSeconds(&VL53L0XDevs[i], timingBudget); - - status = VL53L0X_SetVcselPulsePeriod(&VL53L0XDevs[i], VL53L0X_VCSEL_PERIOD_PRE_RANGE, preRangeVcselPeriod); - - status = VL53L0X_SetVcselPulsePeriod(&VL53L0XDevs[i], VL53L0X_VCSEL_PERIOD_FINAL_RANGE, finalRangeVcselPeriod); - - status = VL53L0X_PerformRefCalibration(&VL53L0XDevs[i], &VhvSettings, &PhaseCal); - - VL53L0XDevs[i].LeakyFirst =1; - - } - } - -} - - -/* Store new ranging data into the device structure, apply leaky integrator if needed */ -void sts_tof_vl53l0x_Sensor_SetNewRange(VL53L0X_Dev_t *pDev, VL53L0X_RangingMeasurementData_t *pRange) -{ - if( pRange->RangeStatus == 0 ){ - if( pDev->LeakyFirst ){ - pDev->LeakyFirst = 0; - pDev->LeakyRange = pRange->RangeMilliMeter; - } - else{ - pDev->LeakyRange = (pDev->LeakyRange*LeakyFactorFix8 + (256-LeakyFactorFix8)*pRange->RangeMilliMeter)>>8; - } - } - else{ - pDev->LeakyFirst = 1; - } -} - -/* USER CODE END 0 */ -void STS_TOF250_Range_Process(void) -{ -#ifdef TOF_3 - -#define I2C_TIME_OUT_BASE 10 -#define I2C_TIME_OUT_BYTE 1 - int status; - uint8_t pdata[2]={0x0,0x0}; uint32_t count=2; - int i2c_time_out = I2C_TIME_OUT_BASE + count*I2C_TIME_OUT_BYTE; - - sensor_data_ready = 0 ; - - sts_tof_distance_data[0] = 0; - sts_tof_distance_data[1] = 0; - - sts_tof_distance_data[2] = 0; - - status = HAL_I2C_Master_Receive(&hi2c2, TOF250_I2C_ADDR, pdata, count, i2c_time_out); - if (status == HAL_OK) { - APP_LOG(TS_OFF, VLEVEL_H, "\r\n## TOF250 ranging value %02x %02x %4d ",pdata[0],pdata[1], *pdata); - sts_tof_distance_data[2] = pdata[0]<<8|pdata[1]; - sensor_data_ready = 1; - APP_LOG(TS_OFF, VLEVEL_H, "\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]); - } -#endif - -} -void STS_TOF_VL53L0X_Range_Process(void) -{ - int status=0, i; - /* HIGH_ACCURACY for STS_R1/R2/R3 short distance less than 1000mm */ - /* LONG_RANGE for STS_R5 long distance less than 2500mm */ - - RangingConfig_e RangingConfig = HIGH_ACCURACY; //HIGH_ACCURACY; //LONG_RANGE; - XWL55_WLE5_53L0X_Init(); - if ((nDevMask ==0) || (nSensorPresent ==0)) - { - nSensorPresent = sts_tof_vl53l0x_DetectSensors(); // confirm sensor online - APP_LOG(TS_OFF, VLEVEL_M, "\r\n %u pcs sensor(s) online \r\n", nSensorPresent); - } - - //APP_LOG(TS_OFF, VLEVEL_H, "\n\n nDevMask=%02X nSensorPresent = %02x \n\n", nDevMask, nSensorPresent); - -#ifdef TOF_3 - sts_tof_distance_data[2] = 0; -#endif - - if (nSensorPresent > 0) - { - // RangingConfig == HIGH ACCURACY, LONG RANGE, HIGH SPEED - sts_tof_vl53l0x_SetupSingleShot(RangingConfig); - - sensor_data_ready = 0 ; - //for (i=0; i< MAX_TOF_COUNT; i++) - for (i=0; i< nSensorPresent; i++) - { - //APP_LOG(TS_OFF, VLEVEL_H, "\n\n i=%u Present=%u DevAdd=%02x \n", i, VL53L0XDevs[i].Present, VL53L0XDevs[i].I2cDevAddr); - if (VL53L0XDevs[i].Present ==1) - { - uint8_t rep=0; - do { -// rep++; - status = VL53L0X_PerformSingleRangingMeasurement(&VL53L0XDevs[i], &RangingMeasurementData); - if (status ==0) - { - sts_tof_vl53l0x_Sensor_SetNewRange(&VL53L0XDevs[i],&RangingMeasurementData); - if( RangingMeasurementData.RangeStatus == 0 ) - { - sts_tof_distance_data[i] = (int)VL53L0XDevs[i].LeakyRange; - nDevMask |= (1 << i); - sensor_data_ready |= 1<<i; - } else - { - //HandleError(ERR_DEMO_RANGE_ONE); - APP_LOG(TS_OFF, VLEVEL_H,"\r\n#%u sensor ERR code = %04u\r\n",i, ERR_DEMO_RANGE_ONE); - } - // ########## two conditions - // ########## 1) return status ==0, - // ########## 2) and ranging status for valid ranging value !!!!!!!!!!!!!!!!! - } - - HAL_Delay(1); - - } while ((RangingMeasurementData.RangeStatus != 0)&&(rep++ < 10)); - sts_tof_distance_data[i] = (RangingMeasurementData.RangeStatus!=0)?STS_MAX_L0_RANGE:VL53L0XDevs[i].LeakyRange; - } - - HAL_Delay(30); - } // for i < MAX_TOF_COUNT - - if (sensor_data_ready != 0) - { - APP_LOG(TS_OFF, VLEVEL_M, "\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]); - } - - } else { - // nSensorPresent >0 - sts_tof_distance_data[0] = STS_MAX_L0_RANGE; - sts_tof_distance_data[1] = STS_MAX_L0_RANGE; - sts_tof_distance_data[2] = STS_MAX_L0_RANGE; - APP_LOG(TS_OFF, VLEVEL_H, "\n\n APP_LOG no ToF sensor online \n\n"); - } - - // reset for next ranging - nDevMask = 0; - nSensorPresent = 0; -} - -void STS_RR_Sensor_Read(sts_tof_range_data_t *sts_rr_sensor_data) -{ - sts_rr_sensor_data->tof_1_distance_mm = sts_tof_distance_data[0]; - sts_rr_sensor_data->tof_2_distance_mm = sts_tof_distance_data[1]; - sts_rr_sensor_data->tof_3_distance_mm = sts_tof_distance_data[2]; -} - -void STS_Prepare_Packet_Data(void) -{ - //AppData.Buffer = 0x0; - //AppData.BufferSize = 0x0; -} - -/* USER CODE BEGIN 4 */ - -/* USER CODE END 4 */ - -#endif -/** - * @} - */ - -/** - * @} -*/ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/* USER CODE BEGIN Header */ +/** + ****************************************************************************** + * @file app_tof_vl53l0x_range.c + * @author Yunhorn (r) Technology Limited Application Team + * @brief Application of the LRWAN Middleware + ****************************************************************************** + * @attention + * + * Copyright (c) 2023 Yunhorn Technology Limited. + * Copyright (c) 2023 Shenzhen Yunhorn Technology Co., Ltd. + * All rights reserved. + * + * This software is licensed under terms that can be found in the LICENSE file + * in the root directory of this software component. + * If no LICENSE file comes with this software, it is provided AS-IS. + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#ifdef VL53L0 + +/* USER CODE BEGIN Includes */ +#include <string.h> +#include "X-WL55_WLE5_53L0X.h" +#include "main.h" +#include "vl53l0x_api.h" +#include <limits.h> +#include "sys_app.h" +#include "yunhorn_sts_sensors.h" + +/** + * @defgroup Configuration Static configuration + * @{ + */ + +/** @} */ /* config group */ + +#ifndef MIN +# define MIN(a,b) ((a) < (b) ? (a) : (b)) +#endif + +/** + * @defgroup ErrCode Errors code shown on display + * @{ + */ +#if defined(STS_R1)||defined(STS_R1D) //short, accuracy ranging for jumbo sensors +#define STS_MAX_L0_RANGE ((uint32_t) 1000) +#endif + +#ifdef STS_R5 //long distance for waste bin sensor +#define STS_MAX_L0_RANGE ((uint32_t) 2500) +#endif + +#define ERR_DETECT -1 +#define ERR_DEMO_RANGE_ONE 1 +#define ERR_DEMO_RANGE_MULTI 2 +extern I2C_HandleTypeDef hi2c2; +#define X_WL55_WLE5_53L0X_hi2c hi2c2 + +/** }@} */ /* defgroup ErrCode */ + + +/* USER CODE END Includes */ + +/* Private variables ---------------------------------------------------------*/ + +/* USER CODE BEGIN PV */ +/* Private variables ---------------------------------------------------------*/ + +typedef enum { + LONG_RANGE = 0, /*!< Long range mode */ + HIGH_SPEED = 1, /*!< High speed mode */ + HIGH_ACCURACY = 2, /*!< High accuracy mode */ +} RangingConfig_e; + +/** + * Global ranging struct + */ +VL53L0X_RangingMeasurementData_t RangingMeasurementData; + +/** leaky factor for filtered range + * + * r(n) = averaged_r(n-1)*leaky +r(n)(1-leaky) + * + * */ +int LeakyFactorFix8 = (int)( 0.6 *256); // 0.6 for ranging, 0.0 for gesture detect +/** How many device detect set by @a DetectSensors()*/ +int nDevPresent=0; +/** bit is index in VL53L0XDevs that is not necessary the dev id of the BSP */ +int nDevMask=0; + +int nSensorPresent; + +volatile int sts_tof_distance_data[MAX_TOF_COUNT]={0x0}; +extern volatile uint8_t sensor_data_ready; + +VL53L0X_Dev_t VL53L0XDevs[]={ + {.Id=XNUCLEO53L0X_LEFT, .DevLetter='l',.I2cHandle=&X_WL55_WLE5_53L0X_hi2c, .I2cDevAddr=0x52}, + {.Id=XNUCLEO53L0X_CENTER,.DevLetter='c', .I2cHandle=&X_WL55_WLE5_53L0X_hi2c, .I2cDevAddr=0x52}, + {.Id=XNUCLEO53L0X_RIGHT, .DevLetter='r',.I2cHandle=&X_WL55_WLE5_53L0X_hi2c, .I2cDevAddr=0x52}, +}; + +/* USER CODE BEGIN PFP */ +/* Private function prototypes -----------------------------------------------*/ +//void ResetAndDetectSensor(int SetDisplay); + +void sts_tof_vl53l0x_Sensor_SetNewRange(VL53L0X_Dev_t *pDev, VL53L0X_RangingMeasurementData_t *pRange); +void sts_tof_vl53l0x_SetupSingleShot(RangingConfig_e rangingConfig); +/* USER CODE END PFP */ + +/* USER CODE BEGIN 0 */ + +/** + * Handle Error + * + * Set err on display and loop forever + * @param err Error case code + */ +void HandleError(int err){ + //char msg[16]; + //sprintf(msg,"Er%d", err); + APP_LOG(TS_OFF, VLEVEL_H,"Er %04u\r\n",err); + //while(1){}; +} + + + +/** + * Reset all sensor then goes true presence detection + * + * All present devices are data initiated and assigned with their final address + * @return + */ +int sts_tof_vl53l0x_DetectSensors(void) +{ + int i; + uint16_t Id; + int status; + int FinalAddress; + nDevPresent = 0; + + for (i=0; i < MAX_TOF_COUNT; i++) { + XWL55_WLE5_53L0X_ResetId(i,0); + //XWL55_WLE5_53L0X_SetIntrStateId(1,i); + } + + /* detect all sensors (even on-board)*/ + for (i=0; i < MAX_TOF_COUNT; i++) + { + VL53L0X_Dev_t *pDev; + pDev = &VL53L0XDevs[i]; + pDev->I2cDevAddr = 0x52; + pDev->Present = 0; + XWL55_WLE5_53L0X_ResetId(pDev->Id, 1); + HAL_Delay(3); + FinalAddress = 0x52+(i+1)*2; + + //APP_LOG(TS_OFF, VLEVEL_M, "\r\n Detect TOF sensors #%u with I2CDevAddr=0x%02x \r\n", i, pDev->I2cDevAddr); + + do { + /* Set I2C standard mode (400 KHz) before doing the first register access */ + //if (status == VL53L0X_ERROR_NONE) + //status = VL53L0X_WrByte(pDev, 0x88, 0x00); + + /* Try to read one register using default 0x52 address */ + status = VL53L0X_RdWord(pDev, VL53L0X_REG_IDENTIFICATION_MODEL_ID, &Id); + //APP_LOG(TS_OFF, VLEVEL_H, "#%u read id = %04X I2C ADDR=0x%2X\r\n",i, Id, pDev->I2cDevAddr); + if (status) { + APP_LOG(TS_OFF, VLEVEL_H, "# Read id fail \r\n"); + break; + } + if (Id == 0xEEAA) { + /* Sensor is found => Change its I2C address to final one */ + //APP_LOG(TS_OFF, VLEVEL_H, "\n Set Final i2c addr to %02X \r\n", FinalAddress); + status = VL53L0X_SetDeviceAddress(pDev,FinalAddress); + if (status != 0) { + APP_LOG(TS_OFF, VLEVEL_H, "#i VL53L0X_SetDeviceAddress fail\r\n"); + break; + } + pDev->I2cDevAddr = FinalAddress; + //APP_LOG(TS_OFF, VLEVEL_H, "\n pDev->I2CDevAddr set to: %02X \r\n", pDev->I2cDevAddr); + /* Check all is OK with the new I2C address and initialize the sensor */ + status = VL53L0X_RdWord(pDev, VL53L0X_REG_IDENTIFICATION_MODEL_ID, &Id); + if (status !=0) + { + APP_LOG(TS_OFF, VLEVEL_H, "#i VL53L0X_RdWord fail\r\n"); + break; + } + status = VL53L0X_DataInit(pDev); + if( status == 0 ){ + pDev->Present = 1; + nDevPresent++; + nDevMask |= 1 << i; + pDev->Present = 1; + } + else{ + APP_LOG(TS_OFF, VLEVEL_H, "VL53L0X_DataInit %d fail\r\n", Id); + break; + } + + } else { + APP_LOG(TS_OFF, VLEVEL_H, "# unknown ID %x\r\n", Id); + status = 1; + } + } while(0); + /* Display detected sensor(s) */ + if (status) { + XWL55_WLE5_53L0X_ResetId(i,0); + } + } + + return nDevPresent; +} + +/** + * Setup all detected sensors for single shot mode and setup ranging configuration + */ +void sts_tof_vl53l0x_SetupSingleShot(RangingConfig_e rangingConfig) +{ int i; + int status=VL53L0X_ERROR_NONE; + uint8_t VhvSettings; + uint8_t PhaseCal; + uint32_t refSpadCount; + uint8_t isApertureSpads; + FixPoint1616_t signalLimit = (FixPoint1616_t)(0.25*65536); + FixPoint1616_t sigmaLimit = (FixPoint1616_t)(18*65536); + uint32_t timingBudget = 33000; + uint8_t preRangeVcselPeriod = 14; + uint8_t finalRangeVcselPeriod = 10; + // uart_printf("\r\n######### start setup for single shot \r\n"); + for( i=0; i< MAX_TOF_COUNT; i++){ + + if( VL53L0XDevs[i].Present){ + + //APP_LOG(TS_OFF, VLEVEL_H, "\r\n ###### Starting Range #%u sensor \r\n",i); + + status=VL53L0X_StaticInit(&VL53L0XDevs[i]); + + status = VL53L0X_PerformRefCalibration(&VL53L0XDevs[i], &VhvSettings, &PhaseCal); + + status = VL53L0X_PerformRefSpadManagement(&VL53L0XDevs[i], &refSpadCount, &isApertureSpads); + + status = VL53L0X_SetDeviceMode(&VL53L0XDevs[i], VL53L0X_DEVICEMODE_SINGLE_RANGING); // Setup in single ranging mode + + status = VL53L0X_SetLimitCheckEnable(&VL53L0XDevs[i], VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, 1); // Enable Sigma limit + + status = VL53L0X_SetLimitCheckEnable(&VL53L0XDevs[i], VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE, 1); // Enable Signa limit + + /* Ranging configuration */ + switch(rangingConfig) { + case LONG_RANGE: + signalLimit = (FixPoint1616_t)(0.1*65536); + sigmaLimit = (FixPoint1616_t)(60*65536); + timingBudget = 33000; + preRangeVcselPeriod = 18; + finalRangeVcselPeriod = 14; + break; + case HIGH_ACCURACY: + signalLimit = (FixPoint1616_t)(0.25*65536); + sigmaLimit = (FixPoint1616_t)(18*65536); + timingBudget = 200000; + preRangeVcselPeriod = 14; + finalRangeVcselPeriod = 10; + break; + case HIGH_SPEED: + signalLimit = (FixPoint1616_t)(0.25*65536); + sigmaLimit = (FixPoint1616_t)(32*65536); + timingBudget = 20000; + preRangeVcselPeriod = 14; + finalRangeVcselPeriod = 10; + break; + default: + APP_LOG(TS_OFF, VLEVEL_H, "Not Supported"); + break; + } + + status = VL53L0X_SetLimitCheckValue(&VL53L0XDevs[i], VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE, signalLimit); + + status = VL53L0X_SetLimitCheckValue(&VL53L0XDevs[i], VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, sigmaLimit); + + status = VL53L0X_SetMeasurementTimingBudgetMicroSeconds(&VL53L0XDevs[i], timingBudget); + + status = VL53L0X_SetVcselPulsePeriod(&VL53L0XDevs[i], VL53L0X_VCSEL_PERIOD_PRE_RANGE, preRangeVcselPeriod); + + status = VL53L0X_SetVcselPulsePeriod(&VL53L0XDevs[i], VL53L0X_VCSEL_PERIOD_FINAL_RANGE, finalRangeVcselPeriod); + + status = VL53L0X_PerformRefCalibration(&VL53L0XDevs[i], &VhvSettings, &PhaseCal); + + VL53L0XDevs[i].LeakyFirst =1; + + } + } + +} + + +/* Store new ranging data into the device structure, apply leaky integrator if needed */ +void sts_tof_vl53l0x_Sensor_SetNewRange(VL53L0X_Dev_t *pDev, VL53L0X_RangingMeasurementData_t *pRange) +{ + if( pRange->RangeStatus == 0 ){ + if( pDev->LeakyFirst ){ + pDev->LeakyFirst = 0; + pDev->LeakyRange = pRange->RangeMilliMeter; + } + else{ + pDev->LeakyRange = (pDev->LeakyRange*LeakyFactorFix8 + (256-LeakyFactorFix8)*pRange->RangeMilliMeter)>>8; + } + } + else{ + pDev->LeakyFirst = 1; + } +} + +/* USER CODE END 0 */ +void STS_TOF250_Range_Process(void) +{ +#ifdef TOF_3 + +#define I2C_TIME_OUT_BASE 10 +#define I2C_TIME_OUT_BYTE 1 + int status; + uint8_t pdata[2]={0x0,0x0}; uint32_t count=2; + int i2c_time_out = I2C_TIME_OUT_BASE + count*I2C_TIME_OUT_BYTE; + + sensor_data_ready = 0 ; + + sts_tof_distance_data[0] = 0; + sts_tof_distance_data[1] = 0; + + sts_tof_distance_data[2] = 0; + + status = HAL_I2C_Master_Receive(&hi2c2, TOF250_I2C_ADDR, pdata, count, i2c_time_out); + if (status == HAL_OK) { + APP_LOG(TS_OFF, VLEVEL_H, "\r\n## TOF250 ranging value %02x %02x %4d ",pdata[0],pdata[1], *pdata); + sts_tof_distance_data[2] = pdata[0]<<8|pdata[1]; + sensor_data_ready = 1; + APP_LOG(TS_OFF, VLEVEL_H, "\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]); + } +#endif + +} +void STS_TOF_VL53L0X_Range_Process(void) +{ + int status=0, i; + /* HIGH_ACCURACY for STS_R1/R2/R3 short distance less than 1000mm */ + /* LONG_RANGE for STS_R5 long distance less than 2500mm */ + + RangingConfig_e RangingConfig = HIGH_ACCURACY; //HIGH_ACCURACY; //LONG_RANGE; + XWL55_WLE5_53L0X_Init(); + if ((nDevMask ==0) || (nSensorPresent ==0)) + { + nSensorPresent = sts_tof_vl53l0x_DetectSensors(); // confirm sensor online + APP_LOG(TS_OFF, VLEVEL_M, "\r\n %u pcs sensor(s) online \r\n", nSensorPresent); + } + + //APP_LOG(TS_OFF, VLEVEL_H, "\n\n nDevMask=%02X nSensorPresent = %02x \n\n", nDevMask, nSensorPresent); + +#ifdef TOF_3 + sts_tof_distance_data[2] = 0; +#endif + + if (nSensorPresent > 0) + { + // RangingConfig == HIGH ACCURACY, LONG RANGE, HIGH SPEED + sts_tof_vl53l0x_SetupSingleShot(RangingConfig); + + sensor_data_ready = 0 ; + //for (i=0; i< MAX_TOF_COUNT; i++) + for (i=0; i< nSensorPresent; i++) + { + //APP_LOG(TS_OFF, VLEVEL_H, "\n\n i=%u Present=%u DevAdd=%02x \n", i, VL53L0XDevs[i].Present, VL53L0XDevs[i].I2cDevAddr); + if (VL53L0XDevs[i].Present ==1) + { + uint8_t rep=0; + do { +// rep++; + status = VL53L0X_PerformSingleRangingMeasurement(&VL53L0XDevs[i], &RangingMeasurementData); + if (status ==0) + { + sts_tof_vl53l0x_Sensor_SetNewRange(&VL53L0XDevs[i],&RangingMeasurementData); + if( RangingMeasurementData.RangeStatus == 0 ) + { + sts_tof_distance_data[i] = (int)VL53L0XDevs[i].LeakyRange; + nDevMask |= (1 << i); + sensor_data_ready |= 1<<i; + } else + { + //HandleError(ERR_DEMO_RANGE_ONE); + APP_LOG(TS_OFF, VLEVEL_H,"\r\n#%u sensor ERR code = %04u\r\n",i, ERR_DEMO_RANGE_ONE); + } + // ########## two conditions + // ########## 1) return status ==0, + // ########## 2) and ranging status for valid ranging value !!!!!!!!!!!!!!!!! + } + + HAL_Delay(1); + + } while ((RangingMeasurementData.RangeStatus != 0)&&(rep++ < 10)); + sts_tof_distance_data[i] = (RangingMeasurementData.RangeStatus!=0)?STS_MAX_L0_RANGE:VL53L0XDevs[i].LeakyRange; + } + + HAL_Delay(30); + } // for i < MAX_TOF_COUNT + + if (sensor_data_ready != 0) + { + APP_LOG(TS_OFF, VLEVEL_M, "\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]); + } + + } else { + // nSensorPresent >0 + sts_tof_distance_data[0] = STS_MAX_L0_RANGE; + sts_tof_distance_data[1] = STS_MAX_L0_RANGE; + sts_tof_distance_data[2] = STS_MAX_L0_RANGE; + APP_LOG(TS_OFF, VLEVEL_H, "\n\n APP_LOG no ToF sensor online \n\n"); + } + + // reset for next ranging + nDevMask = 0; + nSensorPresent = 0; +} + +void STS_RR_Sensor_Read(sts_tof_range_data_t *sts_rr_sensor_data) +{ + sts_rr_sensor_data->tof_1_distance_mm = sts_tof_distance_data[0]; + sts_rr_sensor_data->tof_2_distance_mm = sts_tof_distance_data[1]; + sts_rr_sensor_data->tof_3_distance_mm = sts_tof_distance_data[2]; +} + +void STS_Prepare_Packet_Data(void) +{ + //AppData.Buffer = 0x0; + //AppData.BufferSize = 0x0; +} + +/* USER CODE BEGIN 4 */ + +/* USER CODE END 4 */ + +#endif +/** + * @} + */ + +/** + * @} +*/ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/STS/TOF/vl53l0x/vl53l0x_api.c b/STS/TOF/vl53l0x/vl53l0x_api.c index 0163f73..8a80095 100644 --- a/STS/TOF/vl53l0x/vl53l0x_api.c +++ b/STS/TOF/vl53l0x/vl53l0x_api.c @@ -1,3035 +1,3035 @@ -/******************************************************************************* - Copyright � 2016, STMicroelectronics International N.V. - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND - NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. - IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY - DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - ******************************************************************************/ - -#include "vl53l0x_api.h" -#include "vl53l0x_tuning.h" -#include "vl53l0x_interrupt_threshold_settings.h" -#include "vl53l0x_api_core.h" -#include "vl53l0x_api_calibration.h" -#include "vl53l0x_api_strings.h" - -#ifndef __KERNEL__ -#include <stdlib.h> -#endif -#define LOG_FUNCTION_START(fmt, ...) \ - _LOG_FUNCTION_START(TRACE_MODULE_API, fmt, ##__VA_ARGS__) -#define LOG_FUNCTION_END(status, ...) \ - _LOG_FUNCTION_END(TRACE_MODULE_API, status, ##__VA_ARGS__) -#define LOG_FUNCTION_END_FMT(status, fmt, ...) \ - _LOG_FUNCTION_END_FMT(TRACE_MODULE_API, status, fmt, ##__VA_ARGS__) - -#ifdef VL53L0X_LOG_ENABLE -#define trace_print(level, ...) trace_print_module_function(TRACE_MODULE_API, \ - level, TRACE_FUNCTION_NONE, ##__VA_ARGS__) -#endif - -/* Group PAL General Functions */ - -VL53L0X_Error VL53L0X_GetVersion(VL53L0X_Version_t *pVersion) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - pVersion->major = VL53L0X_IMPLEMENTATION_VER_MAJOR; - pVersion->minor = VL53L0X_IMPLEMENTATION_VER_MINOR; - pVersion->build = VL53L0X_IMPLEMENTATION_VER_SUB; - - pVersion->revision = VL53L0X_IMPLEMENTATION_VER_REVISION; - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetPalSpecVersion(VL53L0X_Version_t *pPalSpecVersion) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - pPalSpecVersion->major = VL53L0X_SPECIFICATION_VER_MAJOR; - pPalSpecVersion->minor = VL53L0X_SPECIFICATION_VER_MINOR; - pPalSpecVersion->build = VL53L0X_SPECIFICATION_VER_SUB; - - pPalSpecVersion->revision = VL53L0X_SPECIFICATION_VER_REVISION; - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetProductRevision(VL53L0X_DEV Dev, - uint8_t *pProductRevisionMajor, uint8_t *pProductRevisionMinor) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t revision_id; - - LOG_FUNCTION_START(""); - - Status = VL53L0X_RdByte(Dev, VL53L0X_REG_IDENTIFICATION_REVISION_ID, - &revision_id); - *pProductRevisionMajor = 1; - *pProductRevisionMinor = (revision_id & 0xF0) >> 4; - - LOG_FUNCTION_END(Status); - return Status; - -} - -VL53L0X_Error VL53L0X_GetDeviceInfo(VL53L0X_DEV Dev, - VL53L0X_DeviceInfo_t *pVL53L0X_DeviceInfo) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_get_device_info(Dev, pVL53L0X_DeviceInfo); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetDeviceErrorStatus(VL53L0X_DEV Dev, - VL53L0X_DeviceError *pDeviceErrorStatus) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t RangeStatus; - - LOG_FUNCTION_START(""); - - Status = VL53L0X_RdByte(Dev, VL53L0X_REG_RESULT_RANGE_STATUS, - &RangeStatus); - - *pDeviceErrorStatus = (VL53L0X_DeviceError)((RangeStatus & 0x78) >> 3); - - LOG_FUNCTION_END(Status); - return Status; -} - - -VL53L0X_Error VL53L0X_GetDeviceErrorString(VL53L0X_DeviceError ErrorCode, - char *pDeviceErrorString) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - Status = VL53L0X_get_device_error_string(ErrorCode, pDeviceErrorString); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetRangeStatusString(uint8_t RangeStatus, - char *pRangeStatusString) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_get_range_status_string(RangeStatus, - pRangeStatusString); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetPalErrorString(VL53L0X_Error PalErrorCode, - char *pPalErrorString) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_get_pal_error_string(PalErrorCode, pPalErrorString); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetPalStateString(VL53L0X_State PalStateCode, - char *pPalStateString) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_get_pal_state_string(PalStateCode, pPalStateString); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetPalState(VL53L0X_DEV Dev, VL53L0X_State *pPalState) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - *pPalState = PALDevDataGet(Dev, PalState); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetPowerMode(VL53L0X_DEV Dev, VL53L0X_PowerModes PowerMode) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - /* Only level1 of Power mode exists */ - if ((PowerMode != VL53L0X_POWERMODE_STANDBY_LEVEL1) - && (PowerMode != VL53L0X_POWERMODE_IDLE_LEVEL1)) { - Status = VL53L0X_ERROR_MODE_NOT_SUPPORTED; - } else if (PowerMode == VL53L0X_POWERMODE_STANDBY_LEVEL1) { - /* set the standby level1 of power mode */ - Status = VL53L0X_WrByte(Dev, 0x80, 0x00); - if (Status == VL53L0X_ERROR_NONE) { - /* Set PAL State to standby */ - PALDevDataSet(Dev, PalState, VL53L0X_STATE_STANDBY); - PALDevDataSet(Dev, PowerMode, - VL53L0X_POWERMODE_STANDBY_LEVEL1); - } - - } else { - /* VL53L0X_POWERMODE_IDLE_LEVEL1 */ - Status = VL53L0X_WrByte(Dev, 0x80, 0x00); - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_StaticInit(Dev); - - if (Status == VL53L0X_ERROR_NONE) - PALDevDataSet(Dev, PowerMode, - VL53L0X_POWERMODE_IDLE_LEVEL1); - - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetPowerMode(VL53L0X_DEV Dev, VL53L0X_PowerModes *pPowerMode) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t Byte; - LOG_FUNCTION_START(""); - - /* Only level1 of Power mode exists */ - Status = VL53L0X_RdByte(Dev, 0x80, &Byte); - - if (Status == VL53L0X_ERROR_NONE) { - if (Byte == 1) { - PALDevDataSet(Dev, PowerMode, - VL53L0X_POWERMODE_IDLE_LEVEL1); - } else { - PALDevDataSet(Dev, PowerMode, - VL53L0X_POWERMODE_STANDBY_LEVEL1); - } - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetOffsetCalibrationDataMicroMeter(VL53L0X_DEV Dev, - int32_t OffsetCalibrationDataMicroMeter) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_set_offset_calibration_data_micro_meter(Dev, - OffsetCalibrationDataMicroMeter); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetOffsetCalibrationDataMicroMeter(VL53L0X_DEV Dev, - int32_t *pOffsetCalibrationDataMicroMeter) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_get_offset_calibration_data_micro_meter(Dev, - pOffsetCalibrationDataMicroMeter); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetLinearityCorrectiveGain(VL53L0X_DEV Dev, - int16_t LinearityCorrectiveGain) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - if ((LinearityCorrectiveGain < 0) || (LinearityCorrectiveGain > 1000)) - Status = VL53L0X_ERROR_INVALID_PARAMS; - else { - PALDevDataSet(Dev, LinearityCorrectiveGain, - LinearityCorrectiveGain); - - if (LinearityCorrectiveGain != 1000) { - /* Disable FW Xtalk */ - Status = VL53L0X_WrWord(Dev, - VL53L0X_REG_CROSSTALK_COMPENSATION_PEAK_RATE_MCPS, 0); - } - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetLinearityCorrectiveGain(VL53L0X_DEV Dev, - uint16_t *pLinearityCorrectiveGain) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - *pLinearityCorrectiveGain = PALDevDataGet(Dev, LinearityCorrectiveGain); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetGroupParamHold(VL53L0X_DEV Dev, uint8_t GroupParamHold) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; - LOG_FUNCTION_START(""); - - /* not implemented on VL53L0X */ - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetUpperLimitMilliMeter(VL53L0X_DEV Dev, - uint16_t *pUpperLimitMilliMeter) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; - LOG_FUNCTION_START(""); - - /* not implemented on VL53L0X */ - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetTotalSignalRate(VL53L0X_DEV Dev, - FixPoint1616_t *pTotalSignalRate) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - VL53L0X_RangingMeasurementData_t LastRangeDataBuffer; - - LOG_FUNCTION_START(""); - - LastRangeDataBuffer = PALDevDataGet(Dev, LastRangeMeasure); - - Status = VL53L0X_get_total_signal_rate( - Dev, &LastRangeDataBuffer, pTotalSignalRate); - - LOG_FUNCTION_END(Status); - return Status; -} - -/* End Group PAL General Functions */ - -/* Group PAL Init Functions */ -VL53L0X_Error VL53L0X_SetDeviceAddress(VL53L0X_DEV Dev, uint8_t DeviceAddress) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_WrByte(Dev, VL53L0X_REG_I2C_SLAVE_DEVICE_ADDRESS, - DeviceAddress / 2); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_DataInit(VL53L0X_DEV Dev) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - VL53L0X_DeviceParameters_t CurrentParameters; - int i; - uint8_t StopVariable; - - LOG_FUNCTION_START(""); - - /* by default the I2C is running at 1V8 if you want to change it you - * need to include this define at compilation level. */ -#ifdef USE_I2C_2V8 - Status = VL53L0X_UpdateByte(Dev, - VL53L0X_REG_VHV_CONFIG_PAD_SCL_SDA__EXTSUP_HV, - 0xFE, - 0x01); -#endif - - /* Set I2C standard mode */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, 0x88, 0x00); - - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, ReadDataFromDeviceDone, 0); - -#ifdef USE_IQC_STATION - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_apply_offset_adjustment(Dev); -#endif - - /* Default value is 1000 for Linearity Corrective Gain */ - PALDevDataSet(Dev, LinearityCorrectiveGain, 1000); - - /* Dmax default Parameter */ - PALDevDataSet(Dev, DmaxCalRangeMilliMeter, 400); - PALDevDataSet(Dev, DmaxCalSignalRateRtnMegaCps, - (FixPoint1616_t)((0x00016B85))); /* 1.42 No Cover Glass*/ - - /* Set Default static parameters - *set first temporary values 9.44MHz * 65536 = 618660 */ - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, OscFrequencyMHz, 618660); - - /* Set Default XTalkCompensationRateMegaCps to 0 */ - VL53L0X_SETPARAMETERFIELD(Dev, XTalkCompensationRateMegaCps, 0); - - /* Get default parameters */ - Status = VL53L0X_GetDeviceParameters(Dev, &CurrentParameters); - if (Status == VL53L0X_ERROR_NONE) { - /* initialize PAL values */ - CurrentParameters.DeviceMode = VL53L0X_DEVICEMODE_SINGLE_RANGING; - CurrentParameters.HistogramMode = VL53L0X_HISTOGRAMMODE_DISABLED; - PALDevDataSet(Dev, CurrentParameters, CurrentParameters); - } - - /* Sigma estimator variable */ - PALDevDataSet(Dev, SigmaEstRefArray, 100); - PALDevDataSet(Dev, SigmaEstEffPulseWidth, 900); - PALDevDataSet(Dev, SigmaEstEffAmbWidth, 500); - PALDevDataSet(Dev, targetRefRate, 0x0A00); /* 20 MCPS in 9:7 format */ - - /* Use internal default settings */ - PALDevDataSet(Dev, UseInternalTuningSettings, 1); - - Status |= VL53L0X_WrByte(Dev, 0x80, 0x01); - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x01); - Status |= VL53L0X_WrByte(Dev, 0x00, 0x00); - Status |= VL53L0X_RdByte(Dev, 0x91, &StopVariable); - PALDevDataSet(Dev, StopVariable, StopVariable); - Status |= VL53L0X_WrByte(Dev, 0x00, 0x01); - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); - Status |= VL53L0X_WrByte(Dev, 0x80, 0x00); - - /* Enable all check */ - for (i = 0; i < VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS; i++) { - if (Status == VL53L0X_ERROR_NONE) - Status |= VL53L0X_SetLimitCheckEnable(Dev, i, 1); - else - break; - - } - - /* Disable the following checks */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetLimitCheckEnable(Dev, - VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, 0); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetLimitCheckEnable(Dev, - VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, 0); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetLimitCheckEnable(Dev, - VL53L0X_CHECKENABLE_SIGNAL_RATE_MSRC, 0); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetLimitCheckEnable(Dev, - VL53L0X_CHECKENABLE_SIGNAL_RATE_PRE_RANGE, 0); - - /* Limit default values */ - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_SetLimitCheckValue(Dev, - VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, - (FixPoint1616_t)(18 * 65536)); - } - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_SetLimitCheckValue(Dev, - VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE, - (FixPoint1616_t)(25 * 65536 / 100)); - /* 0.25 * 65536 */ - } - - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_SetLimitCheckValue(Dev, - VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, - (FixPoint1616_t)(35 * 65536)); - } - - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_SetLimitCheckValue(Dev, - VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, - (FixPoint1616_t)(0 * 65536)); - } - - if (Status == VL53L0X_ERROR_NONE) { - - PALDevDataSet(Dev, SequenceConfig, 0xFF); - Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, - 0xFF); - - /* Set PAL state to tell that we are waiting for call to - * VL53L0X_StaticInit */ - PALDevDataSet(Dev, PalState, VL53L0X_STATE_WAIT_STATICINIT); - } - - if (Status == VL53L0X_ERROR_NONE) - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, RefSpadsInitialised, 0); - - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetTuningSettingBuffer(VL53L0X_DEV Dev, - uint8_t *pTuningSettingBuffer, uint8_t UseInternalTuningSettings) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - if (UseInternalTuningSettings == 1) { - /* Force use internal settings */ - PALDevDataSet(Dev, UseInternalTuningSettings, 1); - } else { - - /* check that the first byte is not 0 */ - if (*pTuningSettingBuffer != 0) { - PALDevDataSet(Dev, pTuningSettingsPointer, - pTuningSettingBuffer); - PALDevDataSet(Dev, UseInternalTuningSettings, 0); - - } else { - Status = VL53L0X_ERROR_INVALID_PARAMS; - } - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetTuningSettingBuffer(VL53L0X_DEV Dev, - uint8_t **ppTuningSettingBuffer, uint8_t *pUseInternalTuningSettings) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - *ppTuningSettingBuffer = PALDevDataGet(Dev, pTuningSettingsPointer); - *pUseInternalTuningSettings = PALDevDataGet(Dev, - UseInternalTuningSettings); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_StaticInit(VL53L0X_DEV Dev) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - VL53L0X_DeviceParameters_t CurrentParameters = {0}; - uint8_t *pTuningSettingBuffer; - uint16_t tempword = 0; - uint8_t tempbyte = 0; - uint8_t UseInternalTuningSettings = 0; - uint32_t count = 0; - uint8_t isApertureSpads = 0; - uint32_t refSpadCount = 0; - uint8_t ApertureSpads = 0; - uint8_t vcselPulsePeriodPCLK; - uint32_t seqTimeoutMicroSecs; - - LOG_FUNCTION_START(""); - - Status = VL53L0X_get_info_from_device(Dev, 1); - - /* set the ref spad from NVM */ - count = (uint32_t)VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, - ReferenceSpadCount); - ApertureSpads = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, - ReferenceSpadType); - - /* NVM value invalid */ - if ((ApertureSpads > 1) || - ((ApertureSpads == 1) && (count > 32)) || - ((ApertureSpads == 0) && (count > 12))) - Status = VL53L0X_perform_ref_spad_management(Dev, &refSpadCount, - &isApertureSpads); - else - Status = VL53L0X_set_reference_spads(Dev, count, ApertureSpads); - - - /* Initialize tuning settings buffer to prevent compiler warning. */ - pTuningSettingBuffer = DefaultTuningSettings; - - if (Status == VL53L0X_ERROR_NONE) { - UseInternalTuningSettings = PALDevDataGet(Dev, - UseInternalTuningSettings); - - if (UseInternalTuningSettings == 0) - pTuningSettingBuffer = PALDevDataGet(Dev, - pTuningSettingsPointer); - else - pTuningSettingBuffer = DefaultTuningSettings; - - } - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_load_tuning_settings(Dev, pTuningSettingBuffer); - - - /* Set interrupt config to new sample ready */ - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_SetGpioConfig(Dev, 0, 0, - VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_NEW_SAMPLE_READY, - VL53L0X_INTERRUPTPOLARITY_LOW); - } - - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); - Status |= VL53L0X_RdWord(Dev, 0x84, &tempword); - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); - } - - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, OscFrequencyMHz, - VL53L0X_FIXPOINT412TOFIXPOINT1616(tempword)); - } - - /* After static init, some device parameters may be changed, - * so update them */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_GetDeviceParameters(Dev, &CurrentParameters); - - - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_GetFractionEnable(Dev, &tempbyte); - if (Status == VL53L0X_ERROR_NONE) - PALDevDataSet(Dev, RangeFractionalEnable, tempbyte); - - } - - if (Status == VL53L0X_ERROR_NONE) - PALDevDataSet(Dev, CurrentParameters, CurrentParameters); - - - /* read the sequence config and save it */ - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_RdByte(Dev, - VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, &tempbyte); - if (Status == VL53L0X_ERROR_NONE) - PALDevDataSet(Dev, SequenceConfig, tempbyte); - - } - - /* Disable MSRC and TCC by default */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetSequenceStepEnable(Dev, - VL53L0X_SEQUENCESTEP_TCC, 0); - - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetSequenceStepEnable(Dev, - VL53L0X_SEQUENCESTEP_MSRC, 0); - - - /* Set PAL State to standby */ - if (Status == VL53L0X_ERROR_NONE) - PALDevDataSet(Dev, PalState, VL53L0X_STATE_IDLE); - - - - /* Store pre-range vcsel period */ - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_GetVcselPulsePeriod( - Dev, - VL53L0X_VCSEL_PERIOD_PRE_RANGE, - &vcselPulsePeriodPCLK); - } - - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_SETDEVICESPECIFICPARAMETER( - Dev, - PreRangeVcselPulsePeriod, - vcselPulsePeriodPCLK); - } - - /* Store final-range vcsel period */ - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_GetVcselPulsePeriod( - Dev, - VL53L0X_VCSEL_PERIOD_FINAL_RANGE, - &vcselPulsePeriodPCLK); - } - - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_SETDEVICESPECIFICPARAMETER( - Dev, - FinalRangeVcselPulsePeriod, - vcselPulsePeriodPCLK); - } - - /* Store pre-range timeout */ - if (Status == VL53L0X_ERROR_NONE) { - Status = get_sequence_step_timeout( - Dev, - VL53L0X_SEQUENCESTEP_PRE_RANGE, - &seqTimeoutMicroSecs); - } - - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_SETDEVICESPECIFICPARAMETER( - Dev, - PreRangeTimeoutMicroSecs, - seqTimeoutMicroSecs); - } - - /* Store final-range timeout */ - if (Status == VL53L0X_ERROR_NONE) { - Status = get_sequence_step_timeout( - Dev, - VL53L0X_SEQUENCESTEP_FINAL_RANGE, - &seqTimeoutMicroSecs); - } - - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_SETDEVICESPECIFICPARAMETER( - Dev, - FinalRangeTimeoutMicroSecs, - seqTimeoutMicroSecs); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_WaitDeviceBooted(VL53L0X_DEV Dev) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; - LOG_FUNCTION_START(""); - - /* not implemented on VL53L0X */ - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_ResetDevice(VL53L0X_DEV Dev) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t Byte; - LOG_FUNCTION_START(""); - - /* Set reset bit */ - Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SOFT_RESET_GO2_SOFT_RESET_N, - 0x00); - - /* Wait for some time */ - if (Status == VL53L0X_ERROR_NONE) { - do { - Status = VL53L0X_RdByte(Dev, - VL53L0X_REG_IDENTIFICATION_MODEL_ID, &Byte); - } while (Byte != 0x00); - } - - VL53L0X_PollingDelay(Dev); - - /* Release reset */ - Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SOFT_RESET_GO2_SOFT_RESET_N, - 0x01); - - /* Wait until correct boot-up of the device */ - if (Status == VL53L0X_ERROR_NONE) { - do { - Status = VL53L0X_RdByte(Dev, - VL53L0X_REG_IDENTIFICATION_MODEL_ID, &Byte); - } while (Byte == 0x00); - } - - VL53L0X_PollingDelay(Dev); - - /* Set PAL State to VL53L0X_STATE_POWERDOWN */ - if (Status == VL53L0X_ERROR_NONE) - PALDevDataSet(Dev, PalState, VL53L0X_STATE_POWERDOWN); - - - LOG_FUNCTION_END(Status); - return Status; -} -/* End Group PAL Init Functions */ - -/* Group PAL Parameters Functions */ -VL53L0X_Error VL53L0X_SetDeviceParameters(VL53L0X_DEV Dev, - const VL53L0X_DeviceParameters_t *pDeviceParameters) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - int i; - LOG_FUNCTION_START(""); - Status = VL53L0X_SetDeviceMode(Dev, pDeviceParameters->DeviceMode); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetInterMeasurementPeriodMilliSeconds(Dev, - pDeviceParameters->InterMeasurementPeriodMilliSeconds); - - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetXTalkCompensationRateMegaCps(Dev, - pDeviceParameters->XTalkCompensationRateMegaCps); - - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetOffsetCalibrationDataMicroMeter(Dev, - pDeviceParameters->RangeOffsetMicroMeters); - - - for (i = 0; i < VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS; i++) { - if (Status == VL53L0X_ERROR_NONE) - Status |= VL53L0X_SetLimitCheckEnable(Dev, i, - pDeviceParameters->LimitChecksEnable[i]); - else - break; - - if (Status == VL53L0X_ERROR_NONE) - Status |= VL53L0X_SetLimitCheckValue(Dev, i, - pDeviceParameters->LimitChecksValue[i]); - else - break; - - } - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetWrapAroundCheckEnable(Dev, - pDeviceParameters->WrapAroundCheckEnable); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetMeasurementTimingBudgetMicroSeconds(Dev, - pDeviceParameters->MeasurementTimingBudgetMicroSeconds); - - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetDeviceParameters(VL53L0X_DEV Dev, - VL53L0X_DeviceParameters_t *pDeviceParameters) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - int i; - - LOG_FUNCTION_START(""); - - Status = VL53L0X_GetDeviceMode(Dev, &(pDeviceParameters->DeviceMode)); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_GetInterMeasurementPeriodMilliSeconds(Dev, - &(pDeviceParameters->InterMeasurementPeriodMilliSeconds)); - - - if (Status == VL53L0X_ERROR_NONE) - pDeviceParameters->XTalkCompensationEnable = 0; - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_GetXTalkCompensationRateMegaCps(Dev, - &(pDeviceParameters->XTalkCompensationRateMegaCps)); - - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_GetOffsetCalibrationDataMicroMeter(Dev, - &(pDeviceParameters->RangeOffsetMicroMeters)); - - - if (Status == VL53L0X_ERROR_NONE) { - for (i = 0; i < VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS; i++) { - /* get first the values, then the enables. - * VL53L0X_GetLimitCheckValue will modify the enable - * flags - */ - if (Status == VL53L0X_ERROR_NONE) { - Status |= VL53L0X_GetLimitCheckValue(Dev, i, - &(pDeviceParameters->LimitChecksValue[i])); - } else { - break; - } - if (Status == VL53L0X_ERROR_NONE) { - Status |= VL53L0X_GetLimitCheckEnable(Dev, i, - &(pDeviceParameters->LimitChecksEnable[i])); - } else { - break; - } - } - } - - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_GetWrapAroundCheckEnable(Dev, - &(pDeviceParameters->WrapAroundCheckEnable)); - } - - /* Need to be done at the end as it uses VCSELPulsePeriod */ - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_GetMeasurementTimingBudgetMicroSeconds(Dev, - &(pDeviceParameters->MeasurementTimingBudgetMicroSeconds)); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetDeviceMode(VL53L0X_DEV Dev, VL53L0X_DeviceModes DeviceMode) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START("%d", (int)DeviceMode); - - switch (DeviceMode) { - case VL53L0X_DEVICEMODE_SINGLE_RANGING: - case VL53L0X_DEVICEMODE_CONTINUOUS_RANGING: - case VL53L0X_DEVICEMODE_CONTINUOUS_TIMED_RANGING: - case VL53L0X_DEVICEMODE_GPIO_DRIVE: - case VL53L0X_DEVICEMODE_GPIO_OSC: - /* Supported modes */ - VL53L0X_SETPARAMETERFIELD(Dev, DeviceMode, DeviceMode); - break; - default: - /* Unsupported mode */ - Status = VL53L0X_ERROR_MODE_NOT_SUPPORTED; - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetDeviceMode(VL53L0X_DEV Dev, - VL53L0X_DeviceModes *pDeviceMode) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - VL53L0X_GETPARAMETERFIELD(Dev, DeviceMode, *pDeviceMode); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetRangeFractionEnable(VL53L0X_DEV Dev, uint8_t Enable) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START("%d", (int)Enable); - - Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_RANGE_CONFIG, Enable); - - if (Status == VL53L0X_ERROR_NONE) - PALDevDataSet(Dev, RangeFractionalEnable, Enable); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetFractionEnable(VL53L0X_DEV Dev, uint8_t *pEnabled) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_RdByte(Dev, VL53L0X_REG_SYSTEM_RANGE_CONFIG, pEnabled); - - if (Status == VL53L0X_ERROR_NONE) - *pEnabled = (*pEnabled & 1); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetHistogramMode(VL53L0X_DEV Dev, - VL53L0X_HistogramModes HistogramMode) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; - LOG_FUNCTION_START(""); - - /* not implemented on VL53L0X */ - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetHistogramMode(VL53L0X_DEV Dev, - VL53L0X_HistogramModes *pHistogramMode) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; - LOG_FUNCTION_START(""); - - /* not implemented on VL53L0X */ - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetMeasurementTimingBudgetMicroSeconds(VL53L0X_DEV Dev, - uint32_t MeasurementTimingBudgetMicroSeconds) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_set_measurement_timing_budget_micro_seconds(Dev, - MeasurementTimingBudgetMicroSeconds); - - LOG_FUNCTION_END(Status); - - return Status; -} - -VL53L0X_Error VL53L0X_GetMeasurementTimingBudgetMicroSeconds(VL53L0X_DEV Dev, - uint32_t *pMeasurementTimingBudgetMicroSeconds) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_get_measurement_timing_budget_micro_seconds(Dev, - pMeasurementTimingBudgetMicroSeconds); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetVcselPulsePeriod(VL53L0X_DEV Dev, - VL53L0X_VcselPeriod VcselPeriodType, uint8_t VCSELPulsePeriodPCLK) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_set_vcsel_pulse_period(Dev, VcselPeriodType, - VCSELPulsePeriodPCLK); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetVcselPulsePeriod(VL53L0X_DEV Dev, - VL53L0X_VcselPeriod VcselPeriodType, uint8_t *pVCSELPulsePeriodPCLK) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_get_vcsel_pulse_period(Dev, VcselPeriodType, - pVCSELPulsePeriodPCLK); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetSequenceStepEnable(VL53L0X_DEV Dev, - VL53L0X_SequenceStepId SequenceStepId, uint8_t SequenceStepEnabled) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t SequenceConfig = 0; - uint8_t SequenceConfigNew = 0; - uint32_t MeasurementTimingBudgetMicroSeconds; - LOG_FUNCTION_START(""); - - Status = VL53L0X_RdByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, - &SequenceConfig); - - SequenceConfigNew = SequenceConfig; - - if (Status == VL53L0X_ERROR_NONE) { - if (SequenceStepEnabled == 1) { - - /* Enable requested sequence step - */ - switch (SequenceStepId) { - case VL53L0X_SEQUENCESTEP_TCC: - SequenceConfigNew |= 0x10; - break; - case VL53L0X_SEQUENCESTEP_DSS: - SequenceConfigNew |= 0x28; - break; - case VL53L0X_SEQUENCESTEP_MSRC: - SequenceConfigNew |= 0x04; - break; - case VL53L0X_SEQUENCESTEP_PRE_RANGE: - SequenceConfigNew |= 0x40; - break; - case VL53L0X_SEQUENCESTEP_FINAL_RANGE: - SequenceConfigNew |= 0x80; - break; - default: - Status = VL53L0X_ERROR_INVALID_PARAMS; - } - } else { - /* Disable requested sequence step - */ - switch (SequenceStepId) { - case VL53L0X_SEQUENCESTEP_TCC: - SequenceConfigNew &= 0xef; - break; - case VL53L0X_SEQUENCESTEP_DSS: - SequenceConfigNew &= 0xd7; - break; - case VL53L0X_SEQUENCESTEP_MSRC: - SequenceConfigNew &= 0xfb; - break; - case VL53L0X_SEQUENCESTEP_PRE_RANGE: - SequenceConfigNew &= 0xbf; - break; - case VL53L0X_SEQUENCESTEP_FINAL_RANGE: - SequenceConfigNew &= 0x7f; - break; - default: - Status = VL53L0X_ERROR_INVALID_PARAMS; - } - } - } - - if (SequenceConfigNew != SequenceConfig) { - /* Apply New Setting */ - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, SequenceConfigNew); - } - if (Status == VL53L0X_ERROR_NONE) - PALDevDataSet(Dev, SequenceConfig, SequenceConfigNew); - - - /* Recalculate timing budget */ - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_GETPARAMETERFIELD(Dev, - MeasurementTimingBudgetMicroSeconds, - MeasurementTimingBudgetMicroSeconds); - - VL53L0X_SetMeasurementTimingBudgetMicroSeconds(Dev, - MeasurementTimingBudgetMicroSeconds); - } - } - - LOG_FUNCTION_END(Status); - - return Status; -} - -VL53L0X_Error sequence_step_enabled(VL53L0X_DEV Dev, - VL53L0X_SequenceStepId SequenceStepId, uint8_t SequenceConfig, - uint8_t *pSequenceStepEnabled) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - *pSequenceStepEnabled = 0; - LOG_FUNCTION_START(""); - - switch (SequenceStepId) { - case VL53L0X_SEQUENCESTEP_TCC: - *pSequenceStepEnabled = (SequenceConfig & 0x10) >> 4; - break; - case VL53L0X_SEQUENCESTEP_DSS: - *pSequenceStepEnabled = (SequenceConfig & 0x08) >> 3; - break; - case VL53L0X_SEQUENCESTEP_MSRC: - *pSequenceStepEnabled = (SequenceConfig & 0x04) >> 2; - break; - case VL53L0X_SEQUENCESTEP_PRE_RANGE: - *pSequenceStepEnabled = (SequenceConfig & 0x40) >> 6; - break; - case VL53L0X_SEQUENCESTEP_FINAL_RANGE: - *pSequenceStepEnabled = (SequenceConfig & 0x80) >> 7; - break; - default: - Status = VL53L0X_ERROR_INVALID_PARAMS; - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetSequenceStepEnable(VL53L0X_DEV Dev, - VL53L0X_SequenceStepId SequenceStepId, uint8_t *pSequenceStepEnabled) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t SequenceConfig = 0; - LOG_FUNCTION_START(""); - - Status = VL53L0X_RdByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, - &SequenceConfig); - - if (Status == VL53L0X_ERROR_NONE) { - Status = sequence_step_enabled(Dev, SequenceStepId, - SequenceConfig, pSequenceStepEnabled); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetSequenceStepEnables(VL53L0X_DEV Dev, - VL53L0X_SchedulerSequenceSteps_t *pSchedulerSequenceSteps) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t SequenceConfig = 0; - LOG_FUNCTION_START(""); - - Status = VL53L0X_RdByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, - &SequenceConfig); - - if (Status == VL53L0X_ERROR_NONE) { - Status = sequence_step_enabled(Dev, - VL53L0X_SEQUENCESTEP_TCC, SequenceConfig, - &pSchedulerSequenceSteps->TccOn); - } - if (Status == VL53L0X_ERROR_NONE) { - Status = sequence_step_enabled(Dev, - VL53L0X_SEQUENCESTEP_DSS, SequenceConfig, - &pSchedulerSequenceSteps->DssOn); - } - if (Status == VL53L0X_ERROR_NONE) { - Status = sequence_step_enabled(Dev, - VL53L0X_SEQUENCESTEP_MSRC, SequenceConfig, - &pSchedulerSequenceSteps->MsrcOn); - } - if (Status == VL53L0X_ERROR_NONE) { - Status = sequence_step_enabled(Dev, - VL53L0X_SEQUENCESTEP_PRE_RANGE, SequenceConfig, - &pSchedulerSequenceSteps->PreRangeOn); - } - if (Status == VL53L0X_ERROR_NONE) { - Status = sequence_step_enabled(Dev, - VL53L0X_SEQUENCESTEP_FINAL_RANGE, SequenceConfig, - &pSchedulerSequenceSteps->FinalRangeOn); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetNumberOfSequenceSteps(VL53L0X_DEV Dev, - uint8_t *pNumberOfSequenceSteps) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - *pNumberOfSequenceSteps = VL53L0X_SEQUENCESTEP_NUMBER_OF_CHECKS; - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetSequenceStepsInfo(VL53L0X_SequenceStepId SequenceStepId, - char *pSequenceStepsString) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_get_sequence_steps_info( - SequenceStepId, - pSequenceStepsString); - - LOG_FUNCTION_END(Status); - - return Status; -} - -VL53L0X_Error VL53L0X_SetSequenceStepTimeout(VL53L0X_DEV Dev, - VL53L0X_SequenceStepId SequenceStepId, FixPoint1616_t TimeOutMilliSecs) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - VL53L0X_Error Status1 = VL53L0X_ERROR_NONE; - uint32_t TimeoutMicroSeconds = ((TimeOutMilliSecs * 1000) + 0x8000) - >> 16; - uint32_t MeasurementTimingBudgetMicroSeconds; - FixPoint1616_t OldTimeOutMicroSeconds; - - LOG_FUNCTION_START(""); - - /* Read back the current value in case we need to revert back to this. - */ - Status = get_sequence_step_timeout(Dev, SequenceStepId, - &OldTimeOutMicroSeconds); - - if (Status == VL53L0X_ERROR_NONE) { - Status = set_sequence_step_timeout(Dev, SequenceStepId, - TimeoutMicroSeconds); - } - - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_GETPARAMETERFIELD(Dev, - MeasurementTimingBudgetMicroSeconds, - MeasurementTimingBudgetMicroSeconds); - - /* At this point we don't know if the requested value is valid, - therefore proceed to update the entire timing budget and - if this fails, revert back to the previous value. - */ - Status = VL53L0X_SetMeasurementTimingBudgetMicroSeconds(Dev, - MeasurementTimingBudgetMicroSeconds); - - if (Status != VL53L0X_ERROR_NONE) { - Status1 = set_sequence_step_timeout(Dev, SequenceStepId, - OldTimeOutMicroSeconds); - - if (Status1 == VL53L0X_ERROR_NONE) { - Status1 = - VL53L0X_SetMeasurementTimingBudgetMicroSeconds( - Dev, - MeasurementTimingBudgetMicroSeconds); - } - - Status = Status1; - } - } - - LOG_FUNCTION_END(Status); - - return Status; -} - -VL53L0X_Error VL53L0X_GetSequenceStepTimeout(VL53L0X_DEV Dev, - VL53L0X_SequenceStepId SequenceStepId, FixPoint1616_t *pTimeOutMilliSecs) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint32_t TimeoutMicroSeconds; - LOG_FUNCTION_START(""); - - Status = get_sequence_step_timeout(Dev, SequenceStepId, - &TimeoutMicroSeconds); - if (Status == VL53L0X_ERROR_NONE) { - TimeoutMicroSeconds <<= 8; - *pTimeOutMilliSecs = (TimeoutMicroSeconds + 500)/1000; - *pTimeOutMilliSecs <<= 8; - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetInterMeasurementPeriodMilliSeconds(VL53L0X_DEV Dev, - uint32_t InterMeasurementPeriodMilliSeconds) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint16_t osc_calibrate_val; - uint32_t IMPeriodMilliSeconds; - - LOG_FUNCTION_START(""); - - Status = VL53L0X_RdWord(Dev, VL53L0X_REG_OSC_CALIBRATE_VAL, - &osc_calibrate_val); - - if (Status == VL53L0X_ERROR_NONE) { - if (osc_calibrate_val != 0) { - IMPeriodMilliSeconds = - InterMeasurementPeriodMilliSeconds - * osc_calibrate_val; - } else { - IMPeriodMilliSeconds = - InterMeasurementPeriodMilliSeconds; - } - Status = VL53L0X_WrDWord(Dev, - VL53L0X_REG_SYSTEM_INTERMEASUREMENT_PERIOD, - IMPeriodMilliSeconds); - } - - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_SETPARAMETERFIELD(Dev, - InterMeasurementPeriodMilliSeconds, - InterMeasurementPeriodMilliSeconds); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetInterMeasurementPeriodMilliSeconds(VL53L0X_DEV Dev, - uint32_t *pInterMeasurementPeriodMilliSeconds) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint16_t osc_calibrate_val; - uint32_t IMPeriodMilliSeconds; - - LOG_FUNCTION_START(""); - - Status = VL53L0X_RdWord(Dev, VL53L0X_REG_OSC_CALIBRATE_VAL, - &osc_calibrate_val); - - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_RdDWord(Dev, - VL53L0X_REG_SYSTEM_INTERMEASUREMENT_PERIOD, - &IMPeriodMilliSeconds); - } - - if (Status == VL53L0X_ERROR_NONE) { - if (osc_calibrate_val != 0) { - *pInterMeasurementPeriodMilliSeconds = - IMPeriodMilliSeconds / osc_calibrate_val; - } - VL53L0X_SETPARAMETERFIELD(Dev, - InterMeasurementPeriodMilliSeconds, - *pInterMeasurementPeriodMilliSeconds); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetXTalkCompensationEnable(VL53L0X_DEV Dev, - uint8_t XTalkCompensationEnable) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - FixPoint1616_t TempFix1616; - uint16_t LinearityCorrectiveGain; - - LOG_FUNCTION_START(""); - - LinearityCorrectiveGain = PALDevDataGet(Dev, LinearityCorrectiveGain); - - if ((XTalkCompensationEnable == 0) - || (LinearityCorrectiveGain != 1000)) { - TempFix1616 = 0; - } else { - VL53L0X_GETPARAMETERFIELD(Dev, XTalkCompensationRateMegaCps, - TempFix1616); - } - - /* the following register has a format 3.13 */ - Status = VL53L0X_WrWord(Dev, - VL53L0X_REG_CROSSTALK_COMPENSATION_PEAK_RATE_MCPS, - VL53L0X_FIXPOINT1616TOFIXPOINT313(TempFix1616)); - - if (Status == VL53L0X_ERROR_NONE) { - if (XTalkCompensationEnable == 0) { - VL53L0X_SETPARAMETERFIELD(Dev, XTalkCompensationEnable, - 0); - } else { - VL53L0X_SETPARAMETERFIELD(Dev, XTalkCompensationEnable, - 1); - } - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetXTalkCompensationEnable(VL53L0X_DEV Dev, - uint8_t *pXTalkCompensationEnable) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t Temp8; - LOG_FUNCTION_START(""); - - VL53L0X_GETPARAMETERFIELD(Dev, XTalkCompensationEnable, Temp8); - *pXTalkCompensationEnable = Temp8; - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetXTalkCompensationRateMegaCps(VL53L0X_DEV Dev, - FixPoint1616_t XTalkCompensationRateMegaCps) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t Temp8; - uint16_t LinearityCorrectiveGain; - uint16_t data; - LOG_FUNCTION_START(""); - - VL53L0X_GETPARAMETERFIELD(Dev, XTalkCompensationEnable, Temp8); - LinearityCorrectiveGain = PALDevDataGet(Dev, LinearityCorrectiveGain); - - if (Temp8 == 0) { /* disabled write only internal value */ - VL53L0X_SETPARAMETERFIELD(Dev, XTalkCompensationRateMegaCps, - XTalkCompensationRateMegaCps); - } else { - /* the following register has a format 3.13 */ - if (LinearityCorrectiveGain == 1000) { - data = VL53L0X_FIXPOINT1616TOFIXPOINT313( - XTalkCompensationRateMegaCps); - } else { - data = 0; - } - - Status = VL53L0X_WrWord(Dev, - VL53L0X_REG_CROSSTALK_COMPENSATION_PEAK_RATE_MCPS, data); - - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_SETPARAMETERFIELD(Dev, - XTalkCompensationRateMegaCps, - XTalkCompensationRateMegaCps); - } - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetXTalkCompensationRateMegaCps(VL53L0X_DEV Dev, - FixPoint1616_t *pXTalkCompensationRateMegaCps) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint16_t Value; - FixPoint1616_t TempFix1616; - - LOG_FUNCTION_START(""); - - Status = VL53L0X_RdWord(Dev, - VL53L0X_REG_CROSSTALK_COMPENSATION_PEAK_RATE_MCPS, (uint16_t *)&Value); - if (Status == VL53L0X_ERROR_NONE) { - if (Value == 0) { - /* the Xtalk is disabled return value from memory */ - VL53L0X_GETPARAMETERFIELD(Dev, - XTalkCompensationRateMegaCps, TempFix1616); - *pXTalkCompensationRateMegaCps = TempFix1616; - VL53L0X_SETPARAMETERFIELD(Dev, XTalkCompensationEnable, - 0); - } else { - TempFix1616 = VL53L0X_FIXPOINT313TOFIXPOINT1616(Value); - *pXTalkCompensationRateMegaCps = TempFix1616; - VL53L0X_SETPARAMETERFIELD(Dev, - XTalkCompensationRateMegaCps, TempFix1616); - VL53L0X_SETPARAMETERFIELD(Dev, XTalkCompensationEnable, - 1); - } - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetRefCalibration(VL53L0X_DEV Dev, uint8_t VhvSettings, - uint8_t PhaseCal) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_set_ref_calibration(Dev, VhvSettings, PhaseCal); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetRefCalibration(VL53L0X_DEV Dev, uint8_t *pVhvSettings, - uint8_t *pPhaseCal) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_get_ref_calibration(Dev, pVhvSettings, pPhaseCal); - - LOG_FUNCTION_END(Status); - return Status; -} - -/* - * CHECK LIMIT FUNCTIONS - */ - -VL53L0X_Error VL53L0X_GetNumberOfLimitCheck(uint16_t *pNumberOfLimitCheck) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - *pNumberOfLimitCheck = VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS; - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetLimitCheckInfo(VL53L0X_DEV Dev, uint16_t LimitCheckId, - char *pLimitCheckString) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - Status = VL53L0X_get_limit_check_info(Dev, LimitCheckId, - pLimitCheckString); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetLimitCheckStatus(VL53L0X_DEV Dev, uint16_t LimitCheckId, - uint8_t *pLimitCheckStatus) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t Temp8; - - LOG_FUNCTION_START(""); - - if (LimitCheckId >= VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS) { - Status = VL53L0X_ERROR_INVALID_PARAMS; - } else { - - VL53L0X_GETARRAYPARAMETERFIELD(Dev, LimitChecksStatus, - LimitCheckId, Temp8); - - *pLimitCheckStatus = Temp8; - - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetLimitCheckEnable(VL53L0X_DEV Dev, uint16_t LimitCheckId, - uint8_t LimitCheckEnable) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - FixPoint1616_t TempFix1616 = 0; - uint8_t LimitCheckEnableInt = 0; - uint8_t LimitCheckDisable = 0; - uint8_t Temp8; - - LOG_FUNCTION_START(""); - - if (LimitCheckId >= VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS) { - Status = VL53L0X_ERROR_INVALID_PARAMS; - } else { - if (LimitCheckEnable == 0) { - TempFix1616 = 0; - LimitCheckEnableInt = 0; - LimitCheckDisable = 1; - - } else { - VL53L0X_GETARRAYPARAMETERFIELD(Dev, LimitChecksValue, - LimitCheckId, TempFix1616); - LimitCheckDisable = 0; - /* this to be sure to have either 0 or 1 */ - LimitCheckEnableInt = 1; - } - - switch (LimitCheckId) { - - case VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE: - /* internal computation: */ - VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksEnable, - VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, - LimitCheckEnableInt); - - break; - - case VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE: - - Status = VL53L0X_WrWord(Dev, - VL53L0X_REG_FINAL_RANGE_CONFIG_MIN_COUNT_RATE_RTN_LIMIT, - VL53L0X_FIXPOINT1616TOFIXPOINT97(TempFix1616)); - - break; - - case VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP: - - /* internal computation: */ - VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksEnable, - VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, - LimitCheckEnableInt); - - break; - - case VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD: - - /* internal computation: */ - VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksEnable, - VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, - LimitCheckEnableInt); - - break; - - case VL53L0X_CHECKENABLE_SIGNAL_RATE_MSRC: - - Temp8 = (uint8_t)(LimitCheckDisable << 1); - Status = VL53L0X_UpdateByte(Dev, - VL53L0X_REG_MSRC_CONFIG_CONTROL, - 0xFE, Temp8); - - break; - - case VL53L0X_CHECKENABLE_SIGNAL_RATE_PRE_RANGE: - - Temp8 = (uint8_t)(LimitCheckDisable << 4); - Status = VL53L0X_UpdateByte(Dev, - VL53L0X_REG_MSRC_CONFIG_CONTROL, - 0xEF, Temp8); - - break; - - - default: - Status = VL53L0X_ERROR_INVALID_PARAMS; - - } - - } - - if (Status == VL53L0X_ERROR_NONE) { - if (LimitCheckEnable == 0) { - VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksEnable, - LimitCheckId, 0); - } else { - VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksEnable, - LimitCheckId, 1); - } - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetLimitCheckEnable(VL53L0X_DEV Dev, uint16_t LimitCheckId, - uint8_t *pLimitCheckEnable) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t Temp8; - - LOG_FUNCTION_START(""); - - if (LimitCheckId >= VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS) { - Status = VL53L0X_ERROR_INVALID_PARAMS; - *pLimitCheckEnable = 0; - } else { - VL53L0X_GETARRAYPARAMETERFIELD(Dev, LimitChecksEnable, - LimitCheckId, Temp8); - *pLimitCheckEnable = Temp8; - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetLimitCheckValue(VL53L0X_DEV Dev, uint16_t LimitCheckId, - FixPoint1616_t LimitCheckValue) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t Temp8; - - LOG_FUNCTION_START(""); - - VL53L0X_GETARRAYPARAMETERFIELD(Dev, LimitChecksEnable, LimitCheckId, - Temp8); - - if (Temp8 == 0) { /* disabled write only internal value */ - VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksValue, - LimitCheckId, LimitCheckValue); - } else { - - switch (LimitCheckId) { - - case VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE: - /* internal computation: */ - VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksValue, - VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, - LimitCheckValue); - break; - - case VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE: - - Status = VL53L0X_WrWord(Dev, - VL53L0X_REG_FINAL_RANGE_CONFIG_MIN_COUNT_RATE_RTN_LIMIT, - VL53L0X_FIXPOINT1616TOFIXPOINT97( - LimitCheckValue)); - - break; - - case VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP: - - /* internal computation: */ - VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksValue, - VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, - LimitCheckValue); - - break; - - case VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD: - - /* internal computation: */ - VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksValue, - VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, - LimitCheckValue); - - break; - - case VL53L0X_CHECKENABLE_SIGNAL_RATE_MSRC: - case VL53L0X_CHECKENABLE_SIGNAL_RATE_PRE_RANGE: - - Status = VL53L0X_WrWord(Dev, - VL53L0X_REG_PRE_RANGE_MIN_COUNT_RATE_RTN_LIMIT, - VL53L0X_FIXPOINT1616TOFIXPOINT97( - LimitCheckValue)); - - break; - - default: - Status = VL53L0X_ERROR_INVALID_PARAMS; - - } - - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksValue, - LimitCheckId, LimitCheckValue); - } - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetLimitCheckValue(VL53L0X_DEV Dev, uint16_t LimitCheckId, - FixPoint1616_t *pLimitCheckValue) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t EnableZeroValue = 0; - uint16_t Temp16; - FixPoint1616_t TempFix1616; - - LOG_FUNCTION_START(""); - - switch (LimitCheckId) { - - case VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE: - /* internal computation: */ - VL53L0X_GETARRAYPARAMETERFIELD(Dev, LimitChecksValue, - VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, TempFix1616); - EnableZeroValue = 0; - break; - - case VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE: - Status = VL53L0X_RdWord(Dev, - VL53L0X_REG_FINAL_RANGE_CONFIG_MIN_COUNT_RATE_RTN_LIMIT, - &Temp16); - if (Status == VL53L0X_ERROR_NONE) - TempFix1616 = VL53L0X_FIXPOINT97TOFIXPOINT1616(Temp16); - - - EnableZeroValue = 1; - break; - - case VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP: - /* internal computation: */ - VL53L0X_GETARRAYPARAMETERFIELD(Dev, LimitChecksValue, - VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, TempFix1616); - EnableZeroValue = 0; - break; - - case VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD: - /* internal computation: */ - VL53L0X_GETARRAYPARAMETERFIELD(Dev, LimitChecksValue, - VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, TempFix1616); - EnableZeroValue = 0; - break; - - case VL53L0X_CHECKENABLE_SIGNAL_RATE_MSRC: - case VL53L0X_CHECKENABLE_SIGNAL_RATE_PRE_RANGE: - Status = VL53L0X_RdWord(Dev, - VL53L0X_REG_PRE_RANGE_MIN_COUNT_RATE_RTN_LIMIT, - &Temp16); - if (Status == VL53L0X_ERROR_NONE) - TempFix1616 = VL53L0X_FIXPOINT97TOFIXPOINT1616(Temp16); - - - EnableZeroValue = 0; - break; - - default: - Status = VL53L0X_ERROR_INVALID_PARAMS; - - } - - if (Status == VL53L0X_ERROR_NONE) { - - if (EnableZeroValue == 1) { - - if (TempFix1616 == 0) { - /* disabled: return value from memory */ - VL53L0X_GETARRAYPARAMETERFIELD(Dev, - LimitChecksValue, LimitCheckId, - TempFix1616); - *pLimitCheckValue = TempFix1616; - VL53L0X_SETARRAYPARAMETERFIELD(Dev, - LimitChecksEnable, LimitCheckId, 0); - } else { - *pLimitCheckValue = TempFix1616; - VL53L0X_SETARRAYPARAMETERFIELD(Dev, - LimitChecksValue, LimitCheckId, - TempFix1616); - VL53L0X_SETARRAYPARAMETERFIELD(Dev, - LimitChecksEnable, LimitCheckId, 1); - } - } else { - *pLimitCheckValue = TempFix1616; - } - } - - LOG_FUNCTION_END(Status); - return Status; - -} - -VL53L0X_Error VL53L0X_GetLimitCheckCurrent(VL53L0X_DEV Dev, uint16_t LimitCheckId, - FixPoint1616_t *pLimitCheckCurrent) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - VL53L0X_RangingMeasurementData_t LastRangeDataBuffer; - - LOG_FUNCTION_START(""); - - if (LimitCheckId >= VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS) { - Status = VL53L0X_ERROR_INVALID_PARAMS; - } else { - switch (LimitCheckId) { - case VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE: - /* Need to run a ranging to have the latest values */ - *pLimitCheckCurrent = PALDevDataGet(Dev, SigmaEstimate); - - break; - - case VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE: - /* Need to run a ranging to have the latest values */ - LastRangeDataBuffer = PALDevDataGet(Dev, - LastRangeMeasure); - *pLimitCheckCurrent = - LastRangeDataBuffer.SignalRateRtnMegaCps; - - break; - - case VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP: - /* Need to run a ranging to have the latest values */ - *pLimitCheckCurrent = PALDevDataGet(Dev, - LastSignalRefMcps); - - break; - - case VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD: - /* Need to run a ranging to have the latest values */ - LastRangeDataBuffer = PALDevDataGet(Dev, - LastRangeMeasure); - *pLimitCheckCurrent = - LastRangeDataBuffer.SignalRateRtnMegaCps; - - break; - - case VL53L0X_CHECKENABLE_SIGNAL_RATE_MSRC: - /* Need to run a ranging to have the latest values */ - LastRangeDataBuffer = PALDevDataGet(Dev, - LastRangeMeasure); - *pLimitCheckCurrent = - LastRangeDataBuffer.SignalRateRtnMegaCps; - - break; - - case VL53L0X_CHECKENABLE_SIGNAL_RATE_PRE_RANGE: - /* Need to run a ranging to have the latest values */ - LastRangeDataBuffer = PALDevDataGet(Dev, - LastRangeMeasure); - *pLimitCheckCurrent = - LastRangeDataBuffer.SignalRateRtnMegaCps; - - break; - - default: - Status = VL53L0X_ERROR_INVALID_PARAMS; - } - } - - LOG_FUNCTION_END(Status); - return Status; - -} - -/* - * WRAPAROUND Check - */ -VL53L0X_Error VL53L0X_SetWrapAroundCheckEnable(VL53L0X_DEV Dev, - uint8_t WrapAroundCheckEnable) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t Byte; - uint8_t WrapAroundCheckEnableInt; - - LOG_FUNCTION_START(""); - - Status = VL53L0X_RdByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, &Byte); - if (WrapAroundCheckEnable == 0) { - /* Disable wraparound */ - Byte = Byte & 0x7F; - WrapAroundCheckEnableInt = 0; - } else { - /*Enable wraparound */ - Byte = Byte | 0x80; - WrapAroundCheckEnableInt = 1; - } - - Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, Byte); - - if (Status == VL53L0X_ERROR_NONE) { - PALDevDataSet(Dev, SequenceConfig, Byte); - VL53L0X_SETPARAMETERFIELD(Dev, WrapAroundCheckEnable, - WrapAroundCheckEnableInt); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetWrapAroundCheckEnable(VL53L0X_DEV Dev, - uint8_t *pWrapAroundCheckEnable) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t data; - - LOG_FUNCTION_START(""); - - Status = VL53L0X_RdByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, &data); - if (Status == VL53L0X_ERROR_NONE) { - PALDevDataSet(Dev, SequenceConfig, data); - if (data & (0x01 << 7)) - *pWrapAroundCheckEnable = 0x01; - else - *pWrapAroundCheckEnable = 0x00; - } - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_SETPARAMETERFIELD(Dev, WrapAroundCheckEnable, - *pWrapAroundCheckEnable); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetDmaxCalParameters(VL53L0X_DEV Dev, - uint16_t RangeMilliMeter, FixPoint1616_t SignalRateRtnMegaCps) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - FixPoint1616_t SignalRateRtnMegaCpsTemp = 0; - - LOG_FUNCTION_START(""); - - /* Check if one of input parameter is zero, in that case the - * value are get from NVM */ - if ((RangeMilliMeter == 0) || (SignalRateRtnMegaCps == 0)) { - /* NVM parameters */ - /* Run VL53L0X_get_info_from_device wit option 4 to get - * signal rate at 400 mm if the value have been already - * get this function will return with no access to device */ - VL53L0X_get_info_from_device(Dev, 4); - - SignalRateRtnMegaCpsTemp = VL53L0X_GETDEVICESPECIFICPARAMETER( - Dev, SignalRateMeasFixed400mm); - - PALDevDataSet(Dev, DmaxCalRangeMilliMeter, 400); - PALDevDataSet(Dev, DmaxCalSignalRateRtnMegaCps, - SignalRateRtnMegaCpsTemp); - } else { - /* User parameters */ - PALDevDataSet(Dev, DmaxCalRangeMilliMeter, RangeMilliMeter); - PALDevDataSet(Dev, DmaxCalSignalRateRtnMegaCps, - SignalRateRtnMegaCps); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetDmaxCalParameters(VL53L0X_DEV Dev, - uint16_t *pRangeMilliMeter, FixPoint1616_t *pSignalRateRtnMegaCps) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - *pRangeMilliMeter = PALDevDataGet(Dev, DmaxCalRangeMilliMeter); - *pSignalRateRtnMegaCps = PALDevDataGet(Dev, - DmaxCalSignalRateRtnMegaCps); - - LOG_FUNCTION_END(Status); - return Status; -} - -/* End Group PAL Parameters Functions */ - -/* Group PAL Measurement Functions */ -VL53L0X_Error VL53L0X_PerformSingleMeasurement(VL53L0X_DEV Dev) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - VL53L0X_DeviceModes DeviceMode; - - LOG_FUNCTION_START(""); - - /* Get Current DeviceMode */ - Status = VL53L0X_GetDeviceMode(Dev, &DeviceMode); - - /* Start immediately to run a single ranging measurement in case of - * single ranging or single histogram */ - if (Status == VL53L0X_ERROR_NONE - && DeviceMode == VL53L0X_DEVICEMODE_SINGLE_RANGING) - Status = VL53L0X_StartMeasurement(Dev); - - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_measurement_poll_for_completion(Dev); - - - /* Change PAL State in case of single ranging or single histogram */ - if (Status == VL53L0X_ERROR_NONE - && DeviceMode == VL53L0X_DEVICEMODE_SINGLE_RANGING) - PALDevDataSet(Dev, PalState, VL53L0X_STATE_IDLE); - - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_PerformSingleHistogramMeasurement(VL53L0X_DEV Dev, - VL53L0X_HistogramMeasurementData_t *pHistogramMeasurementData) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; - LOG_FUNCTION_START(""); - - /* not implemented on VL53L0X */ - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_PerformRefCalibration(VL53L0X_DEV Dev, uint8_t *pVhvSettings, - uint8_t *pPhaseCal) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_perform_ref_calibration(Dev, pVhvSettings, - pPhaseCal, 1); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_PerformXTalkMeasurement(VL53L0X_DEV Dev, - uint32_t TimeoutMs, FixPoint1616_t *pXtalkPerSpad, - uint8_t *pAmbientTooHigh) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; - LOG_FUNCTION_START(""); - - /* not implemented on VL53L0X */ - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_PerformXTalkCalibration(VL53L0X_DEV Dev, - FixPoint1616_t XTalkCalDistance, - FixPoint1616_t *pXTalkCompensationRateMegaCps) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_perform_xtalk_calibration(Dev, XTalkCalDistance, - pXTalkCompensationRateMegaCps); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_PerformOffsetCalibration(VL53L0X_DEV Dev, - FixPoint1616_t CalDistanceMilliMeter, int32_t *pOffsetMicroMeter) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_perform_offset_calibration(Dev, CalDistanceMilliMeter, - pOffsetMicroMeter); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_CheckAndLoadInterruptSettings(VL53L0X_DEV Dev, - uint8_t StartNotStopFlag) -{ - uint8_t InterruptConfig; - FixPoint1616_t ThresholdLow; - FixPoint1616_t ThresholdHigh; - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - InterruptConfig = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, - Pin0GpioFunctionality); - - if ((InterruptConfig == - VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_LOW) || - (InterruptConfig == - VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_HIGH) || - (InterruptConfig == - VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_OUT)) { - - Status = VL53L0X_GetInterruptThresholds(Dev, - VL53L0X_DEVICEMODE_CONTINUOUS_RANGING, - &ThresholdLow, &ThresholdHigh); - - if (((ThresholdLow > 255*65536) || - (ThresholdHigh > 255*65536)) && - (Status == VL53L0X_ERROR_NONE)) { - - if (StartNotStopFlag != 0) { - Status = VL53L0X_load_tuning_settings(Dev, - InterruptThresholdSettings); - } else { - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x04); - Status |= VL53L0X_WrByte(Dev, 0x70, 0x00); - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); - Status |= VL53L0X_WrByte(Dev, 0x80, 0x00); - } - - } - - - } - - return Status; - -} - - -VL53L0X_Error VL53L0X_StartMeasurement(VL53L0X_DEV Dev) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - VL53L0X_DeviceModes DeviceMode; - uint8_t Byte; - uint8_t StartStopByte = VL53L0X_REG_SYSRANGE_MODE_START_STOP; - uint32_t LoopNb; - LOG_FUNCTION_START(""); - - /* Get Current DeviceMode */ - VL53L0X_GetDeviceMode(Dev, &DeviceMode); - - Status = VL53L0X_WrByte(Dev, 0x80, 0x01); - Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); - Status = VL53L0X_WrByte(Dev, 0x00, 0x00); - Status = VL53L0X_WrByte(Dev, 0x91, PALDevDataGet(Dev, StopVariable)); - Status = VL53L0X_WrByte(Dev, 0x00, 0x01); - Status = VL53L0X_WrByte(Dev, 0xFF, 0x00); - Status = VL53L0X_WrByte(Dev, 0x80, 0x00); - - switch (DeviceMode) { - case VL53L0X_DEVICEMODE_SINGLE_RANGING: - Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSRANGE_START, 0x01); - - Byte = StartStopByte; - if (Status == VL53L0X_ERROR_NONE) { - /* Wait until start bit has been cleared */ - LoopNb = 0; - do { - if (LoopNb > 0) - Status = VL53L0X_RdByte(Dev, - VL53L0X_REG_SYSRANGE_START, &Byte); - LoopNb = LoopNb + 1; - } while (((Byte & StartStopByte) == StartStopByte) - && (Status == VL53L0X_ERROR_NONE) - && (LoopNb < VL53L0X_DEFAULT_MAX_LOOP)); - - if (LoopNb >= VL53L0X_DEFAULT_MAX_LOOP) - Status = VL53L0X_ERROR_TIME_OUT; - - } - - break; - case VL53L0X_DEVICEMODE_CONTINUOUS_RANGING: - /* Back-to-back mode */ - - /* Check if need to apply interrupt settings */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_CheckAndLoadInterruptSettings(Dev, 1); - - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_SYSRANGE_START, - VL53L0X_REG_SYSRANGE_MODE_BACKTOBACK); - if (Status == VL53L0X_ERROR_NONE) { - /* Set PAL State to Running */ - PALDevDataSet(Dev, PalState, VL53L0X_STATE_RUNNING); - } - break; - case VL53L0X_DEVICEMODE_CONTINUOUS_TIMED_RANGING: - /* Continuous mode */ - /* Check if need to apply interrupt settings */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_CheckAndLoadInterruptSettings(Dev, 1); - - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_SYSRANGE_START, - VL53L0X_REG_SYSRANGE_MODE_TIMED); - - if (Status == VL53L0X_ERROR_NONE) { - /* Set PAL State to Running */ - PALDevDataSet(Dev, PalState, VL53L0X_STATE_RUNNING); - } - break; - default: - /* Selected mode not supported */ - Status = VL53L0X_ERROR_MODE_NOT_SUPPORTED; - } - - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_StopMeasurement(VL53L0X_DEV Dev) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSRANGE_START, - VL53L0X_REG_SYSRANGE_MODE_SINGLESHOT); - - Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); - Status = VL53L0X_WrByte(Dev, 0x00, 0x00); - Status = VL53L0X_WrByte(Dev, 0x91, 0x00); - Status = VL53L0X_WrByte(Dev, 0x00, 0x01); - Status = VL53L0X_WrByte(Dev, 0xFF, 0x00); - - if (Status == VL53L0X_ERROR_NONE) { - /* Set PAL State to Idle */ - PALDevDataSet(Dev, PalState, VL53L0X_STATE_IDLE); - } - - /* Check if need to apply interrupt settings */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_CheckAndLoadInterruptSettings(Dev, 0); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetMeasurementDataReady(VL53L0X_DEV Dev, - uint8_t *pMeasurementDataReady) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t SysRangeStatusRegister; - uint8_t InterruptConfig; - uint32_t InterruptMask; - LOG_FUNCTION_START(""); - - InterruptConfig = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, - Pin0GpioFunctionality); - - if (InterruptConfig == - VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_NEW_SAMPLE_READY) { - Status = VL53L0X_GetInterruptMaskStatus(Dev, &InterruptMask); - if (InterruptMask == - VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_NEW_SAMPLE_READY) - *pMeasurementDataReady = 1; - else - *pMeasurementDataReady = 0; - } else { - Status = VL53L0X_RdByte(Dev, VL53L0X_REG_RESULT_RANGE_STATUS, - &SysRangeStatusRegister); - if (Status == VL53L0X_ERROR_NONE) { - if (SysRangeStatusRegister & 0x01) - *pMeasurementDataReady = 1; - else - *pMeasurementDataReady = 0; - } - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_WaitDeviceReadyForNewMeasurement(VL53L0X_DEV Dev, - uint32_t MaxLoop) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; - LOG_FUNCTION_START(""); - - /* not implemented for VL53L0X */ - - LOG_FUNCTION_END(Status); - return Status; -} - - -VL53L0X_Error VL53L0X_GetRangingMeasurementData(VL53L0X_DEV Dev, - VL53L0X_RangingMeasurementData_t *pRangingMeasurementData) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t DeviceRangeStatus; - uint8_t RangeFractionalEnable; - uint8_t PalRangeStatus; - uint8_t XTalkCompensationEnable; - uint16_t AmbientRate; - FixPoint1616_t SignalRate; - uint16_t XTalkCompensationRateMegaCps; - uint16_t EffectiveSpadRtnCount; - uint16_t tmpuint16; - uint16_t XtalkRangeMilliMeter; - uint16_t LinearityCorrectiveGain; - uint8_t localBuffer[12]; - VL53L0X_RangingMeasurementData_t LastRangeDataBuffer; - - LOG_FUNCTION_START(""); - - /* - * use multi read even if some registers are not useful, result will - * be more efficient - * start reading at 0x14 dec20 - * end reading at 0x21 dec33 total 14 bytes to read - */ - Status = VL53L0X_ReadMulti(Dev, 0x14, localBuffer, 12); - - if (Status == VL53L0X_ERROR_NONE) { - - pRangingMeasurementData->ZoneId = 0; /* Only one zone */ - pRangingMeasurementData->TimeStamp = 0; /* Not Implemented */ - - tmpuint16 = VL53L0X_MAKEUINT16(localBuffer[11], localBuffer[10]); - /* cut1.1 if SYSTEM__RANGE_CONFIG if 1 range is 2bits fractional - *(format 11.2) else no fractional - */ - - pRangingMeasurementData->MeasurementTimeUsec = 0; - - SignalRate = VL53L0X_FIXPOINT97TOFIXPOINT1616( - VL53L0X_MAKEUINT16(localBuffer[7], localBuffer[6])); - /* peak_signal_count_rate_rtn_mcps */ - pRangingMeasurementData->SignalRateRtnMegaCps = SignalRate; - - AmbientRate = VL53L0X_MAKEUINT16(localBuffer[9], localBuffer[8]); - pRangingMeasurementData->AmbientRateRtnMegaCps = - VL53L0X_FIXPOINT97TOFIXPOINT1616(AmbientRate); - - EffectiveSpadRtnCount = VL53L0X_MAKEUINT16(localBuffer[3], - localBuffer[2]); - /* EffectiveSpadRtnCount is 8.8 format */ - pRangingMeasurementData->EffectiveSpadRtnCount = - EffectiveSpadRtnCount; - - DeviceRangeStatus = localBuffer[0]; - - /* Get Linearity Corrective Gain */ - LinearityCorrectiveGain = PALDevDataGet(Dev, - LinearityCorrectiveGain); - - /* Get ranging configuration */ - RangeFractionalEnable = PALDevDataGet(Dev, - RangeFractionalEnable); - - if (LinearityCorrectiveGain != 1000) { - - tmpuint16 = (uint16_t)((LinearityCorrectiveGain - * tmpuint16 + 500) / 1000); - - /* Implement Xtalk */ - VL53L0X_GETPARAMETERFIELD(Dev, - XTalkCompensationRateMegaCps, - XTalkCompensationRateMegaCps); - VL53L0X_GETPARAMETERFIELD(Dev, XTalkCompensationEnable, - XTalkCompensationEnable); - - if (XTalkCompensationEnable) { - - if ((SignalRate - - ((XTalkCompensationRateMegaCps - * EffectiveSpadRtnCount) >> 8)) - <= 0) { - if (RangeFractionalEnable) - XtalkRangeMilliMeter = 8888; - else - XtalkRangeMilliMeter = 8888 - << 2; - } else { - XtalkRangeMilliMeter = - (tmpuint16 * SignalRate) - / (SignalRate - - ((XTalkCompensationRateMegaCps - * EffectiveSpadRtnCount) - >> 8)); - } - - tmpuint16 = XtalkRangeMilliMeter; - } - - } - - if (RangeFractionalEnable) { - pRangingMeasurementData->RangeMilliMeter = - (uint16_t)((tmpuint16) >> 2); - pRangingMeasurementData->RangeFractionalPart = - (uint8_t)((tmpuint16 & 0x03) << 6); - } else { - pRangingMeasurementData->RangeMilliMeter = tmpuint16; - pRangingMeasurementData->RangeFractionalPart = 0; - } - - /* - * For a standard definition of RangeStatus, this should - * return 0 in case of good result after a ranging - * The range status depends on the device so call a device - * specific function to obtain the right Status. - */ - Status |= VL53L0X_get_pal_range_status(Dev, DeviceRangeStatus, - SignalRate, EffectiveSpadRtnCount, - pRangingMeasurementData, &PalRangeStatus); - - if (Status == VL53L0X_ERROR_NONE) - pRangingMeasurementData->RangeStatus = PalRangeStatus; - - } - - if (Status == VL53L0X_ERROR_NONE) { - /* Copy last read data into Dev buffer */ - LastRangeDataBuffer = PALDevDataGet(Dev, LastRangeMeasure); - - LastRangeDataBuffer.RangeMilliMeter = - pRangingMeasurementData->RangeMilliMeter; - LastRangeDataBuffer.RangeFractionalPart = - pRangingMeasurementData->RangeFractionalPart; - LastRangeDataBuffer.RangeDMaxMilliMeter = - pRangingMeasurementData->RangeDMaxMilliMeter; - LastRangeDataBuffer.MeasurementTimeUsec = - pRangingMeasurementData->MeasurementTimeUsec; - LastRangeDataBuffer.SignalRateRtnMegaCps = - pRangingMeasurementData->SignalRateRtnMegaCps; - LastRangeDataBuffer.AmbientRateRtnMegaCps = - pRangingMeasurementData->AmbientRateRtnMegaCps; - LastRangeDataBuffer.EffectiveSpadRtnCount = - pRangingMeasurementData->EffectiveSpadRtnCount; - LastRangeDataBuffer.RangeStatus = - pRangingMeasurementData->RangeStatus; - - PALDevDataSet(Dev, LastRangeMeasure, LastRangeDataBuffer); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetMeasurementRefSignal(VL53L0X_DEV Dev, - FixPoint1616_t *pMeasurementRefSignal) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t SignalRefClipLimitCheckEnable = 0; - LOG_FUNCTION_START(""); - - Status = VL53L0X_GetLimitCheckEnable(Dev, - VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, - &SignalRefClipLimitCheckEnable); - if (SignalRefClipLimitCheckEnable != 0) { - *pMeasurementRefSignal = PALDevDataGet(Dev, LastSignalRefMcps); - } else { - Status = VL53L0X_ERROR_INVALID_COMMAND; - } - LOG_FUNCTION_END(Status); - - return Status; -} - -VL53L0X_Error VL53L0X_GetHistogramMeasurementData(VL53L0X_DEV Dev, - VL53L0X_HistogramMeasurementData_t *pHistogramMeasurementData) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; - LOG_FUNCTION_START(""); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_PerformSingleRangingMeasurement(VL53L0X_DEV Dev, - VL53L0X_RangingMeasurementData_t *pRangingMeasurementData) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - /* This function will do a complete single ranging - * Here we fix the mode! */ - Status = VL53L0X_SetDeviceMode(Dev, VL53L0X_DEVICEMODE_SINGLE_RANGING); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_PerformSingleMeasurement(Dev); - - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_GetRangingMeasurementData(Dev, - pRangingMeasurementData); - - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_ClearInterruptMask(Dev, 0); - - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetNumberOfROIZones(VL53L0X_DEV Dev, - uint8_t NumberOfROIZones) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - if (NumberOfROIZones != 1) - Status = VL53L0X_ERROR_INVALID_PARAMS; - - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetNumberOfROIZones(VL53L0X_DEV Dev, - uint8_t *pNumberOfROIZones) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - *pNumberOfROIZones = 1; - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetMaxNumberOfROIZones(VL53L0X_DEV Dev, - uint8_t *pMaxNumberOfROIZones) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - *pMaxNumberOfROIZones = 1; - - LOG_FUNCTION_END(Status); - return Status; -} - -/* End Group PAL Measurement Functions */ - -VL53L0X_Error VL53L0X_SetGpioConfig(VL53L0X_DEV Dev, uint8_t Pin, - VL53L0X_DeviceModes DeviceMode, VL53L0X_GpioFunctionality Functionality, - VL53L0X_InterruptPolarity Polarity) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t data; - - LOG_FUNCTION_START(""); - - if (Pin != 0) { - Status = VL53L0X_ERROR_GPIO_NOT_EXISTING; - } else if (DeviceMode == VL53L0X_DEVICEMODE_GPIO_DRIVE) { - if (Polarity == VL53L0X_INTERRUPTPOLARITY_LOW) - data = 0x10; - else - data = 1; - - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_GPIO_HV_MUX_ACTIVE_HIGH, data); - - } else if (DeviceMode == VL53L0X_DEVICEMODE_GPIO_OSC) { - - Status |= VL53L0X_WrByte(Dev, 0xff, 0x01); - Status |= VL53L0X_WrByte(Dev, 0x00, 0x00); - - Status |= VL53L0X_WrByte(Dev, 0xff, 0x00); - Status |= VL53L0X_WrByte(Dev, 0x80, 0x01); - Status |= VL53L0X_WrByte(Dev, 0x85, 0x02); - - Status |= VL53L0X_WrByte(Dev, 0xff, 0x04); - Status |= VL53L0X_WrByte(Dev, 0xcd, 0x00); - Status |= VL53L0X_WrByte(Dev, 0xcc, 0x11); - - Status |= VL53L0X_WrByte(Dev, 0xff, 0x07); - Status |= VL53L0X_WrByte(Dev, 0xbe, 0x00); - - Status |= VL53L0X_WrByte(Dev, 0xff, 0x06); - Status |= VL53L0X_WrByte(Dev, 0xcc, 0x09); - - Status |= VL53L0X_WrByte(Dev, 0xff, 0x00); - Status |= VL53L0X_WrByte(Dev, 0xff, 0x01); - Status |= VL53L0X_WrByte(Dev, 0x00, 0x00); - - } else { - - if (Status == VL53L0X_ERROR_NONE) { - switch (Functionality) { - case VL53L0X_GPIOFUNCTIONALITY_OFF: - data = 0x00; - break; - case VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_LOW: - data = 0x01; - break; - case VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_HIGH: - data = 0x02; - break; - case VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_OUT: - data = 0x03; - break; - case VL53L0X_GPIOFUNCTIONALITY_NEW_MEASURE_READY: - data = 0x04; - break; - default: - Status = - VL53L0X_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED; - } - } - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_SYSTEM_INTERRUPT_CONFIG_GPIO, data); - - if (Status == VL53L0X_ERROR_NONE) { - if (Polarity == VL53L0X_INTERRUPTPOLARITY_LOW) - data = 0; - else - data = (uint8_t)(1 << 4); - - Status = VL53L0X_UpdateByte(Dev, - VL53L0X_REG_GPIO_HV_MUX_ACTIVE_HIGH, 0xEF, data); - } - - if (Status == VL53L0X_ERROR_NONE) - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - Pin0GpioFunctionality, Functionality); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_ClearInterruptMask(Dev, 0); - - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetGpioConfig(VL53L0X_DEV Dev, uint8_t Pin, - VL53L0X_DeviceModes *pDeviceMode, - VL53L0X_GpioFunctionality *pFunctionality, - VL53L0X_InterruptPolarity *pPolarity) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - VL53L0X_GpioFunctionality GpioFunctionality; - uint8_t data; - - LOG_FUNCTION_START(""); - - /* pDeviceMode not managed by Ewok it return the current mode */ - - Status = VL53L0X_GetDeviceMode(Dev, pDeviceMode); - - if (Status == VL53L0X_ERROR_NONE) { - if (Pin != 0) { - Status = VL53L0X_ERROR_GPIO_NOT_EXISTING; - } else { - Status = VL53L0X_RdByte(Dev, - VL53L0X_REG_SYSTEM_INTERRUPT_CONFIG_GPIO, &data); - } - } - - if (Status == VL53L0X_ERROR_NONE) { - switch (data & 0x07) { - case 0x00: - GpioFunctionality = VL53L0X_GPIOFUNCTIONALITY_OFF; - break; - case 0x01: - GpioFunctionality = - VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_LOW; - break; - case 0x02: - GpioFunctionality = - VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_HIGH; - break; - case 0x03: - GpioFunctionality = - VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_OUT; - break; - case 0x04: - GpioFunctionality = - VL53L0X_GPIOFUNCTIONALITY_NEW_MEASURE_READY; - break; - default: - Status = VL53L0X_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED; - } - } - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_RdByte(Dev, VL53L0X_REG_GPIO_HV_MUX_ACTIVE_HIGH, - &data); - - if (Status == VL53L0X_ERROR_NONE) { - if ((data & (uint8_t)(1 << 4)) == 0) - *pPolarity = VL53L0X_INTERRUPTPOLARITY_LOW; - else - *pPolarity = VL53L0X_INTERRUPTPOLARITY_HIGH; - } - - if (Status == VL53L0X_ERROR_NONE) { - *pFunctionality = GpioFunctionality; - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, Pin0GpioFunctionality, - GpioFunctionality); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetInterruptThresholds(VL53L0X_DEV Dev, - VL53L0X_DeviceModes DeviceMode, FixPoint1616_t ThresholdLow, - FixPoint1616_t ThresholdHigh) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint16_t Threshold16; - LOG_FUNCTION_START(""); - - /* no dependency on DeviceMode for Ewok */ - /* Need to divide by 2 because the FW will apply a x2 */ - Threshold16 = (uint16_t)((ThresholdLow >> 17) & 0x00fff); - Status = VL53L0X_WrWord(Dev, VL53L0X_REG_SYSTEM_THRESH_LOW, Threshold16); - - if (Status == VL53L0X_ERROR_NONE) { - /* Need to divide by 2 because the FW will apply a x2 */ - Threshold16 = (uint16_t)((ThresholdHigh >> 17) & 0x00fff); - Status = VL53L0X_WrWord(Dev, VL53L0X_REG_SYSTEM_THRESH_HIGH, - Threshold16); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetInterruptThresholds(VL53L0X_DEV Dev, - VL53L0X_DeviceModes DeviceMode, FixPoint1616_t *pThresholdLow, - FixPoint1616_t *pThresholdHigh) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint16_t Threshold16; - LOG_FUNCTION_START(""); - - /* no dependency on DeviceMode for Ewok */ - - Status = VL53L0X_RdWord(Dev, VL53L0X_REG_SYSTEM_THRESH_LOW, &Threshold16); - /* Need to multiply by 2 because the FW will apply a x2 */ - *pThresholdLow = (FixPoint1616_t)((0x00fff & Threshold16) << 17); - - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_RdWord(Dev, VL53L0X_REG_SYSTEM_THRESH_HIGH, - &Threshold16); - /* Need to multiply by 2 because the FW will apply a x2 */ - *pThresholdHigh = - (FixPoint1616_t)((0x00fff & Threshold16) << 17); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetStopCompletedStatus(VL53L0X_DEV Dev, - uint32_t *pStopStatus) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t Byte = 0; - LOG_FUNCTION_START(""); - - Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_RdByte(Dev, 0x04, &Byte); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, 0xFF, 0x0); - - *pStopStatus = Byte; - - if (Byte == 0) { - Status = VL53L0X_WrByte(Dev, 0x80, 0x01); - Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); - Status = VL53L0X_WrByte(Dev, 0x00, 0x00); - Status = VL53L0X_WrByte(Dev, 0x91, - PALDevDataGet(Dev, StopVariable)); - Status = VL53L0X_WrByte(Dev, 0x00, 0x01); - Status = VL53L0X_WrByte(Dev, 0xFF, 0x00); - Status = VL53L0X_WrByte(Dev, 0x80, 0x00); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -/* Group PAL Interrupt Functions */ -VL53L0X_Error VL53L0X_ClearInterruptMask(VL53L0X_DEV Dev, uint32_t InterruptMask) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t LoopCount; - uint8_t Byte; - LOG_FUNCTION_START(""); - - /* clear bit 0 range interrupt, bit 1 error interrupt */ - LoopCount = 0; - do { - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_SYSTEM_INTERRUPT_CLEAR, 0x01); - Status |= VL53L0X_WrByte(Dev, - VL53L0X_REG_SYSTEM_INTERRUPT_CLEAR, 0x00); - Status |= VL53L0X_RdByte(Dev, - VL53L0X_REG_RESULT_INTERRUPT_STATUS, &Byte); - LoopCount++; - } while (((Byte & 0x07) != 0x00) - && (LoopCount < 3) - && (Status == VL53L0X_ERROR_NONE)); - - - if (LoopCount >= 3) - Status = VL53L0X_ERROR_INTERRUPT_NOT_CLEARED; - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetInterruptMaskStatus(VL53L0X_DEV Dev, - uint32_t *pInterruptMaskStatus) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t Byte; - LOG_FUNCTION_START(""); - - Status = VL53L0X_RdByte(Dev, VL53L0X_REG_RESULT_INTERRUPT_STATUS, &Byte); - *pInterruptMaskStatus = Byte & 0x07; - - if (Byte & 0x18) - Status = VL53L0X_ERROR_RANGE_ERROR; - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_EnableInterruptMask(VL53L0X_DEV Dev, uint32_t InterruptMask) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; - LOG_FUNCTION_START(""); - - /* not implemented for VL53L0X */ - - LOG_FUNCTION_END(Status); - return Status; -} - -/* End Group PAL Interrupt Functions */ - -/* Group SPAD functions */ - -VL53L0X_Error VL53L0X_SetSpadAmbientDamperThreshold(VL53L0X_DEV Dev, - uint16_t SpadAmbientDamperThreshold) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); - Status |= VL53L0X_WrWord(Dev, 0x40, SpadAmbientDamperThreshold); - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetSpadAmbientDamperThreshold(VL53L0X_DEV Dev, - uint16_t *pSpadAmbientDamperThreshold) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); - Status |= VL53L0X_RdWord(Dev, 0x40, pSpadAmbientDamperThreshold); - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_SetSpadAmbientDamperFactor(VL53L0X_DEV Dev, - uint16_t SpadAmbientDamperFactor) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t Byte; - LOG_FUNCTION_START(""); - - Byte = (uint8_t)(SpadAmbientDamperFactor & 0x00FF); - - Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); - Status |= VL53L0X_WrByte(Dev, 0x42, Byte); - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_GetSpadAmbientDamperFactor(VL53L0X_DEV Dev, - uint16_t *pSpadAmbientDamperFactor) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t Byte; - LOG_FUNCTION_START(""); - - Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); - Status |= VL53L0X_RdByte(Dev, 0x42, &Byte); - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); - *pSpadAmbientDamperFactor = (uint16_t)Byte; - - LOG_FUNCTION_END(Status); - return Status; -} - -/* END Group SPAD functions */ - -/***************************************************************************** - * Internal functions - *****************************************************************************/ - -VL53L0X_Error VL53L0X_SetReferenceSpads(VL53L0X_DEV Dev, uint32_t count, - uint8_t isApertureSpads) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_set_reference_spads(Dev, count, isApertureSpads); - - LOG_FUNCTION_END(Status); - - return Status; -} - -VL53L0X_Error VL53L0X_GetReferenceSpads(VL53L0X_DEV Dev, uint32_t *pSpadCount, - uint8_t *pIsApertureSpads) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_get_reference_spads(Dev, pSpadCount, pIsApertureSpads); - - LOG_FUNCTION_END(Status); - - return Status; -} - -VL53L0X_Error VL53L0X_PerformRefSpadManagement(VL53L0X_DEV Dev, - uint32_t *refSpadCount, uint8_t *isApertureSpads) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - Status = VL53L0X_perform_ref_spad_management(Dev, refSpadCount, - isApertureSpads); - - LOG_FUNCTION_END(Status); - - return Status; -} +/******************************************************************************* + Copyright � 2016, STMicroelectronics International N.V. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND + NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. + IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ******************************************************************************/ + +#include "vl53l0x_api.h" +#include "vl53l0x_tuning.h" +#include "vl53l0x_interrupt_threshold_settings.h" +#include "vl53l0x_api_core.h" +#include "vl53l0x_api_calibration.h" +#include "vl53l0x_api_strings.h" + +#ifndef __KERNEL__ +#include <stdlib.h> +#endif +#define LOG_FUNCTION_START(fmt, ...) \ + _LOG_FUNCTION_START(TRACE_MODULE_API, fmt, ##__VA_ARGS__) +#define LOG_FUNCTION_END(status, ...) \ + _LOG_FUNCTION_END(TRACE_MODULE_API, status, ##__VA_ARGS__) +#define LOG_FUNCTION_END_FMT(status, fmt, ...) \ + _LOG_FUNCTION_END_FMT(TRACE_MODULE_API, status, fmt, ##__VA_ARGS__) + +#ifdef VL53L0X_LOG_ENABLE +#define trace_print(level, ...) trace_print_module_function(TRACE_MODULE_API, \ + level, TRACE_FUNCTION_NONE, ##__VA_ARGS__) +#endif + +/* Group PAL General Functions */ + +VL53L0X_Error VL53L0X_GetVersion(VL53L0X_Version_t *pVersion) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + pVersion->major = VL53L0X_IMPLEMENTATION_VER_MAJOR; + pVersion->minor = VL53L0X_IMPLEMENTATION_VER_MINOR; + pVersion->build = VL53L0X_IMPLEMENTATION_VER_SUB; + + pVersion->revision = VL53L0X_IMPLEMENTATION_VER_REVISION; + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetPalSpecVersion(VL53L0X_Version_t *pPalSpecVersion) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + pPalSpecVersion->major = VL53L0X_SPECIFICATION_VER_MAJOR; + pPalSpecVersion->minor = VL53L0X_SPECIFICATION_VER_MINOR; + pPalSpecVersion->build = VL53L0X_SPECIFICATION_VER_SUB; + + pPalSpecVersion->revision = VL53L0X_SPECIFICATION_VER_REVISION; + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetProductRevision(VL53L0X_DEV Dev, + uint8_t *pProductRevisionMajor, uint8_t *pProductRevisionMinor) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t revision_id; + + LOG_FUNCTION_START(""); + + Status = VL53L0X_RdByte(Dev, VL53L0X_REG_IDENTIFICATION_REVISION_ID, + &revision_id); + *pProductRevisionMajor = 1; + *pProductRevisionMinor = (revision_id & 0xF0) >> 4; + + LOG_FUNCTION_END(Status); + return Status; + +} + +VL53L0X_Error VL53L0X_GetDeviceInfo(VL53L0X_DEV Dev, + VL53L0X_DeviceInfo_t *pVL53L0X_DeviceInfo) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_get_device_info(Dev, pVL53L0X_DeviceInfo); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetDeviceErrorStatus(VL53L0X_DEV Dev, + VL53L0X_DeviceError *pDeviceErrorStatus) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t RangeStatus; + + LOG_FUNCTION_START(""); + + Status = VL53L0X_RdByte(Dev, VL53L0X_REG_RESULT_RANGE_STATUS, + &RangeStatus); + + *pDeviceErrorStatus = (VL53L0X_DeviceError)((RangeStatus & 0x78) >> 3); + + LOG_FUNCTION_END(Status); + return Status; +} + + +VL53L0X_Error VL53L0X_GetDeviceErrorString(VL53L0X_DeviceError ErrorCode, + char *pDeviceErrorString) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + Status = VL53L0X_get_device_error_string(ErrorCode, pDeviceErrorString); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetRangeStatusString(uint8_t RangeStatus, + char *pRangeStatusString) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_get_range_status_string(RangeStatus, + pRangeStatusString); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetPalErrorString(VL53L0X_Error PalErrorCode, + char *pPalErrorString) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_get_pal_error_string(PalErrorCode, pPalErrorString); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetPalStateString(VL53L0X_State PalStateCode, + char *pPalStateString) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_get_pal_state_string(PalStateCode, pPalStateString); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetPalState(VL53L0X_DEV Dev, VL53L0X_State *pPalState) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + *pPalState = PALDevDataGet(Dev, PalState); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetPowerMode(VL53L0X_DEV Dev, VL53L0X_PowerModes PowerMode) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + /* Only level1 of Power mode exists */ + if ((PowerMode != VL53L0X_POWERMODE_STANDBY_LEVEL1) + && (PowerMode != VL53L0X_POWERMODE_IDLE_LEVEL1)) { + Status = VL53L0X_ERROR_MODE_NOT_SUPPORTED; + } else if (PowerMode == VL53L0X_POWERMODE_STANDBY_LEVEL1) { + /* set the standby level1 of power mode */ + Status = VL53L0X_WrByte(Dev, 0x80, 0x00); + if (Status == VL53L0X_ERROR_NONE) { + /* Set PAL State to standby */ + PALDevDataSet(Dev, PalState, VL53L0X_STATE_STANDBY); + PALDevDataSet(Dev, PowerMode, + VL53L0X_POWERMODE_STANDBY_LEVEL1); + } + + } else { + /* VL53L0X_POWERMODE_IDLE_LEVEL1 */ + Status = VL53L0X_WrByte(Dev, 0x80, 0x00); + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_StaticInit(Dev); + + if (Status == VL53L0X_ERROR_NONE) + PALDevDataSet(Dev, PowerMode, + VL53L0X_POWERMODE_IDLE_LEVEL1); + + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetPowerMode(VL53L0X_DEV Dev, VL53L0X_PowerModes *pPowerMode) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t Byte; + LOG_FUNCTION_START(""); + + /* Only level1 of Power mode exists */ + Status = VL53L0X_RdByte(Dev, 0x80, &Byte); + + if (Status == VL53L0X_ERROR_NONE) { + if (Byte == 1) { + PALDevDataSet(Dev, PowerMode, + VL53L0X_POWERMODE_IDLE_LEVEL1); + } else { + PALDevDataSet(Dev, PowerMode, + VL53L0X_POWERMODE_STANDBY_LEVEL1); + } + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetOffsetCalibrationDataMicroMeter(VL53L0X_DEV Dev, + int32_t OffsetCalibrationDataMicroMeter) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_set_offset_calibration_data_micro_meter(Dev, + OffsetCalibrationDataMicroMeter); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetOffsetCalibrationDataMicroMeter(VL53L0X_DEV Dev, + int32_t *pOffsetCalibrationDataMicroMeter) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_get_offset_calibration_data_micro_meter(Dev, + pOffsetCalibrationDataMicroMeter); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetLinearityCorrectiveGain(VL53L0X_DEV Dev, + int16_t LinearityCorrectiveGain) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + if ((LinearityCorrectiveGain < 0) || (LinearityCorrectiveGain > 1000)) + Status = VL53L0X_ERROR_INVALID_PARAMS; + else { + PALDevDataSet(Dev, LinearityCorrectiveGain, + LinearityCorrectiveGain); + + if (LinearityCorrectiveGain != 1000) { + /* Disable FW Xtalk */ + Status = VL53L0X_WrWord(Dev, + VL53L0X_REG_CROSSTALK_COMPENSATION_PEAK_RATE_MCPS, 0); + } + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetLinearityCorrectiveGain(VL53L0X_DEV Dev, + uint16_t *pLinearityCorrectiveGain) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + *pLinearityCorrectiveGain = PALDevDataGet(Dev, LinearityCorrectiveGain); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetGroupParamHold(VL53L0X_DEV Dev, uint8_t GroupParamHold) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; + LOG_FUNCTION_START(""); + + /* not implemented on VL53L0X */ + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetUpperLimitMilliMeter(VL53L0X_DEV Dev, + uint16_t *pUpperLimitMilliMeter) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; + LOG_FUNCTION_START(""); + + /* not implemented on VL53L0X */ + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetTotalSignalRate(VL53L0X_DEV Dev, + FixPoint1616_t *pTotalSignalRate) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + VL53L0X_RangingMeasurementData_t LastRangeDataBuffer; + + LOG_FUNCTION_START(""); + + LastRangeDataBuffer = PALDevDataGet(Dev, LastRangeMeasure); + + Status = VL53L0X_get_total_signal_rate( + Dev, &LastRangeDataBuffer, pTotalSignalRate); + + LOG_FUNCTION_END(Status); + return Status; +} + +/* End Group PAL General Functions */ + +/* Group PAL Init Functions */ +VL53L0X_Error VL53L0X_SetDeviceAddress(VL53L0X_DEV Dev, uint8_t DeviceAddress) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_WrByte(Dev, VL53L0X_REG_I2C_SLAVE_DEVICE_ADDRESS, + DeviceAddress / 2); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_DataInit(VL53L0X_DEV Dev) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + VL53L0X_DeviceParameters_t CurrentParameters; + int i; + uint8_t StopVariable; + + LOG_FUNCTION_START(""); + + /* by default the I2C is running at 1V8 if you want to change it you + * need to include this define at compilation level. */ +#ifdef USE_I2C_2V8 + Status = VL53L0X_UpdateByte(Dev, + VL53L0X_REG_VHV_CONFIG_PAD_SCL_SDA__EXTSUP_HV, + 0xFE, + 0x01); +#endif + + /* Set I2C standard mode */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, 0x88, 0x00); + + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, ReadDataFromDeviceDone, 0); + +#ifdef USE_IQC_STATION + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_apply_offset_adjustment(Dev); +#endif + + /* Default value is 1000 for Linearity Corrective Gain */ + PALDevDataSet(Dev, LinearityCorrectiveGain, 1000); + + /* Dmax default Parameter */ + PALDevDataSet(Dev, DmaxCalRangeMilliMeter, 400); + PALDevDataSet(Dev, DmaxCalSignalRateRtnMegaCps, + (FixPoint1616_t)((0x00016B85))); /* 1.42 No Cover Glass*/ + + /* Set Default static parameters + *set first temporary values 9.44MHz * 65536 = 618660 */ + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, OscFrequencyMHz, 618660); + + /* Set Default XTalkCompensationRateMegaCps to 0 */ + VL53L0X_SETPARAMETERFIELD(Dev, XTalkCompensationRateMegaCps, 0); + + /* Get default parameters */ + Status = VL53L0X_GetDeviceParameters(Dev, &CurrentParameters); + if (Status == VL53L0X_ERROR_NONE) { + /* initialize PAL values */ + CurrentParameters.DeviceMode = VL53L0X_DEVICEMODE_SINGLE_RANGING; + CurrentParameters.HistogramMode = VL53L0X_HISTOGRAMMODE_DISABLED; + PALDevDataSet(Dev, CurrentParameters, CurrentParameters); + } + + /* Sigma estimator variable */ + PALDevDataSet(Dev, SigmaEstRefArray, 100); + PALDevDataSet(Dev, SigmaEstEffPulseWidth, 900); + PALDevDataSet(Dev, SigmaEstEffAmbWidth, 500); + PALDevDataSet(Dev, targetRefRate, 0x0A00); /* 20 MCPS in 9:7 format */ + + /* Use internal default settings */ + PALDevDataSet(Dev, UseInternalTuningSettings, 1); + + Status |= VL53L0X_WrByte(Dev, 0x80, 0x01); + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x01); + Status |= VL53L0X_WrByte(Dev, 0x00, 0x00); + Status |= VL53L0X_RdByte(Dev, 0x91, &StopVariable); + PALDevDataSet(Dev, StopVariable, StopVariable); + Status |= VL53L0X_WrByte(Dev, 0x00, 0x01); + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); + Status |= VL53L0X_WrByte(Dev, 0x80, 0x00); + + /* Enable all check */ + for (i = 0; i < VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS; i++) { + if (Status == VL53L0X_ERROR_NONE) + Status |= VL53L0X_SetLimitCheckEnable(Dev, i, 1); + else + break; + + } + + /* Disable the following checks */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetLimitCheckEnable(Dev, + VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, 0); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetLimitCheckEnable(Dev, + VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, 0); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetLimitCheckEnable(Dev, + VL53L0X_CHECKENABLE_SIGNAL_RATE_MSRC, 0); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetLimitCheckEnable(Dev, + VL53L0X_CHECKENABLE_SIGNAL_RATE_PRE_RANGE, 0); + + /* Limit default values */ + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_SetLimitCheckValue(Dev, + VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, + (FixPoint1616_t)(18 * 65536)); + } + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_SetLimitCheckValue(Dev, + VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE, + (FixPoint1616_t)(25 * 65536 / 100)); + /* 0.25 * 65536 */ + } + + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_SetLimitCheckValue(Dev, + VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, + (FixPoint1616_t)(35 * 65536)); + } + + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_SetLimitCheckValue(Dev, + VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, + (FixPoint1616_t)(0 * 65536)); + } + + if (Status == VL53L0X_ERROR_NONE) { + + PALDevDataSet(Dev, SequenceConfig, 0xFF); + Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, + 0xFF); + + /* Set PAL state to tell that we are waiting for call to + * VL53L0X_StaticInit */ + PALDevDataSet(Dev, PalState, VL53L0X_STATE_WAIT_STATICINIT); + } + + if (Status == VL53L0X_ERROR_NONE) + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, RefSpadsInitialised, 0); + + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetTuningSettingBuffer(VL53L0X_DEV Dev, + uint8_t *pTuningSettingBuffer, uint8_t UseInternalTuningSettings) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + if (UseInternalTuningSettings == 1) { + /* Force use internal settings */ + PALDevDataSet(Dev, UseInternalTuningSettings, 1); + } else { + + /* check that the first byte is not 0 */ + if (*pTuningSettingBuffer != 0) { + PALDevDataSet(Dev, pTuningSettingsPointer, + pTuningSettingBuffer); + PALDevDataSet(Dev, UseInternalTuningSettings, 0); + + } else { + Status = VL53L0X_ERROR_INVALID_PARAMS; + } + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetTuningSettingBuffer(VL53L0X_DEV Dev, + uint8_t **ppTuningSettingBuffer, uint8_t *pUseInternalTuningSettings) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + *ppTuningSettingBuffer = PALDevDataGet(Dev, pTuningSettingsPointer); + *pUseInternalTuningSettings = PALDevDataGet(Dev, + UseInternalTuningSettings); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_StaticInit(VL53L0X_DEV Dev) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + VL53L0X_DeviceParameters_t CurrentParameters = {0}; + uint8_t *pTuningSettingBuffer; + uint16_t tempword = 0; + uint8_t tempbyte = 0; + uint8_t UseInternalTuningSettings = 0; + uint32_t count = 0; + uint8_t isApertureSpads = 0; + uint32_t refSpadCount = 0; + uint8_t ApertureSpads = 0; + uint8_t vcselPulsePeriodPCLK; + uint32_t seqTimeoutMicroSecs; + + LOG_FUNCTION_START(""); + + Status = VL53L0X_get_info_from_device(Dev, 1); + + /* set the ref spad from NVM */ + count = (uint32_t)VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, + ReferenceSpadCount); + ApertureSpads = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, + ReferenceSpadType); + + /* NVM value invalid */ + if ((ApertureSpads > 1) || + ((ApertureSpads == 1) && (count > 32)) || + ((ApertureSpads == 0) && (count > 12))) + Status = VL53L0X_perform_ref_spad_management(Dev, &refSpadCount, + &isApertureSpads); + else + Status = VL53L0X_set_reference_spads(Dev, count, ApertureSpads); + + + /* Initialize tuning settings buffer to prevent compiler warning. */ + pTuningSettingBuffer = DefaultTuningSettings; + + if (Status == VL53L0X_ERROR_NONE) { + UseInternalTuningSettings = PALDevDataGet(Dev, + UseInternalTuningSettings); + + if (UseInternalTuningSettings == 0) + pTuningSettingBuffer = PALDevDataGet(Dev, + pTuningSettingsPointer); + else + pTuningSettingBuffer = DefaultTuningSettings; + + } + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_load_tuning_settings(Dev, pTuningSettingBuffer); + + + /* Set interrupt config to new sample ready */ + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_SetGpioConfig(Dev, 0, 0, + VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_NEW_SAMPLE_READY, + VL53L0X_INTERRUPTPOLARITY_LOW); + } + + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); + Status |= VL53L0X_RdWord(Dev, 0x84, &tempword); + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); + } + + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, OscFrequencyMHz, + VL53L0X_FIXPOINT412TOFIXPOINT1616(tempword)); + } + + /* After static init, some device parameters may be changed, + * so update them */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_GetDeviceParameters(Dev, &CurrentParameters); + + + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_GetFractionEnable(Dev, &tempbyte); + if (Status == VL53L0X_ERROR_NONE) + PALDevDataSet(Dev, RangeFractionalEnable, tempbyte); + + } + + if (Status == VL53L0X_ERROR_NONE) + PALDevDataSet(Dev, CurrentParameters, CurrentParameters); + + + /* read the sequence config and save it */ + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_RdByte(Dev, + VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, &tempbyte); + if (Status == VL53L0X_ERROR_NONE) + PALDevDataSet(Dev, SequenceConfig, tempbyte); + + } + + /* Disable MSRC and TCC by default */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetSequenceStepEnable(Dev, + VL53L0X_SEQUENCESTEP_TCC, 0); + + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetSequenceStepEnable(Dev, + VL53L0X_SEQUENCESTEP_MSRC, 0); + + + /* Set PAL State to standby */ + if (Status == VL53L0X_ERROR_NONE) + PALDevDataSet(Dev, PalState, VL53L0X_STATE_IDLE); + + + + /* Store pre-range vcsel period */ + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_GetVcselPulsePeriod( + Dev, + VL53L0X_VCSEL_PERIOD_PRE_RANGE, + &vcselPulsePeriodPCLK); + } + + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_SETDEVICESPECIFICPARAMETER( + Dev, + PreRangeVcselPulsePeriod, + vcselPulsePeriodPCLK); + } + + /* Store final-range vcsel period */ + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_GetVcselPulsePeriod( + Dev, + VL53L0X_VCSEL_PERIOD_FINAL_RANGE, + &vcselPulsePeriodPCLK); + } + + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_SETDEVICESPECIFICPARAMETER( + Dev, + FinalRangeVcselPulsePeriod, + vcselPulsePeriodPCLK); + } + + /* Store pre-range timeout */ + if (Status == VL53L0X_ERROR_NONE) { + Status = get_sequence_step_timeout( + Dev, + VL53L0X_SEQUENCESTEP_PRE_RANGE, + &seqTimeoutMicroSecs); + } + + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_SETDEVICESPECIFICPARAMETER( + Dev, + PreRangeTimeoutMicroSecs, + seqTimeoutMicroSecs); + } + + /* Store final-range timeout */ + if (Status == VL53L0X_ERROR_NONE) { + Status = get_sequence_step_timeout( + Dev, + VL53L0X_SEQUENCESTEP_FINAL_RANGE, + &seqTimeoutMicroSecs); + } + + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_SETDEVICESPECIFICPARAMETER( + Dev, + FinalRangeTimeoutMicroSecs, + seqTimeoutMicroSecs); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_WaitDeviceBooted(VL53L0X_DEV Dev) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; + LOG_FUNCTION_START(""); + + /* not implemented on VL53L0X */ + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_ResetDevice(VL53L0X_DEV Dev) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t Byte; + LOG_FUNCTION_START(""); + + /* Set reset bit */ + Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SOFT_RESET_GO2_SOFT_RESET_N, + 0x00); + + /* Wait for some time */ + if (Status == VL53L0X_ERROR_NONE) { + do { + Status = VL53L0X_RdByte(Dev, + VL53L0X_REG_IDENTIFICATION_MODEL_ID, &Byte); + } while (Byte != 0x00); + } + + VL53L0X_PollingDelay(Dev); + + /* Release reset */ + Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SOFT_RESET_GO2_SOFT_RESET_N, + 0x01); + + /* Wait until correct boot-up of the device */ + if (Status == VL53L0X_ERROR_NONE) { + do { + Status = VL53L0X_RdByte(Dev, + VL53L0X_REG_IDENTIFICATION_MODEL_ID, &Byte); + } while (Byte == 0x00); + } + + VL53L0X_PollingDelay(Dev); + + /* Set PAL State to VL53L0X_STATE_POWERDOWN */ + if (Status == VL53L0X_ERROR_NONE) + PALDevDataSet(Dev, PalState, VL53L0X_STATE_POWERDOWN); + + + LOG_FUNCTION_END(Status); + return Status; +} +/* End Group PAL Init Functions */ + +/* Group PAL Parameters Functions */ +VL53L0X_Error VL53L0X_SetDeviceParameters(VL53L0X_DEV Dev, + const VL53L0X_DeviceParameters_t *pDeviceParameters) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + int i; + LOG_FUNCTION_START(""); + Status = VL53L0X_SetDeviceMode(Dev, pDeviceParameters->DeviceMode); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetInterMeasurementPeriodMilliSeconds(Dev, + pDeviceParameters->InterMeasurementPeriodMilliSeconds); + + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetXTalkCompensationRateMegaCps(Dev, + pDeviceParameters->XTalkCompensationRateMegaCps); + + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetOffsetCalibrationDataMicroMeter(Dev, + pDeviceParameters->RangeOffsetMicroMeters); + + + for (i = 0; i < VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS; i++) { + if (Status == VL53L0X_ERROR_NONE) + Status |= VL53L0X_SetLimitCheckEnable(Dev, i, + pDeviceParameters->LimitChecksEnable[i]); + else + break; + + if (Status == VL53L0X_ERROR_NONE) + Status |= VL53L0X_SetLimitCheckValue(Dev, i, + pDeviceParameters->LimitChecksValue[i]); + else + break; + + } + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetWrapAroundCheckEnable(Dev, + pDeviceParameters->WrapAroundCheckEnable); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetMeasurementTimingBudgetMicroSeconds(Dev, + pDeviceParameters->MeasurementTimingBudgetMicroSeconds); + + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetDeviceParameters(VL53L0X_DEV Dev, + VL53L0X_DeviceParameters_t *pDeviceParameters) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + int i; + + LOG_FUNCTION_START(""); + + Status = VL53L0X_GetDeviceMode(Dev, &(pDeviceParameters->DeviceMode)); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_GetInterMeasurementPeriodMilliSeconds(Dev, + &(pDeviceParameters->InterMeasurementPeriodMilliSeconds)); + + + if (Status == VL53L0X_ERROR_NONE) + pDeviceParameters->XTalkCompensationEnable = 0; + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_GetXTalkCompensationRateMegaCps(Dev, + &(pDeviceParameters->XTalkCompensationRateMegaCps)); + + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_GetOffsetCalibrationDataMicroMeter(Dev, + &(pDeviceParameters->RangeOffsetMicroMeters)); + + + if (Status == VL53L0X_ERROR_NONE) { + for (i = 0; i < VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS; i++) { + /* get first the values, then the enables. + * VL53L0X_GetLimitCheckValue will modify the enable + * flags + */ + if (Status == VL53L0X_ERROR_NONE) { + Status |= VL53L0X_GetLimitCheckValue(Dev, i, + &(pDeviceParameters->LimitChecksValue[i])); + } else { + break; + } + if (Status == VL53L0X_ERROR_NONE) { + Status |= VL53L0X_GetLimitCheckEnable(Dev, i, + &(pDeviceParameters->LimitChecksEnable[i])); + } else { + break; + } + } + } + + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_GetWrapAroundCheckEnable(Dev, + &(pDeviceParameters->WrapAroundCheckEnable)); + } + + /* Need to be done at the end as it uses VCSELPulsePeriod */ + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_GetMeasurementTimingBudgetMicroSeconds(Dev, + &(pDeviceParameters->MeasurementTimingBudgetMicroSeconds)); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetDeviceMode(VL53L0X_DEV Dev, VL53L0X_DeviceModes DeviceMode) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START("%d", (int)DeviceMode); + + switch (DeviceMode) { + case VL53L0X_DEVICEMODE_SINGLE_RANGING: + case VL53L0X_DEVICEMODE_CONTINUOUS_RANGING: + case VL53L0X_DEVICEMODE_CONTINUOUS_TIMED_RANGING: + case VL53L0X_DEVICEMODE_GPIO_DRIVE: + case VL53L0X_DEVICEMODE_GPIO_OSC: + /* Supported modes */ + VL53L0X_SETPARAMETERFIELD(Dev, DeviceMode, DeviceMode); + break; + default: + /* Unsupported mode */ + Status = VL53L0X_ERROR_MODE_NOT_SUPPORTED; + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetDeviceMode(VL53L0X_DEV Dev, + VL53L0X_DeviceModes *pDeviceMode) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + VL53L0X_GETPARAMETERFIELD(Dev, DeviceMode, *pDeviceMode); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetRangeFractionEnable(VL53L0X_DEV Dev, uint8_t Enable) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START("%d", (int)Enable); + + Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_RANGE_CONFIG, Enable); + + if (Status == VL53L0X_ERROR_NONE) + PALDevDataSet(Dev, RangeFractionalEnable, Enable); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetFractionEnable(VL53L0X_DEV Dev, uint8_t *pEnabled) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_RdByte(Dev, VL53L0X_REG_SYSTEM_RANGE_CONFIG, pEnabled); + + if (Status == VL53L0X_ERROR_NONE) + *pEnabled = (*pEnabled & 1); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetHistogramMode(VL53L0X_DEV Dev, + VL53L0X_HistogramModes HistogramMode) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; + LOG_FUNCTION_START(""); + + /* not implemented on VL53L0X */ + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetHistogramMode(VL53L0X_DEV Dev, + VL53L0X_HistogramModes *pHistogramMode) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; + LOG_FUNCTION_START(""); + + /* not implemented on VL53L0X */ + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetMeasurementTimingBudgetMicroSeconds(VL53L0X_DEV Dev, + uint32_t MeasurementTimingBudgetMicroSeconds) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_set_measurement_timing_budget_micro_seconds(Dev, + MeasurementTimingBudgetMicroSeconds); + + LOG_FUNCTION_END(Status); + + return Status; +} + +VL53L0X_Error VL53L0X_GetMeasurementTimingBudgetMicroSeconds(VL53L0X_DEV Dev, + uint32_t *pMeasurementTimingBudgetMicroSeconds) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_get_measurement_timing_budget_micro_seconds(Dev, + pMeasurementTimingBudgetMicroSeconds); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetVcselPulsePeriod(VL53L0X_DEV Dev, + VL53L0X_VcselPeriod VcselPeriodType, uint8_t VCSELPulsePeriodPCLK) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_set_vcsel_pulse_period(Dev, VcselPeriodType, + VCSELPulsePeriodPCLK); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetVcselPulsePeriod(VL53L0X_DEV Dev, + VL53L0X_VcselPeriod VcselPeriodType, uint8_t *pVCSELPulsePeriodPCLK) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_get_vcsel_pulse_period(Dev, VcselPeriodType, + pVCSELPulsePeriodPCLK); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetSequenceStepEnable(VL53L0X_DEV Dev, + VL53L0X_SequenceStepId SequenceStepId, uint8_t SequenceStepEnabled) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t SequenceConfig = 0; + uint8_t SequenceConfigNew = 0; + uint32_t MeasurementTimingBudgetMicroSeconds; + LOG_FUNCTION_START(""); + + Status = VL53L0X_RdByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, + &SequenceConfig); + + SequenceConfigNew = SequenceConfig; + + if (Status == VL53L0X_ERROR_NONE) { + if (SequenceStepEnabled == 1) { + + /* Enable requested sequence step + */ + switch (SequenceStepId) { + case VL53L0X_SEQUENCESTEP_TCC: + SequenceConfigNew |= 0x10; + break; + case VL53L0X_SEQUENCESTEP_DSS: + SequenceConfigNew |= 0x28; + break; + case VL53L0X_SEQUENCESTEP_MSRC: + SequenceConfigNew |= 0x04; + break; + case VL53L0X_SEQUENCESTEP_PRE_RANGE: + SequenceConfigNew |= 0x40; + break; + case VL53L0X_SEQUENCESTEP_FINAL_RANGE: + SequenceConfigNew |= 0x80; + break; + default: + Status = VL53L0X_ERROR_INVALID_PARAMS; + } + } else { + /* Disable requested sequence step + */ + switch (SequenceStepId) { + case VL53L0X_SEQUENCESTEP_TCC: + SequenceConfigNew &= 0xef; + break; + case VL53L0X_SEQUENCESTEP_DSS: + SequenceConfigNew &= 0xd7; + break; + case VL53L0X_SEQUENCESTEP_MSRC: + SequenceConfigNew &= 0xfb; + break; + case VL53L0X_SEQUENCESTEP_PRE_RANGE: + SequenceConfigNew &= 0xbf; + break; + case VL53L0X_SEQUENCESTEP_FINAL_RANGE: + SequenceConfigNew &= 0x7f; + break; + default: + Status = VL53L0X_ERROR_INVALID_PARAMS; + } + } + } + + if (SequenceConfigNew != SequenceConfig) { + /* Apply New Setting */ + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, SequenceConfigNew); + } + if (Status == VL53L0X_ERROR_NONE) + PALDevDataSet(Dev, SequenceConfig, SequenceConfigNew); + + + /* Recalculate timing budget */ + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_GETPARAMETERFIELD(Dev, + MeasurementTimingBudgetMicroSeconds, + MeasurementTimingBudgetMicroSeconds); + + VL53L0X_SetMeasurementTimingBudgetMicroSeconds(Dev, + MeasurementTimingBudgetMicroSeconds); + } + } + + LOG_FUNCTION_END(Status); + + return Status; +} + +VL53L0X_Error sequence_step_enabled(VL53L0X_DEV Dev, + VL53L0X_SequenceStepId SequenceStepId, uint8_t SequenceConfig, + uint8_t *pSequenceStepEnabled) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + *pSequenceStepEnabled = 0; + LOG_FUNCTION_START(""); + + switch (SequenceStepId) { + case VL53L0X_SEQUENCESTEP_TCC: + *pSequenceStepEnabled = (SequenceConfig & 0x10) >> 4; + break; + case VL53L0X_SEQUENCESTEP_DSS: + *pSequenceStepEnabled = (SequenceConfig & 0x08) >> 3; + break; + case VL53L0X_SEQUENCESTEP_MSRC: + *pSequenceStepEnabled = (SequenceConfig & 0x04) >> 2; + break; + case VL53L0X_SEQUENCESTEP_PRE_RANGE: + *pSequenceStepEnabled = (SequenceConfig & 0x40) >> 6; + break; + case VL53L0X_SEQUENCESTEP_FINAL_RANGE: + *pSequenceStepEnabled = (SequenceConfig & 0x80) >> 7; + break; + default: + Status = VL53L0X_ERROR_INVALID_PARAMS; + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetSequenceStepEnable(VL53L0X_DEV Dev, + VL53L0X_SequenceStepId SequenceStepId, uint8_t *pSequenceStepEnabled) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t SequenceConfig = 0; + LOG_FUNCTION_START(""); + + Status = VL53L0X_RdByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, + &SequenceConfig); + + if (Status == VL53L0X_ERROR_NONE) { + Status = sequence_step_enabled(Dev, SequenceStepId, + SequenceConfig, pSequenceStepEnabled); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetSequenceStepEnables(VL53L0X_DEV Dev, + VL53L0X_SchedulerSequenceSteps_t *pSchedulerSequenceSteps) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t SequenceConfig = 0; + LOG_FUNCTION_START(""); + + Status = VL53L0X_RdByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, + &SequenceConfig); + + if (Status == VL53L0X_ERROR_NONE) { + Status = sequence_step_enabled(Dev, + VL53L0X_SEQUENCESTEP_TCC, SequenceConfig, + &pSchedulerSequenceSteps->TccOn); + } + if (Status == VL53L0X_ERROR_NONE) { + Status = sequence_step_enabled(Dev, + VL53L0X_SEQUENCESTEP_DSS, SequenceConfig, + &pSchedulerSequenceSteps->DssOn); + } + if (Status == VL53L0X_ERROR_NONE) { + Status = sequence_step_enabled(Dev, + VL53L0X_SEQUENCESTEP_MSRC, SequenceConfig, + &pSchedulerSequenceSteps->MsrcOn); + } + if (Status == VL53L0X_ERROR_NONE) { + Status = sequence_step_enabled(Dev, + VL53L0X_SEQUENCESTEP_PRE_RANGE, SequenceConfig, + &pSchedulerSequenceSteps->PreRangeOn); + } + if (Status == VL53L0X_ERROR_NONE) { + Status = sequence_step_enabled(Dev, + VL53L0X_SEQUENCESTEP_FINAL_RANGE, SequenceConfig, + &pSchedulerSequenceSteps->FinalRangeOn); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetNumberOfSequenceSteps(VL53L0X_DEV Dev, + uint8_t *pNumberOfSequenceSteps) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + *pNumberOfSequenceSteps = VL53L0X_SEQUENCESTEP_NUMBER_OF_CHECKS; + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetSequenceStepsInfo(VL53L0X_SequenceStepId SequenceStepId, + char *pSequenceStepsString) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_get_sequence_steps_info( + SequenceStepId, + pSequenceStepsString); + + LOG_FUNCTION_END(Status); + + return Status; +} + +VL53L0X_Error VL53L0X_SetSequenceStepTimeout(VL53L0X_DEV Dev, + VL53L0X_SequenceStepId SequenceStepId, FixPoint1616_t TimeOutMilliSecs) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + VL53L0X_Error Status1 = VL53L0X_ERROR_NONE; + uint32_t TimeoutMicroSeconds = ((TimeOutMilliSecs * 1000) + 0x8000) + >> 16; + uint32_t MeasurementTimingBudgetMicroSeconds; + FixPoint1616_t OldTimeOutMicroSeconds; + + LOG_FUNCTION_START(""); + + /* Read back the current value in case we need to revert back to this. + */ + Status = get_sequence_step_timeout(Dev, SequenceStepId, + &OldTimeOutMicroSeconds); + + if (Status == VL53L0X_ERROR_NONE) { + Status = set_sequence_step_timeout(Dev, SequenceStepId, + TimeoutMicroSeconds); + } + + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_GETPARAMETERFIELD(Dev, + MeasurementTimingBudgetMicroSeconds, + MeasurementTimingBudgetMicroSeconds); + + /* At this point we don't know if the requested value is valid, + therefore proceed to update the entire timing budget and + if this fails, revert back to the previous value. + */ + Status = VL53L0X_SetMeasurementTimingBudgetMicroSeconds(Dev, + MeasurementTimingBudgetMicroSeconds); + + if (Status != VL53L0X_ERROR_NONE) { + Status1 = set_sequence_step_timeout(Dev, SequenceStepId, + OldTimeOutMicroSeconds); + + if (Status1 == VL53L0X_ERROR_NONE) { + Status1 = + VL53L0X_SetMeasurementTimingBudgetMicroSeconds( + Dev, + MeasurementTimingBudgetMicroSeconds); + } + + Status = Status1; + } + } + + LOG_FUNCTION_END(Status); + + return Status; +} + +VL53L0X_Error VL53L0X_GetSequenceStepTimeout(VL53L0X_DEV Dev, + VL53L0X_SequenceStepId SequenceStepId, FixPoint1616_t *pTimeOutMilliSecs) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint32_t TimeoutMicroSeconds; + LOG_FUNCTION_START(""); + + Status = get_sequence_step_timeout(Dev, SequenceStepId, + &TimeoutMicroSeconds); + if (Status == VL53L0X_ERROR_NONE) { + TimeoutMicroSeconds <<= 8; + *pTimeOutMilliSecs = (TimeoutMicroSeconds + 500)/1000; + *pTimeOutMilliSecs <<= 8; + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetInterMeasurementPeriodMilliSeconds(VL53L0X_DEV Dev, + uint32_t InterMeasurementPeriodMilliSeconds) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint16_t osc_calibrate_val; + uint32_t IMPeriodMilliSeconds; + + LOG_FUNCTION_START(""); + + Status = VL53L0X_RdWord(Dev, VL53L0X_REG_OSC_CALIBRATE_VAL, + &osc_calibrate_val); + + if (Status == VL53L0X_ERROR_NONE) { + if (osc_calibrate_val != 0) { + IMPeriodMilliSeconds = + InterMeasurementPeriodMilliSeconds + * osc_calibrate_val; + } else { + IMPeriodMilliSeconds = + InterMeasurementPeriodMilliSeconds; + } + Status = VL53L0X_WrDWord(Dev, + VL53L0X_REG_SYSTEM_INTERMEASUREMENT_PERIOD, + IMPeriodMilliSeconds); + } + + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_SETPARAMETERFIELD(Dev, + InterMeasurementPeriodMilliSeconds, + InterMeasurementPeriodMilliSeconds); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetInterMeasurementPeriodMilliSeconds(VL53L0X_DEV Dev, + uint32_t *pInterMeasurementPeriodMilliSeconds) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint16_t osc_calibrate_val; + uint32_t IMPeriodMilliSeconds; + + LOG_FUNCTION_START(""); + + Status = VL53L0X_RdWord(Dev, VL53L0X_REG_OSC_CALIBRATE_VAL, + &osc_calibrate_val); + + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_RdDWord(Dev, + VL53L0X_REG_SYSTEM_INTERMEASUREMENT_PERIOD, + &IMPeriodMilliSeconds); + } + + if (Status == VL53L0X_ERROR_NONE) { + if (osc_calibrate_val != 0) { + *pInterMeasurementPeriodMilliSeconds = + IMPeriodMilliSeconds / osc_calibrate_val; + } + VL53L0X_SETPARAMETERFIELD(Dev, + InterMeasurementPeriodMilliSeconds, + *pInterMeasurementPeriodMilliSeconds); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetXTalkCompensationEnable(VL53L0X_DEV Dev, + uint8_t XTalkCompensationEnable) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + FixPoint1616_t TempFix1616; + uint16_t LinearityCorrectiveGain; + + LOG_FUNCTION_START(""); + + LinearityCorrectiveGain = PALDevDataGet(Dev, LinearityCorrectiveGain); + + if ((XTalkCompensationEnable == 0) + || (LinearityCorrectiveGain != 1000)) { + TempFix1616 = 0; + } else { + VL53L0X_GETPARAMETERFIELD(Dev, XTalkCompensationRateMegaCps, + TempFix1616); + } + + /* the following register has a format 3.13 */ + Status = VL53L0X_WrWord(Dev, + VL53L0X_REG_CROSSTALK_COMPENSATION_PEAK_RATE_MCPS, + VL53L0X_FIXPOINT1616TOFIXPOINT313(TempFix1616)); + + if (Status == VL53L0X_ERROR_NONE) { + if (XTalkCompensationEnable == 0) { + VL53L0X_SETPARAMETERFIELD(Dev, XTalkCompensationEnable, + 0); + } else { + VL53L0X_SETPARAMETERFIELD(Dev, XTalkCompensationEnable, + 1); + } + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetXTalkCompensationEnable(VL53L0X_DEV Dev, + uint8_t *pXTalkCompensationEnable) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t Temp8; + LOG_FUNCTION_START(""); + + VL53L0X_GETPARAMETERFIELD(Dev, XTalkCompensationEnable, Temp8); + *pXTalkCompensationEnable = Temp8; + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetXTalkCompensationRateMegaCps(VL53L0X_DEV Dev, + FixPoint1616_t XTalkCompensationRateMegaCps) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t Temp8; + uint16_t LinearityCorrectiveGain; + uint16_t data; + LOG_FUNCTION_START(""); + + VL53L0X_GETPARAMETERFIELD(Dev, XTalkCompensationEnable, Temp8); + LinearityCorrectiveGain = PALDevDataGet(Dev, LinearityCorrectiveGain); + + if (Temp8 == 0) { /* disabled write only internal value */ + VL53L0X_SETPARAMETERFIELD(Dev, XTalkCompensationRateMegaCps, + XTalkCompensationRateMegaCps); + } else { + /* the following register has a format 3.13 */ + if (LinearityCorrectiveGain == 1000) { + data = VL53L0X_FIXPOINT1616TOFIXPOINT313( + XTalkCompensationRateMegaCps); + } else { + data = 0; + } + + Status = VL53L0X_WrWord(Dev, + VL53L0X_REG_CROSSTALK_COMPENSATION_PEAK_RATE_MCPS, data); + + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_SETPARAMETERFIELD(Dev, + XTalkCompensationRateMegaCps, + XTalkCompensationRateMegaCps); + } + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetXTalkCompensationRateMegaCps(VL53L0X_DEV Dev, + FixPoint1616_t *pXTalkCompensationRateMegaCps) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint16_t Value; + FixPoint1616_t TempFix1616; + + LOG_FUNCTION_START(""); + + Status = VL53L0X_RdWord(Dev, + VL53L0X_REG_CROSSTALK_COMPENSATION_PEAK_RATE_MCPS, (uint16_t *)&Value); + if (Status == VL53L0X_ERROR_NONE) { + if (Value == 0) { + /* the Xtalk is disabled return value from memory */ + VL53L0X_GETPARAMETERFIELD(Dev, + XTalkCompensationRateMegaCps, TempFix1616); + *pXTalkCompensationRateMegaCps = TempFix1616; + VL53L0X_SETPARAMETERFIELD(Dev, XTalkCompensationEnable, + 0); + } else { + TempFix1616 = VL53L0X_FIXPOINT313TOFIXPOINT1616(Value); + *pXTalkCompensationRateMegaCps = TempFix1616; + VL53L0X_SETPARAMETERFIELD(Dev, + XTalkCompensationRateMegaCps, TempFix1616); + VL53L0X_SETPARAMETERFIELD(Dev, XTalkCompensationEnable, + 1); + } + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetRefCalibration(VL53L0X_DEV Dev, uint8_t VhvSettings, + uint8_t PhaseCal) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_set_ref_calibration(Dev, VhvSettings, PhaseCal); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetRefCalibration(VL53L0X_DEV Dev, uint8_t *pVhvSettings, + uint8_t *pPhaseCal) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_get_ref_calibration(Dev, pVhvSettings, pPhaseCal); + + LOG_FUNCTION_END(Status); + return Status; +} + +/* + * CHECK LIMIT FUNCTIONS + */ + +VL53L0X_Error VL53L0X_GetNumberOfLimitCheck(uint16_t *pNumberOfLimitCheck) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + *pNumberOfLimitCheck = VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS; + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetLimitCheckInfo(VL53L0X_DEV Dev, uint16_t LimitCheckId, + char *pLimitCheckString) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + Status = VL53L0X_get_limit_check_info(Dev, LimitCheckId, + pLimitCheckString); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetLimitCheckStatus(VL53L0X_DEV Dev, uint16_t LimitCheckId, + uint8_t *pLimitCheckStatus) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t Temp8; + + LOG_FUNCTION_START(""); + + if (LimitCheckId >= VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS) { + Status = VL53L0X_ERROR_INVALID_PARAMS; + } else { + + VL53L0X_GETARRAYPARAMETERFIELD(Dev, LimitChecksStatus, + LimitCheckId, Temp8); + + *pLimitCheckStatus = Temp8; + + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetLimitCheckEnable(VL53L0X_DEV Dev, uint16_t LimitCheckId, + uint8_t LimitCheckEnable) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + FixPoint1616_t TempFix1616 = 0; + uint8_t LimitCheckEnableInt = 0; + uint8_t LimitCheckDisable = 0; + uint8_t Temp8; + + LOG_FUNCTION_START(""); + + if (LimitCheckId >= VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS) { + Status = VL53L0X_ERROR_INVALID_PARAMS; + } else { + if (LimitCheckEnable == 0) { + TempFix1616 = 0; + LimitCheckEnableInt = 0; + LimitCheckDisable = 1; + + } else { + VL53L0X_GETARRAYPARAMETERFIELD(Dev, LimitChecksValue, + LimitCheckId, TempFix1616); + LimitCheckDisable = 0; + /* this to be sure to have either 0 or 1 */ + LimitCheckEnableInt = 1; + } + + switch (LimitCheckId) { + + case VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE: + /* internal computation: */ + VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksEnable, + VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, + LimitCheckEnableInt); + + break; + + case VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE: + + Status = VL53L0X_WrWord(Dev, + VL53L0X_REG_FINAL_RANGE_CONFIG_MIN_COUNT_RATE_RTN_LIMIT, + VL53L0X_FIXPOINT1616TOFIXPOINT97(TempFix1616)); + + break; + + case VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP: + + /* internal computation: */ + VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksEnable, + VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, + LimitCheckEnableInt); + + break; + + case VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD: + + /* internal computation: */ + VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksEnable, + VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, + LimitCheckEnableInt); + + break; + + case VL53L0X_CHECKENABLE_SIGNAL_RATE_MSRC: + + Temp8 = (uint8_t)(LimitCheckDisable << 1); + Status = VL53L0X_UpdateByte(Dev, + VL53L0X_REG_MSRC_CONFIG_CONTROL, + 0xFE, Temp8); + + break; + + case VL53L0X_CHECKENABLE_SIGNAL_RATE_PRE_RANGE: + + Temp8 = (uint8_t)(LimitCheckDisable << 4); + Status = VL53L0X_UpdateByte(Dev, + VL53L0X_REG_MSRC_CONFIG_CONTROL, + 0xEF, Temp8); + + break; + + + default: + Status = VL53L0X_ERROR_INVALID_PARAMS; + + } + + } + + if (Status == VL53L0X_ERROR_NONE) { + if (LimitCheckEnable == 0) { + VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksEnable, + LimitCheckId, 0); + } else { + VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksEnable, + LimitCheckId, 1); + } + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetLimitCheckEnable(VL53L0X_DEV Dev, uint16_t LimitCheckId, + uint8_t *pLimitCheckEnable) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t Temp8; + + LOG_FUNCTION_START(""); + + if (LimitCheckId >= VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS) { + Status = VL53L0X_ERROR_INVALID_PARAMS; + *pLimitCheckEnable = 0; + } else { + VL53L0X_GETARRAYPARAMETERFIELD(Dev, LimitChecksEnable, + LimitCheckId, Temp8); + *pLimitCheckEnable = Temp8; + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetLimitCheckValue(VL53L0X_DEV Dev, uint16_t LimitCheckId, + FixPoint1616_t LimitCheckValue) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t Temp8; + + LOG_FUNCTION_START(""); + + VL53L0X_GETARRAYPARAMETERFIELD(Dev, LimitChecksEnable, LimitCheckId, + Temp8); + + if (Temp8 == 0) { /* disabled write only internal value */ + VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksValue, + LimitCheckId, LimitCheckValue); + } else { + + switch (LimitCheckId) { + + case VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE: + /* internal computation: */ + VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksValue, + VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, + LimitCheckValue); + break; + + case VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE: + + Status = VL53L0X_WrWord(Dev, + VL53L0X_REG_FINAL_RANGE_CONFIG_MIN_COUNT_RATE_RTN_LIMIT, + VL53L0X_FIXPOINT1616TOFIXPOINT97( + LimitCheckValue)); + + break; + + case VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP: + + /* internal computation: */ + VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksValue, + VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, + LimitCheckValue); + + break; + + case VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD: + + /* internal computation: */ + VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksValue, + VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, + LimitCheckValue); + + break; + + case VL53L0X_CHECKENABLE_SIGNAL_RATE_MSRC: + case VL53L0X_CHECKENABLE_SIGNAL_RATE_PRE_RANGE: + + Status = VL53L0X_WrWord(Dev, + VL53L0X_REG_PRE_RANGE_MIN_COUNT_RATE_RTN_LIMIT, + VL53L0X_FIXPOINT1616TOFIXPOINT97( + LimitCheckValue)); + + break; + + default: + Status = VL53L0X_ERROR_INVALID_PARAMS; + + } + + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksValue, + LimitCheckId, LimitCheckValue); + } + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetLimitCheckValue(VL53L0X_DEV Dev, uint16_t LimitCheckId, + FixPoint1616_t *pLimitCheckValue) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t EnableZeroValue = 0; + uint16_t Temp16; + FixPoint1616_t TempFix1616; + + LOG_FUNCTION_START(""); + + switch (LimitCheckId) { + + case VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE: + /* internal computation: */ + VL53L0X_GETARRAYPARAMETERFIELD(Dev, LimitChecksValue, + VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, TempFix1616); + EnableZeroValue = 0; + break; + + case VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE: + Status = VL53L0X_RdWord(Dev, + VL53L0X_REG_FINAL_RANGE_CONFIG_MIN_COUNT_RATE_RTN_LIMIT, + &Temp16); + if (Status == VL53L0X_ERROR_NONE) + TempFix1616 = VL53L0X_FIXPOINT97TOFIXPOINT1616(Temp16); + + + EnableZeroValue = 1; + break; + + case VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP: + /* internal computation: */ + VL53L0X_GETARRAYPARAMETERFIELD(Dev, LimitChecksValue, + VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, TempFix1616); + EnableZeroValue = 0; + break; + + case VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD: + /* internal computation: */ + VL53L0X_GETARRAYPARAMETERFIELD(Dev, LimitChecksValue, + VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, TempFix1616); + EnableZeroValue = 0; + break; + + case VL53L0X_CHECKENABLE_SIGNAL_RATE_MSRC: + case VL53L0X_CHECKENABLE_SIGNAL_RATE_PRE_RANGE: + Status = VL53L0X_RdWord(Dev, + VL53L0X_REG_PRE_RANGE_MIN_COUNT_RATE_RTN_LIMIT, + &Temp16); + if (Status == VL53L0X_ERROR_NONE) + TempFix1616 = VL53L0X_FIXPOINT97TOFIXPOINT1616(Temp16); + + + EnableZeroValue = 0; + break; + + default: + Status = VL53L0X_ERROR_INVALID_PARAMS; + + } + + if (Status == VL53L0X_ERROR_NONE) { + + if (EnableZeroValue == 1) { + + if (TempFix1616 == 0) { + /* disabled: return value from memory */ + VL53L0X_GETARRAYPARAMETERFIELD(Dev, + LimitChecksValue, LimitCheckId, + TempFix1616); + *pLimitCheckValue = TempFix1616; + VL53L0X_SETARRAYPARAMETERFIELD(Dev, + LimitChecksEnable, LimitCheckId, 0); + } else { + *pLimitCheckValue = TempFix1616; + VL53L0X_SETARRAYPARAMETERFIELD(Dev, + LimitChecksValue, LimitCheckId, + TempFix1616); + VL53L0X_SETARRAYPARAMETERFIELD(Dev, + LimitChecksEnable, LimitCheckId, 1); + } + } else { + *pLimitCheckValue = TempFix1616; + } + } + + LOG_FUNCTION_END(Status); + return Status; + +} + +VL53L0X_Error VL53L0X_GetLimitCheckCurrent(VL53L0X_DEV Dev, uint16_t LimitCheckId, + FixPoint1616_t *pLimitCheckCurrent) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + VL53L0X_RangingMeasurementData_t LastRangeDataBuffer; + + LOG_FUNCTION_START(""); + + if (LimitCheckId >= VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS) { + Status = VL53L0X_ERROR_INVALID_PARAMS; + } else { + switch (LimitCheckId) { + case VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE: + /* Need to run a ranging to have the latest values */ + *pLimitCheckCurrent = PALDevDataGet(Dev, SigmaEstimate); + + break; + + case VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE: + /* Need to run a ranging to have the latest values */ + LastRangeDataBuffer = PALDevDataGet(Dev, + LastRangeMeasure); + *pLimitCheckCurrent = + LastRangeDataBuffer.SignalRateRtnMegaCps; + + break; + + case VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP: + /* Need to run a ranging to have the latest values */ + *pLimitCheckCurrent = PALDevDataGet(Dev, + LastSignalRefMcps); + + break; + + case VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD: + /* Need to run a ranging to have the latest values */ + LastRangeDataBuffer = PALDevDataGet(Dev, + LastRangeMeasure); + *pLimitCheckCurrent = + LastRangeDataBuffer.SignalRateRtnMegaCps; + + break; + + case VL53L0X_CHECKENABLE_SIGNAL_RATE_MSRC: + /* Need to run a ranging to have the latest values */ + LastRangeDataBuffer = PALDevDataGet(Dev, + LastRangeMeasure); + *pLimitCheckCurrent = + LastRangeDataBuffer.SignalRateRtnMegaCps; + + break; + + case VL53L0X_CHECKENABLE_SIGNAL_RATE_PRE_RANGE: + /* Need to run a ranging to have the latest values */ + LastRangeDataBuffer = PALDevDataGet(Dev, + LastRangeMeasure); + *pLimitCheckCurrent = + LastRangeDataBuffer.SignalRateRtnMegaCps; + + break; + + default: + Status = VL53L0X_ERROR_INVALID_PARAMS; + } + } + + LOG_FUNCTION_END(Status); + return Status; + +} + +/* + * WRAPAROUND Check + */ +VL53L0X_Error VL53L0X_SetWrapAroundCheckEnable(VL53L0X_DEV Dev, + uint8_t WrapAroundCheckEnable) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t Byte; + uint8_t WrapAroundCheckEnableInt; + + LOG_FUNCTION_START(""); + + Status = VL53L0X_RdByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, &Byte); + if (WrapAroundCheckEnable == 0) { + /* Disable wraparound */ + Byte = Byte & 0x7F; + WrapAroundCheckEnableInt = 0; + } else { + /*Enable wraparound */ + Byte = Byte | 0x80; + WrapAroundCheckEnableInt = 1; + } + + Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, Byte); + + if (Status == VL53L0X_ERROR_NONE) { + PALDevDataSet(Dev, SequenceConfig, Byte); + VL53L0X_SETPARAMETERFIELD(Dev, WrapAroundCheckEnable, + WrapAroundCheckEnableInt); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetWrapAroundCheckEnable(VL53L0X_DEV Dev, + uint8_t *pWrapAroundCheckEnable) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t data; + + LOG_FUNCTION_START(""); + + Status = VL53L0X_RdByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, &data); + if (Status == VL53L0X_ERROR_NONE) { + PALDevDataSet(Dev, SequenceConfig, data); + if (data & (0x01 << 7)) + *pWrapAroundCheckEnable = 0x01; + else + *pWrapAroundCheckEnable = 0x00; + } + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_SETPARAMETERFIELD(Dev, WrapAroundCheckEnable, + *pWrapAroundCheckEnable); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetDmaxCalParameters(VL53L0X_DEV Dev, + uint16_t RangeMilliMeter, FixPoint1616_t SignalRateRtnMegaCps) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + FixPoint1616_t SignalRateRtnMegaCpsTemp = 0; + + LOG_FUNCTION_START(""); + + /* Check if one of input parameter is zero, in that case the + * value are get from NVM */ + if ((RangeMilliMeter == 0) || (SignalRateRtnMegaCps == 0)) { + /* NVM parameters */ + /* Run VL53L0X_get_info_from_device wit option 4 to get + * signal rate at 400 mm if the value have been already + * get this function will return with no access to device */ + VL53L0X_get_info_from_device(Dev, 4); + + SignalRateRtnMegaCpsTemp = VL53L0X_GETDEVICESPECIFICPARAMETER( + Dev, SignalRateMeasFixed400mm); + + PALDevDataSet(Dev, DmaxCalRangeMilliMeter, 400); + PALDevDataSet(Dev, DmaxCalSignalRateRtnMegaCps, + SignalRateRtnMegaCpsTemp); + } else { + /* User parameters */ + PALDevDataSet(Dev, DmaxCalRangeMilliMeter, RangeMilliMeter); + PALDevDataSet(Dev, DmaxCalSignalRateRtnMegaCps, + SignalRateRtnMegaCps); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetDmaxCalParameters(VL53L0X_DEV Dev, + uint16_t *pRangeMilliMeter, FixPoint1616_t *pSignalRateRtnMegaCps) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + *pRangeMilliMeter = PALDevDataGet(Dev, DmaxCalRangeMilliMeter); + *pSignalRateRtnMegaCps = PALDevDataGet(Dev, + DmaxCalSignalRateRtnMegaCps); + + LOG_FUNCTION_END(Status); + return Status; +} + +/* End Group PAL Parameters Functions */ + +/* Group PAL Measurement Functions */ +VL53L0X_Error VL53L0X_PerformSingleMeasurement(VL53L0X_DEV Dev) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + VL53L0X_DeviceModes DeviceMode; + + LOG_FUNCTION_START(""); + + /* Get Current DeviceMode */ + Status = VL53L0X_GetDeviceMode(Dev, &DeviceMode); + + /* Start immediately to run a single ranging measurement in case of + * single ranging or single histogram */ + if (Status == VL53L0X_ERROR_NONE + && DeviceMode == VL53L0X_DEVICEMODE_SINGLE_RANGING) + Status = VL53L0X_StartMeasurement(Dev); + + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_measurement_poll_for_completion(Dev); + + + /* Change PAL State in case of single ranging or single histogram */ + if (Status == VL53L0X_ERROR_NONE + && DeviceMode == VL53L0X_DEVICEMODE_SINGLE_RANGING) + PALDevDataSet(Dev, PalState, VL53L0X_STATE_IDLE); + + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_PerformSingleHistogramMeasurement(VL53L0X_DEV Dev, + VL53L0X_HistogramMeasurementData_t *pHistogramMeasurementData) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; + LOG_FUNCTION_START(""); + + /* not implemented on VL53L0X */ + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_PerformRefCalibration(VL53L0X_DEV Dev, uint8_t *pVhvSettings, + uint8_t *pPhaseCal) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_perform_ref_calibration(Dev, pVhvSettings, + pPhaseCal, 1); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_PerformXTalkMeasurement(VL53L0X_DEV Dev, + uint32_t TimeoutMs, FixPoint1616_t *pXtalkPerSpad, + uint8_t *pAmbientTooHigh) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; + LOG_FUNCTION_START(""); + + /* not implemented on VL53L0X */ + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_PerformXTalkCalibration(VL53L0X_DEV Dev, + FixPoint1616_t XTalkCalDistance, + FixPoint1616_t *pXTalkCompensationRateMegaCps) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_perform_xtalk_calibration(Dev, XTalkCalDistance, + pXTalkCompensationRateMegaCps); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_PerformOffsetCalibration(VL53L0X_DEV Dev, + FixPoint1616_t CalDistanceMilliMeter, int32_t *pOffsetMicroMeter) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_perform_offset_calibration(Dev, CalDistanceMilliMeter, + pOffsetMicroMeter); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_CheckAndLoadInterruptSettings(VL53L0X_DEV Dev, + uint8_t StartNotStopFlag) +{ + uint8_t InterruptConfig; + FixPoint1616_t ThresholdLow; + FixPoint1616_t ThresholdHigh; + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + InterruptConfig = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, + Pin0GpioFunctionality); + + if ((InterruptConfig == + VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_LOW) || + (InterruptConfig == + VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_HIGH) || + (InterruptConfig == + VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_OUT)) { + + Status = VL53L0X_GetInterruptThresholds(Dev, + VL53L0X_DEVICEMODE_CONTINUOUS_RANGING, + &ThresholdLow, &ThresholdHigh); + + if (((ThresholdLow > 255*65536) || + (ThresholdHigh > 255*65536)) && + (Status == VL53L0X_ERROR_NONE)) { + + if (StartNotStopFlag != 0) { + Status = VL53L0X_load_tuning_settings(Dev, + InterruptThresholdSettings); + } else { + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x04); + Status |= VL53L0X_WrByte(Dev, 0x70, 0x00); + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); + Status |= VL53L0X_WrByte(Dev, 0x80, 0x00); + } + + } + + + } + + return Status; + +} + + +VL53L0X_Error VL53L0X_StartMeasurement(VL53L0X_DEV Dev) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + VL53L0X_DeviceModes DeviceMode; + uint8_t Byte; + uint8_t StartStopByte = VL53L0X_REG_SYSRANGE_MODE_START_STOP; + uint32_t LoopNb; + LOG_FUNCTION_START(""); + + /* Get Current DeviceMode */ + VL53L0X_GetDeviceMode(Dev, &DeviceMode); + + Status = VL53L0X_WrByte(Dev, 0x80, 0x01); + Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); + Status = VL53L0X_WrByte(Dev, 0x00, 0x00); + Status = VL53L0X_WrByte(Dev, 0x91, PALDevDataGet(Dev, StopVariable)); + Status = VL53L0X_WrByte(Dev, 0x00, 0x01); + Status = VL53L0X_WrByte(Dev, 0xFF, 0x00); + Status = VL53L0X_WrByte(Dev, 0x80, 0x00); + + switch (DeviceMode) { + case VL53L0X_DEVICEMODE_SINGLE_RANGING: + Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSRANGE_START, 0x01); + + Byte = StartStopByte; + if (Status == VL53L0X_ERROR_NONE) { + /* Wait until start bit has been cleared */ + LoopNb = 0; + do { + if (LoopNb > 0) + Status = VL53L0X_RdByte(Dev, + VL53L0X_REG_SYSRANGE_START, &Byte); + LoopNb = LoopNb + 1; + } while (((Byte & StartStopByte) == StartStopByte) + && (Status == VL53L0X_ERROR_NONE) + && (LoopNb < VL53L0X_DEFAULT_MAX_LOOP)); + + if (LoopNb >= VL53L0X_DEFAULT_MAX_LOOP) + Status = VL53L0X_ERROR_TIME_OUT; + + } + + break; + case VL53L0X_DEVICEMODE_CONTINUOUS_RANGING: + /* Back-to-back mode */ + + /* Check if need to apply interrupt settings */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_CheckAndLoadInterruptSettings(Dev, 1); + + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_SYSRANGE_START, + VL53L0X_REG_SYSRANGE_MODE_BACKTOBACK); + if (Status == VL53L0X_ERROR_NONE) { + /* Set PAL State to Running */ + PALDevDataSet(Dev, PalState, VL53L0X_STATE_RUNNING); + } + break; + case VL53L0X_DEVICEMODE_CONTINUOUS_TIMED_RANGING: + /* Continuous mode */ + /* Check if need to apply interrupt settings */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_CheckAndLoadInterruptSettings(Dev, 1); + + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_SYSRANGE_START, + VL53L0X_REG_SYSRANGE_MODE_TIMED); + + if (Status == VL53L0X_ERROR_NONE) { + /* Set PAL State to Running */ + PALDevDataSet(Dev, PalState, VL53L0X_STATE_RUNNING); + } + break; + default: + /* Selected mode not supported */ + Status = VL53L0X_ERROR_MODE_NOT_SUPPORTED; + } + + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_StopMeasurement(VL53L0X_DEV Dev) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSRANGE_START, + VL53L0X_REG_SYSRANGE_MODE_SINGLESHOT); + + Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); + Status = VL53L0X_WrByte(Dev, 0x00, 0x00); + Status = VL53L0X_WrByte(Dev, 0x91, 0x00); + Status = VL53L0X_WrByte(Dev, 0x00, 0x01); + Status = VL53L0X_WrByte(Dev, 0xFF, 0x00); + + if (Status == VL53L0X_ERROR_NONE) { + /* Set PAL State to Idle */ + PALDevDataSet(Dev, PalState, VL53L0X_STATE_IDLE); + } + + /* Check if need to apply interrupt settings */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_CheckAndLoadInterruptSettings(Dev, 0); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetMeasurementDataReady(VL53L0X_DEV Dev, + uint8_t *pMeasurementDataReady) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t SysRangeStatusRegister; + uint8_t InterruptConfig; + uint32_t InterruptMask; + LOG_FUNCTION_START(""); + + InterruptConfig = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, + Pin0GpioFunctionality); + + if (InterruptConfig == + VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_NEW_SAMPLE_READY) { + Status = VL53L0X_GetInterruptMaskStatus(Dev, &InterruptMask); + if (InterruptMask == + VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_NEW_SAMPLE_READY) + *pMeasurementDataReady = 1; + else + *pMeasurementDataReady = 0; + } else { + Status = VL53L0X_RdByte(Dev, VL53L0X_REG_RESULT_RANGE_STATUS, + &SysRangeStatusRegister); + if (Status == VL53L0X_ERROR_NONE) { + if (SysRangeStatusRegister & 0x01) + *pMeasurementDataReady = 1; + else + *pMeasurementDataReady = 0; + } + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_WaitDeviceReadyForNewMeasurement(VL53L0X_DEV Dev, + uint32_t MaxLoop) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; + LOG_FUNCTION_START(""); + + /* not implemented for VL53L0X */ + + LOG_FUNCTION_END(Status); + return Status; +} + + +VL53L0X_Error VL53L0X_GetRangingMeasurementData(VL53L0X_DEV Dev, + VL53L0X_RangingMeasurementData_t *pRangingMeasurementData) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t DeviceRangeStatus; + uint8_t RangeFractionalEnable; + uint8_t PalRangeStatus; + uint8_t XTalkCompensationEnable; + uint16_t AmbientRate; + FixPoint1616_t SignalRate; + uint16_t XTalkCompensationRateMegaCps; + uint16_t EffectiveSpadRtnCount; + uint16_t tmpuint16; + uint16_t XtalkRangeMilliMeter; + uint16_t LinearityCorrectiveGain; + uint8_t localBuffer[12]; + VL53L0X_RangingMeasurementData_t LastRangeDataBuffer; + + LOG_FUNCTION_START(""); + + /* + * use multi read even if some registers are not useful, result will + * be more efficient + * start reading at 0x14 dec20 + * end reading at 0x21 dec33 total 14 bytes to read + */ + Status = VL53L0X_ReadMulti(Dev, 0x14, localBuffer, 12); + + if (Status == VL53L0X_ERROR_NONE) { + + pRangingMeasurementData->ZoneId = 0; /* Only one zone */ + pRangingMeasurementData->TimeStamp = 0; /* Not Implemented */ + + tmpuint16 = VL53L0X_MAKEUINT16(localBuffer[11], localBuffer[10]); + /* cut1.1 if SYSTEM__RANGE_CONFIG if 1 range is 2bits fractional + *(format 11.2) else no fractional + */ + + pRangingMeasurementData->MeasurementTimeUsec = 0; + + SignalRate = VL53L0X_FIXPOINT97TOFIXPOINT1616( + VL53L0X_MAKEUINT16(localBuffer[7], localBuffer[6])); + /* peak_signal_count_rate_rtn_mcps */ + pRangingMeasurementData->SignalRateRtnMegaCps = SignalRate; + + AmbientRate = VL53L0X_MAKEUINT16(localBuffer[9], localBuffer[8]); + pRangingMeasurementData->AmbientRateRtnMegaCps = + VL53L0X_FIXPOINT97TOFIXPOINT1616(AmbientRate); + + EffectiveSpadRtnCount = VL53L0X_MAKEUINT16(localBuffer[3], + localBuffer[2]); + /* EffectiveSpadRtnCount is 8.8 format */ + pRangingMeasurementData->EffectiveSpadRtnCount = + EffectiveSpadRtnCount; + + DeviceRangeStatus = localBuffer[0]; + + /* Get Linearity Corrective Gain */ + LinearityCorrectiveGain = PALDevDataGet(Dev, + LinearityCorrectiveGain); + + /* Get ranging configuration */ + RangeFractionalEnable = PALDevDataGet(Dev, + RangeFractionalEnable); + + if (LinearityCorrectiveGain != 1000) { + + tmpuint16 = (uint16_t)((LinearityCorrectiveGain + * tmpuint16 + 500) / 1000); + + /* Implement Xtalk */ + VL53L0X_GETPARAMETERFIELD(Dev, + XTalkCompensationRateMegaCps, + XTalkCompensationRateMegaCps); + VL53L0X_GETPARAMETERFIELD(Dev, XTalkCompensationEnable, + XTalkCompensationEnable); + + if (XTalkCompensationEnable) { + + if ((SignalRate + - ((XTalkCompensationRateMegaCps + * EffectiveSpadRtnCount) >> 8)) + <= 0) { + if (RangeFractionalEnable) + XtalkRangeMilliMeter = 8888; + else + XtalkRangeMilliMeter = 8888 + << 2; + } else { + XtalkRangeMilliMeter = + (tmpuint16 * SignalRate) + / (SignalRate + - ((XTalkCompensationRateMegaCps + * EffectiveSpadRtnCount) + >> 8)); + } + + tmpuint16 = XtalkRangeMilliMeter; + } + + } + + if (RangeFractionalEnable) { + pRangingMeasurementData->RangeMilliMeter = + (uint16_t)((tmpuint16) >> 2); + pRangingMeasurementData->RangeFractionalPart = + (uint8_t)((tmpuint16 & 0x03) << 6); + } else { + pRangingMeasurementData->RangeMilliMeter = tmpuint16; + pRangingMeasurementData->RangeFractionalPart = 0; + } + + /* + * For a standard definition of RangeStatus, this should + * return 0 in case of good result after a ranging + * The range status depends on the device so call a device + * specific function to obtain the right Status. + */ + Status |= VL53L0X_get_pal_range_status(Dev, DeviceRangeStatus, + SignalRate, EffectiveSpadRtnCount, + pRangingMeasurementData, &PalRangeStatus); + + if (Status == VL53L0X_ERROR_NONE) + pRangingMeasurementData->RangeStatus = PalRangeStatus; + + } + + if (Status == VL53L0X_ERROR_NONE) { + /* Copy last read data into Dev buffer */ + LastRangeDataBuffer = PALDevDataGet(Dev, LastRangeMeasure); + + LastRangeDataBuffer.RangeMilliMeter = + pRangingMeasurementData->RangeMilliMeter; + LastRangeDataBuffer.RangeFractionalPart = + pRangingMeasurementData->RangeFractionalPart; + LastRangeDataBuffer.RangeDMaxMilliMeter = + pRangingMeasurementData->RangeDMaxMilliMeter; + LastRangeDataBuffer.MeasurementTimeUsec = + pRangingMeasurementData->MeasurementTimeUsec; + LastRangeDataBuffer.SignalRateRtnMegaCps = + pRangingMeasurementData->SignalRateRtnMegaCps; + LastRangeDataBuffer.AmbientRateRtnMegaCps = + pRangingMeasurementData->AmbientRateRtnMegaCps; + LastRangeDataBuffer.EffectiveSpadRtnCount = + pRangingMeasurementData->EffectiveSpadRtnCount; + LastRangeDataBuffer.RangeStatus = + pRangingMeasurementData->RangeStatus; + + PALDevDataSet(Dev, LastRangeMeasure, LastRangeDataBuffer); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetMeasurementRefSignal(VL53L0X_DEV Dev, + FixPoint1616_t *pMeasurementRefSignal) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t SignalRefClipLimitCheckEnable = 0; + LOG_FUNCTION_START(""); + + Status = VL53L0X_GetLimitCheckEnable(Dev, + VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, + &SignalRefClipLimitCheckEnable); + if (SignalRefClipLimitCheckEnable != 0) { + *pMeasurementRefSignal = PALDevDataGet(Dev, LastSignalRefMcps); + } else { + Status = VL53L0X_ERROR_INVALID_COMMAND; + } + LOG_FUNCTION_END(Status); + + return Status; +} + +VL53L0X_Error VL53L0X_GetHistogramMeasurementData(VL53L0X_DEV Dev, + VL53L0X_HistogramMeasurementData_t *pHistogramMeasurementData) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; + LOG_FUNCTION_START(""); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_PerformSingleRangingMeasurement(VL53L0X_DEV Dev, + VL53L0X_RangingMeasurementData_t *pRangingMeasurementData) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + /* This function will do a complete single ranging + * Here we fix the mode! */ + Status = VL53L0X_SetDeviceMode(Dev, VL53L0X_DEVICEMODE_SINGLE_RANGING); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_PerformSingleMeasurement(Dev); + + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_GetRangingMeasurementData(Dev, + pRangingMeasurementData); + + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_ClearInterruptMask(Dev, 0); + + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetNumberOfROIZones(VL53L0X_DEV Dev, + uint8_t NumberOfROIZones) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + if (NumberOfROIZones != 1) + Status = VL53L0X_ERROR_INVALID_PARAMS; + + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetNumberOfROIZones(VL53L0X_DEV Dev, + uint8_t *pNumberOfROIZones) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + *pNumberOfROIZones = 1; + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetMaxNumberOfROIZones(VL53L0X_DEV Dev, + uint8_t *pMaxNumberOfROIZones) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + *pMaxNumberOfROIZones = 1; + + LOG_FUNCTION_END(Status); + return Status; +} + +/* End Group PAL Measurement Functions */ + +VL53L0X_Error VL53L0X_SetGpioConfig(VL53L0X_DEV Dev, uint8_t Pin, + VL53L0X_DeviceModes DeviceMode, VL53L0X_GpioFunctionality Functionality, + VL53L0X_InterruptPolarity Polarity) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t data; + + LOG_FUNCTION_START(""); + + if (Pin != 0) { + Status = VL53L0X_ERROR_GPIO_NOT_EXISTING; + } else if (DeviceMode == VL53L0X_DEVICEMODE_GPIO_DRIVE) { + if (Polarity == VL53L0X_INTERRUPTPOLARITY_LOW) + data = 0x10; + else + data = 1; + + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_GPIO_HV_MUX_ACTIVE_HIGH, data); + + } else if (DeviceMode == VL53L0X_DEVICEMODE_GPIO_OSC) { + + Status |= VL53L0X_WrByte(Dev, 0xff, 0x01); + Status |= VL53L0X_WrByte(Dev, 0x00, 0x00); + + Status |= VL53L0X_WrByte(Dev, 0xff, 0x00); + Status |= VL53L0X_WrByte(Dev, 0x80, 0x01); + Status |= VL53L0X_WrByte(Dev, 0x85, 0x02); + + Status |= VL53L0X_WrByte(Dev, 0xff, 0x04); + Status |= VL53L0X_WrByte(Dev, 0xcd, 0x00); + Status |= VL53L0X_WrByte(Dev, 0xcc, 0x11); + + Status |= VL53L0X_WrByte(Dev, 0xff, 0x07); + Status |= VL53L0X_WrByte(Dev, 0xbe, 0x00); + + Status |= VL53L0X_WrByte(Dev, 0xff, 0x06); + Status |= VL53L0X_WrByte(Dev, 0xcc, 0x09); + + Status |= VL53L0X_WrByte(Dev, 0xff, 0x00); + Status |= VL53L0X_WrByte(Dev, 0xff, 0x01); + Status |= VL53L0X_WrByte(Dev, 0x00, 0x00); + + } else { + + if (Status == VL53L0X_ERROR_NONE) { + switch (Functionality) { + case VL53L0X_GPIOFUNCTIONALITY_OFF: + data = 0x00; + break; + case VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_LOW: + data = 0x01; + break; + case VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_HIGH: + data = 0x02; + break; + case VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_OUT: + data = 0x03; + break; + case VL53L0X_GPIOFUNCTIONALITY_NEW_MEASURE_READY: + data = 0x04; + break; + default: + Status = + VL53L0X_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED; + } + } + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_SYSTEM_INTERRUPT_CONFIG_GPIO, data); + + if (Status == VL53L0X_ERROR_NONE) { + if (Polarity == VL53L0X_INTERRUPTPOLARITY_LOW) + data = 0; + else + data = (uint8_t)(1 << 4); + + Status = VL53L0X_UpdateByte(Dev, + VL53L0X_REG_GPIO_HV_MUX_ACTIVE_HIGH, 0xEF, data); + } + + if (Status == VL53L0X_ERROR_NONE) + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + Pin0GpioFunctionality, Functionality); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_ClearInterruptMask(Dev, 0); + + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetGpioConfig(VL53L0X_DEV Dev, uint8_t Pin, + VL53L0X_DeviceModes *pDeviceMode, + VL53L0X_GpioFunctionality *pFunctionality, + VL53L0X_InterruptPolarity *pPolarity) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + VL53L0X_GpioFunctionality GpioFunctionality; + uint8_t data; + + LOG_FUNCTION_START(""); + + /* pDeviceMode not managed by Ewok it return the current mode */ + + Status = VL53L0X_GetDeviceMode(Dev, pDeviceMode); + + if (Status == VL53L0X_ERROR_NONE) { + if (Pin != 0) { + Status = VL53L0X_ERROR_GPIO_NOT_EXISTING; + } else { + Status = VL53L0X_RdByte(Dev, + VL53L0X_REG_SYSTEM_INTERRUPT_CONFIG_GPIO, &data); + } + } + + if (Status == VL53L0X_ERROR_NONE) { + switch (data & 0x07) { + case 0x00: + GpioFunctionality = VL53L0X_GPIOFUNCTIONALITY_OFF; + break; + case 0x01: + GpioFunctionality = + VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_LOW; + break; + case 0x02: + GpioFunctionality = + VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_HIGH; + break; + case 0x03: + GpioFunctionality = + VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_OUT; + break; + case 0x04: + GpioFunctionality = + VL53L0X_GPIOFUNCTIONALITY_NEW_MEASURE_READY; + break; + default: + Status = VL53L0X_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED; + } + } + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_RdByte(Dev, VL53L0X_REG_GPIO_HV_MUX_ACTIVE_HIGH, + &data); + + if (Status == VL53L0X_ERROR_NONE) { + if ((data & (uint8_t)(1 << 4)) == 0) + *pPolarity = VL53L0X_INTERRUPTPOLARITY_LOW; + else + *pPolarity = VL53L0X_INTERRUPTPOLARITY_HIGH; + } + + if (Status == VL53L0X_ERROR_NONE) { + *pFunctionality = GpioFunctionality; + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, Pin0GpioFunctionality, + GpioFunctionality); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetInterruptThresholds(VL53L0X_DEV Dev, + VL53L0X_DeviceModes DeviceMode, FixPoint1616_t ThresholdLow, + FixPoint1616_t ThresholdHigh) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint16_t Threshold16; + LOG_FUNCTION_START(""); + + /* no dependency on DeviceMode for Ewok */ + /* Need to divide by 2 because the FW will apply a x2 */ + Threshold16 = (uint16_t)((ThresholdLow >> 17) & 0x00fff); + Status = VL53L0X_WrWord(Dev, VL53L0X_REG_SYSTEM_THRESH_LOW, Threshold16); + + if (Status == VL53L0X_ERROR_NONE) { + /* Need to divide by 2 because the FW will apply a x2 */ + Threshold16 = (uint16_t)((ThresholdHigh >> 17) & 0x00fff); + Status = VL53L0X_WrWord(Dev, VL53L0X_REG_SYSTEM_THRESH_HIGH, + Threshold16); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetInterruptThresholds(VL53L0X_DEV Dev, + VL53L0X_DeviceModes DeviceMode, FixPoint1616_t *pThresholdLow, + FixPoint1616_t *pThresholdHigh) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint16_t Threshold16; + LOG_FUNCTION_START(""); + + /* no dependency on DeviceMode for Ewok */ + + Status = VL53L0X_RdWord(Dev, VL53L0X_REG_SYSTEM_THRESH_LOW, &Threshold16); + /* Need to multiply by 2 because the FW will apply a x2 */ + *pThresholdLow = (FixPoint1616_t)((0x00fff & Threshold16) << 17); + + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_RdWord(Dev, VL53L0X_REG_SYSTEM_THRESH_HIGH, + &Threshold16); + /* Need to multiply by 2 because the FW will apply a x2 */ + *pThresholdHigh = + (FixPoint1616_t)((0x00fff & Threshold16) << 17); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetStopCompletedStatus(VL53L0X_DEV Dev, + uint32_t *pStopStatus) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t Byte = 0; + LOG_FUNCTION_START(""); + + Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_RdByte(Dev, 0x04, &Byte); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, 0xFF, 0x0); + + *pStopStatus = Byte; + + if (Byte == 0) { + Status = VL53L0X_WrByte(Dev, 0x80, 0x01); + Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); + Status = VL53L0X_WrByte(Dev, 0x00, 0x00); + Status = VL53L0X_WrByte(Dev, 0x91, + PALDevDataGet(Dev, StopVariable)); + Status = VL53L0X_WrByte(Dev, 0x00, 0x01); + Status = VL53L0X_WrByte(Dev, 0xFF, 0x00); + Status = VL53L0X_WrByte(Dev, 0x80, 0x00); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +/* Group PAL Interrupt Functions */ +VL53L0X_Error VL53L0X_ClearInterruptMask(VL53L0X_DEV Dev, uint32_t InterruptMask) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t LoopCount; + uint8_t Byte; + LOG_FUNCTION_START(""); + + /* clear bit 0 range interrupt, bit 1 error interrupt */ + LoopCount = 0; + do { + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_SYSTEM_INTERRUPT_CLEAR, 0x01); + Status |= VL53L0X_WrByte(Dev, + VL53L0X_REG_SYSTEM_INTERRUPT_CLEAR, 0x00); + Status |= VL53L0X_RdByte(Dev, + VL53L0X_REG_RESULT_INTERRUPT_STATUS, &Byte); + LoopCount++; + } while (((Byte & 0x07) != 0x00) + && (LoopCount < 3) + && (Status == VL53L0X_ERROR_NONE)); + + + if (LoopCount >= 3) + Status = VL53L0X_ERROR_INTERRUPT_NOT_CLEARED; + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetInterruptMaskStatus(VL53L0X_DEV Dev, + uint32_t *pInterruptMaskStatus) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t Byte; + LOG_FUNCTION_START(""); + + Status = VL53L0X_RdByte(Dev, VL53L0X_REG_RESULT_INTERRUPT_STATUS, &Byte); + *pInterruptMaskStatus = Byte & 0x07; + + if (Byte & 0x18) + Status = VL53L0X_ERROR_RANGE_ERROR; + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_EnableInterruptMask(VL53L0X_DEV Dev, uint32_t InterruptMask) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NOT_IMPLEMENTED; + LOG_FUNCTION_START(""); + + /* not implemented for VL53L0X */ + + LOG_FUNCTION_END(Status); + return Status; +} + +/* End Group PAL Interrupt Functions */ + +/* Group SPAD functions */ + +VL53L0X_Error VL53L0X_SetSpadAmbientDamperThreshold(VL53L0X_DEV Dev, + uint16_t SpadAmbientDamperThreshold) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); + Status |= VL53L0X_WrWord(Dev, 0x40, SpadAmbientDamperThreshold); + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetSpadAmbientDamperThreshold(VL53L0X_DEV Dev, + uint16_t *pSpadAmbientDamperThreshold) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); + Status |= VL53L0X_RdWord(Dev, 0x40, pSpadAmbientDamperThreshold); + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_SetSpadAmbientDamperFactor(VL53L0X_DEV Dev, + uint16_t SpadAmbientDamperFactor) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t Byte; + LOG_FUNCTION_START(""); + + Byte = (uint8_t)(SpadAmbientDamperFactor & 0x00FF); + + Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); + Status |= VL53L0X_WrByte(Dev, 0x42, Byte); + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_GetSpadAmbientDamperFactor(VL53L0X_DEV Dev, + uint16_t *pSpadAmbientDamperFactor) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t Byte; + LOG_FUNCTION_START(""); + + Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); + Status |= VL53L0X_RdByte(Dev, 0x42, &Byte); + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); + *pSpadAmbientDamperFactor = (uint16_t)Byte; + + LOG_FUNCTION_END(Status); + return Status; +} + +/* END Group SPAD functions */ + +/***************************************************************************** + * Internal functions + *****************************************************************************/ + +VL53L0X_Error VL53L0X_SetReferenceSpads(VL53L0X_DEV Dev, uint32_t count, + uint8_t isApertureSpads) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_set_reference_spads(Dev, count, isApertureSpads); + + LOG_FUNCTION_END(Status); + + return Status; +} + +VL53L0X_Error VL53L0X_GetReferenceSpads(VL53L0X_DEV Dev, uint32_t *pSpadCount, + uint8_t *pIsApertureSpads) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_get_reference_spads(Dev, pSpadCount, pIsApertureSpads); + + LOG_FUNCTION_END(Status); + + return Status; +} + +VL53L0X_Error VL53L0X_PerformRefSpadManagement(VL53L0X_DEV Dev, + uint32_t *refSpadCount, uint8_t *isApertureSpads) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + Status = VL53L0X_perform_ref_spad_management(Dev, refSpadCount, + isApertureSpads); + + LOG_FUNCTION_END(Status); + + return Status; +} diff --git a/STS/TOF/vl53l0x/vl53l0x_api.h b/STS/TOF/vl53l0x/vl53l0x_api.h index f3987f2..382a7c2 100644 --- a/STS/TOF/vl53l0x/vl53l0x_api.h +++ b/STS/TOF/vl53l0x/vl53l0x_api.h @@ -1,1950 +1,1950 @@ -/******************************************************************************* - Copyright � 2016, STMicroelectronics International N.V. - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND - NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. - IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY - DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - *****************************************************************************/ - -#ifndef _VL53L0X_API_H_ -#define _VL53L0X_API_H_ - -#include "vl53l0x_api_strings.h" -#include "vl53l0x_def.h" -#include "vl53l0x_platform.h" - -#ifdef __cplusplus -extern "C" -{ -#endif - -#ifdef _MSC_VER -# ifdef VL53L0X_API_EXPORTS -# define VL53L0X_API __declspec(dllexport) -# else -# define VL53L0X_API -# endif -#else -# define VL53L0X_API -#endif - -/** @defgroup VL53L0X_cut11_group VL53L0X cut1.1 Function Definition - * @brief VL53L0X cut1.1 Function Definition - * @{ - */ - -/** @defgroup VL53L0X_general_group VL53L0X General Functions - * @brief General functions and definitions - * @{ - */ - -/** - * @brief Return the VL53L0X PAL Implementation Version - * - * @note This function doesn't access to the device - * - * @param pVersion Pointer to current PAL Implementation Version - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetVersion(VL53L0X_Version_t *pVersion); - -/** - * @brief Return the PAL Specification Version used for the current - * implementation. - * - * @note This function doesn't access to the device - * - * @param pPalSpecVersion Pointer to current PAL Specification Version - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetPalSpecVersion( - VL53L0X_Version_t *pPalSpecVersion); - -/** - * @brief Reads the Product Revision for a for given Device - * This function can be used to distinguish cut1.0 from cut1.1. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pProductRevisionMajor Pointer to Product Revision Major - * for a given Device - * @param pProductRevisionMinor Pointer to Product Revision Minor - * for a given Device - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetProductRevision(VL53L0X_DEV Dev, - uint8_t *pProductRevisionMajor, uint8_t *pProductRevisionMinor); - -/** - * @brief Reads the Device information for given Device - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pVL53L0X_DeviceInfo Pointer to current device info for a given - * Device - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetDeviceInfo(VL53L0X_DEV Dev, - VL53L0X_DeviceInfo_t *pVL53L0X_DeviceInfo); - -/** - * @brief Read current status of the error register for the selected device - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pDeviceErrorStatus Pointer to current error code of the device - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetDeviceErrorStatus(VL53L0X_DEV Dev, - VL53L0X_DeviceError *pDeviceErrorStatus); - -/** - * @brief Human readable Range Status string for a given RangeStatus - * - * @note This function doesn't access to the device - * - * @param RangeStatus The RangeStatus code as stored on - * @a VL53L0X_RangingMeasurementData_t - * @param pRangeStatusString The returned RangeStatus string. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetRangeStatusString(uint8_t RangeStatus, - char *pRangeStatusString); - -/** - * @brief Human readable error string for a given Error Code - * - * @note This function doesn't access to the device - * - * @param ErrorCode The error code as stored on ::VL53L0X_DeviceError - * @param pDeviceErrorString The error string corresponding to the ErrorCode - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetDeviceErrorString( - VL53L0X_DeviceError ErrorCode, char *pDeviceErrorString); - -/** - * @brief Human readable error string for current PAL error status - * - * @note This function doesn't access to the device - * - * @param PalErrorCode The error code as stored on @a VL53L0X_Error - * @param pPalErrorString The error string corresponding to the - * PalErrorCode - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetPalErrorString(VL53L0X_Error PalErrorCode, - char *pPalErrorString); - -/** - * @brief Human readable PAL State string - * - * @note This function doesn't access to the device - * - * @param PalStateCode The State code as stored on @a VL53L0X_State - * @param pPalStateString The State string corresponding to the - * PalStateCode - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetPalStateString(VL53L0X_State PalStateCode, - char *pPalStateString); - -/** - * @brief Reads the internal state of the PAL for a given Device - * - * @note This function doesn't access to the device - * - * @param Dev Device Handle - * @param pPalState Pointer to current state of the PAL for a - * given Device - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetPalState(VL53L0X_DEV Dev, - VL53L0X_State *pPalState); - -/** - * @brief Set the power mode for a given Device - * The power mode can be Standby or Idle. Different level of both Standby and - * Idle can exists. - * This function should not be used when device is in Ranging state. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param PowerMode The value of the power mode to set. - * see ::VL53L0X_PowerModes - * Valid values are: - * VL53L0X_POWERMODE_STANDBY_LEVEL1, - * VL53L0X_POWERMODE_IDLE_LEVEL1 - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_MODE_NOT_SUPPORTED This error occurs when PowerMode - * is not in the supported list - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetPowerMode(VL53L0X_DEV Dev, - VL53L0X_PowerModes PowerMode); - -/** - * @brief Get the power mode for a given Device - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pPowerMode Pointer to the current value of the power - * mode. see ::VL53L0X_PowerModes - * Valid values are: - * VL53L0X_POWERMODE_STANDBY_LEVEL1, - * VL53L0X_POWERMODE_IDLE_LEVEL1 - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetPowerMode(VL53L0X_DEV Dev, - VL53L0X_PowerModes *pPowerMode); - -/** - * Set or over-hide part to part calibration offset - * \sa VL53L0X_DataInit() VL53L0X_GetOffsetCalibrationDataMicroMeter() - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param OffsetCalibrationDataMicroMeter Offset (microns) - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetOffsetCalibrationDataMicroMeter( - VL53L0X_DEV Dev, int32_t OffsetCalibrationDataMicroMeter); - -/** - * @brief Get part to part calibration offset - * - * @par Function Description - * Should only be used after a successful call to @a VL53L0X_DataInit to backup - * device NVM value - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pOffsetCalibrationDataMicroMeter Return part to part - * calibration offset from device (microns) - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetOffsetCalibrationDataMicroMeter( - VL53L0X_DEV Dev, int32_t *pOffsetCalibrationDataMicroMeter); - -/** - * Set the linearity corrective gain - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param LinearityCorrectiveGain Linearity corrective - * gain in x1000 - * if value is 1000 then no modification is applied. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetLinearityCorrectiveGain(VL53L0X_DEV Dev, - int16_t LinearityCorrectiveGain); - -/** - * @brief Get the linearity corrective gain - * - * @par Function Description - * Should only be used after a successful call to @a VL53L0X_DataInit to backup - * device NVM value - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pLinearityCorrectiveGain Pointer to the linearity - * corrective gain in x1000 - * if value is 1000 then no modification is applied. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetLinearityCorrectiveGain(VL53L0X_DEV Dev, - uint16_t *pLinearityCorrectiveGain); - -/** - * Set Group parameter Hold state - * - * @par Function Description - * Set or remove device internal group parameter hold - * - * @note This function is not Implemented - * - * @param Dev Device Handle - * @param GroupParamHold Group parameter Hold state to be set (on/off) - * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetGroupParamHold(VL53L0X_DEV Dev, - uint8_t GroupParamHold); - -/** - * @brief Get the maximal distance for actual setup - * @par Function Description - * Device must be initialized through @a VL53L0X_SetParameters() prior calling - * this function. - * - * Any range value more than the value returned is to be considered as - * "no target detected" or - * "no target in detectable range"\n - * @warning The maximal distance depends on the setup - * - * @note This function is not Implemented - * - * @param Dev Device Handle - * @param pUpperLimitMilliMeter The maximal range limit for actual setup - * (in millimeter) - * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetUpperLimitMilliMeter(VL53L0X_DEV Dev, - uint16_t *pUpperLimitMilliMeter); - - -/** - * @brief Get the Total Signal Rate - * @par Function Description - * This function will return the Total Signal Rate after a good ranging is done. - * - * @note This function access to Device - * - * @param Dev Device Handle - * @param pTotalSignalRate Total Signal Rate value in Mega count per second - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_Error VL53L0X_GetTotalSignalRate(VL53L0X_DEV Dev, - FixPoint1616_t *pTotalSignalRate); - -/** @} VL53L0X_general_group */ - -/** @defgroup VL53L0X_init_group VL53L0X Init Functions - * @brief VL53L0X Init Functions - * @{ - */ - -/** - * @brief Set new device address - * - * After completion the device will answer to the new address programmed. - * This function should be called when several devices are used in parallel - * before start programming the sensor. - * When a single device us used, there is no need to call this function. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param DeviceAddress The new Device address - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetDeviceAddress(VL53L0X_DEV Dev, - uint8_t DeviceAddress); - -/** - * - * @brief One time device initialization - * - * To be called once and only once after device is brought out of reset - * (Chip enable) and booted see @a VL53L0X_WaitDeviceBooted() - * - * @par Function Description - * When not used after a fresh device "power up" or reset, it may return - * @a #VL53L0X_ERROR_CALIBRATION_WARNING meaning wrong calibration data - * may have been fetched from device that can result in ranging offset error\n - * If application cannot execute device reset or need to run VL53L0X_DataInit - * multiple time then it must ensure proper offset calibration saving and - * restore on its own by using @a VL53L0X_GetOffsetCalibrationData() on first - * power up and then @a VL53L0X_SetOffsetCalibrationData() in all subsequent init - * This function will change the VL53L0X_State from VL53L0X_STATE_POWERDOWN to - * VL53L0X_STATE_WAIT_STATICINIT. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_DataInit(VL53L0X_DEV Dev); - -/** - * @brief Set the tuning settings pointer - * - * This function is used to specify the Tuning settings buffer to be used - * for a given device. The buffer contains all the necessary data to permit - * the API to write tuning settings. - * This function permit to force the usage of either external or internal - * tuning settings. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pTuningSettingBuffer Pointer to tuning settings buffer. - * @param UseInternalTuningSettings Use internal tuning settings value. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetTuningSettingBuffer(VL53L0X_DEV Dev, - uint8_t *pTuningSettingBuffer, uint8_t UseInternalTuningSettings); - -/** - * @brief Get the tuning settings pointer and the internal external switch - * value. - * - * This function is used to get the Tuning settings buffer pointer and the - * value. - * of the switch to select either external or internal tuning settings. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param ppTuningSettingBuffer Pointer to tuning settings buffer. - * @param pUseInternalTuningSettings Pointer to store Use internal tuning - * settings value. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetTuningSettingBuffer(VL53L0X_DEV Dev, - uint8_t **ppTuningSettingBuffer, uint8_t *pUseInternalTuningSettings); - -/** - * @brief Do basic device init (and eventually patch loading) - * This function will change the VL53L0X_State from - * VL53L0X_STATE_WAIT_STATICINIT to VL53L0X_STATE_IDLE. - * In this stage all default setting will be applied. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_StaticInit(VL53L0X_DEV Dev); - -/** - * @brief Wait for device booted after chip enable (hardware standby) - * This function can be run only when VL53L0X_State is VL53L0X_STATE_POWERDOWN. - * - * @note This function is not Implemented - * - * @param Dev Device Handle - * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented - * - */ -VL53L0X_API VL53L0X_Error VL53L0X_WaitDeviceBooted(VL53L0X_DEV Dev); - -/** - * @brief Do an hard reset or soft reset (depending on implementation) of the - * device \nAfter call of this function, device must be in same state as right - * after a power-up sequence.This function will change the VL53L0X_State to - * VL53L0X_STATE_POWERDOWN. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_ResetDevice(VL53L0X_DEV Dev); - -/** @} VL53L0X_init_group */ - -/** @defgroup VL53L0X_parameters_group VL53L0X Parameters Functions - * @brief Functions used to prepare and setup the device - * @{ - */ - -/** - * @brief Prepare device for operation - * @par Function Description - * Update device with provided parameters - * @li Then start ranging operation. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pDeviceParameters Pointer to store current device parameters. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetDeviceParameters(VL53L0X_DEV Dev, - const VL53L0X_DeviceParameters_t *pDeviceParameters); - -/** - * @brief Retrieve current device parameters - * @par Function Description - * Get actual parameters of the device - * @li Then start ranging operation. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pDeviceParameters Pointer to store current device parameters. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetDeviceParameters(VL53L0X_DEV Dev, - VL53L0X_DeviceParameters_t *pDeviceParameters); - -/** - * @brief Set a new device mode - * @par Function Description - * Set device to a new mode (ranging, histogram ...) - * - * @note This function doesn't Access to the device - * - * @param Dev Device Handle - * @param DeviceMode New device mode to apply - * Valid values are: - * VL53L0X_DEVICEMODE_SINGLE_RANGING - * VL53L0X_DEVICEMODE_CONTINUOUS_RANGING - * VL53L0X_DEVICEMODE_CONTINUOUS_TIMED_RANGING - * VL53L0X_DEVICEMODE_SINGLE_HISTOGRAM - * VL53L0X_HISTOGRAMMODE_REFERENCE_ONLY - * VL53L0X_HISTOGRAMMODE_RETURN_ONLY - * VL53L0X_HISTOGRAMMODE_BOTH - * - * - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_MODE_NOT_SUPPORTED This error occurs when DeviceMode is - * not in the supported list - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetDeviceMode(VL53L0X_DEV Dev, - VL53L0X_DeviceModes DeviceMode); - -/** - * @brief Get current new device mode - * @par Function Description - * Get actual mode of the device(ranging, histogram ...) - * - * @note This function doesn't Access to the device - * - * @param Dev Device Handle - * @param pDeviceMode Pointer to current apply mode value - * Valid values are: - * VL53L0X_DEVICEMODE_SINGLE_RANGING - * VL53L0X_DEVICEMODE_CONTINUOUS_RANGING - * VL53L0X_DEVICEMODE_CONTINUOUS_TIMED_RANGING - * VL53L0X_DEVICEMODE_SINGLE_HISTOGRAM - * VL53L0X_HISTOGRAMMODE_REFERENCE_ONLY - * VL53L0X_HISTOGRAMMODE_RETURN_ONLY - * VL53L0X_HISTOGRAMMODE_BOTH - * - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_MODE_NOT_SUPPORTED This error occurs when - * DeviceMode is not in the supported list - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetDeviceMode(VL53L0X_DEV Dev, - VL53L0X_DeviceModes *pDeviceMode); - -/** - * @brief Sets the resolution of range measurements. - * @par Function Description - * Set resolution of range measurements to either 0.25mm if - * fraction enabled or 1mm if not enabled. - * - * @note This function Accesses the device - * - * @param Dev Device Handle - * @param Enable Enable high resolution - * - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetRangeFractionEnable(VL53L0X_DEV Dev, - uint8_t Enable); - -/** - * @brief Gets the fraction enable parameter indicating the resolution of - * range measurements. - * - * @par Function Description - * Gets the fraction enable state, which translates to the resolution of - * range measurements as follows :Enabled:=0.25mm resolution, - * Not Enabled:=1mm resolution. - * - * @note This function Accesses the device - * - * @param Dev Device Handle - * @param pEnable Output Parameter reporting the fraction enable state. - * - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetFractionEnable(VL53L0X_DEV Dev, - uint8_t *pEnable); - -/** - * @brief Set a new Histogram mode - * @par Function Description - * Set device to a new Histogram mode - * - * @note This function doesn't Access to the device - * - * @param Dev Device Handle - * @param HistogramMode New device mode to apply - * Valid values are: - * VL53L0X_HISTOGRAMMODE_DISABLED - * VL53L0X_DEVICEMODE_SINGLE_HISTOGRAM - * VL53L0X_HISTOGRAMMODE_REFERENCE_ONLY - * VL53L0X_HISTOGRAMMODE_RETURN_ONLY - * VL53L0X_HISTOGRAMMODE_BOTH - * - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_MODE_NOT_SUPPORTED This error occurs when - * HistogramMode is not in the supported list - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetHistogramMode(VL53L0X_DEV Dev, - VL53L0X_HistogramModes HistogramMode); - -/** - * @brief Get current new device mode - * @par Function Description - * Get current Histogram mode of a Device - * - * @note This function doesn't Access to the device - * - * @param Dev Device Handle - * @param pHistogramMode Pointer to current Histogram Mode value - * Valid values are: - * VL53L0X_HISTOGRAMMODE_DISABLED - * VL53L0X_DEVICEMODE_SINGLE_HISTOGRAM - * VL53L0X_HISTOGRAMMODE_REFERENCE_ONLY - * VL53L0X_HISTOGRAMMODE_RETURN_ONLY - * VL53L0X_HISTOGRAMMODE_BOTH - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetHistogramMode(VL53L0X_DEV Dev, - VL53L0X_HistogramModes *pHistogramMode); - -/** - * @brief Set Ranging Timing Budget in microseconds - * - * @par Function Description - * Defines the maximum time allowed by the user to the device to run a - * full ranging sequence for the current mode (ranging, histogram, ASL ...) - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param MeasurementTimingBudgetMicroSeconds Max measurement time in - * microseconds. - * Valid values are: - * >= 17000 microsecs when wraparound enabled - * >= 12000 microsecs when wraparound disabled - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS This error is returned if - MeasurementTimingBudgetMicroSeconds out of range - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetMeasurementTimingBudgetMicroSeconds( - VL53L0X_DEV Dev, uint32_t MeasurementTimingBudgetMicroSeconds); - -/** - * @brief Get Ranging Timing Budget in microseconds - * - * @par Function Description - * Returns the programmed the maximum time allowed by the user to the - * device to run a full ranging sequence for the current mode - * (ranging, histogram, ASL ...) - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pMeasurementTimingBudgetMicroSeconds Max measurement time in - * microseconds. - * Valid values are: - * >= 17000 microsecs when wraparound enabled - * >= 12000 microsecs when wraparound disabled - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetMeasurementTimingBudgetMicroSeconds( - VL53L0X_DEV Dev, uint32_t *pMeasurementTimingBudgetMicroSeconds); - -/** - * @brief Gets the VCSEL pulse period. - * - * @par Function Description - * This function retrieves the VCSEL pulse period for the given period type. - * - * @note This function Accesses the device - * - * @param Dev Device Handle - * @param VcselPeriodType VCSEL period identifier (pre-range|final). - * @param pVCSELPulsePeriod Pointer to VCSEL period value. - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS Error VcselPeriodType parameter not - * supported. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetVcselPulsePeriod(VL53L0X_DEV Dev, - VL53L0X_VcselPeriod VcselPeriodType, uint8_t *pVCSELPulsePeriod); - -/** - * @brief Sets the VCSEL pulse period. - * - * @par Function Description - * This function retrieves the VCSEL pulse period for the given period type. - * - * @note This function Accesses the device - * - * @param Dev Device Handle - * @param VcselPeriodType VCSEL period identifier (pre-range|final). - * @param VCSELPulsePeriod VCSEL period value - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS Error VcselPeriodType parameter not - * supported. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetVcselPulsePeriod(VL53L0X_DEV Dev, - VL53L0X_VcselPeriod VcselPeriodType, uint8_t VCSELPulsePeriod); - -/** - * @brief Sets the (on/off) state of a requested sequence step. - * - * @par Function Description - * This function enables/disables a requested sequence step. - * - * @note This function Accesses the device - * - * @param Dev Device Handle - * @param SequenceStepId Sequence step identifier. - * @param SequenceStepEnabled Demanded state {0=Off,1=On} - * is enabled. - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS Error SequenceStepId parameter not - * supported. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetSequenceStepEnable(VL53L0X_DEV Dev, - VL53L0X_SequenceStepId SequenceStepId, uint8_t SequenceStepEnabled); - -/** - * @brief Gets the (on/off) state of a requested sequence step. - * - * @par Function Description - * This function retrieves the state of a requested sequence step, i.e. on/off. - * - * @note This function Accesses the device - * - * @param Dev Device Handle - * @param SequenceStepId Sequence step identifier. - * @param pSequenceStepEnabled Out parameter reporting if the sequence step - * is enabled {0=Off,1=On}. - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS Error SequenceStepId parameter not - * supported. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetSequenceStepEnable(VL53L0X_DEV Dev, - VL53L0X_SequenceStepId SequenceStepId, uint8_t *pSequenceStepEnabled); - -/** - * @brief Gets the (on/off) state of all sequence steps. - * - * @par Function Description - * This function retrieves the state of all sequence step in the scheduler. - * - * @note This function Accesses the device - * - * @param Dev Device Handle - * @param pSchedulerSequenceSteps Pointer to struct containing result. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetSequenceStepEnables(VL53L0X_DEV Dev, - VL53L0X_SchedulerSequenceSteps_t *pSchedulerSequenceSteps); - -/** - * @brief Sets the timeout of a requested sequence step. - * - * @par Function Description - * This function sets the timeout of a requested sequence step. - * - * @note This function Accesses the device - * - * @param Dev Device Handle - * @param SequenceStepId Sequence step identifier. - * @param TimeOutMilliSecs Demanded timeout - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS Error SequenceStepId parameter not - * supported. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetSequenceStepTimeout(VL53L0X_DEV Dev, - VL53L0X_SequenceStepId SequenceStepId, FixPoint1616_t TimeOutMilliSecs); - -/** - * @brief Gets the timeout of a requested sequence step. - * - * @par Function Description - * This function retrieves the timeout of a requested sequence step. - * - * @note This function Accesses the device - * - * @param Dev Device Handle - * @param SequenceStepId Sequence step identifier. - * @param pTimeOutMilliSecs Timeout value. - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS Error SequenceStepId parameter not - * supported. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetSequenceStepTimeout(VL53L0X_DEV Dev, - VL53L0X_SequenceStepId SequenceStepId, - FixPoint1616_t *pTimeOutMilliSecs); - -/** - * @brief Gets number of sequence steps managed by the API. - * - * @par Function Description - * This function retrieves the number of sequence steps currently managed - * by the API - * - * @note This function Accesses the device - * - * @param Dev Device Handle - * @param pNumberOfSequenceSteps Out parameter reporting the number of - * sequence steps. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetNumberOfSequenceSteps(VL53L0X_DEV Dev, - uint8_t *pNumberOfSequenceSteps); - -/** - * @brief Gets the name of a given sequence step. - * - * @par Function Description - * This function retrieves the name of sequence steps corresponding to - * SequenceStepId. - * - * @note This function doesn't Accesses the device - * - * @param SequenceStepId Sequence step identifier. - * @param pSequenceStepsString Pointer to Info string - * - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetSequenceStepsInfo( - VL53L0X_SequenceStepId SequenceStepId, char *pSequenceStepsString); - -/** - * Program continuous mode Inter-Measurement period in milliseconds - * - * @par Function Description - * When trying to set too short time return INVALID_PARAMS minimal value - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param InterMeasurementPeriodMilliSeconds Inter-Measurement Period in ms. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetInterMeasurementPeriodMilliSeconds( - VL53L0X_DEV Dev, uint32_t InterMeasurementPeriodMilliSeconds); - -/** - * Get continuous mode Inter-Measurement period in milliseconds - * - * @par Function Description - * When trying to set too short time return INVALID_PARAMS minimal value - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pInterMeasurementPeriodMilliSeconds Pointer to programmed - * Inter-Measurement Period in milliseconds. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetInterMeasurementPeriodMilliSeconds( - VL53L0X_DEV Dev, uint32_t *pInterMeasurementPeriodMilliSeconds); - -/** - * @brief Enable/Disable Cross talk compensation feature - * - * @note This function is not Implemented. - * Enable/Disable Cross Talk by set to zero the Cross Talk value - * by using @a VL53L0X_SetXTalkCompensationRateMegaCps(). - * - * @param Dev Device Handle - * @param XTalkCompensationEnable Cross talk compensation - * to be set 0=disabled else = enabled - * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetXTalkCompensationEnable(VL53L0X_DEV Dev, - uint8_t XTalkCompensationEnable); - -/** - * @brief Get Cross talk compensation rate - * - * @note This function is not Implemented. - * Enable/Disable Cross Talk by set to zero the Cross Talk value by - * using @a VL53L0X_SetXTalkCompensationRateMegaCps(). - * - * @param Dev Device Handle - * @param pXTalkCompensationEnable Pointer to the Cross talk compensation - * state 0=disabled or 1 = enabled - * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetXTalkCompensationEnable(VL53L0X_DEV Dev, - uint8_t *pXTalkCompensationEnable); - -/** - * @brief Set Cross talk compensation rate - * - * @par Function Description - * Set Cross talk compensation rate. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param XTalkCompensationRateMegaCps Compensation rate in - * Mega counts per second (16.16 fix point) see datasheet for details - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetXTalkCompensationRateMegaCps(VL53L0X_DEV Dev, - FixPoint1616_t XTalkCompensationRateMegaCps); - -/** - * @brief Get Cross talk compensation rate - * - * @par Function Description - * Get Cross talk compensation rate. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pXTalkCompensationRateMegaCps Pointer to Compensation rate - in Mega counts per second (16.16 fix point) see datasheet for details - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetXTalkCompensationRateMegaCps(VL53L0X_DEV Dev, - FixPoint1616_t *pXTalkCompensationRateMegaCps); - -/** - * @brief Set Reference Calibration Parameters - * - * @par Function Description - * Set Reference Calibration Parameters. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param VhvSettings Parameter for VHV - * @param PhaseCal Parameter for PhaseCal - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetRefCalibration(VL53L0X_DEV Dev, - uint8_t VhvSettings, uint8_t PhaseCal); - -/** - * @brief Get Reference Calibration Parameters - * - * @par Function Description - * Get Reference Calibration Parameters. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pVhvSettings Pointer to VHV parameter - * @param pPhaseCal Pointer to PhaseCal Parameter - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetRefCalibration(VL53L0X_DEV Dev, - uint8_t *pVhvSettings, uint8_t *pPhaseCal); - -/** - * @brief Get the number of the check limit managed by a given Device - * - * @par Function Description - * This function give the number of the check limit managed by the Device - * - * @note This function doesn't Access to the device - * - * @param pNumberOfLimitCheck Pointer to the number of check limit. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetNumberOfLimitCheck( - uint16_t *pNumberOfLimitCheck); - -/** - * @brief Return a description string for a given limit check number - * - * @par Function Description - * This function returns a description string for a given limit check number. - * The limit check is identified with the LimitCheckId. - * - * @note This function doesn't Access to the device - * - * @param Dev Device Handle - * @param LimitCheckId Limit Check ID - (0<= LimitCheckId < VL53L0X_GetNumberOfLimitCheck() ). - * @param pLimitCheckString Pointer to the - description string of the given check limit. - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS This error is - returned when LimitCheckId value is out of range. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetLimitCheckInfo(VL53L0X_DEV Dev, - uint16_t LimitCheckId, char *pLimitCheckString); - -/** - * @brief Return a the Status of the specified check limit - * - * @par Function Description - * This function returns the Status of the specified check limit. - * The value indicate if the check is fail or not. - * The limit check is identified with the LimitCheckId. - * - * @note This function doesn't Access to the device - * - * @param Dev Device Handle - * @param LimitCheckId Limit Check ID - (0<= LimitCheckId < VL53L0X_GetNumberOfLimitCheck() ). - * @param pLimitCheckStatus Pointer to the - Limit Check Status of the given check limit. - * LimitCheckStatus : - * 0 the check is not fail - * 1 the check if fail or not enabled - * - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS This error is - returned when LimitCheckId value is out of range. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetLimitCheckStatus(VL53L0X_DEV Dev, - uint16_t LimitCheckId, uint8_t *pLimitCheckStatus); - -/** - * @brief Enable/Disable a specific limit check - * - * @par Function Description - * This function Enable/Disable a specific limit check. - * The limit check is identified with the LimitCheckId. - * - * @note This function doesn't Access to the device - * - * @param Dev Device Handle - * @param LimitCheckId Limit Check ID - * (0<= LimitCheckId < VL53L0X_GetNumberOfLimitCheck() ). - * @param LimitCheckEnable if 1 the check limit - * corresponding to LimitCheckId is Enabled - * if 0 the check limit - * corresponding to LimitCheckId is disabled - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS This error is returned - * when LimitCheckId value is out of range. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetLimitCheckEnable(VL53L0X_DEV Dev, - uint16_t LimitCheckId, uint8_t LimitCheckEnable); - -/** - * @brief Get specific limit check enable state - * - * @par Function Description - * This function get the enable state of a specific limit check. - * The limit check is identified with the LimitCheckId. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param LimitCheckId Limit Check ID - * (0<= LimitCheckId < VL53L0X_GetNumberOfLimitCheck() ). - * @param pLimitCheckEnable Pointer to the check limit enable - * value. - * if 1 the check limit - * corresponding to LimitCheckId is Enabled - * if 0 the check limit - * corresponding to LimitCheckId is disabled - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS This error is returned - * when LimitCheckId value is out of range. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetLimitCheckEnable(VL53L0X_DEV Dev, - uint16_t LimitCheckId, uint8_t *pLimitCheckEnable); - -/** - * @brief Set a specific limit check value - * - * @par Function Description - * This function set a specific limit check value. - * The limit check is identified with the LimitCheckId. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param LimitCheckId Limit Check ID - * (0<= LimitCheckId < VL53L0X_GetNumberOfLimitCheck() ). - * @param LimitCheckValue Limit check Value for a given - * LimitCheckId - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS This error is returned when either - * LimitCheckId or LimitCheckValue value is out of range. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetLimitCheckValue(VL53L0X_DEV Dev, - uint16_t LimitCheckId, FixPoint1616_t LimitCheckValue); - -/** - * @brief Get a specific limit check value - * - * @par Function Description - * This function get a specific limit check value from device then it updates - * internal values and check enables. - * The limit check is identified with the LimitCheckId. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param LimitCheckId Limit Check ID - * (0<= LimitCheckId < VL53L0X_GetNumberOfLimitCheck() ). - * @param pLimitCheckValue Pointer to Limit - * check Value for a given LimitCheckId. - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS This error is returned - * when LimitCheckId value is out of range. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetLimitCheckValue(VL53L0X_DEV Dev, - uint16_t LimitCheckId, FixPoint1616_t *pLimitCheckValue); - -/** - * @brief Get the current value of the signal used for the limit check - * - * @par Function Description - * This function get a the current value of the signal used for the limit check. - * To obtain the latest value you should run a ranging before. - * The value reported is linked to the limit check identified with the - * LimitCheckId. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param LimitCheckId Limit Check ID - * (0<= LimitCheckId < VL53L0X_GetNumberOfLimitCheck() ). - * @param pLimitCheckCurrent Pointer to current Value for a - * given LimitCheckId. - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS This error is returned when - * LimitCheckId value is out of range. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetLimitCheckCurrent(VL53L0X_DEV Dev, - uint16_t LimitCheckId, FixPoint1616_t *pLimitCheckCurrent); - -/** - * @brief Enable (or disable) Wrap around Check - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param WrapAroundCheckEnable Wrap around Check to be set - * 0=disabled, other = enabled - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetWrapAroundCheckEnable(VL53L0X_DEV Dev, - uint8_t WrapAroundCheckEnable); - -/** - * @brief Get setup of Wrap around Check - * - * @par Function Description - * This function get the wrapAround check enable parameters - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pWrapAroundCheckEnable Pointer to the Wrap around Check state - * 0=disabled or 1 = enabled - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetWrapAroundCheckEnable(VL53L0X_DEV Dev, - uint8_t *pWrapAroundCheckEnable); - -/** - * @brief Set Dmax Calibration Parameters for a given device - * When one of the parameter is zero, this function will get parameter - * from NVM. - * @note This function doesn't Access to the device - * - * @param Dev Device Handle - * @param RangeMilliMeter Calibration Distance - * @param SignalRateRtnMegaCps Signal rate return read at CalDistance - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetDmaxCalParameters(VL53L0X_DEV Dev, - uint16_t RangeMilliMeter, FixPoint1616_t SignalRateRtnMegaCps); - -/** - * @brief Get Dmax Calibration Parameters for a given device - * - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pRangeMilliMeter Pointer to Calibration Distance - * @param pSignalRateRtnMegaCps Pointer to Signal rate return - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetDmaxCalParameters(VL53L0X_DEV Dev, - uint16_t *pRangeMilliMeter, FixPoint1616_t *pSignalRateRtnMegaCps); - -/** @} VL53L0X_parameters_group */ - -/** @defgroup VL53L0X_measurement_group VL53L0X Measurement Functions - * @brief Functions used for the measurements - * @{ - */ - -/** - * @brief Single shot measurement. - * - * @par Function Description - * Perform simple measurement sequence (Start measure, Wait measure to end, - * and returns when measurement is done). - * Once function returns, user can get valid data by calling - * VL53L0X_GetRangingMeasurement or VL53L0X_GetHistogramMeasurement - * depending on defined measurement mode - * User should Clear the interrupt in case this are enabled by using the - * function VL53L0X_ClearInterruptMask(). - * - * @warning This function is a blocking function - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_PerformSingleMeasurement(VL53L0X_DEV Dev); - -/** - * @brief Perform Reference Calibration - * - * @details Perform a reference calibration of the Device. - * This function should be run from time to time before doing - * a ranging measurement. - * This function will launch a special ranging measurement, so - * if interrupt are enable an interrupt will be done. - * This function will clear the interrupt generated automatically. - * - * @warning This function is a blocking function - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pVhvSettings Pointer to vhv settings parameter. - * @param pPhaseCal Pointer to PhaseCal parameter. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_PerformRefCalibration(VL53L0X_DEV Dev, - uint8_t *pVhvSettings, uint8_t *pPhaseCal); - -/** - * @brief Perform XTalk Measurement - * - * @details Measures the current cross talk from glass in front - * of the sensor. - * This functions performs a histogram measurement and uses the results - * to measure the crosstalk. For the function to be successful, there - * must be no target in front of the sensor. - * - * @warning This function is a blocking function - * - * @warning This function is not supported when the final range - * vcsel clock period is set below 10 PCLKS. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param TimeoutMs Histogram measurement duration. - * @param pXtalkPerSpad Output parameter containing the crosstalk - * measurement result, in MCPS/Spad. Format fixpoint 16:16. - * @param pAmbientTooHigh Output parameter which indicate that - * pXtalkPerSpad is not good if the Ambient is too high. - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS vcsel clock period not supported - * for this operation. Must not be less than 10PCLKS. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_PerformXTalkMeasurement(VL53L0X_DEV Dev, - uint32_t TimeoutMs, FixPoint1616_t *pXtalkPerSpad, - uint8_t *pAmbientTooHigh); - -/** - * @brief Perform XTalk Calibration - * - * @details Perform a XTalk calibration of the Device. - * This function will launch a ranging measurement, if interrupts - * are enabled an interrupt will be done. - * This function will clear the interrupt generated automatically. - * This function will program a new value for the XTalk compensation - * and it will enable the cross talk before exit. - * This function will disable the VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD. - * - * @warning This function is a blocking function - * - * @note This function Access to the device - * - * @note This function change the device mode to - * VL53L0X_DEVICEMODE_SINGLE_RANGING - * - * @param Dev Device Handle - * @param XTalkCalDistance XTalkCalDistance value used for the XTalk - * computation. - * @param pXTalkCompensationRateMegaCps Pointer to new - * XTalkCompensation value. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_PerformXTalkCalibration(VL53L0X_DEV Dev, - FixPoint1616_t XTalkCalDistance, - FixPoint1616_t *pXTalkCompensationRateMegaCps); - -/** - * @brief Perform Offset Calibration - * - * @details Perform a Offset calibration of the Device. - * This function will launch a ranging measurement, if interrupts are - * enabled an interrupt will be done. - * This function will clear the interrupt generated automatically. - * This function will program a new value for the Offset calibration value - * This function will disable the VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD. - * - * @warning This function is a blocking function - * - * @note This function Access to the device - * - * @note This function does not change the device mode. - * - * @param Dev Device Handle - * @param CalDistanceMilliMeter Calibration distance value used for the - * offset compensation. - * @param pOffsetMicroMeter Pointer to new Offset value computed by the - * function. - * - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_PerformOffsetCalibration(VL53L0X_DEV Dev, - FixPoint1616_t CalDistanceMilliMeter, int32_t *pOffsetMicroMeter); - -/** - * @brief Start device measurement - * - * @details Started measurement will depend on device parameters set through - * @a VL53L0X_SetParameters() - * This is a non-blocking function. - * This function will change the VL53L0X_State from VL53L0X_STATE_IDLE to - * VL53L0X_STATE_RUNNING. - * - * @note This function Access to the device - * - - * @param Dev Device Handle - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_MODE_NOT_SUPPORTED This error occurs when - * DeviceMode programmed with @a VL53L0X_SetDeviceMode is not in the supported - * list: - * Supported mode are: - * VL53L0X_DEVICEMODE_SINGLE_RANGING, - * VL53L0X_DEVICEMODE_CONTINUOUS_RANGING, - * VL53L0X_DEVICEMODE_CONTINUOUS_TIMED_RANGING - * @return VL53L0X_ERROR_TIME_OUT Time out on start measurement - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_StartMeasurement(VL53L0X_DEV Dev); - -/** - * @brief Stop device measurement - * - * @details Will set the device in standby mode at end of current measurement\n - * Not necessary in single mode as device shall return automatically - * in standby mode at end of measurement. - * This function will change the VL53L0X_State from VL53L0X_STATE_RUNNING - * to VL53L0X_STATE_IDLE. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_StopMeasurement(VL53L0X_DEV Dev); - -/** - * @brief Return Measurement Data Ready - * - * @par Function Description - * This function indicate that a measurement data is ready. - * This function check if interrupt mode is used then check is done accordingly. - * If perform function clear the interrupt, this function will not work, - * like in case of @a VL53L0X_PerformSingleRangingMeasurement(). - * The previous function is blocking function, VL53L0X_GetMeasurementDataReady - * is used for non-blocking capture. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pMeasurementDataReady Pointer to Measurement Data Ready. - * 0=data not ready, 1 = data ready - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetMeasurementDataReady(VL53L0X_DEV Dev, - uint8_t *pMeasurementDataReady); - -/** - * @brief Wait for device ready for a new measurement command. - * Blocking function. - * - * @note This function is not Implemented - * - * @param Dev Device Handle - * @param MaxLoop Max Number of polling loop (timeout). - * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented - */ -VL53L0X_API VL53L0X_Error VL53L0X_WaitDeviceReadyForNewMeasurement(VL53L0X_DEV Dev, - uint32_t MaxLoop); - -/** - * @brief Retrieve the Reference Signal after a measurements - * - * @par Function Description - * Get Reference Signal from last successful Ranging measurement - * This function return a valid value after that you call the - * @a VL53L0X_GetRangingMeasurementData(). - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pMeasurementRefSignal Pointer to the Ref Signal to fill up. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetMeasurementRefSignal(VL53L0X_DEV Dev, - FixPoint1616_t *pMeasurementRefSignal); - -/** - * @brief Retrieve the measurements from device for a given setup - * - * @par Function Description - * Get data from last successful Ranging measurement - * @warning USER should take care about @a VL53L0X_GetNumberOfROIZones() - * before get data. - * PAL will fill a NumberOfROIZones times the corresponding data - * structure used in the measurement function. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pRangingMeasurementData Pointer to the data structure to fill up. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetRangingMeasurementData(VL53L0X_DEV Dev, - VL53L0X_RangingMeasurementData_t *pRangingMeasurementData); - -/** - * @brief Retrieve the measurements from device for a given setup - * - * @par Function Description - * Get data from last successful Histogram measurement - * @warning USER should take care about @a VL53L0X_GetNumberOfROIZones() - * before get data. - * PAL will fill a NumberOfROIZones times the corresponding data structure - * used in the measurement function. - * - * @note This function is not Implemented - * - * @param Dev Device Handle - * @param pHistogramMeasurementData Pointer to the histogram data structure. - * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetHistogramMeasurementData(VL53L0X_DEV Dev, - VL53L0X_HistogramMeasurementData_t *pHistogramMeasurementData); - -/** - * @brief Performs a single ranging measurement and retrieve the ranging - * measurement data - * - * @par Function Description - * This function will change the device mode to VL53L0X_DEVICEMODE_SINGLE_RANGING - * with @a VL53L0X_SetDeviceMode(), - * It performs measurement with @a VL53L0X_PerformSingleMeasurement() - * It get data from last successful Ranging measurement with - * @a VL53L0X_GetRangingMeasurementData. - * Finally it clear the interrupt with @a VL53L0X_ClearInterruptMask(). - * - * @note This function Access to the device - * - * @note This function change the device mode to - * VL53L0X_DEVICEMODE_SINGLE_RANGING - * - * @param Dev Device Handle - * @param pRangingMeasurementData Pointer to the data structure to fill up. - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_PerformSingleRangingMeasurement(VL53L0X_DEV Dev, - VL53L0X_RangingMeasurementData_t *pRangingMeasurementData); - -/** - * @brief Performs a single histogram measurement and retrieve the histogram - * measurement data - * Is equivalent to VL53L0X_PerformSingleMeasurement + - * VL53L0X_GetHistogramMeasurementData - * - * @par Function Description - * Get data from last successful Ranging measurement. - * This function will clear the interrupt in case of these are enabled. - * - * @note This function is not Implemented - * - * @param Dev Device Handle - * @param pHistogramMeasurementData Pointer to the data structure to fill up. - * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented - */ -VL53L0X_API VL53L0X_Error VL53L0X_PerformSingleHistogramMeasurement(VL53L0X_DEV Dev, - VL53L0X_HistogramMeasurementData_t *pHistogramMeasurementData); - -/** - * @brief Set the number of ROI Zones to be used for a specific Device - * - * @par Function Description - * Set the number of ROI Zones to be used for a specific Device. - * The programmed value should be less than the max number of ROI Zones given - * with @a VL53L0X_GetMaxNumberOfROIZones(). - * This version of API manage only one zone. - * - * @param Dev Device Handle - * @param NumberOfROIZones Number of ROI Zones to be used for a - * specific Device. - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INVALID_PARAMS This error is returned if - * NumberOfROIZones != 1 - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetNumberOfROIZones(VL53L0X_DEV Dev, - uint8_t NumberOfROIZones); - -/** - * @brief Get the number of ROI Zones managed by the Device - * - * @par Function Description - * Get number of ROI Zones managed by the Device - * USER should take care about @a VL53L0X_GetNumberOfROIZones() - * before get data after a perform measurement. - * PAL will fill a NumberOfROIZones times the corresponding data - * structure used in the measurement function. - * - * @note This function doesn't Access to the device - * - * @param Dev Device Handle - * @param pNumberOfROIZones Pointer to the Number of ROI Zones value. - * @return VL53L0X_ERROR_NONE Success - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetNumberOfROIZones(VL53L0X_DEV Dev, - uint8_t *pNumberOfROIZones); - -/** - * @brief Get the Maximum number of ROI Zones managed by the Device - * - * @par Function Description - * Get Maximum number of ROI Zones managed by the Device. - * - * @note This function doesn't Access to the device - * - * @param Dev Device Handle - * @param pMaxNumberOfROIZones Pointer to the Maximum Number - * of ROI Zones value. - * @return VL53L0X_ERROR_NONE Success - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetMaxNumberOfROIZones(VL53L0X_DEV Dev, - uint8_t *pMaxNumberOfROIZones); - -/** @} VL53L0X_measurement_group */ - -/** @defgroup VL53L0X_interrupt_group VL53L0X Interrupt Functions - * @brief Functions used for interrupt managements - * @{ - */ - -/** - * @brief Set the configuration of GPIO pin for a given device - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param Pin ID of the GPIO Pin - * @param Functionality Select Pin functionality. - * Refer to ::VL53L0X_GpioFunctionality - * @param DeviceMode Device Mode associated to the Gpio. - * @param Polarity Set interrupt polarity. Active high - * or active low see ::VL53L0X_InterruptPolarity - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_GPIO_NOT_EXISTING Only Pin=0 is accepted. - * @return VL53L0X_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED This error occurs - * when Functionality programmed is not in the supported list: - * Supported value are: - * VL53L0X_GPIOFUNCTIONALITY_OFF, - * VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_LOW, - * VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_HIGH, - VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_OUT, - * VL53L0X_GPIOFUNCTIONALITY_NEW_MEASURE_READY - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetGpioConfig(VL53L0X_DEV Dev, uint8_t Pin, - VL53L0X_DeviceModes DeviceMode, VL53L0X_GpioFunctionality Functionality, - VL53L0X_InterruptPolarity Polarity); - -/** - * @brief Get current configuration for GPIO pin for a given device - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param Pin ID of the GPIO Pin - * @param pDeviceMode Pointer to Device Mode associated to the Gpio. - * @param pFunctionality Pointer to Pin functionality. - * Refer to ::VL53L0X_GpioFunctionality - * @param pPolarity Pointer to interrupt polarity. - * Active high or active low see ::VL53L0X_InterruptPolarity - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_GPIO_NOT_EXISTING Only Pin=0 is accepted. - * @return VL53L0X_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED This error occurs - * when Functionality programmed is not in the supported list: - * Supported value are: - * VL53L0X_GPIOFUNCTIONALITY_OFF, - * VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_LOW, - * VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_HIGH, - * VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_OUT, - * VL53L0X_GPIOFUNCTIONALITY_NEW_MEASURE_READY - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetGpioConfig(VL53L0X_DEV Dev, uint8_t Pin, - VL53L0X_DeviceModes *pDeviceMode, - VL53L0X_GpioFunctionality *pFunctionality, - VL53L0X_InterruptPolarity *pPolarity); - -/** - * @brief Set low and high Interrupt thresholds for a given mode - * (ranging, ALS, ...) for a given device - * - * @par Function Description - * Set low and high Interrupt thresholds for a given mode (ranging, ALS, ...) - * for a given device - * - * @note This function Access to the device - * - * @note DeviceMode is ignored for the current device - * - * @param Dev Device Handle - * @param DeviceMode Device Mode for which change thresholds - * @param ThresholdLow Low threshold (mm, lux ..., depending on the mode) - * @param ThresholdHigh High threshold (mm, lux ..., depending on the mode) - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetInterruptThresholds(VL53L0X_DEV Dev, - VL53L0X_DeviceModes DeviceMode, FixPoint1616_t ThresholdLow, - FixPoint1616_t ThresholdHigh); - -/** - * @brief Get high and low Interrupt thresholds for a given mode - * (ranging, ALS, ...) for a given device - * - * @par Function Description - * Get high and low Interrupt thresholds for a given mode (ranging, ALS, ...) - * for a given device - * - * @note This function Access to the device - * - * @note DeviceMode is ignored for the current device - * - * @param Dev Device Handle - * @param DeviceMode Device Mode from which read thresholds - * @param pThresholdLow Low threshold (mm, lux ..., depending on the mode) - * @param pThresholdHigh High threshold (mm, lux ..., depending on the mode) - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetInterruptThresholds(VL53L0X_DEV Dev, - VL53L0X_DeviceModes DeviceMode, FixPoint1616_t *pThresholdLow, - FixPoint1616_t *pThresholdHigh); - -/** - * @brief Return device stop completion status - * - * @par Function Description - * Returns stop completiob status. - * User shall call this function after a stop command - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pStopStatus Pointer to status variable to update - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetStopCompletedStatus(VL53L0X_DEV Dev, - uint32_t *pStopStatus); - - -/** - * @brief Clear given system interrupt condition - * - * @par Function Description - * Clear given interrupt(s). - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param InterruptMask Mask of interrupts to clear - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_INTERRUPT_NOT_CLEARED Cannot clear interrupts - * - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_ClearInterruptMask(VL53L0X_DEV Dev, - uint32_t InterruptMask); - -/** - * @brief Return device interrupt status - * - * @par Function Description - * Returns currently raised interrupts by the device. - * User shall be able to activate/deactivate interrupts through - * @a VL53L0X_SetGpioConfig() - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pInterruptMaskStatus Pointer to status variable to update - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetInterruptMaskStatus(VL53L0X_DEV Dev, - uint32_t *pInterruptMaskStatus); - -/** - * @brief Configure ranging interrupt reported to system - * - * @note This function is not Implemented - * - * @param Dev Device Handle - * @param InterruptMask Mask of interrupt to Enable/disable - * (0:interrupt disabled or 1: interrupt enabled) - * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented - */ -VL53L0X_API VL53L0X_Error VL53L0X_EnableInterruptMask(VL53L0X_DEV Dev, - uint32_t InterruptMask); - -/** @} VL53L0X_interrupt_group */ - -/** @defgroup VL53L0X_SPADfunctions_group VL53L0X SPAD Functions - * @brief Functions used for SPAD managements - * @{ - */ - -/** - * @brief Set the SPAD Ambient Damper Threshold value - * - * @par Function Description - * This function set the SPAD Ambient Damper Threshold value - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param SpadAmbientDamperThreshold SPAD Ambient Damper Threshold value - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetSpadAmbientDamperThreshold(VL53L0X_DEV Dev, - uint16_t SpadAmbientDamperThreshold); - -/** - * @brief Get the current SPAD Ambient Damper Threshold value - * - * @par Function Description - * This function get the SPAD Ambient Damper Threshold value - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pSpadAmbientDamperThreshold Pointer to programmed - * SPAD Ambient Damper Threshold value - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetSpadAmbientDamperThreshold(VL53L0X_DEV Dev, - uint16_t *pSpadAmbientDamperThreshold); - -/** - * @brief Set the SPAD Ambient Damper Factor value - * - * @par Function Description - * This function set the SPAD Ambient Damper Factor value - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param SpadAmbientDamperFactor SPAD Ambient Damper Factor value - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetSpadAmbientDamperFactor(VL53L0X_DEV Dev, - uint16_t SpadAmbientDamperFactor); - -/** - * @brief Get the current SPAD Ambient Damper Factor value - * - * @par Function Description - * This function get the SPAD Ambient Damper Factor value - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param pSpadAmbientDamperFactor Pointer to programmed SPAD Ambient - * Damper Factor value - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetSpadAmbientDamperFactor(VL53L0X_DEV Dev, - uint16_t *pSpadAmbientDamperFactor); - -/** - * @brief Performs Reference Spad Management - * - * @par Function Description - * The reference SPAD initialization procedure determines the minimum amount - * of reference spads to be enables to achieve a target reference signal rate - * and should be performed once during initialization. - * - * @note This function Access to the device - * - * @note This function change the device mode to - * VL53L0X_DEVICEMODE_SINGLE_RANGING - * - * @param Dev Device Handle - * @param refSpadCount Reports ref Spad Count - * @param isApertureSpads Reports if spads are of type - * aperture or non-aperture. - * 1:=aperture, 0:=Non-Aperture - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_REF_SPAD_INIT Error in the Ref Spad procedure. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_PerformRefSpadManagement(VL53L0X_DEV Dev, - uint32_t *refSpadCount, uint8_t *isApertureSpads); - -/** - * @brief Applies Reference SPAD configuration - * - * @par Function Description - * This function applies a given number of reference spads, identified as - * either Aperture or Non-Aperture. - * The requested spad count and type are stored within the device specific - * parameters data for access by the host. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param refSpadCount Number of ref spads. - * @param isApertureSpads Defines if spads are of type - * aperture or non-aperture. - * 1:=aperture, 0:=Non-Aperture - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_REF_SPAD_INIT Error in the in the reference - * spad configuration. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_SetReferenceSpads(VL53L0X_DEV Dev, - uint32_t refSpadCount, uint8_t isApertureSpads); - -/** - * @brief Retrieves SPAD configuration - * - * @par Function Description - * This function retrieves the current number of applied reference spads - * and also their type : Aperture or Non-Aperture. - * - * @note This function Access to the device - * - * @param Dev Device Handle - * @param refSpadCount Number ref Spad Count - * @param isApertureSpads Reports if spads are of type - * aperture or non-aperture. - * 1:=aperture, 0:=Non-Aperture - * @return VL53L0X_ERROR_NONE Success - * @return VL53L0X_ERROR_REF_SPAD_INIT Error in the in the reference - * spad configuration. - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_API VL53L0X_Error VL53L0X_GetReferenceSpads(VL53L0X_DEV Dev, - uint32_t *refSpadCount, uint8_t *isApertureSpads); - -/** @} VL53L0X_SPADfunctions_group */ - -/** @} VL53L0X_cut11_group */ - -#ifdef __cplusplus -} -#endif - -#endif /* _VL53L0X_API_H_ */ +/******************************************************************************* + Copyright � 2016, STMicroelectronics International N.V. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND + NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. + IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + *****************************************************************************/ + +#ifndef _VL53L0X_API_H_ +#define _VL53L0X_API_H_ + +#include "vl53l0x_api_strings.h" +#include "vl53l0x_def.h" +#include "vl53l0x_platform.h" + +#ifdef __cplusplus +extern "C" +{ +#endif + +#ifdef _MSC_VER +# ifdef VL53L0X_API_EXPORTS +# define VL53L0X_API __declspec(dllexport) +# else +# define VL53L0X_API +# endif +#else +# define VL53L0X_API +#endif + +/** @defgroup VL53L0X_cut11_group VL53L0X cut1.1 Function Definition + * @brief VL53L0X cut1.1 Function Definition + * @{ + */ + +/** @defgroup VL53L0X_general_group VL53L0X General Functions + * @brief General functions and definitions + * @{ + */ + +/** + * @brief Return the VL53L0X PAL Implementation Version + * + * @note This function doesn't access to the device + * + * @param pVersion Pointer to current PAL Implementation Version + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetVersion(VL53L0X_Version_t *pVersion); + +/** + * @brief Return the PAL Specification Version used for the current + * implementation. + * + * @note This function doesn't access to the device + * + * @param pPalSpecVersion Pointer to current PAL Specification Version + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetPalSpecVersion( + VL53L0X_Version_t *pPalSpecVersion); + +/** + * @brief Reads the Product Revision for a for given Device + * This function can be used to distinguish cut1.0 from cut1.1. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pProductRevisionMajor Pointer to Product Revision Major + * for a given Device + * @param pProductRevisionMinor Pointer to Product Revision Minor + * for a given Device + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetProductRevision(VL53L0X_DEV Dev, + uint8_t *pProductRevisionMajor, uint8_t *pProductRevisionMinor); + +/** + * @brief Reads the Device information for given Device + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pVL53L0X_DeviceInfo Pointer to current device info for a given + * Device + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetDeviceInfo(VL53L0X_DEV Dev, + VL53L0X_DeviceInfo_t *pVL53L0X_DeviceInfo); + +/** + * @brief Read current status of the error register for the selected device + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pDeviceErrorStatus Pointer to current error code of the device + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetDeviceErrorStatus(VL53L0X_DEV Dev, + VL53L0X_DeviceError *pDeviceErrorStatus); + +/** + * @brief Human readable Range Status string for a given RangeStatus + * + * @note This function doesn't access to the device + * + * @param RangeStatus The RangeStatus code as stored on + * @a VL53L0X_RangingMeasurementData_t + * @param pRangeStatusString The returned RangeStatus string. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetRangeStatusString(uint8_t RangeStatus, + char *pRangeStatusString); + +/** + * @brief Human readable error string for a given Error Code + * + * @note This function doesn't access to the device + * + * @param ErrorCode The error code as stored on ::VL53L0X_DeviceError + * @param pDeviceErrorString The error string corresponding to the ErrorCode + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetDeviceErrorString( + VL53L0X_DeviceError ErrorCode, char *pDeviceErrorString); + +/** + * @brief Human readable error string for current PAL error status + * + * @note This function doesn't access to the device + * + * @param PalErrorCode The error code as stored on @a VL53L0X_Error + * @param pPalErrorString The error string corresponding to the + * PalErrorCode + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetPalErrorString(VL53L0X_Error PalErrorCode, + char *pPalErrorString); + +/** + * @brief Human readable PAL State string + * + * @note This function doesn't access to the device + * + * @param PalStateCode The State code as stored on @a VL53L0X_State + * @param pPalStateString The State string corresponding to the + * PalStateCode + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetPalStateString(VL53L0X_State PalStateCode, + char *pPalStateString); + +/** + * @brief Reads the internal state of the PAL for a given Device + * + * @note This function doesn't access to the device + * + * @param Dev Device Handle + * @param pPalState Pointer to current state of the PAL for a + * given Device + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetPalState(VL53L0X_DEV Dev, + VL53L0X_State *pPalState); + +/** + * @brief Set the power mode for a given Device + * The power mode can be Standby or Idle. Different level of both Standby and + * Idle can exists. + * This function should not be used when device is in Ranging state. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param PowerMode The value of the power mode to set. + * see ::VL53L0X_PowerModes + * Valid values are: + * VL53L0X_POWERMODE_STANDBY_LEVEL1, + * VL53L0X_POWERMODE_IDLE_LEVEL1 + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_MODE_NOT_SUPPORTED This error occurs when PowerMode + * is not in the supported list + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetPowerMode(VL53L0X_DEV Dev, + VL53L0X_PowerModes PowerMode); + +/** + * @brief Get the power mode for a given Device + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pPowerMode Pointer to the current value of the power + * mode. see ::VL53L0X_PowerModes + * Valid values are: + * VL53L0X_POWERMODE_STANDBY_LEVEL1, + * VL53L0X_POWERMODE_IDLE_LEVEL1 + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetPowerMode(VL53L0X_DEV Dev, + VL53L0X_PowerModes *pPowerMode); + +/** + * Set or over-hide part to part calibration offset + * \sa VL53L0X_DataInit() VL53L0X_GetOffsetCalibrationDataMicroMeter() + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param OffsetCalibrationDataMicroMeter Offset (microns) + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetOffsetCalibrationDataMicroMeter( + VL53L0X_DEV Dev, int32_t OffsetCalibrationDataMicroMeter); + +/** + * @brief Get part to part calibration offset + * + * @par Function Description + * Should only be used after a successful call to @a VL53L0X_DataInit to backup + * device NVM value + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pOffsetCalibrationDataMicroMeter Return part to part + * calibration offset from device (microns) + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetOffsetCalibrationDataMicroMeter( + VL53L0X_DEV Dev, int32_t *pOffsetCalibrationDataMicroMeter); + +/** + * Set the linearity corrective gain + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param LinearityCorrectiveGain Linearity corrective + * gain in x1000 + * if value is 1000 then no modification is applied. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetLinearityCorrectiveGain(VL53L0X_DEV Dev, + int16_t LinearityCorrectiveGain); + +/** + * @brief Get the linearity corrective gain + * + * @par Function Description + * Should only be used after a successful call to @a VL53L0X_DataInit to backup + * device NVM value + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pLinearityCorrectiveGain Pointer to the linearity + * corrective gain in x1000 + * if value is 1000 then no modification is applied. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetLinearityCorrectiveGain(VL53L0X_DEV Dev, + uint16_t *pLinearityCorrectiveGain); + +/** + * Set Group parameter Hold state + * + * @par Function Description + * Set or remove device internal group parameter hold + * + * @note This function is not Implemented + * + * @param Dev Device Handle + * @param GroupParamHold Group parameter Hold state to be set (on/off) + * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetGroupParamHold(VL53L0X_DEV Dev, + uint8_t GroupParamHold); + +/** + * @brief Get the maximal distance for actual setup + * @par Function Description + * Device must be initialized through @a VL53L0X_SetParameters() prior calling + * this function. + * + * Any range value more than the value returned is to be considered as + * "no target detected" or + * "no target in detectable range"\n + * @warning The maximal distance depends on the setup + * + * @note This function is not Implemented + * + * @param Dev Device Handle + * @param pUpperLimitMilliMeter The maximal range limit for actual setup + * (in millimeter) + * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetUpperLimitMilliMeter(VL53L0X_DEV Dev, + uint16_t *pUpperLimitMilliMeter); + + +/** + * @brief Get the Total Signal Rate + * @par Function Description + * This function will return the Total Signal Rate after a good ranging is done. + * + * @note This function access to Device + * + * @param Dev Device Handle + * @param pTotalSignalRate Total Signal Rate value in Mega count per second + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_Error VL53L0X_GetTotalSignalRate(VL53L0X_DEV Dev, + FixPoint1616_t *pTotalSignalRate); + +/** @} VL53L0X_general_group */ + +/** @defgroup VL53L0X_init_group VL53L0X Init Functions + * @brief VL53L0X Init Functions + * @{ + */ + +/** + * @brief Set new device address + * + * After completion the device will answer to the new address programmed. + * This function should be called when several devices are used in parallel + * before start programming the sensor. + * When a single device us used, there is no need to call this function. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param DeviceAddress The new Device address + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetDeviceAddress(VL53L0X_DEV Dev, + uint8_t DeviceAddress); + +/** + * + * @brief One time device initialization + * + * To be called once and only once after device is brought out of reset + * (Chip enable) and booted see @a VL53L0X_WaitDeviceBooted() + * + * @par Function Description + * When not used after a fresh device "power up" or reset, it may return + * @a #VL53L0X_ERROR_CALIBRATION_WARNING meaning wrong calibration data + * may have been fetched from device that can result in ranging offset error\n + * If application cannot execute device reset or need to run VL53L0X_DataInit + * multiple time then it must ensure proper offset calibration saving and + * restore on its own by using @a VL53L0X_GetOffsetCalibrationData() on first + * power up and then @a VL53L0X_SetOffsetCalibrationData() in all subsequent init + * This function will change the VL53L0X_State from VL53L0X_STATE_POWERDOWN to + * VL53L0X_STATE_WAIT_STATICINIT. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_DataInit(VL53L0X_DEV Dev); + +/** + * @brief Set the tuning settings pointer + * + * This function is used to specify the Tuning settings buffer to be used + * for a given device. The buffer contains all the necessary data to permit + * the API to write tuning settings. + * This function permit to force the usage of either external or internal + * tuning settings. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pTuningSettingBuffer Pointer to tuning settings buffer. + * @param UseInternalTuningSettings Use internal tuning settings value. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetTuningSettingBuffer(VL53L0X_DEV Dev, + uint8_t *pTuningSettingBuffer, uint8_t UseInternalTuningSettings); + +/** + * @brief Get the tuning settings pointer and the internal external switch + * value. + * + * This function is used to get the Tuning settings buffer pointer and the + * value. + * of the switch to select either external or internal tuning settings. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param ppTuningSettingBuffer Pointer to tuning settings buffer. + * @param pUseInternalTuningSettings Pointer to store Use internal tuning + * settings value. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetTuningSettingBuffer(VL53L0X_DEV Dev, + uint8_t **ppTuningSettingBuffer, uint8_t *pUseInternalTuningSettings); + +/** + * @brief Do basic device init (and eventually patch loading) + * This function will change the VL53L0X_State from + * VL53L0X_STATE_WAIT_STATICINIT to VL53L0X_STATE_IDLE. + * In this stage all default setting will be applied. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_StaticInit(VL53L0X_DEV Dev); + +/** + * @brief Wait for device booted after chip enable (hardware standby) + * This function can be run only when VL53L0X_State is VL53L0X_STATE_POWERDOWN. + * + * @note This function is not Implemented + * + * @param Dev Device Handle + * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented + * + */ +VL53L0X_API VL53L0X_Error VL53L0X_WaitDeviceBooted(VL53L0X_DEV Dev); + +/** + * @brief Do an hard reset or soft reset (depending on implementation) of the + * device \nAfter call of this function, device must be in same state as right + * after a power-up sequence.This function will change the VL53L0X_State to + * VL53L0X_STATE_POWERDOWN. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_ResetDevice(VL53L0X_DEV Dev); + +/** @} VL53L0X_init_group */ + +/** @defgroup VL53L0X_parameters_group VL53L0X Parameters Functions + * @brief Functions used to prepare and setup the device + * @{ + */ + +/** + * @brief Prepare device for operation + * @par Function Description + * Update device with provided parameters + * @li Then start ranging operation. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pDeviceParameters Pointer to store current device parameters. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetDeviceParameters(VL53L0X_DEV Dev, + const VL53L0X_DeviceParameters_t *pDeviceParameters); + +/** + * @brief Retrieve current device parameters + * @par Function Description + * Get actual parameters of the device + * @li Then start ranging operation. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pDeviceParameters Pointer to store current device parameters. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetDeviceParameters(VL53L0X_DEV Dev, + VL53L0X_DeviceParameters_t *pDeviceParameters); + +/** + * @brief Set a new device mode + * @par Function Description + * Set device to a new mode (ranging, histogram ...) + * + * @note This function doesn't Access to the device + * + * @param Dev Device Handle + * @param DeviceMode New device mode to apply + * Valid values are: + * VL53L0X_DEVICEMODE_SINGLE_RANGING + * VL53L0X_DEVICEMODE_CONTINUOUS_RANGING + * VL53L0X_DEVICEMODE_CONTINUOUS_TIMED_RANGING + * VL53L0X_DEVICEMODE_SINGLE_HISTOGRAM + * VL53L0X_HISTOGRAMMODE_REFERENCE_ONLY + * VL53L0X_HISTOGRAMMODE_RETURN_ONLY + * VL53L0X_HISTOGRAMMODE_BOTH + * + * + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_MODE_NOT_SUPPORTED This error occurs when DeviceMode is + * not in the supported list + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetDeviceMode(VL53L0X_DEV Dev, + VL53L0X_DeviceModes DeviceMode); + +/** + * @brief Get current new device mode + * @par Function Description + * Get actual mode of the device(ranging, histogram ...) + * + * @note This function doesn't Access to the device + * + * @param Dev Device Handle + * @param pDeviceMode Pointer to current apply mode value + * Valid values are: + * VL53L0X_DEVICEMODE_SINGLE_RANGING + * VL53L0X_DEVICEMODE_CONTINUOUS_RANGING + * VL53L0X_DEVICEMODE_CONTINUOUS_TIMED_RANGING + * VL53L0X_DEVICEMODE_SINGLE_HISTOGRAM + * VL53L0X_HISTOGRAMMODE_REFERENCE_ONLY + * VL53L0X_HISTOGRAMMODE_RETURN_ONLY + * VL53L0X_HISTOGRAMMODE_BOTH + * + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_MODE_NOT_SUPPORTED This error occurs when + * DeviceMode is not in the supported list + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetDeviceMode(VL53L0X_DEV Dev, + VL53L0X_DeviceModes *pDeviceMode); + +/** + * @brief Sets the resolution of range measurements. + * @par Function Description + * Set resolution of range measurements to either 0.25mm if + * fraction enabled or 1mm if not enabled. + * + * @note This function Accesses the device + * + * @param Dev Device Handle + * @param Enable Enable high resolution + * + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetRangeFractionEnable(VL53L0X_DEV Dev, + uint8_t Enable); + +/** + * @brief Gets the fraction enable parameter indicating the resolution of + * range measurements. + * + * @par Function Description + * Gets the fraction enable state, which translates to the resolution of + * range measurements as follows :Enabled:=0.25mm resolution, + * Not Enabled:=1mm resolution. + * + * @note This function Accesses the device + * + * @param Dev Device Handle + * @param pEnable Output Parameter reporting the fraction enable state. + * + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetFractionEnable(VL53L0X_DEV Dev, + uint8_t *pEnable); + +/** + * @brief Set a new Histogram mode + * @par Function Description + * Set device to a new Histogram mode + * + * @note This function doesn't Access to the device + * + * @param Dev Device Handle + * @param HistogramMode New device mode to apply + * Valid values are: + * VL53L0X_HISTOGRAMMODE_DISABLED + * VL53L0X_DEVICEMODE_SINGLE_HISTOGRAM + * VL53L0X_HISTOGRAMMODE_REFERENCE_ONLY + * VL53L0X_HISTOGRAMMODE_RETURN_ONLY + * VL53L0X_HISTOGRAMMODE_BOTH + * + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_MODE_NOT_SUPPORTED This error occurs when + * HistogramMode is not in the supported list + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetHistogramMode(VL53L0X_DEV Dev, + VL53L0X_HistogramModes HistogramMode); + +/** + * @brief Get current new device mode + * @par Function Description + * Get current Histogram mode of a Device + * + * @note This function doesn't Access to the device + * + * @param Dev Device Handle + * @param pHistogramMode Pointer to current Histogram Mode value + * Valid values are: + * VL53L0X_HISTOGRAMMODE_DISABLED + * VL53L0X_DEVICEMODE_SINGLE_HISTOGRAM + * VL53L0X_HISTOGRAMMODE_REFERENCE_ONLY + * VL53L0X_HISTOGRAMMODE_RETURN_ONLY + * VL53L0X_HISTOGRAMMODE_BOTH + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetHistogramMode(VL53L0X_DEV Dev, + VL53L0X_HistogramModes *pHistogramMode); + +/** + * @brief Set Ranging Timing Budget in microseconds + * + * @par Function Description + * Defines the maximum time allowed by the user to the device to run a + * full ranging sequence for the current mode (ranging, histogram, ASL ...) + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param MeasurementTimingBudgetMicroSeconds Max measurement time in + * microseconds. + * Valid values are: + * >= 17000 microsecs when wraparound enabled + * >= 12000 microsecs when wraparound disabled + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS This error is returned if + MeasurementTimingBudgetMicroSeconds out of range + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetMeasurementTimingBudgetMicroSeconds( + VL53L0X_DEV Dev, uint32_t MeasurementTimingBudgetMicroSeconds); + +/** + * @brief Get Ranging Timing Budget in microseconds + * + * @par Function Description + * Returns the programmed the maximum time allowed by the user to the + * device to run a full ranging sequence for the current mode + * (ranging, histogram, ASL ...) + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pMeasurementTimingBudgetMicroSeconds Max measurement time in + * microseconds. + * Valid values are: + * >= 17000 microsecs when wraparound enabled + * >= 12000 microsecs when wraparound disabled + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetMeasurementTimingBudgetMicroSeconds( + VL53L0X_DEV Dev, uint32_t *pMeasurementTimingBudgetMicroSeconds); + +/** + * @brief Gets the VCSEL pulse period. + * + * @par Function Description + * This function retrieves the VCSEL pulse period for the given period type. + * + * @note This function Accesses the device + * + * @param Dev Device Handle + * @param VcselPeriodType VCSEL period identifier (pre-range|final). + * @param pVCSELPulsePeriod Pointer to VCSEL period value. + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS Error VcselPeriodType parameter not + * supported. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetVcselPulsePeriod(VL53L0X_DEV Dev, + VL53L0X_VcselPeriod VcselPeriodType, uint8_t *pVCSELPulsePeriod); + +/** + * @brief Sets the VCSEL pulse period. + * + * @par Function Description + * This function retrieves the VCSEL pulse period for the given period type. + * + * @note This function Accesses the device + * + * @param Dev Device Handle + * @param VcselPeriodType VCSEL period identifier (pre-range|final). + * @param VCSELPulsePeriod VCSEL period value + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS Error VcselPeriodType parameter not + * supported. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetVcselPulsePeriod(VL53L0X_DEV Dev, + VL53L0X_VcselPeriod VcselPeriodType, uint8_t VCSELPulsePeriod); + +/** + * @brief Sets the (on/off) state of a requested sequence step. + * + * @par Function Description + * This function enables/disables a requested sequence step. + * + * @note This function Accesses the device + * + * @param Dev Device Handle + * @param SequenceStepId Sequence step identifier. + * @param SequenceStepEnabled Demanded state {0=Off,1=On} + * is enabled. + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS Error SequenceStepId parameter not + * supported. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetSequenceStepEnable(VL53L0X_DEV Dev, + VL53L0X_SequenceStepId SequenceStepId, uint8_t SequenceStepEnabled); + +/** + * @brief Gets the (on/off) state of a requested sequence step. + * + * @par Function Description + * This function retrieves the state of a requested sequence step, i.e. on/off. + * + * @note This function Accesses the device + * + * @param Dev Device Handle + * @param SequenceStepId Sequence step identifier. + * @param pSequenceStepEnabled Out parameter reporting if the sequence step + * is enabled {0=Off,1=On}. + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS Error SequenceStepId parameter not + * supported. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetSequenceStepEnable(VL53L0X_DEV Dev, + VL53L0X_SequenceStepId SequenceStepId, uint8_t *pSequenceStepEnabled); + +/** + * @brief Gets the (on/off) state of all sequence steps. + * + * @par Function Description + * This function retrieves the state of all sequence step in the scheduler. + * + * @note This function Accesses the device + * + * @param Dev Device Handle + * @param pSchedulerSequenceSteps Pointer to struct containing result. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetSequenceStepEnables(VL53L0X_DEV Dev, + VL53L0X_SchedulerSequenceSteps_t *pSchedulerSequenceSteps); + +/** + * @brief Sets the timeout of a requested sequence step. + * + * @par Function Description + * This function sets the timeout of a requested sequence step. + * + * @note This function Accesses the device + * + * @param Dev Device Handle + * @param SequenceStepId Sequence step identifier. + * @param TimeOutMilliSecs Demanded timeout + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS Error SequenceStepId parameter not + * supported. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetSequenceStepTimeout(VL53L0X_DEV Dev, + VL53L0X_SequenceStepId SequenceStepId, FixPoint1616_t TimeOutMilliSecs); + +/** + * @brief Gets the timeout of a requested sequence step. + * + * @par Function Description + * This function retrieves the timeout of a requested sequence step. + * + * @note This function Accesses the device + * + * @param Dev Device Handle + * @param SequenceStepId Sequence step identifier. + * @param pTimeOutMilliSecs Timeout value. + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS Error SequenceStepId parameter not + * supported. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetSequenceStepTimeout(VL53L0X_DEV Dev, + VL53L0X_SequenceStepId SequenceStepId, + FixPoint1616_t *pTimeOutMilliSecs); + +/** + * @brief Gets number of sequence steps managed by the API. + * + * @par Function Description + * This function retrieves the number of sequence steps currently managed + * by the API + * + * @note This function Accesses the device + * + * @param Dev Device Handle + * @param pNumberOfSequenceSteps Out parameter reporting the number of + * sequence steps. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetNumberOfSequenceSteps(VL53L0X_DEV Dev, + uint8_t *pNumberOfSequenceSteps); + +/** + * @brief Gets the name of a given sequence step. + * + * @par Function Description + * This function retrieves the name of sequence steps corresponding to + * SequenceStepId. + * + * @note This function doesn't Accesses the device + * + * @param SequenceStepId Sequence step identifier. + * @param pSequenceStepsString Pointer to Info string + * + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetSequenceStepsInfo( + VL53L0X_SequenceStepId SequenceStepId, char *pSequenceStepsString); + +/** + * Program continuous mode Inter-Measurement period in milliseconds + * + * @par Function Description + * When trying to set too short time return INVALID_PARAMS minimal value + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param InterMeasurementPeriodMilliSeconds Inter-Measurement Period in ms. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetInterMeasurementPeriodMilliSeconds( + VL53L0X_DEV Dev, uint32_t InterMeasurementPeriodMilliSeconds); + +/** + * Get continuous mode Inter-Measurement period in milliseconds + * + * @par Function Description + * When trying to set too short time return INVALID_PARAMS minimal value + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pInterMeasurementPeriodMilliSeconds Pointer to programmed + * Inter-Measurement Period in milliseconds. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetInterMeasurementPeriodMilliSeconds( + VL53L0X_DEV Dev, uint32_t *pInterMeasurementPeriodMilliSeconds); + +/** + * @brief Enable/Disable Cross talk compensation feature + * + * @note This function is not Implemented. + * Enable/Disable Cross Talk by set to zero the Cross Talk value + * by using @a VL53L0X_SetXTalkCompensationRateMegaCps(). + * + * @param Dev Device Handle + * @param XTalkCompensationEnable Cross talk compensation + * to be set 0=disabled else = enabled + * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetXTalkCompensationEnable(VL53L0X_DEV Dev, + uint8_t XTalkCompensationEnable); + +/** + * @brief Get Cross talk compensation rate + * + * @note This function is not Implemented. + * Enable/Disable Cross Talk by set to zero the Cross Talk value by + * using @a VL53L0X_SetXTalkCompensationRateMegaCps(). + * + * @param Dev Device Handle + * @param pXTalkCompensationEnable Pointer to the Cross talk compensation + * state 0=disabled or 1 = enabled + * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetXTalkCompensationEnable(VL53L0X_DEV Dev, + uint8_t *pXTalkCompensationEnable); + +/** + * @brief Set Cross talk compensation rate + * + * @par Function Description + * Set Cross talk compensation rate. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param XTalkCompensationRateMegaCps Compensation rate in + * Mega counts per second (16.16 fix point) see datasheet for details + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetXTalkCompensationRateMegaCps(VL53L0X_DEV Dev, + FixPoint1616_t XTalkCompensationRateMegaCps); + +/** + * @brief Get Cross talk compensation rate + * + * @par Function Description + * Get Cross talk compensation rate. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pXTalkCompensationRateMegaCps Pointer to Compensation rate + in Mega counts per second (16.16 fix point) see datasheet for details + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetXTalkCompensationRateMegaCps(VL53L0X_DEV Dev, + FixPoint1616_t *pXTalkCompensationRateMegaCps); + +/** + * @brief Set Reference Calibration Parameters + * + * @par Function Description + * Set Reference Calibration Parameters. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param VhvSettings Parameter for VHV + * @param PhaseCal Parameter for PhaseCal + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetRefCalibration(VL53L0X_DEV Dev, + uint8_t VhvSettings, uint8_t PhaseCal); + +/** + * @brief Get Reference Calibration Parameters + * + * @par Function Description + * Get Reference Calibration Parameters. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pVhvSettings Pointer to VHV parameter + * @param pPhaseCal Pointer to PhaseCal Parameter + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetRefCalibration(VL53L0X_DEV Dev, + uint8_t *pVhvSettings, uint8_t *pPhaseCal); + +/** + * @brief Get the number of the check limit managed by a given Device + * + * @par Function Description + * This function give the number of the check limit managed by the Device + * + * @note This function doesn't Access to the device + * + * @param pNumberOfLimitCheck Pointer to the number of check limit. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetNumberOfLimitCheck( + uint16_t *pNumberOfLimitCheck); + +/** + * @brief Return a description string for a given limit check number + * + * @par Function Description + * This function returns a description string for a given limit check number. + * The limit check is identified with the LimitCheckId. + * + * @note This function doesn't Access to the device + * + * @param Dev Device Handle + * @param LimitCheckId Limit Check ID + (0<= LimitCheckId < VL53L0X_GetNumberOfLimitCheck() ). + * @param pLimitCheckString Pointer to the + description string of the given check limit. + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS This error is + returned when LimitCheckId value is out of range. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetLimitCheckInfo(VL53L0X_DEV Dev, + uint16_t LimitCheckId, char *pLimitCheckString); + +/** + * @brief Return a the Status of the specified check limit + * + * @par Function Description + * This function returns the Status of the specified check limit. + * The value indicate if the check is fail or not. + * The limit check is identified with the LimitCheckId. + * + * @note This function doesn't Access to the device + * + * @param Dev Device Handle + * @param LimitCheckId Limit Check ID + (0<= LimitCheckId < VL53L0X_GetNumberOfLimitCheck() ). + * @param pLimitCheckStatus Pointer to the + Limit Check Status of the given check limit. + * LimitCheckStatus : + * 0 the check is not fail + * 1 the check if fail or not enabled + * + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS This error is + returned when LimitCheckId value is out of range. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetLimitCheckStatus(VL53L0X_DEV Dev, + uint16_t LimitCheckId, uint8_t *pLimitCheckStatus); + +/** + * @brief Enable/Disable a specific limit check + * + * @par Function Description + * This function Enable/Disable a specific limit check. + * The limit check is identified with the LimitCheckId. + * + * @note This function doesn't Access to the device + * + * @param Dev Device Handle + * @param LimitCheckId Limit Check ID + * (0<= LimitCheckId < VL53L0X_GetNumberOfLimitCheck() ). + * @param LimitCheckEnable if 1 the check limit + * corresponding to LimitCheckId is Enabled + * if 0 the check limit + * corresponding to LimitCheckId is disabled + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS This error is returned + * when LimitCheckId value is out of range. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetLimitCheckEnable(VL53L0X_DEV Dev, + uint16_t LimitCheckId, uint8_t LimitCheckEnable); + +/** + * @brief Get specific limit check enable state + * + * @par Function Description + * This function get the enable state of a specific limit check. + * The limit check is identified with the LimitCheckId. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param LimitCheckId Limit Check ID + * (0<= LimitCheckId < VL53L0X_GetNumberOfLimitCheck() ). + * @param pLimitCheckEnable Pointer to the check limit enable + * value. + * if 1 the check limit + * corresponding to LimitCheckId is Enabled + * if 0 the check limit + * corresponding to LimitCheckId is disabled + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS This error is returned + * when LimitCheckId value is out of range. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetLimitCheckEnable(VL53L0X_DEV Dev, + uint16_t LimitCheckId, uint8_t *pLimitCheckEnable); + +/** + * @brief Set a specific limit check value + * + * @par Function Description + * This function set a specific limit check value. + * The limit check is identified with the LimitCheckId. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param LimitCheckId Limit Check ID + * (0<= LimitCheckId < VL53L0X_GetNumberOfLimitCheck() ). + * @param LimitCheckValue Limit check Value for a given + * LimitCheckId + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS This error is returned when either + * LimitCheckId or LimitCheckValue value is out of range. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetLimitCheckValue(VL53L0X_DEV Dev, + uint16_t LimitCheckId, FixPoint1616_t LimitCheckValue); + +/** + * @brief Get a specific limit check value + * + * @par Function Description + * This function get a specific limit check value from device then it updates + * internal values and check enables. + * The limit check is identified with the LimitCheckId. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param LimitCheckId Limit Check ID + * (0<= LimitCheckId < VL53L0X_GetNumberOfLimitCheck() ). + * @param pLimitCheckValue Pointer to Limit + * check Value for a given LimitCheckId. + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS This error is returned + * when LimitCheckId value is out of range. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetLimitCheckValue(VL53L0X_DEV Dev, + uint16_t LimitCheckId, FixPoint1616_t *pLimitCheckValue); + +/** + * @brief Get the current value of the signal used for the limit check + * + * @par Function Description + * This function get a the current value of the signal used for the limit check. + * To obtain the latest value you should run a ranging before. + * The value reported is linked to the limit check identified with the + * LimitCheckId. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param LimitCheckId Limit Check ID + * (0<= LimitCheckId < VL53L0X_GetNumberOfLimitCheck() ). + * @param pLimitCheckCurrent Pointer to current Value for a + * given LimitCheckId. + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS This error is returned when + * LimitCheckId value is out of range. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetLimitCheckCurrent(VL53L0X_DEV Dev, + uint16_t LimitCheckId, FixPoint1616_t *pLimitCheckCurrent); + +/** + * @brief Enable (or disable) Wrap around Check + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param WrapAroundCheckEnable Wrap around Check to be set + * 0=disabled, other = enabled + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetWrapAroundCheckEnable(VL53L0X_DEV Dev, + uint8_t WrapAroundCheckEnable); + +/** + * @brief Get setup of Wrap around Check + * + * @par Function Description + * This function get the wrapAround check enable parameters + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pWrapAroundCheckEnable Pointer to the Wrap around Check state + * 0=disabled or 1 = enabled + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetWrapAroundCheckEnable(VL53L0X_DEV Dev, + uint8_t *pWrapAroundCheckEnable); + +/** + * @brief Set Dmax Calibration Parameters for a given device + * When one of the parameter is zero, this function will get parameter + * from NVM. + * @note This function doesn't Access to the device + * + * @param Dev Device Handle + * @param RangeMilliMeter Calibration Distance + * @param SignalRateRtnMegaCps Signal rate return read at CalDistance + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetDmaxCalParameters(VL53L0X_DEV Dev, + uint16_t RangeMilliMeter, FixPoint1616_t SignalRateRtnMegaCps); + +/** + * @brief Get Dmax Calibration Parameters for a given device + * + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pRangeMilliMeter Pointer to Calibration Distance + * @param pSignalRateRtnMegaCps Pointer to Signal rate return + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetDmaxCalParameters(VL53L0X_DEV Dev, + uint16_t *pRangeMilliMeter, FixPoint1616_t *pSignalRateRtnMegaCps); + +/** @} VL53L0X_parameters_group */ + +/** @defgroup VL53L0X_measurement_group VL53L0X Measurement Functions + * @brief Functions used for the measurements + * @{ + */ + +/** + * @brief Single shot measurement. + * + * @par Function Description + * Perform simple measurement sequence (Start measure, Wait measure to end, + * and returns when measurement is done). + * Once function returns, user can get valid data by calling + * VL53L0X_GetRangingMeasurement or VL53L0X_GetHistogramMeasurement + * depending on defined measurement mode + * User should Clear the interrupt in case this are enabled by using the + * function VL53L0X_ClearInterruptMask(). + * + * @warning This function is a blocking function + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_PerformSingleMeasurement(VL53L0X_DEV Dev); + +/** + * @brief Perform Reference Calibration + * + * @details Perform a reference calibration of the Device. + * This function should be run from time to time before doing + * a ranging measurement. + * This function will launch a special ranging measurement, so + * if interrupt are enable an interrupt will be done. + * This function will clear the interrupt generated automatically. + * + * @warning This function is a blocking function + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pVhvSettings Pointer to vhv settings parameter. + * @param pPhaseCal Pointer to PhaseCal parameter. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_PerformRefCalibration(VL53L0X_DEV Dev, + uint8_t *pVhvSettings, uint8_t *pPhaseCal); + +/** + * @brief Perform XTalk Measurement + * + * @details Measures the current cross talk from glass in front + * of the sensor. + * This functions performs a histogram measurement and uses the results + * to measure the crosstalk. For the function to be successful, there + * must be no target in front of the sensor. + * + * @warning This function is a blocking function + * + * @warning This function is not supported when the final range + * vcsel clock period is set below 10 PCLKS. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param TimeoutMs Histogram measurement duration. + * @param pXtalkPerSpad Output parameter containing the crosstalk + * measurement result, in MCPS/Spad. Format fixpoint 16:16. + * @param pAmbientTooHigh Output parameter which indicate that + * pXtalkPerSpad is not good if the Ambient is too high. + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS vcsel clock period not supported + * for this operation. Must not be less than 10PCLKS. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_PerformXTalkMeasurement(VL53L0X_DEV Dev, + uint32_t TimeoutMs, FixPoint1616_t *pXtalkPerSpad, + uint8_t *pAmbientTooHigh); + +/** + * @brief Perform XTalk Calibration + * + * @details Perform a XTalk calibration of the Device. + * This function will launch a ranging measurement, if interrupts + * are enabled an interrupt will be done. + * This function will clear the interrupt generated automatically. + * This function will program a new value for the XTalk compensation + * and it will enable the cross talk before exit. + * This function will disable the VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD. + * + * @warning This function is a blocking function + * + * @note This function Access to the device + * + * @note This function change the device mode to + * VL53L0X_DEVICEMODE_SINGLE_RANGING + * + * @param Dev Device Handle + * @param XTalkCalDistance XTalkCalDistance value used for the XTalk + * computation. + * @param pXTalkCompensationRateMegaCps Pointer to new + * XTalkCompensation value. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_PerformXTalkCalibration(VL53L0X_DEV Dev, + FixPoint1616_t XTalkCalDistance, + FixPoint1616_t *pXTalkCompensationRateMegaCps); + +/** + * @brief Perform Offset Calibration + * + * @details Perform a Offset calibration of the Device. + * This function will launch a ranging measurement, if interrupts are + * enabled an interrupt will be done. + * This function will clear the interrupt generated automatically. + * This function will program a new value for the Offset calibration value + * This function will disable the VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD. + * + * @warning This function is a blocking function + * + * @note This function Access to the device + * + * @note This function does not change the device mode. + * + * @param Dev Device Handle + * @param CalDistanceMilliMeter Calibration distance value used for the + * offset compensation. + * @param pOffsetMicroMeter Pointer to new Offset value computed by the + * function. + * + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_PerformOffsetCalibration(VL53L0X_DEV Dev, + FixPoint1616_t CalDistanceMilliMeter, int32_t *pOffsetMicroMeter); + +/** + * @brief Start device measurement + * + * @details Started measurement will depend on device parameters set through + * @a VL53L0X_SetParameters() + * This is a non-blocking function. + * This function will change the VL53L0X_State from VL53L0X_STATE_IDLE to + * VL53L0X_STATE_RUNNING. + * + * @note This function Access to the device + * + + * @param Dev Device Handle + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_MODE_NOT_SUPPORTED This error occurs when + * DeviceMode programmed with @a VL53L0X_SetDeviceMode is not in the supported + * list: + * Supported mode are: + * VL53L0X_DEVICEMODE_SINGLE_RANGING, + * VL53L0X_DEVICEMODE_CONTINUOUS_RANGING, + * VL53L0X_DEVICEMODE_CONTINUOUS_TIMED_RANGING + * @return VL53L0X_ERROR_TIME_OUT Time out on start measurement + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_StartMeasurement(VL53L0X_DEV Dev); + +/** + * @brief Stop device measurement + * + * @details Will set the device in standby mode at end of current measurement\n + * Not necessary in single mode as device shall return automatically + * in standby mode at end of measurement. + * This function will change the VL53L0X_State from VL53L0X_STATE_RUNNING + * to VL53L0X_STATE_IDLE. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_StopMeasurement(VL53L0X_DEV Dev); + +/** + * @brief Return Measurement Data Ready + * + * @par Function Description + * This function indicate that a measurement data is ready. + * This function check if interrupt mode is used then check is done accordingly. + * If perform function clear the interrupt, this function will not work, + * like in case of @a VL53L0X_PerformSingleRangingMeasurement(). + * The previous function is blocking function, VL53L0X_GetMeasurementDataReady + * is used for non-blocking capture. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pMeasurementDataReady Pointer to Measurement Data Ready. + * 0=data not ready, 1 = data ready + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetMeasurementDataReady(VL53L0X_DEV Dev, + uint8_t *pMeasurementDataReady); + +/** + * @brief Wait for device ready for a new measurement command. + * Blocking function. + * + * @note This function is not Implemented + * + * @param Dev Device Handle + * @param MaxLoop Max Number of polling loop (timeout). + * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented + */ +VL53L0X_API VL53L0X_Error VL53L0X_WaitDeviceReadyForNewMeasurement(VL53L0X_DEV Dev, + uint32_t MaxLoop); + +/** + * @brief Retrieve the Reference Signal after a measurements + * + * @par Function Description + * Get Reference Signal from last successful Ranging measurement + * This function return a valid value after that you call the + * @a VL53L0X_GetRangingMeasurementData(). + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pMeasurementRefSignal Pointer to the Ref Signal to fill up. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetMeasurementRefSignal(VL53L0X_DEV Dev, + FixPoint1616_t *pMeasurementRefSignal); + +/** + * @brief Retrieve the measurements from device for a given setup + * + * @par Function Description + * Get data from last successful Ranging measurement + * @warning USER should take care about @a VL53L0X_GetNumberOfROIZones() + * before get data. + * PAL will fill a NumberOfROIZones times the corresponding data + * structure used in the measurement function. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pRangingMeasurementData Pointer to the data structure to fill up. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetRangingMeasurementData(VL53L0X_DEV Dev, + VL53L0X_RangingMeasurementData_t *pRangingMeasurementData); + +/** + * @brief Retrieve the measurements from device for a given setup + * + * @par Function Description + * Get data from last successful Histogram measurement + * @warning USER should take care about @a VL53L0X_GetNumberOfROIZones() + * before get data. + * PAL will fill a NumberOfROIZones times the corresponding data structure + * used in the measurement function. + * + * @note This function is not Implemented + * + * @param Dev Device Handle + * @param pHistogramMeasurementData Pointer to the histogram data structure. + * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetHistogramMeasurementData(VL53L0X_DEV Dev, + VL53L0X_HistogramMeasurementData_t *pHistogramMeasurementData); + +/** + * @brief Performs a single ranging measurement and retrieve the ranging + * measurement data + * + * @par Function Description + * This function will change the device mode to VL53L0X_DEVICEMODE_SINGLE_RANGING + * with @a VL53L0X_SetDeviceMode(), + * It performs measurement with @a VL53L0X_PerformSingleMeasurement() + * It get data from last successful Ranging measurement with + * @a VL53L0X_GetRangingMeasurementData. + * Finally it clear the interrupt with @a VL53L0X_ClearInterruptMask(). + * + * @note This function Access to the device + * + * @note This function change the device mode to + * VL53L0X_DEVICEMODE_SINGLE_RANGING + * + * @param Dev Device Handle + * @param pRangingMeasurementData Pointer to the data structure to fill up. + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_PerformSingleRangingMeasurement(VL53L0X_DEV Dev, + VL53L0X_RangingMeasurementData_t *pRangingMeasurementData); + +/** + * @brief Performs a single histogram measurement and retrieve the histogram + * measurement data + * Is equivalent to VL53L0X_PerformSingleMeasurement + + * VL53L0X_GetHistogramMeasurementData + * + * @par Function Description + * Get data from last successful Ranging measurement. + * This function will clear the interrupt in case of these are enabled. + * + * @note This function is not Implemented + * + * @param Dev Device Handle + * @param pHistogramMeasurementData Pointer to the data structure to fill up. + * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented + */ +VL53L0X_API VL53L0X_Error VL53L0X_PerformSingleHistogramMeasurement(VL53L0X_DEV Dev, + VL53L0X_HistogramMeasurementData_t *pHistogramMeasurementData); + +/** + * @brief Set the number of ROI Zones to be used for a specific Device + * + * @par Function Description + * Set the number of ROI Zones to be used for a specific Device. + * The programmed value should be less than the max number of ROI Zones given + * with @a VL53L0X_GetMaxNumberOfROIZones(). + * This version of API manage only one zone. + * + * @param Dev Device Handle + * @param NumberOfROIZones Number of ROI Zones to be used for a + * specific Device. + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INVALID_PARAMS This error is returned if + * NumberOfROIZones != 1 + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetNumberOfROIZones(VL53L0X_DEV Dev, + uint8_t NumberOfROIZones); + +/** + * @brief Get the number of ROI Zones managed by the Device + * + * @par Function Description + * Get number of ROI Zones managed by the Device + * USER should take care about @a VL53L0X_GetNumberOfROIZones() + * before get data after a perform measurement. + * PAL will fill a NumberOfROIZones times the corresponding data + * structure used in the measurement function. + * + * @note This function doesn't Access to the device + * + * @param Dev Device Handle + * @param pNumberOfROIZones Pointer to the Number of ROI Zones value. + * @return VL53L0X_ERROR_NONE Success + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetNumberOfROIZones(VL53L0X_DEV Dev, + uint8_t *pNumberOfROIZones); + +/** + * @brief Get the Maximum number of ROI Zones managed by the Device + * + * @par Function Description + * Get Maximum number of ROI Zones managed by the Device. + * + * @note This function doesn't Access to the device + * + * @param Dev Device Handle + * @param pMaxNumberOfROIZones Pointer to the Maximum Number + * of ROI Zones value. + * @return VL53L0X_ERROR_NONE Success + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetMaxNumberOfROIZones(VL53L0X_DEV Dev, + uint8_t *pMaxNumberOfROIZones); + +/** @} VL53L0X_measurement_group */ + +/** @defgroup VL53L0X_interrupt_group VL53L0X Interrupt Functions + * @brief Functions used for interrupt managements + * @{ + */ + +/** + * @brief Set the configuration of GPIO pin for a given device + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param Pin ID of the GPIO Pin + * @param Functionality Select Pin functionality. + * Refer to ::VL53L0X_GpioFunctionality + * @param DeviceMode Device Mode associated to the Gpio. + * @param Polarity Set interrupt polarity. Active high + * or active low see ::VL53L0X_InterruptPolarity + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_GPIO_NOT_EXISTING Only Pin=0 is accepted. + * @return VL53L0X_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED This error occurs + * when Functionality programmed is not in the supported list: + * Supported value are: + * VL53L0X_GPIOFUNCTIONALITY_OFF, + * VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_LOW, + * VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_HIGH, + VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_OUT, + * VL53L0X_GPIOFUNCTIONALITY_NEW_MEASURE_READY + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetGpioConfig(VL53L0X_DEV Dev, uint8_t Pin, + VL53L0X_DeviceModes DeviceMode, VL53L0X_GpioFunctionality Functionality, + VL53L0X_InterruptPolarity Polarity); + +/** + * @brief Get current configuration for GPIO pin for a given device + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param Pin ID of the GPIO Pin + * @param pDeviceMode Pointer to Device Mode associated to the Gpio. + * @param pFunctionality Pointer to Pin functionality. + * Refer to ::VL53L0X_GpioFunctionality + * @param pPolarity Pointer to interrupt polarity. + * Active high or active low see ::VL53L0X_InterruptPolarity + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_GPIO_NOT_EXISTING Only Pin=0 is accepted. + * @return VL53L0X_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED This error occurs + * when Functionality programmed is not in the supported list: + * Supported value are: + * VL53L0X_GPIOFUNCTIONALITY_OFF, + * VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_LOW, + * VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_HIGH, + * VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_OUT, + * VL53L0X_GPIOFUNCTIONALITY_NEW_MEASURE_READY + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetGpioConfig(VL53L0X_DEV Dev, uint8_t Pin, + VL53L0X_DeviceModes *pDeviceMode, + VL53L0X_GpioFunctionality *pFunctionality, + VL53L0X_InterruptPolarity *pPolarity); + +/** + * @brief Set low and high Interrupt thresholds for a given mode + * (ranging, ALS, ...) for a given device + * + * @par Function Description + * Set low and high Interrupt thresholds for a given mode (ranging, ALS, ...) + * for a given device + * + * @note This function Access to the device + * + * @note DeviceMode is ignored for the current device + * + * @param Dev Device Handle + * @param DeviceMode Device Mode for which change thresholds + * @param ThresholdLow Low threshold (mm, lux ..., depending on the mode) + * @param ThresholdHigh High threshold (mm, lux ..., depending on the mode) + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetInterruptThresholds(VL53L0X_DEV Dev, + VL53L0X_DeviceModes DeviceMode, FixPoint1616_t ThresholdLow, + FixPoint1616_t ThresholdHigh); + +/** + * @brief Get high and low Interrupt thresholds for a given mode + * (ranging, ALS, ...) for a given device + * + * @par Function Description + * Get high and low Interrupt thresholds for a given mode (ranging, ALS, ...) + * for a given device + * + * @note This function Access to the device + * + * @note DeviceMode is ignored for the current device + * + * @param Dev Device Handle + * @param DeviceMode Device Mode from which read thresholds + * @param pThresholdLow Low threshold (mm, lux ..., depending on the mode) + * @param pThresholdHigh High threshold (mm, lux ..., depending on the mode) + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetInterruptThresholds(VL53L0X_DEV Dev, + VL53L0X_DeviceModes DeviceMode, FixPoint1616_t *pThresholdLow, + FixPoint1616_t *pThresholdHigh); + +/** + * @brief Return device stop completion status + * + * @par Function Description + * Returns stop completiob status. + * User shall call this function after a stop command + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pStopStatus Pointer to status variable to update + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetStopCompletedStatus(VL53L0X_DEV Dev, + uint32_t *pStopStatus); + + +/** + * @brief Clear given system interrupt condition + * + * @par Function Description + * Clear given interrupt(s). + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param InterruptMask Mask of interrupts to clear + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_INTERRUPT_NOT_CLEARED Cannot clear interrupts + * + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_ClearInterruptMask(VL53L0X_DEV Dev, + uint32_t InterruptMask); + +/** + * @brief Return device interrupt status + * + * @par Function Description + * Returns currently raised interrupts by the device. + * User shall be able to activate/deactivate interrupts through + * @a VL53L0X_SetGpioConfig() + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pInterruptMaskStatus Pointer to status variable to update + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetInterruptMaskStatus(VL53L0X_DEV Dev, + uint32_t *pInterruptMaskStatus); + +/** + * @brief Configure ranging interrupt reported to system + * + * @note This function is not Implemented + * + * @param Dev Device Handle + * @param InterruptMask Mask of interrupt to Enable/disable + * (0:interrupt disabled or 1: interrupt enabled) + * @return VL53L0X_ERROR_NOT_IMPLEMENTED Not implemented + */ +VL53L0X_API VL53L0X_Error VL53L0X_EnableInterruptMask(VL53L0X_DEV Dev, + uint32_t InterruptMask); + +/** @} VL53L0X_interrupt_group */ + +/** @defgroup VL53L0X_SPADfunctions_group VL53L0X SPAD Functions + * @brief Functions used for SPAD managements + * @{ + */ + +/** + * @brief Set the SPAD Ambient Damper Threshold value + * + * @par Function Description + * This function set the SPAD Ambient Damper Threshold value + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param SpadAmbientDamperThreshold SPAD Ambient Damper Threshold value + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetSpadAmbientDamperThreshold(VL53L0X_DEV Dev, + uint16_t SpadAmbientDamperThreshold); + +/** + * @brief Get the current SPAD Ambient Damper Threshold value + * + * @par Function Description + * This function get the SPAD Ambient Damper Threshold value + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pSpadAmbientDamperThreshold Pointer to programmed + * SPAD Ambient Damper Threshold value + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetSpadAmbientDamperThreshold(VL53L0X_DEV Dev, + uint16_t *pSpadAmbientDamperThreshold); + +/** + * @brief Set the SPAD Ambient Damper Factor value + * + * @par Function Description + * This function set the SPAD Ambient Damper Factor value + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param SpadAmbientDamperFactor SPAD Ambient Damper Factor value + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetSpadAmbientDamperFactor(VL53L0X_DEV Dev, + uint16_t SpadAmbientDamperFactor); + +/** + * @brief Get the current SPAD Ambient Damper Factor value + * + * @par Function Description + * This function get the SPAD Ambient Damper Factor value + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param pSpadAmbientDamperFactor Pointer to programmed SPAD Ambient + * Damper Factor value + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetSpadAmbientDamperFactor(VL53L0X_DEV Dev, + uint16_t *pSpadAmbientDamperFactor); + +/** + * @brief Performs Reference Spad Management + * + * @par Function Description + * The reference SPAD initialization procedure determines the minimum amount + * of reference spads to be enables to achieve a target reference signal rate + * and should be performed once during initialization. + * + * @note This function Access to the device + * + * @note This function change the device mode to + * VL53L0X_DEVICEMODE_SINGLE_RANGING + * + * @param Dev Device Handle + * @param refSpadCount Reports ref Spad Count + * @param isApertureSpads Reports if spads are of type + * aperture or non-aperture. + * 1:=aperture, 0:=Non-Aperture + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_REF_SPAD_INIT Error in the Ref Spad procedure. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_PerformRefSpadManagement(VL53L0X_DEV Dev, + uint32_t *refSpadCount, uint8_t *isApertureSpads); + +/** + * @brief Applies Reference SPAD configuration + * + * @par Function Description + * This function applies a given number of reference spads, identified as + * either Aperture or Non-Aperture. + * The requested spad count and type are stored within the device specific + * parameters data for access by the host. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param refSpadCount Number of ref spads. + * @param isApertureSpads Defines if spads are of type + * aperture or non-aperture. + * 1:=aperture, 0:=Non-Aperture + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_REF_SPAD_INIT Error in the in the reference + * spad configuration. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_SetReferenceSpads(VL53L0X_DEV Dev, + uint32_t refSpadCount, uint8_t isApertureSpads); + +/** + * @brief Retrieves SPAD configuration + * + * @par Function Description + * This function retrieves the current number of applied reference spads + * and also their type : Aperture or Non-Aperture. + * + * @note This function Access to the device + * + * @param Dev Device Handle + * @param refSpadCount Number ref Spad Count + * @param isApertureSpads Reports if spads are of type + * aperture or non-aperture. + * 1:=aperture, 0:=Non-Aperture + * @return VL53L0X_ERROR_NONE Success + * @return VL53L0X_ERROR_REF_SPAD_INIT Error in the in the reference + * spad configuration. + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_API VL53L0X_Error VL53L0X_GetReferenceSpads(VL53L0X_DEV Dev, + uint32_t *refSpadCount, uint8_t *isApertureSpads); + +/** @} VL53L0X_SPADfunctions_group */ + +/** @} VL53L0X_cut11_group */ + +#ifdef __cplusplus +} +#endif + +#endif /* _VL53L0X_API_H_ */ diff --git a/STS/TOF/vl53l0x/vl53l0x_api_calibration.c b/STS/TOF/vl53l0x/vl53l0x_api_calibration.c index 2995897..70a77a9 100644 --- a/STS/TOF/vl53l0x/vl53l0x_api_calibration.c +++ b/STS/TOF/vl53l0x/vl53l0x_api_calibration.c @@ -1,1276 +1,1276 @@ -/******************************************************************************* - Copyright � 2016, STMicroelectronics International N.V. - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND - NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. - IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY - DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - ******************************************************************************/ - -#include "vl53l0x_api.h" -#include "vl53l0x_api_core.h" -#include "vl53l0x_api_calibration.h" - -#ifndef __KERNEL__ -#include <stdlib.h> -#endif - -#define LOG_FUNCTION_START(fmt, ...) \ - _LOG_FUNCTION_START(TRACE_MODULE_API, fmt, ##__VA_ARGS__) -#define LOG_FUNCTION_END(status, ...) \ - _LOG_FUNCTION_END(TRACE_MODULE_API, status, ##__VA_ARGS__) -#define LOG_FUNCTION_END_FMT(status, fmt, ...) \ - _LOG_FUNCTION_END_FMT(TRACE_MODULE_API, status, fmt, ##__VA_ARGS__) - -#define REF_ARRAY_SPAD_0 0 -#define REF_ARRAY_SPAD_5 5 -#define REF_ARRAY_SPAD_10 10 - -uint32_t refArrayQuadrants[4] = {REF_ARRAY_SPAD_10, REF_ARRAY_SPAD_5, - REF_ARRAY_SPAD_0, REF_ARRAY_SPAD_5 }; - -VL53L0X_Error VL53L0X_perform_xtalk_calibration(VL53L0X_DEV Dev, - FixPoint1616_t XTalkCalDistance, - FixPoint1616_t *pXTalkCompensationRateMegaCps) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint16_t sum_ranging = 0; - uint16_t sum_spads = 0; - FixPoint1616_t sum_signalRate = 0; - FixPoint1616_t total_count = 0; - uint8_t xtalk_meas = 0; - VL53L0X_RangingMeasurementData_t RangingMeasurementData; - FixPoint1616_t xTalkStoredMeanSignalRate; - FixPoint1616_t xTalkStoredMeanRange; - FixPoint1616_t xTalkStoredMeanRtnSpads; - uint32_t signalXTalkTotalPerSpad; - uint32_t xTalkStoredMeanRtnSpadsAsInt; - uint32_t xTalkCalDistanceAsInt; - FixPoint1616_t XTalkCompensationRateMegaCps; - - if (XTalkCalDistance <= 0) - Status = VL53L0X_ERROR_INVALID_PARAMS; - - /* Disable the XTalk compensation */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetXTalkCompensationEnable(Dev, 0); - - /* Disable the RIT */ - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_SetLimitCheckEnable(Dev, - VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, 0); - } - - /* Perform 50 measurements and compute the averages */ - if (Status == VL53L0X_ERROR_NONE) { - sum_ranging = 0; - sum_spads = 0; - sum_signalRate = 0; - total_count = 0; - for (xtalk_meas = 0; xtalk_meas < 50; xtalk_meas++) { - Status = VL53L0X_PerformSingleRangingMeasurement(Dev, - &RangingMeasurementData); - - if (Status != VL53L0X_ERROR_NONE) - break; - - /* The range is valid when RangeStatus = 0 */ - if (RangingMeasurementData.RangeStatus == 0) { - sum_ranging = sum_ranging + - RangingMeasurementData.RangeMilliMeter; - sum_signalRate = sum_signalRate + - RangingMeasurementData.SignalRateRtnMegaCps; - sum_spads = sum_spads + - RangingMeasurementData.EffectiveSpadRtnCount - / 256; - total_count = total_count + 1; - } - } - - /* no valid values found */ - if (total_count == 0) - Status = VL53L0X_ERROR_RANGE_ERROR; - - } - - - if (Status == VL53L0X_ERROR_NONE) { - /* FixPoint1616_t / uint16_t = FixPoint1616_t */ - xTalkStoredMeanSignalRate = sum_signalRate / total_count; - xTalkStoredMeanRange = (FixPoint1616_t)((uint32_t)( - sum_ranging << 16) / total_count); - xTalkStoredMeanRtnSpads = (FixPoint1616_t)((uint32_t)( - sum_spads << 16) / total_count); - - /* Round Mean Spads to Whole Number. - * Typically the calculated mean SPAD count is a whole number - * or very close to a whole - * number, therefore any truncation will not result in a - * significant loss in accuracy. - * Also, for a grey target at a typical distance of around - * 400mm, around 220 SPADs will - * be enabled, therefore, any truncation will result in a loss - * of accuracy of less than - * 0.5%. - */ - xTalkStoredMeanRtnSpadsAsInt = (xTalkStoredMeanRtnSpads + - 0x8000) >> 16; - - /* Round Cal Distance to Whole Number. - * Note that the cal distance is in mm, therefore no resolution - * is lost.*/ - xTalkCalDistanceAsInt = (XTalkCalDistance + 0x8000) >> 16; - - if (xTalkStoredMeanRtnSpadsAsInt == 0 || - xTalkCalDistanceAsInt == 0 || - xTalkStoredMeanRange >= XTalkCalDistance) { - XTalkCompensationRateMegaCps = 0; - } else { - /* Round Cal Distance to Whole Number. - Note that the cal distance is in mm, therefore no - resolution is lost.*/ - xTalkCalDistanceAsInt = (XTalkCalDistance + - 0x8000) >> 16; - - /* Apply division by mean spad count early in the - * calculation to keep the numbers small. - * This ensures we can maintain a 32bit calculation. - * Fixed1616 / int := Fixed1616 */ - signalXTalkTotalPerSpad = (xTalkStoredMeanSignalRate) / - xTalkStoredMeanRtnSpadsAsInt; - - /* Complete the calculation for total Signal XTalk per - * SPAD - * Fixed1616 * (Fixed1616 - Fixed1616/int) := - * (2^16 * Fixed1616) - */ - signalXTalkTotalPerSpad *= ((1 << 16) - - (xTalkStoredMeanRange / xTalkCalDistanceAsInt)); - - /* Round from 2^16 * Fixed1616, to Fixed1616. */ - XTalkCompensationRateMegaCps = (signalXTalkTotalPerSpad - + 0x8000) >> 16; - } - - *pXTalkCompensationRateMegaCps = XTalkCompensationRateMegaCps; - - /* Enable the XTalk compensation */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetXTalkCompensationEnable(Dev, 1); - - /* Enable the XTalk compensation */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetXTalkCompensationRateMegaCps(Dev, - XTalkCompensationRateMegaCps); - - } - - return Status; -} - -VL53L0X_Error VL53L0X_perform_offset_calibration(VL53L0X_DEV Dev, - FixPoint1616_t CalDistanceMilliMeter, - int32_t *pOffsetMicroMeter) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint16_t sum_ranging = 0; - FixPoint1616_t total_count = 0; - VL53L0X_RangingMeasurementData_t RangingMeasurementData; - FixPoint1616_t StoredMeanRange; - uint32_t StoredMeanRangeAsInt; - uint32_t CalDistanceAsInt_mm; - uint8_t SequenceStepEnabled; - int meas = 0; - - if (CalDistanceMilliMeter <= 0) - Status = VL53L0X_ERROR_INVALID_PARAMS; - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetOffsetCalibrationDataMicroMeter(Dev, 0); - - - /* Get the value of the TCC */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_GetSequenceStepEnable(Dev, - VL53L0X_SEQUENCESTEP_TCC, &SequenceStepEnabled); - - - /* Disable the TCC */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetSequenceStepEnable(Dev, - VL53L0X_SEQUENCESTEP_TCC, 0); - - - /* Disable the RIT */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_SetLimitCheckEnable(Dev, - VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, 0); - - /* Perform 50 measurements and compute the averages */ - if (Status == VL53L0X_ERROR_NONE) { - sum_ranging = 0; - total_count = 0; - for (meas = 0; meas < 50; meas++) { - Status = VL53L0X_PerformSingleRangingMeasurement(Dev, - &RangingMeasurementData); - - if (Status != VL53L0X_ERROR_NONE) - break; - - /* The range is valid when RangeStatus = 0 */ - if (RangingMeasurementData.RangeStatus == 0) { - sum_ranging = sum_ranging + - RangingMeasurementData.RangeMilliMeter; - total_count = total_count + 1; - } - } - - /* no valid values found */ - if (total_count == 0) - Status = VL53L0X_ERROR_RANGE_ERROR; - } - - - if (Status == VL53L0X_ERROR_NONE) { - /* FixPoint1616_t / uint16_t = FixPoint1616_t */ - StoredMeanRange = (FixPoint1616_t)((uint32_t)(sum_ranging << 16) - / total_count); - - StoredMeanRangeAsInt = (StoredMeanRange + 0x8000) >> 16; - - /* Round Cal Distance to Whole Number. - * Note that the cal distance is in mm, therefore no resolution - * is lost.*/ - CalDistanceAsInt_mm = (CalDistanceMilliMeter + 0x8000) >> 16; - - *pOffsetMicroMeter = (CalDistanceAsInt_mm - - StoredMeanRangeAsInt) * 1000; - - /* Apply the calculated offset */ - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_SETPARAMETERFIELD(Dev, RangeOffsetMicroMeters, - *pOffsetMicroMeter); - Status = VL53L0X_SetOffsetCalibrationDataMicroMeter(Dev, - *pOffsetMicroMeter); - } - - } - - /* Restore the TCC */ - if (Status == VL53L0X_ERROR_NONE) { - if (SequenceStepEnabled != 0) - Status = VL53L0X_SetSequenceStepEnable(Dev, - VL53L0X_SEQUENCESTEP_TCC, 1); - } - - return Status; -} - - -VL53L0X_Error VL53L0X_set_offset_calibration_data_micro_meter(VL53L0X_DEV Dev, - int32_t OffsetCalibrationDataMicroMeter) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - int32_t cMaxOffsetMicroMeter = 511000; - int32_t cMinOffsetMicroMeter = -512000; - int16_t cOffsetRange = 4096; - uint32_t encodedOffsetVal; - - LOG_FUNCTION_START(""); - - if (OffsetCalibrationDataMicroMeter > cMaxOffsetMicroMeter) - OffsetCalibrationDataMicroMeter = cMaxOffsetMicroMeter; - else if (OffsetCalibrationDataMicroMeter < cMinOffsetMicroMeter) - OffsetCalibrationDataMicroMeter = cMinOffsetMicroMeter; - - /* The offset register is 10.2 format and units are mm - * therefore conversion is applied by a division of - * 250. - */ - if (OffsetCalibrationDataMicroMeter >= 0) { - encodedOffsetVal = - OffsetCalibrationDataMicroMeter/250; - } else { - encodedOffsetVal = - cOffsetRange + - OffsetCalibrationDataMicroMeter/250; - } - - Status = VL53L0X_WrWord(Dev, - VL53L0X_REG_ALGO_PART_TO_PART_RANGE_OFFSET_MM, - encodedOffsetVal); - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_get_offset_calibration_data_micro_meter(VL53L0X_DEV Dev, - int32_t *pOffsetCalibrationDataMicroMeter) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint16_t RangeOffsetRegister; - int16_t cMaxOffset = 2047; - int16_t cOffsetRange = 4096; - - /* Note that offset has 10.2 format */ - - Status = VL53L0X_RdWord(Dev, - VL53L0X_REG_ALGO_PART_TO_PART_RANGE_OFFSET_MM, - &RangeOffsetRegister); - - if (Status == VL53L0X_ERROR_NONE) { - RangeOffsetRegister = (RangeOffsetRegister & 0x0fff); - - /* Apply 12 bit 2's compliment conversion */ - if (RangeOffsetRegister > cMaxOffset) - *pOffsetCalibrationDataMicroMeter = - (int16_t)(RangeOffsetRegister - cOffsetRange) - * 250; - else - *pOffsetCalibrationDataMicroMeter = - (int16_t)RangeOffsetRegister * 250; - - } - - return Status; -} - - -VL53L0X_Error VL53L0X_apply_offset_adjustment(VL53L0X_DEV Dev) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - int32_t CorrectedOffsetMicroMeters; - int32_t CurrentOffsetMicroMeters; - - /* if we run on this function we can read all the NVM info - * used by the API */ - Status = VL53L0X_get_info_from_device(Dev, 7); - - /* Read back current device offset */ - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_GetOffsetCalibrationDataMicroMeter(Dev, - &CurrentOffsetMicroMeters); - } - - /* Apply Offset Adjustment derived from 400mm measurements */ - if (Status == VL53L0X_ERROR_NONE) { - - /* Store initial device offset */ - PALDevDataSet(Dev, Part2PartOffsetNVMMicroMeter, - CurrentOffsetMicroMeters); - - CorrectedOffsetMicroMeters = CurrentOffsetMicroMeters + - (int32_t)PALDevDataGet(Dev, - Part2PartOffsetAdjustmentNVMMicroMeter); - - Status = VL53L0X_SetOffsetCalibrationDataMicroMeter(Dev, - CorrectedOffsetMicroMeters); - - /* store current, adjusted offset */ - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_SETPARAMETERFIELD(Dev, RangeOffsetMicroMeters, - CorrectedOffsetMicroMeters); - } - } - - return Status; -} - -void get_next_good_spad(uint8_t goodSpadArray[], uint32_t size, - uint32_t curr, int32_t *next) -{ - uint32_t startIndex; - uint32_t fineOffset; - uint32_t cSpadsPerByte = 8; - uint32_t coarseIndex; - uint32_t fineIndex; - uint8_t dataByte; - uint8_t success = 0; - - /* - * Starting with the current good spad, loop through the array to find - * the next. i.e. the next bit set in the sequence. - * - * The coarse index is the byte index of the array and the fine index is - * the index of the bit within each byte. - */ - - *next = -1; - - startIndex = curr / cSpadsPerByte; - fineOffset = curr % cSpadsPerByte; - - for (coarseIndex = startIndex; ((coarseIndex < size) && !success); - coarseIndex++) { - fineIndex = 0; - dataByte = goodSpadArray[coarseIndex]; - - if (coarseIndex == startIndex) { - /* locate the bit position of the provided current - * spad bit before iterating */ - dataByte >>= fineOffset; - fineIndex = fineOffset; - } - - while (fineIndex < cSpadsPerByte) { - if ((dataByte & 0x1) == 1) { - success = 1; - *next = coarseIndex * cSpadsPerByte + fineIndex; - break; - } - dataByte >>= 1; - fineIndex++; - } - } -} - - -uint8_t is_aperture(uint32_t spadIndex) -{ - /* - * This function reports if a given spad index is an aperture SPAD by - * deriving the quadrant. - */ - uint32_t quadrant; - uint8_t isAperture = 1; - quadrant = spadIndex >> 6; - if (refArrayQuadrants[quadrant] == REF_ARRAY_SPAD_0) - isAperture = 0; - - return isAperture; -} - - -VL53L0X_Error enable_spad_bit(uint8_t spadArray[], uint32_t size, - uint32_t spadIndex) -{ - VL53L0X_Error status = VL53L0X_ERROR_NONE; - uint32_t cSpadsPerByte = 8; - uint32_t coarseIndex; - uint32_t fineIndex; - - coarseIndex = spadIndex / cSpadsPerByte; - fineIndex = spadIndex % cSpadsPerByte; - if (coarseIndex >= size) - status = VL53L0X_ERROR_REF_SPAD_INIT; - else - spadArray[coarseIndex] |= (1 << fineIndex); - - return status; -} - -VL53L0X_Error count_enabled_spads(uint8_t spadArray[], - uint32_t byteCount, uint32_t maxSpads, - uint32_t *pTotalSpadsEnabled, uint8_t *pIsAperture) -{ - VL53L0X_Error status = VL53L0X_ERROR_NONE; - uint32_t cSpadsPerByte = 8; - uint32_t lastByte; - uint32_t lastBit; - uint32_t byteIndex = 0; - uint32_t bitIndex = 0; - uint8_t tempByte; - uint8_t spadTypeIdentified = 0; - - /* The entire array will not be used for spads, therefore the last - * byte and last bit is determined from the max spads value. - */ - - lastByte = maxSpads / cSpadsPerByte; - lastBit = maxSpads % cSpadsPerByte; - - /* Check that the max spads value does not exceed the array bounds. */ - if (lastByte >= byteCount) - status = VL53L0X_ERROR_REF_SPAD_INIT; - - *pTotalSpadsEnabled = 0; - - /* Count the bits enabled in the whole bytes */ - for (byteIndex = 0; byteIndex <= (lastByte - 1); byteIndex++) { - tempByte = spadArray[byteIndex]; - - for (bitIndex = 0; bitIndex <= cSpadsPerByte; bitIndex++) { - if ((tempByte & 0x01) == 1) { - (*pTotalSpadsEnabled)++; - - if (!spadTypeIdentified) { - *pIsAperture = 1; - if ((byteIndex < 2) && (bitIndex < 4)) - *pIsAperture = 0; - spadTypeIdentified = 1; - } - } - tempByte >>= 1; - } - } - - /* Count the number of bits enabled in the last byte accounting - * for the fact that not all bits in the byte may be used. - */ - tempByte = spadArray[lastByte]; - - for (bitIndex = 0; bitIndex <= lastBit; bitIndex++) { - if ((tempByte & 0x01) == 1) - (*pTotalSpadsEnabled)++; - } - - return status; -} - -VL53L0X_Error set_ref_spad_map(VL53L0X_DEV Dev, uint8_t *refSpadArray) -{ - VL53L0X_Error status = VL53L0X_WriteMulti(Dev, - VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_0, - refSpadArray, 6); - return status; -} - -VL53L0X_Error get_ref_spad_map(VL53L0X_DEV Dev, uint8_t *refSpadArray) -{ - VL53L0X_Error status = VL53L0X_ReadMulti(Dev, - VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_0, - refSpadArray, - 6); - return status; -} - -VL53L0X_Error enable_ref_spads(VL53L0X_DEV Dev, - uint8_t apertureSpads, - uint8_t goodSpadArray[], - uint8_t spadArray[], - uint32_t size, - uint32_t start, - uint32_t offset, - uint32_t spadCount, - uint32_t *lastSpad) -{ - VL53L0X_Error status = VL53L0X_ERROR_NONE; - uint32_t index; - uint32_t i; - int32_t nextGoodSpad = offset; - uint32_t currentSpad; - uint8_t checkSpadArray[6]; - - /* - * This function takes in a spad array which may or may not have SPADS - * already enabled and appends from a given offset a requested number - * of new SPAD enables. The 'good spad map' is applied to - * determine the next SPADs to enable. - * - * This function applies to only aperture or only non-aperture spads. - * Checks are performed to ensure this. - */ - - currentSpad = offset; - for (index = 0; index < spadCount; index++) { - get_next_good_spad(goodSpadArray, size, currentSpad, - &nextGoodSpad); - - if (nextGoodSpad == -1) { - status = VL53L0X_ERROR_REF_SPAD_INIT; - break; - } - - /* Confirm that the next good SPAD is non-aperture */ - if (is_aperture(start + nextGoodSpad) != apertureSpads) { - /* if we can't get the required number of good aperture - * spads from the current quadrant then this is an error - */ - status = VL53L0X_ERROR_REF_SPAD_INIT; - break; - } - currentSpad = (uint32_t)nextGoodSpad; - enable_spad_bit(spadArray, size, currentSpad); - currentSpad++; - } - *lastSpad = currentSpad; - - if (status == VL53L0X_ERROR_NONE) - status = set_ref_spad_map(Dev, spadArray); - - - if (status == VL53L0X_ERROR_NONE) { - status = get_ref_spad_map(Dev, checkSpadArray); - - i = 0; - - /* Compare spad maps. If not equal report error. */ - while (i < size) { - if (spadArray[i] != checkSpadArray[i]) { - status = VL53L0X_ERROR_REF_SPAD_INIT; - break; - } - i++; - } - } - return status; -} - - -VL53L0X_Error perform_ref_signal_measurement(VL53L0X_DEV Dev, - uint16_t *refSignalRate) -{ - VL53L0X_Error status = VL53L0X_ERROR_NONE; - VL53L0X_RangingMeasurementData_t rangingMeasurementData; - - uint8_t SequenceConfig = 0; - - /* store the value of the sequence config, - * this will be reset before the end of the function - */ - - SequenceConfig = PALDevDataGet(Dev, SequenceConfig); - - /* - * This function performs a reference signal rate measurement. - */ - if (status == VL53L0X_ERROR_NONE) - status = VL53L0X_WrByte(Dev, - VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, 0xC0); - - if (status == VL53L0X_ERROR_NONE) - status = VL53L0X_PerformSingleRangingMeasurement(Dev, - &rangingMeasurementData); - - if (status == VL53L0X_ERROR_NONE) - status = VL53L0X_WrByte(Dev, 0xFF, 0x01); - - if (status == VL53L0X_ERROR_NONE) - status = VL53L0X_RdWord(Dev, - VL53L0X_REG_RESULT_PEAK_SIGNAL_RATE_REF, - refSignalRate); - - if (status == VL53L0X_ERROR_NONE) - status = VL53L0X_WrByte(Dev, 0xFF, 0x00); - - if (status == VL53L0X_ERROR_NONE) { - /* restore the previous Sequence Config */ - status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, - SequenceConfig); - if (status == VL53L0X_ERROR_NONE) - PALDevDataSet(Dev, SequenceConfig, SequenceConfig); - } - - return status; -} - -VL53L0X_Error VL53L0X_perform_ref_spad_management(VL53L0X_DEV Dev, - uint32_t *refSpadCount, - uint8_t *isApertureSpads) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t lastSpadArray[6]; - uint8_t startSelect = 0xB4; - uint32_t minimumSpadCount = 3; - uint32_t maxSpadCount = 44; - uint32_t currentSpadIndex = 0; - uint32_t lastSpadIndex = 0; - int32_t nextGoodSpad = 0; - uint16_t targetRefRate = 0x0A00; /* 20 MCPS in 9:7 format */ - uint16_t peakSignalRateRef; - uint32_t needAptSpads = 0; - uint32_t index = 0; - uint32_t spadArraySize = 6; - uint32_t signalRateDiff = 0; - uint32_t lastSignalRateDiff = 0; - uint8_t complete = 0; - uint8_t VhvSettings = 0; - uint8_t PhaseCal = 0; - uint32_t refSpadCount_int = 0; - uint8_t isApertureSpads_int = 0; - - /* - * The reference SPAD initialization procedure determines the minimum - * amount of reference spads to be enables to achieve a target reference - * signal rate and should be performed once during initialization. - * - * Either aperture or non-aperture spads are applied but never both. - * Firstly non-aperture spads are set, begining with 5 spads, and - * increased one spad at a time until the closest measurement to the - * target rate is achieved. - * - * If the target rate is exceeded when 5 non-aperture spads are enabled, - * initialization is performed instead with aperture spads. - * - * When setting spads, a 'Good Spad Map' is applied. - * - * This procedure operates within a SPAD window of interest of a maximum - * 44 spads. - * The start point is currently fixed to 180, which lies towards the end - * of the non-aperture quadrant and runs in to the adjacent aperture - * quadrant. - */ - - - targetRefRate = PALDevDataGet(Dev, targetRefRate); - - /* - * Initialize Spad arrays. - * Currently the good spad map is initialised to 'All good'. - * This is a short term implementation. The good spad map will be - * provided as an input. - * Note that there are 6 bytes. Only the first 44 bits will be used to - * represent spads. - */ - for (index = 0; index < spadArraySize; index++) - Dev->Data.SpadData.RefSpadEnables[index] = 0; - - - Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_DYNAMIC_SPAD_REF_EN_START_OFFSET, 0x00); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_DYNAMIC_SPAD_NUM_REQUESTED_REF_SPAD, 0x2C); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, 0xFF, 0x00); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_GLOBAL_CONFIG_REF_EN_START_SELECT, - startSelect); - - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_POWER_MANAGEMENT_GO1_POWER_FORCE, 0); - - /* Perform ref calibration */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_perform_ref_calibration(Dev, &VhvSettings, - &PhaseCal, 0); - - if (Status == VL53L0X_ERROR_NONE) { - /* Enable Minimum NON-APERTURE Spads */ - currentSpadIndex = 0; - lastSpadIndex = currentSpadIndex; - needAptSpads = 0; - Status = enable_ref_spads(Dev, - needAptSpads, - Dev->Data.SpadData.RefGoodSpadMap, - Dev->Data.SpadData.RefSpadEnables, - spadArraySize, - startSelect, - currentSpadIndex, - minimumSpadCount, - &lastSpadIndex); - } - - if (Status == VL53L0X_ERROR_NONE) { - currentSpadIndex = lastSpadIndex; - - Status = perform_ref_signal_measurement(Dev, - &peakSignalRateRef); - if ((Status == VL53L0X_ERROR_NONE) && - (peakSignalRateRef > targetRefRate)) { - /* Signal rate measurement too high, - * switch to APERTURE SPADs */ - - for (index = 0; index < spadArraySize; index++) - Dev->Data.SpadData.RefSpadEnables[index] = 0; - - - /* Increment to the first APERTURE spad */ - while ((is_aperture(startSelect + currentSpadIndex) - == 0) && (currentSpadIndex < maxSpadCount)) { - currentSpadIndex++; - } - - needAptSpads = 1; - - Status = enable_ref_spads(Dev, - needAptSpads, - Dev->Data.SpadData.RefGoodSpadMap, - Dev->Data.SpadData.RefSpadEnables, - spadArraySize, - startSelect, - currentSpadIndex, - minimumSpadCount, - &lastSpadIndex); - - if (Status == VL53L0X_ERROR_NONE) { - currentSpadIndex = lastSpadIndex; - Status = perform_ref_signal_measurement(Dev, - &peakSignalRateRef); - - if ((Status == VL53L0X_ERROR_NONE) && - (peakSignalRateRef > targetRefRate)) { - /* Signal rate still too high after - * setting the minimum number of - * APERTURE spads. Can do no more - * therefore set the min number of - * aperture spads as the result. - */ - isApertureSpads_int = 1; - refSpadCount_int = minimumSpadCount; - } - } - } else { - needAptSpads = 0; - } - } - - if ((Status == VL53L0X_ERROR_NONE) && - (peakSignalRateRef < targetRefRate)) { - /* At this point, the minimum number of either aperture - * or non-aperture spads have been set. Proceed to add - * spads and perform measurements until the target - * reference is reached. - */ - isApertureSpads_int = needAptSpads; - refSpadCount_int = minimumSpadCount; - - memcpy(lastSpadArray, Dev->Data.SpadData.RefSpadEnables, - spadArraySize); - lastSignalRateDiff = abs(peakSignalRateRef - - targetRefRate); - complete = 0; - - while (!complete) { - get_next_good_spad( - Dev->Data.SpadData.RefGoodSpadMap, - spadArraySize, currentSpadIndex, - &nextGoodSpad); - - if (nextGoodSpad == -1) { - Status = VL53L0X_ERROR_REF_SPAD_INIT; - break; - } - - /* Cannot combine Aperture and Non-Aperture spads, so - * ensure the current spad is of the correct type. - */ - if (is_aperture((uint32_t)startSelect + nextGoodSpad) != - needAptSpads) { - /* At this point we have enabled the maximum - * number of Aperture spads. - */ - complete = 1; - break; - } - - (refSpadCount_int)++; - - currentSpadIndex = nextGoodSpad; - Status = enable_spad_bit( - Dev->Data.SpadData.RefSpadEnables, - spadArraySize, currentSpadIndex); - - if (Status == VL53L0X_ERROR_NONE) { - currentSpadIndex++; - /* Proceed to apply the additional spad and - * perform measurement. */ - Status = set_ref_spad_map(Dev, - Dev->Data.SpadData.RefSpadEnables); - } - - if (Status != VL53L0X_ERROR_NONE) - break; - - Status = perform_ref_signal_measurement(Dev, - &peakSignalRateRef); - - if (Status != VL53L0X_ERROR_NONE) - break; - - signalRateDiff = abs(peakSignalRateRef - targetRefRate); - - if (peakSignalRateRef > targetRefRate) { - /* Select the spad map that provides the - * measurement closest to the target rate, - * either above or below it. - */ - if (signalRateDiff > lastSignalRateDiff) { - /* Previous spad map produced a closer - * measurement, so choose this. */ - Status = set_ref_spad_map(Dev, - lastSpadArray); - memcpy( - Dev->Data.SpadData.RefSpadEnables, - lastSpadArray, spadArraySize); - - (refSpadCount_int)--; - } - complete = 1; - } else { - /* Continue to add spads */ - lastSignalRateDiff = signalRateDiff; - memcpy(lastSpadArray, - Dev->Data.SpadData.RefSpadEnables, - spadArraySize); - } - - } /* while */ - } - - if (Status == VL53L0X_ERROR_NONE) { - *refSpadCount = refSpadCount_int; - *isApertureSpads = isApertureSpads_int; - - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, RefSpadsInitialised, 1); - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - ReferenceSpadCount, (uint8_t)(*refSpadCount)); - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - ReferenceSpadType, *isApertureSpads); - } - - return Status; -} - -VL53L0X_Error VL53L0X_set_reference_spads(VL53L0X_DEV Dev, - uint32_t count, uint8_t isApertureSpads) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint32_t currentSpadIndex = 0; - uint8_t startSelect = 0xB4; - uint32_t spadArraySize = 6; - uint32_t maxSpadCount = 44; - uint32_t lastSpadIndex; - uint32_t index; - - /* - * This function applies a requested number of reference spads, either - * aperture or - * non-aperture, as requested. - * The good spad map will be applied. - */ - - Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_DYNAMIC_SPAD_REF_EN_START_OFFSET, 0x00); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_DYNAMIC_SPAD_NUM_REQUESTED_REF_SPAD, 0x2C); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, 0xFF, 0x00); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_GLOBAL_CONFIG_REF_EN_START_SELECT, - startSelect); - - for (index = 0; index < spadArraySize; index++) - Dev->Data.SpadData.RefSpadEnables[index] = 0; - - if (isApertureSpads) { - /* Increment to the first APERTURE spad */ - while ((is_aperture(startSelect + currentSpadIndex) == 0) && - (currentSpadIndex < maxSpadCount)) { - currentSpadIndex++; - } - } - Status = enable_ref_spads(Dev, - isApertureSpads, - Dev->Data.SpadData.RefGoodSpadMap, - Dev->Data.SpadData.RefSpadEnables, - spadArraySize, - startSelect, - currentSpadIndex, - count, - &lastSpadIndex); - - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, RefSpadsInitialised, 1); - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - ReferenceSpadCount, (uint8_t)(count)); - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - ReferenceSpadType, isApertureSpads); - } - - return Status; -} - -VL53L0X_Error VL53L0X_get_reference_spads(VL53L0X_DEV Dev, - uint32_t *pSpadCount, uint8_t *pIsApertureSpads) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t refSpadsInitialised; - uint8_t refSpadArray[6]; - uint32_t cMaxSpadCount = 44; - uint32_t cSpadArraySize = 6; - uint32_t spadsEnabled; - uint8_t isApertureSpads = 0; - - refSpadsInitialised = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, - RefSpadsInitialised); - - if (refSpadsInitialised == 1) { - - *pSpadCount = (uint32_t)VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, - ReferenceSpadCount); - *pIsApertureSpads = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, - ReferenceSpadType); - } else { - - /* obtain spad info from device.*/ - Status = get_ref_spad_map(Dev, refSpadArray); - - if (Status == VL53L0X_ERROR_NONE) { - /* count enabled spads within spad map array and - * determine if Aperture or Non-Aperture. - */ - Status = count_enabled_spads(refSpadArray, - cSpadArraySize, - cMaxSpadCount, - &spadsEnabled, - &isApertureSpads); - - if (Status == VL53L0X_ERROR_NONE) { - - *pSpadCount = spadsEnabled; - *pIsApertureSpads = isApertureSpads; - - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - RefSpadsInitialised, 1); - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - ReferenceSpadCount, - (uint8_t)spadsEnabled); - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - ReferenceSpadType, isApertureSpads); - } - } - } - - return Status; -} - - -VL53L0X_Error VL53L0X_perform_single_ref_calibration(VL53L0X_DEV Dev, - uint8_t vhv_init_byte) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSRANGE_START, - VL53L0X_REG_SYSRANGE_MODE_START_STOP | - vhv_init_byte); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_measurement_poll_for_completion(Dev); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_ClearInterruptMask(Dev, 0); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSRANGE_START, 0x00); - - return Status; -} - - -VL53L0X_Error VL53L0X_ref_calibration_io(VL53L0X_DEV Dev, uint8_t read_not_write, - uint8_t VhvSettings, uint8_t PhaseCal, - uint8_t *pVhvSettings, uint8_t *pPhaseCal, - const uint8_t vhv_enable, const uint8_t phase_enable) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t PhaseCalint = 0; - - /* Read VHV from device */ - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x01); - Status |= VL53L0X_WrByte(Dev, 0x00, 0x00); - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); - - if (read_not_write) { - if (vhv_enable) - Status |= VL53L0X_RdByte(Dev, 0xCB, pVhvSettings); - if (phase_enable) - Status |= VL53L0X_RdByte(Dev, 0xEE, &PhaseCalint); - } else { - if (vhv_enable) - Status |= VL53L0X_WrByte(Dev, 0xCB, VhvSettings); - if (phase_enable) - Status |= VL53L0X_UpdateByte(Dev, 0xEE, 0x80, PhaseCal); - } - - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x01); - Status |= VL53L0X_WrByte(Dev, 0x00, 0x01); - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); - - *pPhaseCal = (uint8_t)(PhaseCalint&0xEF); - - return Status; -} - - -VL53L0X_Error VL53L0X_perform_vhv_calibration(VL53L0X_DEV Dev, - uint8_t *pVhvSettings, const uint8_t get_data_enable, - const uint8_t restore_config) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t SequenceConfig = 0; - uint8_t VhvSettings = 0; - uint8_t PhaseCal = 0; - uint8_t PhaseCalInt = 0; - - /* store the value of the sequence config, - * this will be reset before the end of the function - */ - - if (restore_config) - SequenceConfig = PALDevDataGet(Dev, SequenceConfig); - - /* Run VHV */ - Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, 0x01); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_perform_single_ref_calibration(Dev, 0x40); - - /* Read VHV from device */ - if ((Status == VL53L0X_ERROR_NONE) && (get_data_enable == 1)) { - Status = VL53L0X_ref_calibration_io(Dev, 1, - VhvSettings, PhaseCal, /* Not used here */ - pVhvSettings, &PhaseCalInt, - 1, 0); - } else - *pVhvSettings = 0; - - - if ((Status == VL53L0X_ERROR_NONE) && restore_config) { - /* restore the previous Sequence Config */ - Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, - SequenceConfig); - if (Status == VL53L0X_ERROR_NONE) - PALDevDataSet(Dev, SequenceConfig, SequenceConfig); - - } - - return Status; -} - -VL53L0X_Error VL53L0X_perform_phase_calibration(VL53L0X_DEV Dev, - uint8_t *pPhaseCal, const uint8_t get_data_enable, - const uint8_t restore_config) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t SequenceConfig = 0; - uint8_t VhvSettings = 0; - uint8_t PhaseCal = 0; - uint8_t VhvSettingsint; - - /* store the value of the sequence config, - * this will be reset before the end of the function - */ - - if (restore_config) - SequenceConfig = PALDevDataGet(Dev, SequenceConfig); - - /* Run PhaseCal */ - Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, 0x02); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_perform_single_ref_calibration(Dev, 0x0); - - /* Read PhaseCal from device */ - if ((Status == VL53L0X_ERROR_NONE) && (get_data_enable == 1)) { - Status = VL53L0X_ref_calibration_io(Dev, 1, - VhvSettings, PhaseCal, /* Not used here */ - &VhvSettingsint, pPhaseCal, - 0, 1); - } else - *pPhaseCal = 0; - - - if ((Status == VL53L0X_ERROR_NONE) && restore_config) { - /* restore the previous Sequence Config */ - Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, - SequenceConfig); - if (Status == VL53L0X_ERROR_NONE) - PALDevDataSet(Dev, SequenceConfig, SequenceConfig); - - } - - return Status; -} - -VL53L0X_Error VL53L0X_perform_ref_calibration(VL53L0X_DEV Dev, - uint8_t *pVhvSettings, uint8_t *pPhaseCal, uint8_t get_data_enable) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t SequenceConfig = 0; - - /* store the value of the sequence config, - * this will be reset before the end of the function - */ - - SequenceConfig = PALDevDataGet(Dev, SequenceConfig); - - /* In the following function we don't save the config to optimize - * writes on device. Config is saved and restored only once. */ - Status = VL53L0X_perform_vhv_calibration( - Dev, pVhvSettings, get_data_enable, 0); - - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_perform_phase_calibration( - Dev, pPhaseCal, get_data_enable, 0); - - - if (Status == VL53L0X_ERROR_NONE) { - /* restore the previous Sequence Config */ - Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, - SequenceConfig); - if (Status == VL53L0X_ERROR_NONE) - PALDevDataSet(Dev, SequenceConfig, SequenceConfig); - - } - - return Status; -} - -VL53L0X_Error VL53L0X_set_ref_calibration(VL53L0X_DEV Dev, - uint8_t VhvSettings, uint8_t PhaseCal) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t pVhvSettings; - uint8_t pPhaseCal; - - Status = VL53L0X_ref_calibration_io(Dev, 0, - VhvSettings, PhaseCal, - &pVhvSettings, &pPhaseCal, - 1, 1); - - return Status; -} - -VL53L0X_Error VL53L0X_get_ref_calibration(VL53L0X_DEV Dev, - uint8_t *pVhvSettings, uint8_t *pPhaseCal) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t VhvSettings = 0; - uint8_t PhaseCal = 0; - - Status = VL53L0X_ref_calibration_io(Dev, 1, - VhvSettings, PhaseCal, - pVhvSettings, pPhaseCal, - 1, 1); - - return Status; -} +/******************************************************************************* + Copyright � 2016, STMicroelectronics International N.V. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND + NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. + IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ******************************************************************************/ + +#include "vl53l0x_api.h" +#include "vl53l0x_api_core.h" +#include "vl53l0x_api_calibration.h" + +#ifndef __KERNEL__ +#include <stdlib.h> +#endif + +#define LOG_FUNCTION_START(fmt, ...) \ + _LOG_FUNCTION_START(TRACE_MODULE_API, fmt, ##__VA_ARGS__) +#define LOG_FUNCTION_END(status, ...) \ + _LOG_FUNCTION_END(TRACE_MODULE_API, status, ##__VA_ARGS__) +#define LOG_FUNCTION_END_FMT(status, fmt, ...) \ + _LOG_FUNCTION_END_FMT(TRACE_MODULE_API, status, fmt, ##__VA_ARGS__) + +#define REF_ARRAY_SPAD_0 0 +#define REF_ARRAY_SPAD_5 5 +#define REF_ARRAY_SPAD_10 10 + +uint32_t refArrayQuadrants[4] = {REF_ARRAY_SPAD_10, REF_ARRAY_SPAD_5, + REF_ARRAY_SPAD_0, REF_ARRAY_SPAD_5 }; + +VL53L0X_Error VL53L0X_perform_xtalk_calibration(VL53L0X_DEV Dev, + FixPoint1616_t XTalkCalDistance, + FixPoint1616_t *pXTalkCompensationRateMegaCps) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint16_t sum_ranging = 0; + uint16_t sum_spads = 0; + FixPoint1616_t sum_signalRate = 0; + FixPoint1616_t total_count = 0; + uint8_t xtalk_meas = 0; + VL53L0X_RangingMeasurementData_t RangingMeasurementData; + FixPoint1616_t xTalkStoredMeanSignalRate; + FixPoint1616_t xTalkStoredMeanRange; + FixPoint1616_t xTalkStoredMeanRtnSpads; + uint32_t signalXTalkTotalPerSpad; + uint32_t xTalkStoredMeanRtnSpadsAsInt; + uint32_t xTalkCalDistanceAsInt; + FixPoint1616_t XTalkCompensationRateMegaCps; + + if (XTalkCalDistance <= 0) + Status = VL53L0X_ERROR_INVALID_PARAMS; + + /* Disable the XTalk compensation */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetXTalkCompensationEnable(Dev, 0); + + /* Disable the RIT */ + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_SetLimitCheckEnable(Dev, + VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, 0); + } + + /* Perform 50 measurements and compute the averages */ + if (Status == VL53L0X_ERROR_NONE) { + sum_ranging = 0; + sum_spads = 0; + sum_signalRate = 0; + total_count = 0; + for (xtalk_meas = 0; xtalk_meas < 50; xtalk_meas++) { + Status = VL53L0X_PerformSingleRangingMeasurement(Dev, + &RangingMeasurementData); + + if (Status != VL53L0X_ERROR_NONE) + break; + + /* The range is valid when RangeStatus = 0 */ + if (RangingMeasurementData.RangeStatus == 0) { + sum_ranging = sum_ranging + + RangingMeasurementData.RangeMilliMeter; + sum_signalRate = sum_signalRate + + RangingMeasurementData.SignalRateRtnMegaCps; + sum_spads = sum_spads + + RangingMeasurementData.EffectiveSpadRtnCount + / 256; + total_count = total_count + 1; + } + } + + /* no valid values found */ + if (total_count == 0) + Status = VL53L0X_ERROR_RANGE_ERROR; + + } + + + if (Status == VL53L0X_ERROR_NONE) { + /* FixPoint1616_t / uint16_t = FixPoint1616_t */ + xTalkStoredMeanSignalRate = sum_signalRate / total_count; + xTalkStoredMeanRange = (FixPoint1616_t)((uint32_t)( + sum_ranging << 16) / total_count); + xTalkStoredMeanRtnSpads = (FixPoint1616_t)((uint32_t)( + sum_spads << 16) / total_count); + + /* Round Mean Spads to Whole Number. + * Typically the calculated mean SPAD count is a whole number + * or very close to a whole + * number, therefore any truncation will not result in a + * significant loss in accuracy. + * Also, for a grey target at a typical distance of around + * 400mm, around 220 SPADs will + * be enabled, therefore, any truncation will result in a loss + * of accuracy of less than + * 0.5%. + */ + xTalkStoredMeanRtnSpadsAsInt = (xTalkStoredMeanRtnSpads + + 0x8000) >> 16; + + /* Round Cal Distance to Whole Number. + * Note that the cal distance is in mm, therefore no resolution + * is lost.*/ + xTalkCalDistanceAsInt = (XTalkCalDistance + 0x8000) >> 16; + + if (xTalkStoredMeanRtnSpadsAsInt == 0 || + xTalkCalDistanceAsInt == 0 || + xTalkStoredMeanRange >= XTalkCalDistance) { + XTalkCompensationRateMegaCps = 0; + } else { + /* Round Cal Distance to Whole Number. + Note that the cal distance is in mm, therefore no + resolution is lost.*/ + xTalkCalDistanceAsInt = (XTalkCalDistance + + 0x8000) >> 16; + + /* Apply division by mean spad count early in the + * calculation to keep the numbers small. + * This ensures we can maintain a 32bit calculation. + * Fixed1616 / int := Fixed1616 */ + signalXTalkTotalPerSpad = (xTalkStoredMeanSignalRate) / + xTalkStoredMeanRtnSpadsAsInt; + + /* Complete the calculation for total Signal XTalk per + * SPAD + * Fixed1616 * (Fixed1616 - Fixed1616/int) := + * (2^16 * Fixed1616) + */ + signalXTalkTotalPerSpad *= ((1 << 16) - + (xTalkStoredMeanRange / xTalkCalDistanceAsInt)); + + /* Round from 2^16 * Fixed1616, to Fixed1616. */ + XTalkCompensationRateMegaCps = (signalXTalkTotalPerSpad + + 0x8000) >> 16; + } + + *pXTalkCompensationRateMegaCps = XTalkCompensationRateMegaCps; + + /* Enable the XTalk compensation */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetXTalkCompensationEnable(Dev, 1); + + /* Enable the XTalk compensation */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetXTalkCompensationRateMegaCps(Dev, + XTalkCompensationRateMegaCps); + + } + + return Status; +} + +VL53L0X_Error VL53L0X_perform_offset_calibration(VL53L0X_DEV Dev, + FixPoint1616_t CalDistanceMilliMeter, + int32_t *pOffsetMicroMeter) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint16_t sum_ranging = 0; + FixPoint1616_t total_count = 0; + VL53L0X_RangingMeasurementData_t RangingMeasurementData; + FixPoint1616_t StoredMeanRange; + uint32_t StoredMeanRangeAsInt; + uint32_t CalDistanceAsInt_mm; + uint8_t SequenceStepEnabled; + int meas = 0; + + if (CalDistanceMilliMeter <= 0) + Status = VL53L0X_ERROR_INVALID_PARAMS; + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetOffsetCalibrationDataMicroMeter(Dev, 0); + + + /* Get the value of the TCC */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_GetSequenceStepEnable(Dev, + VL53L0X_SEQUENCESTEP_TCC, &SequenceStepEnabled); + + + /* Disable the TCC */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetSequenceStepEnable(Dev, + VL53L0X_SEQUENCESTEP_TCC, 0); + + + /* Disable the RIT */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_SetLimitCheckEnable(Dev, + VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, 0); + + /* Perform 50 measurements and compute the averages */ + if (Status == VL53L0X_ERROR_NONE) { + sum_ranging = 0; + total_count = 0; + for (meas = 0; meas < 50; meas++) { + Status = VL53L0X_PerformSingleRangingMeasurement(Dev, + &RangingMeasurementData); + + if (Status != VL53L0X_ERROR_NONE) + break; + + /* The range is valid when RangeStatus = 0 */ + if (RangingMeasurementData.RangeStatus == 0) { + sum_ranging = sum_ranging + + RangingMeasurementData.RangeMilliMeter; + total_count = total_count + 1; + } + } + + /* no valid values found */ + if (total_count == 0) + Status = VL53L0X_ERROR_RANGE_ERROR; + } + + + if (Status == VL53L0X_ERROR_NONE) { + /* FixPoint1616_t / uint16_t = FixPoint1616_t */ + StoredMeanRange = (FixPoint1616_t)((uint32_t)(sum_ranging << 16) + / total_count); + + StoredMeanRangeAsInt = (StoredMeanRange + 0x8000) >> 16; + + /* Round Cal Distance to Whole Number. + * Note that the cal distance is in mm, therefore no resolution + * is lost.*/ + CalDistanceAsInt_mm = (CalDistanceMilliMeter + 0x8000) >> 16; + + *pOffsetMicroMeter = (CalDistanceAsInt_mm - + StoredMeanRangeAsInt) * 1000; + + /* Apply the calculated offset */ + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_SETPARAMETERFIELD(Dev, RangeOffsetMicroMeters, + *pOffsetMicroMeter); + Status = VL53L0X_SetOffsetCalibrationDataMicroMeter(Dev, + *pOffsetMicroMeter); + } + + } + + /* Restore the TCC */ + if (Status == VL53L0X_ERROR_NONE) { + if (SequenceStepEnabled != 0) + Status = VL53L0X_SetSequenceStepEnable(Dev, + VL53L0X_SEQUENCESTEP_TCC, 1); + } + + return Status; +} + + +VL53L0X_Error VL53L0X_set_offset_calibration_data_micro_meter(VL53L0X_DEV Dev, + int32_t OffsetCalibrationDataMicroMeter) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + int32_t cMaxOffsetMicroMeter = 511000; + int32_t cMinOffsetMicroMeter = -512000; + int16_t cOffsetRange = 4096; + uint32_t encodedOffsetVal; + + LOG_FUNCTION_START(""); + + if (OffsetCalibrationDataMicroMeter > cMaxOffsetMicroMeter) + OffsetCalibrationDataMicroMeter = cMaxOffsetMicroMeter; + else if (OffsetCalibrationDataMicroMeter < cMinOffsetMicroMeter) + OffsetCalibrationDataMicroMeter = cMinOffsetMicroMeter; + + /* The offset register is 10.2 format and units are mm + * therefore conversion is applied by a division of + * 250. + */ + if (OffsetCalibrationDataMicroMeter >= 0) { + encodedOffsetVal = + OffsetCalibrationDataMicroMeter/250; + } else { + encodedOffsetVal = + cOffsetRange + + OffsetCalibrationDataMicroMeter/250; + } + + Status = VL53L0X_WrWord(Dev, + VL53L0X_REG_ALGO_PART_TO_PART_RANGE_OFFSET_MM, + encodedOffsetVal); + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_get_offset_calibration_data_micro_meter(VL53L0X_DEV Dev, + int32_t *pOffsetCalibrationDataMicroMeter) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint16_t RangeOffsetRegister; + int16_t cMaxOffset = 2047; + int16_t cOffsetRange = 4096; + + /* Note that offset has 10.2 format */ + + Status = VL53L0X_RdWord(Dev, + VL53L0X_REG_ALGO_PART_TO_PART_RANGE_OFFSET_MM, + &RangeOffsetRegister); + + if (Status == VL53L0X_ERROR_NONE) { + RangeOffsetRegister = (RangeOffsetRegister & 0x0fff); + + /* Apply 12 bit 2's compliment conversion */ + if (RangeOffsetRegister > cMaxOffset) + *pOffsetCalibrationDataMicroMeter = + (int16_t)(RangeOffsetRegister - cOffsetRange) + * 250; + else + *pOffsetCalibrationDataMicroMeter = + (int16_t)RangeOffsetRegister * 250; + + } + + return Status; +} + + +VL53L0X_Error VL53L0X_apply_offset_adjustment(VL53L0X_DEV Dev) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + int32_t CorrectedOffsetMicroMeters; + int32_t CurrentOffsetMicroMeters; + + /* if we run on this function we can read all the NVM info + * used by the API */ + Status = VL53L0X_get_info_from_device(Dev, 7); + + /* Read back current device offset */ + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_GetOffsetCalibrationDataMicroMeter(Dev, + &CurrentOffsetMicroMeters); + } + + /* Apply Offset Adjustment derived from 400mm measurements */ + if (Status == VL53L0X_ERROR_NONE) { + + /* Store initial device offset */ + PALDevDataSet(Dev, Part2PartOffsetNVMMicroMeter, + CurrentOffsetMicroMeters); + + CorrectedOffsetMicroMeters = CurrentOffsetMicroMeters + + (int32_t)PALDevDataGet(Dev, + Part2PartOffsetAdjustmentNVMMicroMeter); + + Status = VL53L0X_SetOffsetCalibrationDataMicroMeter(Dev, + CorrectedOffsetMicroMeters); + + /* store current, adjusted offset */ + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_SETPARAMETERFIELD(Dev, RangeOffsetMicroMeters, + CorrectedOffsetMicroMeters); + } + } + + return Status; +} + +void get_next_good_spad(uint8_t goodSpadArray[], uint32_t size, + uint32_t curr, int32_t *next) +{ + uint32_t startIndex; + uint32_t fineOffset; + uint32_t cSpadsPerByte = 8; + uint32_t coarseIndex; + uint32_t fineIndex; + uint8_t dataByte; + uint8_t success = 0; + + /* + * Starting with the current good spad, loop through the array to find + * the next. i.e. the next bit set in the sequence. + * + * The coarse index is the byte index of the array and the fine index is + * the index of the bit within each byte. + */ + + *next = -1; + + startIndex = curr / cSpadsPerByte; + fineOffset = curr % cSpadsPerByte; + + for (coarseIndex = startIndex; ((coarseIndex < size) && !success); + coarseIndex++) { + fineIndex = 0; + dataByte = goodSpadArray[coarseIndex]; + + if (coarseIndex == startIndex) { + /* locate the bit position of the provided current + * spad bit before iterating */ + dataByte >>= fineOffset; + fineIndex = fineOffset; + } + + while (fineIndex < cSpadsPerByte) { + if ((dataByte & 0x1) == 1) { + success = 1; + *next = coarseIndex * cSpadsPerByte + fineIndex; + break; + } + dataByte >>= 1; + fineIndex++; + } + } +} + + +uint8_t is_aperture(uint32_t spadIndex) +{ + /* + * This function reports if a given spad index is an aperture SPAD by + * deriving the quadrant. + */ + uint32_t quadrant; + uint8_t isAperture = 1; + quadrant = spadIndex >> 6; + if (refArrayQuadrants[quadrant] == REF_ARRAY_SPAD_0) + isAperture = 0; + + return isAperture; +} + + +VL53L0X_Error enable_spad_bit(uint8_t spadArray[], uint32_t size, + uint32_t spadIndex) +{ + VL53L0X_Error status = VL53L0X_ERROR_NONE; + uint32_t cSpadsPerByte = 8; + uint32_t coarseIndex; + uint32_t fineIndex; + + coarseIndex = spadIndex / cSpadsPerByte; + fineIndex = spadIndex % cSpadsPerByte; + if (coarseIndex >= size) + status = VL53L0X_ERROR_REF_SPAD_INIT; + else + spadArray[coarseIndex] |= (1 << fineIndex); + + return status; +} + +VL53L0X_Error count_enabled_spads(uint8_t spadArray[], + uint32_t byteCount, uint32_t maxSpads, + uint32_t *pTotalSpadsEnabled, uint8_t *pIsAperture) +{ + VL53L0X_Error status = VL53L0X_ERROR_NONE; + uint32_t cSpadsPerByte = 8; + uint32_t lastByte; + uint32_t lastBit; + uint32_t byteIndex = 0; + uint32_t bitIndex = 0; + uint8_t tempByte; + uint8_t spadTypeIdentified = 0; + + /* The entire array will not be used for spads, therefore the last + * byte and last bit is determined from the max spads value. + */ + + lastByte = maxSpads / cSpadsPerByte; + lastBit = maxSpads % cSpadsPerByte; + + /* Check that the max spads value does not exceed the array bounds. */ + if (lastByte >= byteCount) + status = VL53L0X_ERROR_REF_SPAD_INIT; + + *pTotalSpadsEnabled = 0; + + /* Count the bits enabled in the whole bytes */ + for (byteIndex = 0; byteIndex <= (lastByte - 1); byteIndex++) { + tempByte = spadArray[byteIndex]; + + for (bitIndex = 0; bitIndex <= cSpadsPerByte; bitIndex++) { + if ((tempByte & 0x01) == 1) { + (*pTotalSpadsEnabled)++; + + if (!spadTypeIdentified) { + *pIsAperture = 1; + if ((byteIndex < 2) && (bitIndex < 4)) + *pIsAperture = 0; + spadTypeIdentified = 1; + } + } + tempByte >>= 1; + } + } + + /* Count the number of bits enabled in the last byte accounting + * for the fact that not all bits in the byte may be used. + */ + tempByte = spadArray[lastByte]; + + for (bitIndex = 0; bitIndex <= lastBit; bitIndex++) { + if ((tempByte & 0x01) == 1) + (*pTotalSpadsEnabled)++; + } + + return status; +} + +VL53L0X_Error set_ref_spad_map(VL53L0X_DEV Dev, uint8_t *refSpadArray) +{ + VL53L0X_Error status = VL53L0X_WriteMulti(Dev, + VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_0, + refSpadArray, 6); + return status; +} + +VL53L0X_Error get_ref_spad_map(VL53L0X_DEV Dev, uint8_t *refSpadArray) +{ + VL53L0X_Error status = VL53L0X_ReadMulti(Dev, + VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_0, + refSpadArray, + 6); + return status; +} + +VL53L0X_Error enable_ref_spads(VL53L0X_DEV Dev, + uint8_t apertureSpads, + uint8_t goodSpadArray[], + uint8_t spadArray[], + uint32_t size, + uint32_t start, + uint32_t offset, + uint32_t spadCount, + uint32_t *lastSpad) +{ + VL53L0X_Error status = VL53L0X_ERROR_NONE; + uint32_t index; + uint32_t i; + int32_t nextGoodSpad = offset; + uint32_t currentSpad; + uint8_t checkSpadArray[6]; + + /* + * This function takes in a spad array which may or may not have SPADS + * already enabled and appends from a given offset a requested number + * of new SPAD enables. The 'good spad map' is applied to + * determine the next SPADs to enable. + * + * This function applies to only aperture or only non-aperture spads. + * Checks are performed to ensure this. + */ + + currentSpad = offset; + for (index = 0; index < spadCount; index++) { + get_next_good_spad(goodSpadArray, size, currentSpad, + &nextGoodSpad); + + if (nextGoodSpad == -1) { + status = VL53L0X_ERROR_REF_SPAD_INIT; + break; + } + + /* Confirm that the next good SPAD is non-aperture */ + if (is_aperture(start + nextGoodSpad) != apertureSpads) { + /* if we can't get the required number of good aperture + * spads from the current quadrant then this is an error + */ + status = VL53L0X_ERROR_REF_SPAD_INIT; + break; + } + currentSpad = (uint32_t)nextGoodSpad; + enable_spad_bit(spadArray, size, currentSpad); + currentSpad++; + } + *lastSpad = currentSpad; + + if (status == VL53L0X_ERROR_NONE) + status = set_ref_spad_map(Dev, spadArray); + + + if (status == VL53L0X_ERROR_NONE) { + status = get_ref_spad_map(Dev, checkSpadArray); + + i = 0; + + /* Compare spad maps. If not equal report error. */ + while (i < size) { + if (spadArray[i] != checkSpadArray[i]) { + status = VL53L0X_ERROR_REF_SPAD_INIT; + break; + } + i++; + } + } + return status; +} + + +VL53L0X_Error perform_ref_signal_measurement(VL53L0X_DEV Dev, + uint16_t *refSignalRate) +{ + VL53L0X_Error status = VL53L0X_ERROR_NONE; + VL53L0X_RangingMeasurementData_t rangingMeasurementData; + + uint8_t SequenceConfig = 0; + + /* store the value of the sequence config, + * this will be reset before the end of the function + */ + + SequenceConfig = PALDevDataGet(Dev, SequenceConfig); + + /* + * This function performs a reference signal rate measurement. + */ + if (status == VL53L0X_ERROR_NONE) + status = VL53L0X_WrByte(Dev, + VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, 0xC0); + + if (status == VL53L0X_ERROR_NONE) + status = VL53L0X_PerformSingleRangingMeasurement(Dev, + &rangingMeasurementData); + + if (status == VL53L0X_ERROR_NONE) + status = VL53L0X_WrByte(Dev, 0xFF, 0x01); + + if (status == VL53L0X_ERROR_NONE) + status = VL53L0X_RdWord(Dev, + VL53L0X_REG_RESULT_PEAK_SIGNAL_RATE_REF, + refSignalRate); + + if (status == VL53L0X_ERROR_NONE) + status = VL53L0X_WrByte(Dev, 0xFF, 0x00); + + if (status == VL53L0X_ERROR_NONE) { + /* restore the previous Sequence Config */ + status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, + SequenceConfig); + if (status == VL53L0X_ERROR_NONE) + PALDevDataSet(Dev, SequenceConfig, SequenceConfig); + } + + return status; +} + +VL53L0X_Error VL53L0X_perform_ref_spad_management(VL53L0X_DEV Dev, + uint32_t *refSpadCount, + uint8_t *isApertureSpads) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t lastSpadArray[6]; + uint8_t startSelect = 0xB4; + uint32_t minimumSpadCount = 3; + uint32_t maxSpadCount = 44; + uint32_t currentSpadIndex = 0; + uint32_t lastSpadIndex = 0; + int32_t nextGoodSpad = 0; + uint16_t targetRefRate = 0x0A00; /* 20 MCPS in 9:7 format */ + uint16_t peakSignalRateRef; + uint32_t needAptSpads = 0; + uint32_t index = 0; + uint32_t spadArraySize = 6; + uint32_t signalRateDiff = 0; + uint32_t lastSignalRateDiff = 0; + uint8_t complete = 0; + uint8_t VhvSettings = 0; + uint8_t PhaseCal = 0; + uint32_t refSpadCount_int = 0; + uint8_t isApertureSpads_int = 0; + + /* + * The reference SPAD initialization procedure determines the minimum + * amount of reference spads to be enables to achieve a target reference + * signal rate and should be performed once during initialization. + * + * Either aperture or non-aperture spads are applied but never both. + * Firstly non-aperture spads are set, begining with 5 spads, and + * increased one spad at a time until the closest measurement to the + * target rate is achieved. + * + * If the target rate is exceeded when 5 non-aperture spads are enabled, + * initialization is performed instead with aperture spads. + * + * When setting spads, a 'Good Spad Map' is applied. + * + * This procedure operates within a SPAD window of interest of a maximum + * 44 spads. + * The start point is currently fixed to 180, which lies towards the end + * of the non-aperture quadrant and runs in to the adjacent aperture + * quadrant. + */ + + + targetRefRate = PALDevDataGet(Dev, targetRefRate); + + /* + * Initialize Spad arrays. + * Currently the good spad map is initialised to 'All good'. + * This is a short term implementation. The good spad map will be + * provided as an input. + * Note that there are 6 bytes. Only the first 44 bits will be used to + * represent spads. + */ + for (index = 0; index < spadArraySize; index++) + Dev->Data.SpadData.RefSpadEnables[index] = 0; + + + Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_DYNAMIC_SPAD_REF_EN_START_OFFSET, 0x00); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_DYNAMIC_SPAD_NUM_REQUESTED_REF_SPAD, 0x2C); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, 0xFF, 0x00); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_GLOBAL_CONFIG_REF_EN_START_SELECT, + startSelect); + + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_POWER_MANAGEMENT_GO1_POWER_FORCE, 0); + + /* Perform ref calibration */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_perform_ref_calibration(Dev, &VhvSettings, + &PhaseCal, 0); + + if (Status == VL53L0X_ERROR_NONE) { + /* Enable Minimum NON-APERTURE Spads */ + currentSpadIndex = 0; + lastSpadIndex = currentSpadIndex; + needAptSpads = 0; + Status = enable_ref_spads(Dev, + needAptSpads, + Dev->Data.SpadData.RefGoodSpadMap, + Dev->Data.SpadData.RefSpadEnables, + spadArraySize, + startSelect, + currentSpadIndex, + minimumSpadCount, + &lastSpadIndex); + } + + if (Status == VL53L0X_ERROR_NONE) { + currentSpadIndex = lastSpadIndex; + + Status = perform_ref_signal_measurement(Dev, + &peakSignalRateRef); + if ((Status == VL53L0X_ERROR_NONE) && + (peakSignalRateRef > targetRefRate)) { + /* Signal rate measurement too high, + * switch to APERTURE SPADs */ + + for (index = 0; index < spadArraySize; index++) + Dev->Data.SpadData.RefSpadEnables[index] = 0; + + + /* Increment to the first APERTURE spad */ + while ((is_aperture(startSelect + currentSpadIndex) + == 0) && (currentSpadIndex < maxSpadCount)) { + currentSpadIndex++; + } + + needAptSpads = 1; + + Status = enable_ref_spads(Dev, + needAptSpads, + Dev->Data.SpadData.RefGoodSpadMap, + Dev->Data.SpadData.RefSpadEnables, + spadArraySize, + startSelect, + currentSpadIndex, + minimumSpadCount, + &lastSpadIndex); + + if (Status == VL53L0X_ERROR_NONE) { + currentSpadIndex = lastSpadIndex; + Status = perform_ref_signal_measurement(Dev, + &peakSignalRateRef); + + if ((Status == VL53L0X_ERROR_NONE) && + (peakSignalRateRef > targetRefRate)) { + /* Signal rate still too high after + * setting the minimum number of + * APERTURE spads. Can do no more + * therefore set the min number of + * aperture spads as the result. + */ + isApertureSpads_int = 1; + refSpadCount_int = minimumSpadCount; + } + } + } else { + needAptSpads = 0; + } + } + + if ((Status == VL53L0X_ERROR_NONE) && + (peakSignalRateRef < targetRefRate)) { + /* At this point, the minimum number of either aperture + * or non-aperture spads have been set. Proceed to add + * spads and perform measurements until the target + * reference is reached. + */ + isApertureSpads_int = needAptSpads; + refSpadCount_int = minimumSpadCount; + + memcpy(lastSpadArray, Dev->Data.SpadData.RefSpadEnables, + spadArraySize); + lastSignalRateDiff = abs(peakSignalRateRef - + targetRefRate); + complete = 0; + + while (!complete) { + get_next_good_spad( + Dev->Data.SpadData.RefGoodSpadMap, + spadArraySize, currentSpadIndex, + &nextGoodSpad); + + if (nextGoodSpad == -1) { + Status = VL53L0X_ERROR_REF_SPAD_INIT; + break; + } + + /* Cannot combine Aperture and Non-Aperture spads, so + * ensure the current spad is of the correct type. + */ + if (is_aperture((uint32_t)startSelect + nextGoodSpad) != + needAptSpads) { + /* At this point we have enabled the maximum + * number of Aperture spads. + */ + complete = 1; + break; + } + + (refSpadCount_int)++; + + currentSpadIndex = nextGoodSpad; + Status = enable_spad_bit( + Dev->Data.SpadData.RefSpadEnables, + spadArraySize, currentSpadIndex); + + if (Status == VL53L0X_ERROR_NONE) { + currentSpadIndex++; + /* Proceed to apply the additional spad and + * perform measurement. */ + Status = set_ref_spad_map(Dev, + Dev->Data.SpadData.RefSpadEnables); + } + + if (Status != VL53L0X_ERROR_NONE) + break; + + Status = perform_ref_signal_measurement(Dev, + &peakSignalRateRef); + + if (Status != VL53L0X_ERROR_NONE) + break; + + signalRateDiff = abs(peakSignalRateRef - targetRefRate); + + if (peakSignalRateRef > targetRefRate) { + /* Select the spad map that provides the + * measurement closest to the target rate, + * either above or below it. + */ + if (signalRateDiff > lastSignalRateDiff) { + /* Previous spad map produced a closer + * measurement, so choose this. */ + Status = set_ref_spad_map(Dev, + lastSpadArray); + memcpy( + Dev->Data.SpadData.RefSpadEnables, + lastSpadArray, spadArraySize); + + (refSpadCount_int)--; + } + complete = 1; + } else { + /* Continue to add spads */ + lastSignalRateDiff = signalRateDiff; + memcpy(lastSpadArray, + Dev->Data.SpadData.RefSpadEnables, + spadArraySize); + } + + } /* while */ + } + + if (Status == VL53L0X_ERROR_NONE) { + *refSpadCount = refSpadCount_int; + *isApertureSpads = isApertureSpads_int; + + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, RefSpadsInitialised, 1); + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + ReferenceSpadCount, (uint8_t)(*refSpadCount)); + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + ReferenceSpadType, *isApertureSpads); + } + + return Status; +} + +VL53L0X_Error VL53L0X_set_reference_spads(VL53L0X_DEV Dev, + uint32_t count, uint8_t isApertureSpads) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint32_t currentSpadIndex = 0; + uint8_t startSelect = 0xB4; + uint32_t spadArraySize = 6; + uint32_t maxSpadCount = 44; + uint32_t lastSpadIndex; + uint32_t index; + + /* + * This function applies a requested number of reference spads, either + * aperture or + * non-aperture, as requested. + * The good spad map will be applied. + */ + + Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_DYNAMIC_SPAD_REF_EN_START_OFFSET, 0x00); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_DYNAMIC_SPAD_NUM_REQUESTED_REF_SPAD, 0x2C); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, 0xFF, 0x00); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_GLOBAL_CONFIG_REF_EN_START_SELECT, + startSelect); + + for (index = 0; index < spadArraySize; index++) + Dev->Data.SpadData.RefSpadEnables[index] = 0; + + if (isApertureSpads) { + /* Increment to the first APERTURE spad */ + while ((is_aperture(startSelect + currentSpadIndex) == 0) && + (currentSpadIndex < maxSpadCount)) { + currentSpadIndex++; + } + } + Status = enable_ref_spads(Dev, + isApertureSpads, + Dev->Data.SpadData.RefGoodSpadMap, + Dev->Data.SpadData.RefSpadEnables, + spadArraySize, + startSelect, + currentSpadIndex, + count, + &lastSpadIndex); + + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, RefSpadsInitialised, 1); + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + ReferenceSpadCount, (uint8_t)(count)); + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + ReferenceSpadType, isApertureSpads); + } + + return Status; +} + +VL53L0X_Error VL53L0X_get_reference_spads(VL53L0X_DEV Dev, + uint32_t *pSpadCount, uint8_t *pIsApertureSpads) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t refSpadsInitialised; + uint8_t refSpadArray[6]; + uint32_t cMaxSpadCount = 44; + uint32_t cSpadArraySize = 6; + uint32_t spadsEnabled; + uint8_t isApertureSpads = 0; + + refSpadsInitialised = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, + RefSpadsInitialised); + + if (refSpadsInitialised == 1) { + + *pSpadCount = (uint32_t)VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, + ReferenceSpadCount); + *pIsApertureSpads = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, + ReferenceSpadType); + } else { + + /* obtain spad info from device.*/ + Status = get_ref_spad_map(Dev, refSpadArray); + + if (Status == VL53L0X_ERROR_NONE) { + /* count enabled spads within spad map array and + * determine if Aperture or Non-Aperture. + */ + Status = count_enabled_spads(refSpadArray, + cSpadArraySize, + cMaxSpadCount, + &spadsEnabled, + &isApertureSpads); + + if (Status == VL53L0X_ERROR_NONE) { + + *pSpadCount = spadsEnabled; + *pIsApertureSpads = isApertureSpads; + + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + RefSpadsInitialised, 1); + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + ReferenceSpadCount, + (uint8_t)spadsEnabled); + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + ReferenceSpadType, isApertureSpads); + } + } + } + + return Status; +} + + +VL53L0X_Error VL53L0X_perform_single_ref_calibration(VL53L0X_DEV Dev, + uint8_t vhv_init_byte) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSRANGE_START, + VL53L0X_REG_SYSRANGE_MODE_START_STOP | + vhv_init_byte); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_measurement_poll_for_completion(Dev); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_ClearInterruptMask(Dev, 0); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSRANGE_START, 0x00); + + return Status; +} + + +VL53L0X_Error VL53L0X_ref_calibration_io(VL53L0X_DEV Dev, uint8_t read_not_write, + uint8_t VhvSettings, uint8_t PhaseCal, + uint8_t *pVhvSettings, uint8_t *pPhaseCal, + const uint8_t vhv_enable, const uint8_t phase_enable) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t PhaseCalint = 0; + + /* Read VHV from device */ + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x01); + Status |= VL53L0X_WrByte(Dev, 0x00, 0x00); + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); + + if (read_not_write) { + if (vhv_enable) + Status |= VL53L0X_RdByte(Dev, 0xCB, pVhvSettings); + if (phase_enable) + Status |= VL53L0X_RdByte(Dev, 0xEE, &PhaseCalint); + } else { + if (vhv_enable) + Status |= VL53L0X_WrByte(Dev, 0xCB, VhvSettings); + if (phase_enable) + Status |= VL53L0X_UpdateByte(Dev, 0xEE, 0x80, PhaseCal); + } + + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x01); + Status |= VL53L0X_WrByte(Dev, 0x00, 0x01); + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); + + *pPhaseCal = (uint8_t)(PhaseCalint&0xEF); + + return Status; +} + + +VL53L0X_Error VL53L0X_perform_vhv_calibration(VL53L0X_DEV Dev, + uint8_t *pVhvSettings, const uint8_t get_data_enable, + const uint8_t restore_config) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t SequenceConfig = 0; + uint8_t VhvSettings = 0; + uint8_t PhaseCal = 0; + uint8_t PhaseCalInt = 0; + + /* store the value of the sequence config, + * this will be reset before the end of the function + */ + + if (restore_config) + SequenceConfig = PALDevDataGet(Dev, SequenceConfig); + + /* Run VHV */ + Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, 0x01); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_perform_single_ref_calibration(Dev, 0x40); + + /* Read VHV from device */ + if ((Status == VL53L0X_ERROR_NONE) && (get_data_enable == 1)) { + Status = VL53L0X_ref_calibration_io(Dev, 1, + VhvSettings, PhaseCal, /* Not used here */ + pVhvSettings, &PhaseCalInt, + 1, 0); + } else + *pVhvSettings = 0; + + + if ((Status == VL53L0X_ERROR_NONE) && restore_config) { + /* restore the previous Sequence Config */ + Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, + SequenceConfig); + if (Status == VL53L0X_ERROR_NONE) + PALDevDataSet(Dev, SequenceConfig, SequenceConfig); + + } + + return Status; +} + +VL53L0X_Error VL53L0X_perform_phase_calibration(VL53L0X_DEV Dev, + uint8_t *pPhaseCal, const uint8_t get_data_enable, + const uint8_t restore_config) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t SequenceConfig = 0; + uint8_t VhvSettings = 0; + uint8_t PhaseCal = 0; + uint8_t VhvSettingsint; + + /* store the value of the sequence config, + * this will be reset before the end of the function + */ + + if (restore_config) + SequenceConfig = PALDevDataGet(Dev, SequenceConfig); + + /* Run PhaseCal */ + Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, 0x02); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_perform_single_ref_calibration(Dev, 0x0); + + /* Read PhaseCal from device */ + if ((Status == VL53L0X_ERROR_NONE) && (get_data_enable == 1)) { + Status = VL53L0X_ref_calibration_io(Dev, 1, + VhvSettings, PhaseCal, /* Not used here */ + &VhvSettingsint, pPhaseCal, + 0, 1); + } else + *pPhaseCal = 0; + + + if ((Status == VL53L0X_ERROR_NONE) && restore_config) { + /* restore the previous Sequence Config */ + Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, + SequenceConfig); + if (Status == VL53L0X_ERROR_NONE) + PALDevDataSet(Dev, SequenceConfig, SequenceConfig); + + } + + return Status; +} + +VL53L0X_Error VL53L0X_perform_ref_calibration(VL53L0X_DEV Dev, + uint8_t *pVhvSettings, uint8_t *pPhaseCal, uint8_t get_data_enable) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t SequenceConfig = 0; + + /* store the value of the sequence config, + * this will be reset before the end of the function + */ + + SequenceConfig = PALDevDataGet(Dev, SequenceConfig); + + /* In the following function we don't save the config to optimize + * writes on device. Config is saved and restored only once. */ + Status = VL53L0X_perform_vhv_calibration( + Dev, pVhvSettings, get_data_enable, 0); + + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_perform_phase_calibration( + Dev, pPhaseCal, get_data_enable, 0); + + + if (Status == VL53L0X_ERROR_NONE) { + /* restore the previous Sequence Config */ + Status = VL53L0X_WrByte(Dev, VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG, + SequenceConfig); + if (Status == VL53L0X_ERROR_NONE) + PALDevDataSet(Dev, SequenceConfig, SequenceConfig); + + } + + return Status; +} + +VL53L0X_Error VL53L0X_set_ref_calibration(VL53L0X_DEV Dev, + uint8_t VhvSettings, uint8_t PhaseCal) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t pVhvSettings; + uint8_t pPhaseCal; + + Status = VL53L0X_ref_calibration_io(Dev, 0, + VhvSettings, PhaseCal, + &pVhvSettings, &pPhaseCal, + 1, 1); + + return Status; +} + +VL53L0X_Error VL53L0X_get_ref_calibration(VL53L0X_DEV Dev, + uint8_t *pVhvSettings, uint8_t *pPhaseCal) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t VhvSettings = 0; + uint8_t PhaseCal = 0; + + Status = VL53L0X_ref_calibration_io(Dev, 1, + VhvSettings, PhaseCal, + pVhvSettings, pPhaseCal, + 1, 1); + + return Status; +} diff --git a/STS/TOF/vl53l0x/vl53l0x_api_calibration.h b/STS/TOF/vl53l0x/vl53l0x_api_calibration.h index 9f9739a..ae7b8cb 100644 --- a/STS/TOF/vl53l0x/vl53l0x_api_calibration.h +++ b/STS/TOF/vl53l0x/vl53l0x_api_calibration.h @@ -1,85 +1,85 @@ -/******************************************************************************* -Copyright � 2016, STMicroelectronics International N.V. -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND -NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. -IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*******************************************************************************/ - -#ifndef _VL53L0X_API_CALIBRATION_H_ -#define _VL53L0X_API_CALIBRATION_H_ - -#include "vl53l0x_def.h" -#include "vl53l0x_platform.h" - - -#ifdef __cplusplus -extern "C" { -#endif - -VL53L0X_Error VL53L0X_perform_xtalk_calibration(VL53L0X_DEV Dev, - FixPoint1616_t XTalkCalDistance, - FixPoint1616_t *pXTalkCompensationRateMegaCps); - -VL53L0X_Error VL53L0X_perform_offset_calibration(VL53L0X_DEV Dev, - FixPoint1616_t CalDistanceMilliMeter, - int32_t *pOffsetMicroMeter); - -VL53L0X_Error VL53L0X_set_offset_calibration_data_micro_meter(VL53L0X_DEV Dev, - int32_t OffsetCalibrationDataMicroMeter); - -VL53L0X_Error VL53L0X_get_offset_calibration_data_micro_meter(VL53L0X_DEV Dev, - int32_t *pOffsetCalibrationDataMicroMeter); - -VL53L0X_Error VL53L0X_apply_offset_adjustment(VL53L0X_DEV Dev); - -VL53L0X_Error VL53L0X_perform_ref_spad_management(VL53L0X_DEV Dev, - uint32_t *refSpadCount, uint8_t *isApertureSpads); - -VL53L0X_Error VL53L0X_set_reference_spads(VL53L0X_DEV Dev, - uint32_t count, uint8_t isApertureSpads); - -VL53L0X_Error VL53L0X_get_reference_spads(VL53L0X_DEV Dev, - uint32_t *pSpadCount, uint8_t *pIsApertureSpads); - -VL53L0X_Error VL53L0X_perform_phase_calibration(VL53L0X_DEV Dev, - uint8_t *pPhaseCal, const uint8_t get_data_enable, - const uint8_t restore_config); - -VL53L0X_Error VL53L0X_perform_ref_calibration(VL53L0X_DEV Dev, - uint8_t *pVhvSettings, uint8_t *pPhaseCal, uint8_t get_data_enable); - -VL53L0X_Error VL53L0X_set_ref_calibration(VL53L0X_DEV Dev, - uint8_t VhvSettings, uint8_t PhaseCal); - -VL53L0X_Error VL53L0X_get_ref_calibration(VL53L0X_DEV Dev, - uint8_t *pVhvSettings, uint8_t *pPhaseCal); - - - - -#ifdef __cplusplus -} -#endif - -#endif /* _VL53L0X_API_CALIBRATION_H_ */ +/******************************************************************************* +Copyright � 2016, STMicroelectronics International N.V. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND +NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. +IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*******************************************************************************/ + +#ifndef _VL53L0X_API_CALIBRATION_H_ +#define _VL53L0X_API_CALIBRATION_H_ + +#include "vl53l0x_def.h" +#include "vl53l0x_platform.h" + + +#ifdef __cplusplus +extern "C" { +#endif + +VL53L0X_Error VL53L0X_perform_xtalk_calibration(VL53L0X_DEV Dev, + FixPoint1616_t XTalkCalDistance, + FixPoint1616_t *pXTalkCompensationRateMegaCps); + +VL53L0X_Error VL53L0X_perform_offset_calibration(VL53L0X_DEV Dev, + FixPoint1616_t CalDistanceMilliMeter, + int32_t *pOffsetMicroMeter); + +VL53L0X_Error VL53L0X_set_offset_calibration_data_micro_meter(VL53L0X_DEV Dev, + int32_t OffsetCalibrationDataMicroMeter); + +VL53L0X_Error VL53L0X_get_offset_calibration_data_micro_meter(VL53L0X_DEV Dev, + int32_t *pOffsetCalibrationDataMicroMeter); + +VL53L0X_Error VL53L0X_apply_offset_adjustment(VL53L0X_DEV Dev); + +VL53L0X_Error VL53L0X_perform_ref_spad_management(VL53L0X_DEV Dev, + uint32_t *refSpadCount, uint8_t *isApertureSpads); + +VL53L0X_Error VL53L0X_set_reference_spads(VL53L0X_DEV Dev, + uint32_t count, uint8_t isApertureSpads); + +VL53L0X_Error VL53L0X_get_reference_spads(VL53L0X_DEV Dev, + uint32_t *pSpadCount, uint8_t *pIsApertureSpads); + +VL53L0X_Error VL53L0X_perform_phase_calibration(VL53L0X_DEV Dev, + uint8_t *pPhaseCal, const uint8_t get_data_enable, + const uint8_t restore_config); + +VL53L0X_Error VL53L0X_perform_ref_calibration(VL53L0X_DEV Dev, + uint8_t *pVhvSettings, uint8_t *pPhaseCal, uint8_t get_data_enable); + +VL53L0X_Error VL53L0X_set_ref_calibration(VL53L0X_DEV Dev, + uint8_t VhvSettings, uint8_t PhaseCal); + +VL53L0X_Error VL53L0X_get_ref_calibration(VL53L0X_DEV Dev, + uint8_t *pVhvSettings, uint8_t *pPhaseCal); + + + + +#ifdef __cplusplus +} +#endif + +#endif /* _VL53L0X_API_CALIBRATION_H_ */ diff --git a/STS/TOF/vl53l0x/vl53l0x_api_core.c b/STS/TOF/vl53l0x/vl53l0x_api_core.c index 8f0632a..4ea35af 100644 --- a/STS/TOF/vl53l0x/vl53l0x_api_core.c +++ b/STS/TOF/vl53l0x/vl53l0x_api_core.c @@ -1,2239 +1,2239 @@ -/******************************************************************************* - Copyright � 2016, STMicroelectronics International N.V. - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND - NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. - IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY - DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - ******************************************************************************/ - -#include "vl53l0x_api.h" -#include "vl53l0x_api_core.h" -#include "vl53l0x_api_calibration.h" - - -#ifndef __KERNEL__ -#include <stdlib.h> -#endif -#define LOG_FUNCTION_START(fmt, ...) \ - _LOG_FUNCTION_START(TRACE_MODULE_API, fmt, ##__VA_ARGS__) -#define LOG_FUNCTION_END(status, ...) \ - _LOG_FUNCTION_END(TRACE_MODULE_API, status, ##__VA_ARGS__) -#define LOG_FUNCTION_END_FMT(status, fmt, ...) \ - _LOG_FUNCTION_END_FMT(TRACE_MODULE_API, status, fmt, ##__VA_ARGS__) - -VL53L0X_Error VL53L0X_reverse_bytes(uint8_t *data, uint32_t size) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t tempData; - uint32_t mirrorIndex; - uint32_t middle = size/2; - uint32_t index; - - for (index = 0; index < middle; index++) { - mirrorIndex = size - index - 1; - tempData = data[index]; - data[index] = data[mirrorIndex]; - data[mirrorIndex] = tempData; - } - return Status; -} - -VL53L0X_Error VL53L0X_measurement_poll_for_completion(VL53L0X_DEV Dev) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t NewDataReady = 0; - uint32_t LoopNb; - - LOG_FUNCTION_START(""); - - LoopNb = 0; - - do { - Status = VL53L0X_GetMeasurementDataReady(Dev, &NewDataReady); - if (Status != 0) - break; /* the error is set */ - - if (NewDataReady == 1) - break; /* done note that status == 0 */ - - LoopNb++; - if (LoopNb >= VL53L0X_DEFAULT_MAX_LOOP) { - Status = VL53L0X_ERROR_TIME_OUT; - break; - } - - VL53L0X_PollingDelay(Dev); - } while (1); - - LOG_FUNCTION_END(Status); - - return Status; -} - - -uint8_t VL53L0X_decode_vcsel_period(uint8_t vcsel_period_reg) -{ - /*! - * Converts the encoded VCSEL period register value into the real - * period in PLL clocks - */ - - uint8_t vcsel_period_pclks = 0; - - vcsel_period_pclks = (vcsel_period_reg + 1) << 1; - - return vcsel_period_pclks; -} - -uint8_t VL53L0X_encode_vcsel_period(uint8_t vcsel_period_pclks) -{ - /*! - * Converts the encoded VCSEL period register value into the real period - * in PLL clocks - */ - - uint8_t vcsel_period_reg = 0; - - vcsel_period_reg = (vcsel_period_pclks >> 1) - 1; - - return vcsel_period_reg; -} - - -uint32_t VL53L0X_isqrt(uint32_t num) -{ - /* - * Implements an integer square root - * - * From: http://en.wikipedia.org/wiki/Methods_of_computing_square_roots - */ - - uint32_t res = 0; - uint32_t bit = 1 << 30; - /* The second-to-top bit is set: - * 1 << 14 for 16-bits, 1 << 30 for 32 bits */ - - /* "bit" starts at the highest power of four <= the argument. */ - while (bit > num) - bit >>= 2; - - - while (bit != 0) { - if (num >= res + bit) { - num -= res + bit; - res = (res >> 1) + bit; - } else - res >>= 1; - - bit >>= 2; - } - - return res; -} - - -uint32_t VL53L0X_quadrature_sum(uint32_t a, uint32_t b) -{ - /* - * Implements a quadrature sum - * - * rea = sqrt(a^2 + b^2) - * - * Trap overflow case max input value is 65535 (16-bit value) - * as internal calc are 32-bit wide - * - * If overflow then seta output to maximum - */ - uint32_t res = 0; - - if (a > 65535 || b > 65535) - res = 65535; - else - res = VL53L0X_isqrt(a * a + b * b); - - return res; -} - - -VL53L0X_Error VL53L0X_device_read_strobe(VL53L0X_DEV Dev) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t strobe; - uint32_t LoopNb; - LOG_FUNCTION_START(""); - - Status |= VL53L0X_WrByte(Dev, 0x83, 0x00); - - /* polling - * use timeout to avoid deadlock*/ - if (Status == VL53L0X_ERROR_NONE) { - LoopNb = 0; - do { - Status = VL53L0X_RdByte(Dev, 0x83, &strobe); - if ((strobe != 0x00) || Status != VL53L0X_ERROR_NONE) - break; - - LoopNb = LoopNb + 1; - } while (LoopNb < VL53L0X_DEFAULT_MAX_LOOP); - - if (LoopNb >= VL53L0X_DEFAULT_MAX_LOOP) - Status = VL53L0X_ERROR_TIME_OUT; - - } - - Status |= VL53L0X_WrByte(Dev, 0x83, 0x01); - - LOG_FUNCTION_END(Status); - return Status; - -} - -VL53L0X_Error VL53L0X_get_info_from_device(VL53L0X_DEV Dev, uint8_t option) -{ - - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t byte; - uint32_t TmpDWord; - uint8_t ModuleId; - uint8_t Revision; - uint8_t ReferenceSpadCount = 0; - uint8_t ReferenceSpadType = 0; - uint32_t PartUIDUpper = 0; - uint32_t PartUIDLower = 0; - uint32_t OffsetFixed1104_mm = 0; - int16_t OffsetMicroMeters = 0; - uint32_t DistMeasTgtFixed1104_mm = 400 << 4; - uint32_t DistMeasFixed1104_400_mm = 0; - uint32_t SignalRateMeasFixed1104_400_mm = 0; - char ProductId[19]; - char *ProductId_tmp; - uint8_t ReadDataFromDeviceDone; - FixPoint1616_t SignalRateMeasFixed400mmFix = 0; - uint8_t NvmRefGoodSpadMap[VL53L0X_REF_SPAD_BUFFER_SIZE]; - int i; - - - LOG_FUNCTION_START(""); - - ReadDataFromDeviceDone = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, - ReadDataFromDeviceDone); - - /* This access is done only once after that a GetDeviceInfo or - * datainit is done*/ - if (ReadDataFromDeviceDone != 7) { - - Status |= VL53L0X_WrByte(Dev, 0x80, 0x01); - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x01); - Status |= VL53L0X_WrByte(Dev, 0x00, 0x00); - - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x06); - Status |= VL53L0X_RdByte(Dev, 0x83, &byte); - Status |= VL53L0X_WrByte(Dev, 0x83, byte|4); - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x07); - Status |= VL53L0X_WrByte(Dev, 0x81, 0x01); - - Status |= VL53L0X_PollingDelay(Dev); - - Status |= VL53L0X_WrByte(Dev, 0x80, 0x01); - - if (((option & 1) == 1) && - ((ReadDataFromDeviceDone & 1) == 0)) { - Status |= VL53L0X_WrByte(Dev, 0x94, 0x6b); - Status |= VL53L0X_device_read_strobe(Dev); - Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); - - ReferenceSpadCount = (uint8_t)((TmpDWord >> 8) & 0x07f); - ReferenceSpadType = (uint8_t)((TmpDWord >> 15) & 0x01); - - Status |= VL53L0X_WrByte(Dev, 0x94, 0x24); - Status |= VL53L0X_device_read_strobe(Dev); - Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); - - - NvmRefGoodSpadMap[0] = (uint8_t)((TmpDWord >> 24) - & 0xff); - NvmRefGoodSpadMap[1] = (uint8_t)((TmpDWord >> 16) - & 0xff); - NvmRefGoodSpadMap[2] = (uint8_t)((TmpDWord >> 8) - & 0xff); - NvmRefGoodSpadMap[3] = (uint8_t)(TmpDWord & 0xff); - - Status |= VL53L0X_WrByte(Dev, 0x94, 0x25); - Status |= VL53L0X_device_read_strobe(Dev); - Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); - - NvmRefGoodSpadMap[4] = (uint8_t)((TmpDWord >> 24) - & 0xff); - NvmRefGoodSpadMap[5] = (uint8_t)((TmpDWord >> 16) - & 0xff); - } - - if (((option & 2) == 2) && - ((ReadDataFromDeviceDone & 2) == 0)) { - - Status |= VL53L0X_WrByte(Dev, 0x94, 0x02); - Status |= VL53L0X_device_read_strobe(Dev); - Status |= VL53L0X_RdByte(Dev, 0x90, &ModuleId); - - Status |= VL53L0X_WrByte(Dev, 0x94, 0x7B); - Status |= VL53L0X_device_read_strobe(Dev); - Status |= VL53L0X_RdByte(Dev, 0x90, &Revision); - - Status |= VL53L0X_WrByte(Dev, 0x94, 0x77); - Status |= VL53L0X_device_read_strobe(Dev); - Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); - - ProductId[0] = (char)((TmpDWord >> 25) & 0x07f); - ProductId[1] = (char)((TmpDWord >> 18) & 0x07f); - ProductId[2] = (char)((TmpDWord >> 11) & 0x07f); - ProductId[3] = (char)((TmpDWord >> 4) & 0x07f); - - byte = (uint8_t)((TmpDWord & 0x00f) << 3); - - Status |= VL53L0X_WrByte(Dev, 0x94, 0x78); - Status |= VL53L0X_device_read_strobe(Dev); - Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); - - ProductId[4] = (char)(byte + - ((TmpDWord >> 29) & 0x07f)); - ProductId[5] = (char)((TmpDWord >> 22) & 0x07f); - ProductId[6] = (char)((TmpDWord >> 15) & 0x07f); - ProductId[7] = (char)((TmpDWord >> 8) & 0x07f); - ProductId[8] = (char)((TmpDWord >> 1) & 0x07f); - - byte = (uint8_t)((TmpDWord & 0x001) << 6); - - Status |= VL53L0X_WrByte(Dev, 0x94, 0x79); - - Status |= VL53L0X_device_read_strobe(Dev); - - Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); - - ProductId[9] = (char)(byte + - ((TmpDWord >> 26) & 0x07f)); - ProductId[10] = (char)((TmpDWord >> 19) & 0x07f); - ProductId[11] = (char)((TmpDWord >> 12) & 0x07f); - ProductId[12] = (char)((TmpDWord >> 5) & 0x07f); - - byte = (uint8_t)((TmpDWord & 0x01f) << 2); - - Status |= VL53L0X_WrByte(Dev, 0x94, 0x7A); - - Status |= VL53L0X_device_read_strobe(Dev); - - Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); - - ProductId[13] = (char)(byte + - ((TmpDWord >> 30) & 0x07f)); - ProductId[14] = (char)((TmpDWord >> 23) & 0x07f); - ProductId[15] = (char)((TmpDWord >> 16) & 0x07f); - ProductId[16] = (char)((TmpDWord >> 9) & 0x07f); - ProductId[17] = (char)((TmpDWord >> 2) & 0x07f); - ProductId[18] = '\0'; - - } - - if (((option & 4) == 4) && - ((ReadDataFromDeviceDone & 4) == 0)) { - - Status |= VL53L0X_WrByte(Dev, 0x94, 0x7B); - Status |= VL53L0X_device_read_strobe(Dev); - Status |= VL53L0X_RdDWord(Dev, 0x90, &PartUIDUpper); - - Status |= VL53L0X_WrByte(Dev, 0x94, 0x7C); - Status |= VL53L0X_device_read_strobe(Dev); - Status |= VL53L0X_RdDWord(Dev, 0x90, &PartUIDLower); - - Status |= VL53L0X_WrByte(Dev, 0x94, 0x73); - Status |= VL53L0X_device_read_strobe(Dev); - Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); - - SignalRateMeasFixed1104_400_mm = (TmpDWord & - 0x0000000ff) << 8; - - Status |= VL53L0X_WrByte(Dev, 0x94, 0x74); - Status |= VL53L0X_device_read_strobe(Dev); - Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); - - SignalRateMeasFixed1104_400_mm |= ((TmpDWord & - 0xff000000) >> 24); - - Status |= VL53L0X_WrByte(Dev, 0x94, 0x75); - Status |= VL53L0X_device_read_strobe(Dev); - Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); - - DistMeasFixed1104_400_mm = (TmpDWord & 0x0000000ff) - << 8; - - Status |= VL53L0X_WrByte(Dev, 0x94, 0x76); - Status |= VL53L0X_device_read_strobe(Dev); - Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); - - DistMeasFixed1104_400_mm |= ((TmpDWord & 0xff000000) - >> 24); - } - - Status |= VL53L0X_WrByte(Dev, 0x81, 0x00); - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x06); - Status |= VL53L0X_RdByte(Dev, 0x83, &byte); - Status |= VL53L0X_WrByte(Dev, 0x83, byte&0xfb); - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x01); - Status |= VL53L0X_WrByte(Dev, 0x00, 0x01); - - Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); - Status |= VL53L0X_WrByte(Dev, 0x80, 0x00); - } - - if ((Status == VL53L0X_ERROR_NONE) && - (ReadDataFromDeviceDone != 7)) { - /* Assign to variable if status is ok */ - if (((option & 1) == 1) && - ((ReadDataFromDeviceDone & 1) == 0)) { - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - ReferenceSpadCount, ReferenceSpadCount); - - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - ReferenceSpadType, ReferenceSpadType); - - for (i = 0; i < VL53L0X_REF_SPAD_BUFFER_SIZE; i++) { - Dev->Data.SpadData.RefGoodSpadMap[i] = - NvmRefGoodSpadMap[i]; - } - } - - if (((option & 2) == 2) && - ((ReadDataFromDeviceDone & 2) == 0)) { - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - ModuleId, ModuleId); - - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - Revision, Revision); - - ProductId_tmp = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, - ProductId); - VL53L0X_COPYSTRING(ProductId_tmp, ProductId); - - } - - if (((option & 4) == 4) && - ((ReadDataFromDeviceDone & 4) == 0)) { - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - PartUIDUpper, PartUIDUpper); - - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - PartUIDLower, PartUIDLower); - - SignalRateMeasFixed400mmFix = - VL53L0X_FIXPOINT97TOFIXPOINT1616( - SignalRateMeasFixed1104_400_mm); - - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - SignalRateMeasFixed400mm, - SignalRateMeasFixed400mmFix); - - OffsetMicroMeters = 0; - if (DistMeasFixed1104_400_mm != 0) { - OffsetFixed1104_mm = - DistMeasFixed1104_400_mm - - DistMeasTgtFixed1104_mm; - OffsetMicroMeters = (OffsetFixed1104_mm - * 1000) >> 4; - OffsetMicroMeters *= -1; - } - - PALDevDataSet(Dev, - Part2PartOffsetAdjustmentNVMMicroMeter, - OffsetMicroMeters); - } - byte = (uint8_t)(ReadDataFromDeviceDone|option); - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, ReadDataFromDeviceDone, - byte); - } - - LOG_FUNCTION_END(Status); - return Status; -} - - -uint32_t VL53L0X_calc_macro_period_ps(VL53L0X_DEV Dev, uint8_t vcsel_period_pclks) -{ - uint64_t PLL_period_ps; - uint32_t macro_period_vclks; - uint32_t macro_period_ps; - - LOG_FUNCTION_START(""); - - /* The above calculation will produce rounding errors, - therefore set fixed value - */ - PLL_period_ps = 1655; - - macro_period_vclks = 2304; - macro_period_ps = (uint32_t)(macro_period_vclks - * vcsel_period_pclks * PLL_period_ps); - - LOG_FUNCTION_END(""); - return macro_period_ps; -} - -uint16_t VL53L0X_encode_timeout(uint32_t timeout_macro_clks) -{ - /*! - * Encode timeout in macro periods in (LSByte * 2^MSByte) + 1 format - */ - - uint16_t encoded_timeout = 0; - uint32_t ls_byte = 0; - uint16_t ms_byte = 0; - - if (timeout_macro_clks > 0) { - ls_byte = timeout_macro_clks - 1; - - while ((ls_byte & 0xFFFFFF00) > 0) { - ls_byte = ls_byte >> 1; - ms_byte++; - } - - encoded_timeout = (ms_byte << 8) - + (uint16_t) (ls_byte & 0x000000FF); - } - - return encoded_timeout; - -} - -uint32_t VL53L0X_decode_timeout(uint16_t encoded_timeout) -{ - /*! - * Decode 16-bit timeout register value - format (LSByte * 2^MSByte) + 1 - */ - - uint32_t timeout_macro_clks = 0; - - timeout_macro_clks = ((uint32_t) (encoded_timeout & 0x00FF) - << (uint32_t) ((encoded_timeout & 0xFF00) >> 8)) + 1; - - return timeout_macro_clks; -} - - -/* To convert ms into register value */ -uint32_t VL53L0X_calc_timeout_mclks(VL53L0X_DEV Dev, - uint32_t timeout_period_us, - uint8_t vcsel_period_pclks) -{ - uint32_t macro_period_ps; - uint32_t macro_period_ns; - uint32_t timeout_period_mclks = 0; - - macro_period_ps = VL53L0X_calc_macro_period_ps(Dev, vcsel_period_pclks); - macro_period_ns = (macro_period_ps + 500) / 1000; - - timeout_period_mclks = - (uint32_t) (((timeout_period_us * 1000) - + (macro_period_ns / 2)) / macro_period_ns); - - return timeout_period_mclks; -} - -/* To convert register value into us */ -uint32_t VL53L0X_calc_timeout_us(VL53L0X_DEV Dev, - uint16_t timeout_period_mclks, - uint8_t vcsel_period_pclks) -{ - uint32_t macro_period_ps; - uint32_t macro_period_ns; - uint32_t actual_timeout_period_us = 0; - - macro_period_ps = VL53L0X_calc_macro_period_ps(Dev, vcsel_period_pclks); - macro_period_ns = (macro_period_ps + 500) / 1000; - - actual_timeout_period_us = - ((timeout_period_mclks * macro_period_ns) + 500) / 1000; - - return actual_timeout_period_us; -} - - -VL53L0X_Error get_sequence_step_timeout(VL53L0X_DEV Dev, - VL53L0X_SequenceStepId SequenceStepId, - uint32_t *pTimeOutMicroSecs) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t CurrentVCSELPulsePeriodPClk; - uint8_t EncodedTimeOutByte = 0; - uint32_t TimeoutMicroSeconds = 0; - uint16_t PreRangeEncodedTimeOut = 0; - uint16_t MsrcTimeOutMClks; - uint16_t PreRangeTimeOutMClks; - uint16_t FinalRangeTimeOutMClks = 0; - uint16_t FinalRangeEncodedTimeOut; - VL53L0X_SchedulerSequenceSteps_t SchedulerSequenceSteps; - - if ((SequenceStepId == VL53L0X_SEQUENCESTEP_TCC) || - (SequenceStepId == VL53L0X_SEQUENCESTEP_DSS) || - (SequenceStepId == VL53L0X_SEQUENCESTEP_MSRC)) { - - Status = VL53L0X_GetVcselPulsePeriod(Dev, - VL53L0X_VCSEL_PERIOD_PRE_RANGE, - &CurrentVCSELPulsePeriodPClk); - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_RdByte(Dev, - VL53L0X_REG_MSRC_CONFIG_TIMEOUT_MACROP, - &EncodedTimeOutByte); - } - MsrcTimeOutMClks = VL53L0X_decode_timeout(EncodedTimeOutByte); - - TimeoutMicroSeconds = VL53L0X_calc_timeout_us(Dev, - MsrcTimeOutMClks, - CurrentVCSELPulsePeriodPClk); - } else if (SequenceStepId == VL53L0X_SEQUENCESTEP_PRE_RANGE) { - /* Retrieve PRE-RANGE VCSEL Period */ - Status = VL53L0X_GetVcselPulsePeriod(Dev, - VL53L0X_VCSEL_PERIOD_PRE_RANGE, - &CurrentVCSELPulsePeriodPClk); - - /* Retrieve PRE-RANGE Timeout in Macro periods (MCLKS) */ - if (Status == VL53L0X_ERROR_NONE) { - - /* Retrieve PRE-RANGE VCSEL Period */ - Status = VL53L0X_GetVcselPulsePeriod(Dev, - VL53L0X_VCSEL_PERIOD_PRE_RANGE, - &CurrentVCSELPulsePeriodPClk); - - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_RdWord(Dev, - VL53L0X_REG_PRE_RANGE_CONFIG_TIMEOUT_MACROP_HI, - &PreRangeEncodedTimeOut); - } - - PreRangeTimeOutMClks = VL53L0X_decode_timeout( - PreRangeEncodedTimeOut); - - TimeoutMicroSeconds = VL53L0X_calc_timeout_us(Dev, - PreRangeTimeOutMClks, - CurrentVCSELPulsePeriodPClk); - } - } else if (SequenceStepId == VL53L0X_SEQUENCESTEP_FINAL_RANGE) { - - VL53L0X_GetSequenceStepEnables(Dev, &SchedulerSequenceSteps); - PreRangeTimeOutMClks = 0; - - if (SchedulerSequenceSteps.PreRangeOn) { - /* Retrieve PRE-RANGE VCSEL Period */ - Status = VL53L0X_GetVcselPulsePeriod(Dev, - VL53L0X_VCSEL_PERIOD_PRE_RANGE, - &CurrentVCSELPulsePeriodPClk); - - /* Retrieve PRE-RANGE Timeout in Macro periods - * (MCLKS) */ - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_RdWord(Dev, - VL53L0X_REG_PRE_RANGE_CONFIG_TIMEOUT_MACROP_HI, - &PreRangeEncodedTimeOut); - PreRangeTimeOutMClks = VL53L0X_decode_timeout( - PreRangeEncodedTimeOut); - } - } - - if (Status == VL53L0X_ERROR_NONE) { - /* Retrieve FINAL-RANGE VCSEL Period */ - Status = VL53L0X_GetVcselPulsePeriod(Dev, - VL53L0X_VCSEL_PERIOD_FINAL_RANGE, - &CurrentVCSELPulsePeriodPClk); - } - - /* Retrieve FINAL-RANGE Timeout in Macro periods (MCLKS) */ - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_RdWord(Dev, - VL53L0X_REG_FINAL_RANGE_CONFIG_TIMEOUT_MACROP_HI, - &FinalRangeEncodedTimeOut); - FinalRangeTimeOutMClks = VL53L0X_decode_timeout( - FinalRangeEncodedTimeOut); - } - - FinalRangeTimeOutMClks -= PreRangeTimeOutMClks; - TimeoutMicroSeconds = VL53L0X_calc_timeout_us(Dev, - FinalRangeTimeOutMClks, - CurrentVCSELPulsePeriodPClk); - } - - *pTimeOutMicroSecs = TimeoutMicroSeconds; - - return Status; -} - - -VL53L0X_Error set_sequence_step_timeout(VL53L0X_DEV Dev, - VL53L0X_SequenceStepId SequenceStepId, - uint32_t TimeOutMicroSecs) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t CurrentVCSELPulsePeriodPClk; - uint8_t MsrcEncodedTimeOut; - uint16_t PreRangeEncodedTimeOut; - uint16_t PreRangeTimeOutMClks; - uint16_t MsrcRangeTimeOutMClks; - uint32_t FinalRangeTimeOutMClks; - uint16_t FinalRangeEncodedTimeOut; - VL53L0X_SchedulerSequenceSteps_t SchedulerSequenceSteps; - - if ((SequenceStepId == VL53L0X_SEQUENCESTEP_TCC) || - (SequenceStepId == VL53L0X_SEQUENCESTEP_DSS) || - (SequenceStepId == VL53L0X_SEQUENCESTEP_MSRC)) { - - Status = VL53L0X_GetVcselPulsePeriod(Dev, - VL53L0X_VCSEL_PERIOD_PRE_RANGE, - &CurrentVCSELPulsePeriodPClk); - - if (Status == VL53L0X_ERROR_NONE) { - MsrcRangeTimeOutMClks = VL53L0X_calc_timeout_mclks(Dev, - TimeOutMicroSecs, - (uint8_t)CurrentVCSELPulsePeriodPClk); - - if (MsrcRangeTimeOutMClks > 256) - MsrcEncodedTimeOut = 255; - else - MsrcEncodedTimeOut = - (uint8_t)MsrcRangeTimeOutMClks - 1; - - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - LastEncodedTimeout, - MsrcEncodedTimeOut); - } - - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_MSRC_CONFIG_TIMEOUT_MACROP, - MsrcEncodedTimeOut); - } - } else { - - if (SequenceStepId == VL53L0X_SEQUENCESTEP_PRE_RANGE) { - - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_GetVcselPulsePeriod(Dev, - VL53L0X_VCSEL_PERIOD_PRE_RANGE, - &CurrentVCSELPulsePeriodPClk); - PreRangeTimeOutMClks = - VL53L0X_calc_timeout_mclks(Dev, - TimeOutMicroSecs, - (uint8_t)CurrentVCSELPulsePeriodPClk); - PreRangeEncodedTimeOut = VL53L0X_encode_timeout( - PreRangeTimeOutMClks); - - VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, - LastEncodedTimeout, - PreRangeEncodedTimeOut); - } - - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_WrWord(Dev, - VL53L0X_REG_PRE_RANGE_CONFIG_TIMEOUT_MACROP_HI, - PreRangeEncodedTimeOut); - } - - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_SETDEVICESPECIFICPARAMETER( - Dev, - PreRangeTimeoutMicroSecs, - TimeOutMicroSecs); - } - } else if (SequenceStepId == VL53L0X_SEQUENCESTEP_FINAL_RANGE) { - - /* For the final range timeout, the pre-range timeout - * must be added. To do this both final and pre-range - * timeouts must be expressed in macro periods MClks - * because they have different vcsel periods. - */ - - VL53L0X_GetSequenceStepEnables(Dev, - &SchedulerSequenceSteps); - PreRangeTimeOutMClks = 0; - if (SchedulerSequenceSteps.PreRangeOn) { - - /* Retrieve PRE-RANGE VCSEL Period */ - Status = VL53L0X_GetVcselPulsePeriod(Dev, - VL53L0X_VCSEL_PERIOD_PRE_RANGE, - &CurrentVCSELPulsePeriodPClk); - - /* Retrieve PRE-RANGE Timeout in Macro periods - * (MCLKS) */ - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_RdWord(Dev, 0x51, - &PreRangeEncodedTimeOut); - PreRangeTimeOutMClks = - VL53L0X_decode_timeout( - PreRangeEncodedTimeOut); - } - } - - /* Calculate FINAL RANGE Timeout in Macro Periods - * (MCLKS) and add PRE-RANGE value - */ - if (Status == VL53L0X_ERROR_NONE) { - - Status = VL53L0X_GetVcselPulsePeriod(Dev, - VL53L0X_VCSEL_PERIOD_FINAL_RANGE, - &CurrentVCSELPulsePeriodPClk); - } - if (Status == VL53L0X_ERROR_NONE) { - - FinalRangeTimeOutMClks = - VL53L0X_calc_timeout_mclks(Dev, - TimeOutMicroSecs, - (uint8_t) CurrentVCSELPulsePeriodPClk); - - FinalRangeTimeOutMClks += PreRangeTimeOutMClks; - - FinalRangeEncodedTimeOut = - VL53L0X_encode_timeout(FinalRangeTimeOutMClks); - - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_WrWord(Dev, 0x71, - FinalRangeEncodedTimeOut); - } - - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_SETDEVICESPECIFICPARAMETER( - Dev, - FinalRangeTimeoutMicroSecs, - TimeOutMicroSecs); - } - } - } else - Status = VL53L0X_ERROR_INVALID_PARAMS; - - } - return Status; -} - -VL53L0X_Error VL53L0X_set_vcsel_pulse_period(VL53L0X_DEV Dev, - VL53L0X_VcselPeriod VcselPeriodType, uint8_t VCSELPulsePeriodPCLK) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t vcsel_period_reg; - uint8_t MinPreVcselPeriodPCLK = 12; - uint8_t MaxPreVcselPeriodPCLK = 18; - uint8_t MinFinalVcselPeriodPCLK = 8; - uint8_t MaxFinalVcselPeriodPCLK = 14; - uint32_t MeasurementTimingBudgetMicroSeconds; - uint32_t FinalRangeTimeoutMicroSeconds; - uint32_t PreRangeTimeoutMicroSeconds; - uint32_t MsrcTimeoutMicroSeconds; - uint8_t PhaseCalInt = 0; - - /* Check if valid clock period requested */ - - if ((VCSELPulsePeriodPCLK % 2) != 0) { - /* Value must be an even number */ - Status = VL53L0X_ERROR_INVALID_PARAMS; - } else if (VcselPeriodType == VL53L0X_VCSEL_PERIOD_PRE_RANGE && - (VCSELPulsePeriodPCLK < MinPreVcselPeriodPCLK || - VCSELPulsePeriodPCLK > MaxPreVcselPeriodPCLK)) { - Status = VL53L0X_ERROR_INVALID_PARAMS; - } else if (VcselPeriodType == VL53L0X_VCSEL_PERIOD_FINAL_RANGE && - (VCSELPulsePeriodPCLK < MinFinalVcselPeriodPCLK || - VCSELPulsePeriodPCLK > MaxFinalVcselPeriodPCLK)) { - - Status = VL53L0X_ERROR_INVALID_PARAMS; - } - - /* Apply specific settings for the requested clock period */ - - if (Status != VL53L0X_ERROR_NONE) - return Status; - - - if (VcselPeriodType == VL53L0X_VCSEL_PERIOD_PRE_RANGE) { - - /* Set phase check limits */ - if (VCSELPulsePeriodPCLK == 12) { - - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_HIGH, - 0x18); - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_LOW, - 0x08); - } else if (VCSELPulsePeriodPCLK == 14) { - - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_HIGH, - 0x30); - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_LOW, - 0x08); - } else if (VCSELPulsePeriodPCLK == 16) { - - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_HIGH, - 0x40); - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_LOW, - 0x08); - } else if (VCSELPulsePeriodPCLK == 18) { - - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_HIGH, - 0x50); - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_LOW, - 0x08); - } - } else if (VcselPeriodType == VL53L0X_VCSEL_PERIOD_FINAL_RANGE) { - - if (VCSELPulsePeriodPCLK == 8) { - - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_HIGH, - 0x10); - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_LOW, - 0x08); - - Status |= VL53L0X_WrByte(Dev, - VL53L0X_REG_GLOBAL_CONFIG_VCSEL_WIDTH, 0x02); - Status |= VL53L0X_WrByte(Dev, - VL53L0X_REG_ALGO_PHASECAL_CONFIG_TIMEOUT, 0x0C); - - Status |= VL53L0X_WrByte(Dev, 0xff, 0x01); - Status |= VL53L0X_WrByte(Dev, - VL53L0X_REG_ALGO_PHASECAL_LIM, - 0x30); - Status |= VL53L0X_WrByte(Dev, 0xff, 0x00); - } else if (VCSELPulsePeriodPCLK == 10) { - - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_HIGH, - 0x28); - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_LOW, - 0x08); - - Status |= VL53L0X_WrByte(Dev, - VL53L0X_REG_GLOBAL_CONFIG_VCSEL_WIDTH, 0x03); - Status |= VL53L0X_WrByte(Dev, - VL53L0X_REG_ALGO_PHASECAL_CONFIG_TIMEOUT, 0x09); - - Status |= VL53L0X_WrByte(Dev, 0xff, 0x01); - Status |= VL53L0X_WrByte(Dev, - VL53L0X_REG_ALGO_PHASECAL_LIM, - 0x20); - Status |= VL53L0X_WrByte(Dev, 0xff, 0x00); - } else if (VCSELPulsePeriodPCLK == 12) { - - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_HIGH, - 0x38); - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_LOW, - 0x08); - - Status |= VL53L0X_WrByte(Dev, - VL53L0X_REG_GLOBAL_CONFIG_VCSEL_WIDTH, 0x03); - Status |= VL53L0X_WrByte(Dev, - VL53L0X_REG_ALGO_PHASECAL_CONFIG_TIMEOUT, 0x08); - - Status |= VL53L0X_WrByte(Dev, 0xff, 0x01); - Status |= VL53L0X_WrByte(Dev, - VL53L0X_REG_ALGO_PHASECAL_LIM, - 0x20); - Status |= VL53L0X_WrByte(Dev, 0xff, 0x00); - } else if (VCSELPulsePeriodPCLK == 14) { - - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_HIGH, - 0x048); - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_LOW, - 0x08); - - Status |= VL53L0X_WrByte(Dev, - VL53L0X_REG_GLOBAL_CONFIG_VCSEL_WIDTH, 0x03); - Status |= VL53L0X_WrByte(Dev, - VL53L0X_REG_ALGO_PHASECAL_CONFIG_TIMEOUT, 0x07); - - Status |= VL53L0X_WrByte(Dev, 0xff, 0x01); - Status |= VL53L0X_WrByte(Dev, - VL53L0X_REG_ALGO_PHASECAL_LIM, - 0x20); - Status |= VL53L0X_WrByte(Dev, 0xff, 0x00); - } - } - - - /* Re-calculate and apply timeouts, in macro periods */ - - if (Status == VL53L0X_ERROR_NONE) { - vcsel_period_reg = VL53L0X_encode_vcsel_period((uint8_t) - VCSELPulsePeriodPCLK); - - /* When the VCSEL period for the pre or final range is changed, - * the corresponding timeout must be read from the device using - * the current VCSEL period, then the new VCSEL period can be - * applied. The timeout then must be written back to the device - * using the new VCSEL period. - * - * For the MSRC timeout, the same applies - this timeout being - * dependant on the pre-range vcsel period. - */ - switch (VcselPeriodType) { - case VL53L0X_VCSEL_PERIOD_PRE_RANGE: - Status = get_sequence_step_timeout(Dev, - VL53L0X_SEQUENCESTEP_PRE_RANGE, - &PreRangeTimeoutMicroSeconds); - - if (Status == VL53L0X_ERROR_NONE) - Status = get_sequence_step_timeout(Dev, - VL53L0X_SEQUENCESTEP_MSRC, - &MsrcTimeoutMicroSeconds); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_PRE_RANGE_CONFIG_VCSEL_PERIOD, - vcsel_period_reg); - - - if (Status == VL53L0X_ERROR_NONE) - Status = set_sequence_step_timeout(Dev, - VL53L0X_SEQUENCESTEP_PRE_RANGE, - PreRangeTimeoutMicroSeconds); - - - if (Status == VL53L0X_ERROR_NONE) - Status = set_sequence_step_timeout(Dev, - VL53L0X_SEQUENCESTEP_MSRC, - MsrcTimeoutMicroSeconds); - - VL53L0X_SETDEVICESPECIFICPARAMETER( - Dev, - PreRangeVcselPulsePeriod, - VCSELPulsePeriodPCLK); - break; - case VL53L0X_VCSEL_PERIOD_FINAL_RANGE: - Status = get_sequence_step_timeout(Dev, - VL53L0X_SEQUENCESTEP_FINAL_RANGE, - &FinalRangeTimeoutMicroSeconds); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, - VL53L0X_REG_FINAL_RANGE_CONFIG_VCSEL_PERIOD, - vcsel_period_reg); - - - if (Status == VL53L0X_ERROR_NONE) - Status = set_sequence_step_timeout(Dev, - VL53L0X_SEQUENCESTEP_FINAL_RANGE, - FinalRangeTimeoutMicroSeconds); - - VL53L0X_SETDEVICESPECIFICPARAMETER( - Dev, - FinalRangeVcselPulsePeriod, - VCSELPulsePeriodPCLK); - break; - default: - Status = VL53L0X_ERROR_INVALID_PARAMS; - } - } - - /* Finally, the timing budget must be re-applied */ - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_GETPARAMETERFIELD(Dev, - MeasurementTimingBudgetMicroSeconds, - MeasurementTimingBudgetMicroSeconds); - - Status = VL53L0X_SetMeasurementTimingBudgetMicroSeconds(Dev, - MeasurementTimingBudgetMicroSeconds); - } - - /* Perform the phase calibration. This is needed after changing on - * vcsel period. - * get_data_enable = 0, restore_config = 1 */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_perform_phase_calibration( - Dev, &PhaseCalInt, 0, 1); - - return Status; -} - -VL53L0X_Error VL53L0X_get_vcsel_pulse_period(VL53L0X_DEV Dev, - VL53L0X_VcselPeriod VcselPeriodType, uint8_t *pVCSELPulsePeriodPCLK) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t vcsel_period_reg; - - switch (VcselPeriodType) { - case VL53L0X_VCSEL_PERIOD_PRE_RANGE: - Status = VL53L0X_RdByte(Dev, - VL53L0X_REG_PRE_RANGE_CONFIG_VCSEL_PERIOD, - &vcsel_period_reg); - break; - case VL53L0X_VCSEL_PERIOD_FINAL_RANGE: - Status = VL53L0X_RdByte(Dev, - VL53L0X_REG_FINAL_RANGE_CONFIG_VCSEL_PERIOD, - &vcsel_period_reg); - break; - default: - Status = VL53L0X_ERROR_INVALID_PARAMS; - } - - if (Status == VL53L0X_ERROR_NONE) - *pVCSELPulsePeriodPCLK = - VL53L0X_decode_vcsel_period(vcsel_period_reg); - - return Status; -} - - - -VL53L0X_Error VL53L0X_set_measurement_timing_budget_micro_seconds(VL53L0X_DEV Dev, - uint32_t MeasurementTimingBudgetMicroSeconds) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint32_t FinalRangeTimingBudgetMicroSeconds; - VL53L0X_SchedulerSequenceSteps_t SchedulerSequenceSteps; - uint32_t MsrcDccTccTimeoutMicroSeconds = 2000; - uint32_t StartOverheadMicroSeconds = 1910; - uint32_t EndOverheadMicroSeconds = 960; - uint32_t MsrcOverheadMicroSeconds = 660; - uint32_t TccOverheadMicroSeconds = 590; - uint32_t DssOverheadMicroSeconds = 690; - uint32_t PreRangeOverheadMicroSeconds = 660; - uint32_t FinalRangeOverheadMicroSeconds = 550; - uint32_t PreRangeTimeoutMicroSeconds = 0; - uint32_t cMinTimingBudgetMicroSeconds = 20000; - uint32_t SubTimeout = 0; - - LOG_FUNCTION_START(""); - - if (MeasurementTimingBudgetMicroSeconds - < cMinTimingBudgetMicroSeconds) { - Status = VL53L0X_ERROR_INVALID_PARAMS; - return Status; - } - - FinalRangeTimingBudgetMicroSeconds = - MeasurementTimingBudgetMicroSeconds - - (StartOverheadMicroSeconds + EndOverheadMicroSeconds); - - Status = VL53L0X_GetSequenceStepEnables(Dev, &SchedulerSequenceSteps); - - if (Status == VL53L0X_ERROR_NONE && - (SchedulerSequenceSteps.TccOn || - SchedulerSequenceSteps.MsrcOn || - SchedulerSequenceSteps.DssOn)) { - - /* TCC, MSRC and DSS all share the same timeout */ - Status = get_sequence_step_timeout(Dev, - VL53L0X_SEQUENCESTEP_MSRC, - &MsrcDccTccTimeoutMicroSeconds); - - /* Subtract the TCC, MSRC and DSS timeouts if they are - * enabled. */ - - if (Status != VL53L0X_ERROR_NONE) - return Status; - - /* TCC */ - if (SchedulerSequenceSteps.TccOn) { - - SubTimeout = MsrcDccTccTimeoutMicroSeconds - + TccOverheadMicroSeconds; - - if (SubTimeout < - FinalRangeTimingBudgetMicroSeconds) { - FinalRangeTimingBudgetMicroSeconds -= - SubTimeout; - } else { - /* Requested timeout too big. */ - Status = VL53L0X_ERROR_INVALID_PARAMS; - } - } - - if (Status != VL53L0X_ERROR_NONE) { - LOG_FUNCTION_END(Status); - return Status; - } - - /* DSS */ - if (SchedulerSequenceSteps.DssOn) { - - SubTimeout = 2 * (MsrcDccTccTimeoutMicroSeconds + - DssOverheadMicroSeconds); - - if (SubTimeout < FinalRangeTimingBudgetMicroSeconds) { - FinalRangeTimingBudgetMicroSeconds - -= SubTimeout; - } else { - /* Requested timeout too big. */ - Status = VL53L0X_ERROR_INVALID_PARAMS; - } - } else if (SchedulerSequenceSteps.MsrcOn) { - /* MSRC */ - SubTimeout = MsrcDccTccTimeoutMicroSeconds + - MsrcOverheadMicroSeconds; - - if (SubTimeout < FinalRangeTimingBudgetMicroSeconds) { - FinalRangeTimingBudgetMicroSeconds - -= SubTimeout; - } else { - /* Requested timeout too big. */ - Status = VL53L0X_ERROR_INVALID_PARAMS; - } - } - - } - - if (Status != VL53L0X_ERROR_NONE) { - LOG_FUNCTION_END(Status); - return Status; - } - - if (SchedulerSequenceSteps.PreRangeOn) { - - /* Subtract the Pre-range timeout if enabled. */ - - Status = get_sequence_step_timeout(Dev, - VL53L0X_SEQUENCESTEP_PRE_RANGE, - &PreRangeTimeoutMicroSeconds); - - SubTimeout = PreRangeTimeoutMicroSeconds + - PreRangeOverheadMicroSeconds; - - if (SubTimeout < FinalRangeTimingBudgetMicroSeconds) { - FinalRangeTimingBudgetMicroSeconds -= SubTimeout; - } else { - /* Requested timeout too big. */ - Status = VL53L0X_ERROR_INVALID_PARAMS; - } - } - - - if (Status == VL53L0X_ERROR_NONE && - SchedulerSequenceSteps.FinalRangeOn) { - - FinalRangeTimingBudgetMicroSeconds -= - FinalRangeOverheadMicroSeconds; - - /* Final Range Timeout - * Note that the final range timeout is determined by the timing - * budget and the sum of all other timeouts within the sequence. - * If there is no room for the final range timeout, then an error - * will be set. Otherwise the remaining time will be applied to - * the final range. - */ - Status = set_sequence_step_timeout(Dev, - VL53L0X_SEQUENCESTEP_FINAL_RANGE, - FinalRangeTimingBudgetMicroSeconds); - - VL53L0X_SETPARAMETERFIELD(Dev, - MeasurementTimingBudgetMicroSeconds, - MeasurementTimingBudgetMicroSeconds); - } - - LOG_FUNCTION_END(Status); - - return Status; -} - -VL53L0X_Error VL53L0X_get_measurement_timing_budget_micro_seconds(VL53L0X_DEV Dev, - uint32_t *pMeasurementTimingBudgetMicroSeconds) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - VL53L0X_SchedulerSequenceSteps_t SchedulerSequenceSteps; - uint32_t FinalRangeTimeoutMicroSeconds; - uint32_t MsrcDccTccTimeoutMicroSeconds = 2000; - uint32_t StartOverheadMicroSeconds = 1910; - uint32_t EndOverheadMicroSeconds = 960; - uint32_t MsrcOverheadMicroSeconds = 660; - uint32_t TccOverheadMicroSeconds = 590; - uint32_t DssOverheadMicroSeconds = 690; - uint32_t PreRangeOverheadMicroSeconds = 660; - uint32_t FinalRangeOverheadMicroSeconds = 550; - uint32_t PreRangeTimeoutMicroSeconds = 0; - - LOG_FUNCTION_START(""); - - /* Start and end overhead times always present */ - *pMeasurementTimingBudgetMicroSeconds - = StartOverheadMicroSeconds + EndOverheadMicroSeconds; - - Status = VL53L0X_GetSequenceStepEnables(Dev, &SchedulerSequenceSteps); - - if (Status != VL53L0X_ERROR_NONE) { - LOG_FUNCTION_END(Status); - return Status; - } - - - if (SchedulerSequenceSteps.TccOn || - SchedulerSequenceSteps.MsrcOn || - SchedulerSequenceSteps.DssOn) { - - Status = get_sequence_step_timeout(Dev, - VL53L0X_SEQUENCESTEP_MSRC, - &MsrcDccTccTimeoutMicroSeconds); - - if (Status == VL53L0X_ERROR_NONE) { - if (SchedulerSequenceSteps.TccOn) { - *pMeasurementTimingBudgetMicroSeconds += - MsrcDccTccTimeoutMicroSeconds + - TccOverheadMicroSeconds; - } - - if (SchedulerSequenceSteps.DssOn) { - *pMeasurementTimingBudgetMicroSeconds += - 2 * (MsrcDccTccTimeoutMicroSeconds + - DssOverheadMicroSeconds); - } else if (SchedulerSequenceSteps.MsrcOn) { - *pMeasurementTimingBudgetMicroSeconds += - MsrcDccTccTimeoutMicroSeconds + - MsrcOverheadMicroSeconds; - } - } - } - - if (Status == VL53L0X_ERROR_NONE) { - if (SchedulerSequenceSteps.PreRangeOn) { - Status = get_sequence_step_timeout(Dev, - VL53L0X_SEQUENCESTEP_PRE_RANGE, - &PreRangeTimeoutMicroSeconds); - *pMeasurementTimingBudgetMicroSeconds += - PreRangeTimeoutMicroSeconds + - PreRangeOverheadMicroSeconds; - } - } - - if (Status == VL53L0X_ERROR_NONE) { - if (SchedulerSequenceSteps.FinalRangeOn) { - Status = get_sequence_step_timeout(Dev, - VL53L0X_SEQUENCESTEP_FINAL_RANGE, - &FinalRangeTimeoutMicroSeconds); - *pMeasurementTimingBudgetMicroSeconds += - (FinalRangeTimeoutMicroSeconds + - FinalRangeOverheadMicroSeconds); - } - } - - if (Status == VL53L0X_ERROR_NONE) { - VL53L0X_SETPARAMETERFIELD(Dev, - MeasurementTimingBudgetMicroSeconds, - *pMeasurementTimingBudgetMicroSeconds); - } - - LOG_FUNCTION_END(Status); - return Status; -} - - - -VL53L0X_Error VL53L0X_load_tuning_settings(VL53L0X_DEV Dev, - uint8_t *pTuningSettingBuffer) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - int i; - int Index; - uint8_t msb; - uint8_t lsb; - uint8_t SelectParam; - uint8_t NumberOfWrites; - uint8_t Address; - uint8_t localBuffer[4]; /* max */ - uint16_t Temp16; - - LOG_FUNCTION_START(""); - - Index = 0; - - while ((*(pTuningSettingBuffer + Index) != 0) && - (Status == VL53L0X_ERROR_NONE)) { - NumberOfWrites = *(pTuningSettingBuffer + Index); - Index++; - if (NumberOfWrites == 0xFF) { - /* internal parameters */ - SelectParam = *(pTuningSettingBuffer + Index); - Index++; - switch (SelectParam) { - case 0: /* uint16_t SigmaEstRefArray -> 2 bytes */ - msb = *(pTuningSettingBuffer + Index); - Index++; - lsb = *(pTuningSettingBuffer + Index); - Index++; - Temp16 = VL53L0X_MAKEUINT16(lsb, msb); - PALDevDataSet(Dev, SigmaEstRefArray, Temp16); - break; - case 1: /* uint16_t SigmaEstEffPulseWidth -> 2 bytes */ - msb = *(pTuningSettingBuffer + Index); - Index++; - lsb = *(pTuningSettingBuffer + Index); - Index++; - Temp16 = VL53L0X_MAKEUINT16(lsb, msb); - PALDevDataSet(Dev, SigmaEstEffPulseWidth, - Temp16); - break; - case 2: /* uint16_t SigmaEstEffAmbWidth -> 2 bytes */ - msb = *(pTuningSettingBuffer + Index); - Index++; - lsb = *(pTuningSettingBuffer + Index); - Index++; - Temp16 = VL53L0X_MAKEUINT16(lsb, msb); - PALDevDataSet(Dev, SigmaEstEffAmbWidth, Temp16); - break; - case 3: /* uint16_t targetRefRate -> 2 bytes */ - msb = *(pTuningSettingBuffer + Index); - Index++; - lsb = *(pTuningSettingBuffer + Index); - Index++; - Temp16 = VL53L0X_MAKEUINT16(lsb, msb); - PALDevDataSet(Dev, targetRefRate, Temp16); - break; - default: /* invalid parameter */ - Status = VL53L0X_ERROR_INVALID_PARAMS; - } - - } else if (NumberOfWrites <= 4) { - Address = *(pTuningSettingBuffer + Index); - Index++; - - for (i = 0; i < NumberOfWrites; i++) { - localBuffer[i] = *(pTuningSettingBuffer + - Index); - Index++; - } - - Status = VL53L0X_WriteMulti(Dev, Address, localBuffer, - NumberOfWrites); - - } else { - Status = VL53L0X_ERROR_INVALID_PARAMS; - } - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_get_total_xtalk_rate(VL53L0X_DEV Dev, - VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, - FixPoint1616_t *ptotal_xtalk_rate_mcps) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - uint8_t xtalkCompEnable; - FixPoint1616_t totalXtalkMegaCps; - FixPoint1616_t xtalkPerSpadMegaCps; - - *ptotal_xtalk_rate_mcps = 0; - - Status = VL53L0X_GetXTalkCompensationEnable(Dev, &xtalkCompEnable); - if (Status == VL53L0X_ERROR_NONE) { - - if (xtalkCompEnable) { - - VL53L0X_GETPARAMETERFIELD( - Dev, - XTalkCompensationRateMegaCps, - xtalkPerSpadMegaCps); - - /* FixPoint1616 * FixPoint 8:8 = FixPoint0824 */ - totalXtalkMegaCps = - pRangingMeasurementData->EffectiveSpadRtnCount * - xtalkPerSpadMegaCps; - - /* FixPoint0824 >> 8 = FixPoint1616 */ - *ptotal_xtalk_rate_mcps = - (totalXtalkMegaCps + 0x80) >> 8; - } - } - - return Status; -} - -VL53L0X_Error VL53L0X_get_total_signal_rate(VL53L0X_DEV Dev, - VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, - FixPoint1616_t *ptotal_signal_rate_mcps) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - FixPoint1616_t totalXtalkMegaCps; - - LOG_FUNCTION_START(""); - - *ptotal_signal_rate_mcps = - pRangingMeasurementData->SignalRateRtnMegaCps; - - Status = VL53L0X_get_total_xtalk_rate( - Dev, pRangingMeasurementData, &totalXtalkMegaCps); - - if (Status == VL53L0X_ERROR_NONE) - *ptotal_signal_rate_mcps += totalXtalkMegaCps; - - return Status; -} - -VL53L0X_Error VL53L0X_calc_dmax( - VL53L0X_DEV Dev, - FixPoint1616_t totalSignalRate_mcps, - FixPoint1616_t totalCorrSignalRate_mcps, - FixPoint1616_t pwMult, - uint32_t sigmaEstimateP1, - FixPoint1616_t sigmaEstimateP2, - uint32_t peakVcselDuration_us, - uint32_t *pdmax_mm) -{ - const uint32_t cSigmaLimit = 18; - const FixPoint1616_t cSignalLimit = 0x4000; /* 0.25 */ - const FixPoint1616_t cSigmaEstRef = 0x00000042; /* 0.001 */ - const uint32_t cAmbEffWidthSigmaEst_ns = 6; - const uint32_t cAmbEffWidthDMax_ns = 7; - uint32_t dmaxCalRange_mm; - FixPoint1616_t dmaxCalSignalRateRtn_mcps; - FixPoint1616_t minSignalNeeded; - FixPoint1616_t minSignalNeeded_p1; - FixPoint1616_t minSignalNeeded_p2; - FixPoint1616_t minSignalNeeded_p3; - FixPoint1616_t minSignalNeeded_p4; - FixPoint1616_t sigmaLimitTmp; - FixPoint1616_t sigmaEstSqTmp; - FixPoint1616_t signalLimitTmp; - FixPoint1616_t SignalAt0mm; - FixPoint1616_t dmaxDark; - FixPoint1616_t dmaxAmbient; - FixPoint1616_t dmaxDarkTmp; - FixPoint1616_t sigmaEstP2Tmp; - uint32_t signalRateTemp_mcps; - - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - dmaxCalRange_mm = - PALDevDataGet(Dev, DmaxCalRangeMilliMeter); - - dmaxCalSignalRateRtn_mcps = - PALDevDataGet(Dev, DmaxCalSignalRateRtnMegaCps); - - /* uint32 * FixPoint1616 = FixPoint1616 */ - SignalAt0mm = dmaxCalRange_mm * dmaxCalSignalRateRtn_mcps; - - /* FixPoint1616 >> 8 = FixPoint2408 */ - SignalAt0mm = (SignalAt0mm + 0x80) >> 8; - SignalAt0mm *= dmaxCalRange_mm; - - minSignalNeeded_p1 = 0; - if (totalCorrSignalRate_mcps > 0) { - - /* Shift by 10 bits to increase resolution prior to the - * division */ - signalRateTemp_mcps = totalSignalRate_mcps << 10; - - /* Add rounding value prior to division */ - minSignalNeeded_p1 = signalRateTemp_mcps + - (totalCorrSignalRate_mcps/2); - - /* FixPoint0626/FixPoint1616 = FixPoint2210 */ - minSignalNeeded_p1 /= totalCorrSignalRate_mcps; - - /* Apply a factored version of the speed of light. - Correction to be applied at the end */ - minSignalNeeded_p1 *= 3; - - /* FixPoint2210 * FixPoint2210 = FixPoint1220 */ - minSignalNeeded_p1 *= minSignalNeeded_p1; - - /* FixPoint1220 >> 16 = FixPoint2804 */ - minSignalNeeded_p1 = (minSignalNeeded_p1 + 0x8000) >> 16; - } - - minSignalNeeded_p2 = pwMult * sigmaEstimateP1; - - /* FixPoint1616 >> 16 = uint32 */ - minSignalNeeded_p2 = (minSignalNeeded_p2 + 0x8000) >> 16; - - /* uint32 * uint32 = uint32 */ - minSignalNeeded_p2 *= minSignalNeeded_p2; - - /* Check sigmaEstimateP2 - * If this value is too high there is not enough signal rate - * to calculate dmax value so set a suitable value to ensure - * a very small dmax. - */ - sigmaEstP2Tmp = (sigmaEstimateP2 + 0x8000) >> 16; - sigmaEstP2Tmp = (sigmaEstP2Tmp + cAmbEffWidthSigmaEst_ns/2)/ - cAmbEffWidthSigmaEst_ns; - sigmaEstP2Tmp *= cAmbEffWidthDMax_ns; - - if (sigmaEstP2Tmp > 0xffff) { - minSignalNeeded_p3 = 0xfff00000; - } else { - - /* DMAX uses a different ambient width from sigma, so apply - * correction. - * Perform division before multiplication to prevent overflow. - */ - sigmaEstimateP2 = (sigmaEstimateP2 + cAmbEffWidthSigmaEst_ns/2)/ - cAmbEffWidthSigmaEst_ns; - sigmaEstimateP2 *= cAmbEffWidthDMax_ns; - - /* FixPoint1616 >> 16 = uint32 */ - minSignalNeeded_p3 = (sigmaEstimateP2 + 0x8000) >> 16; - - minSignalNeeded_p3 *= minSignalNeeded_p3; - - } - - /* FixPoint1814 / uint32 = FixPoint1814 */ - sigmaLimitTmp = ((cSigmaLimit << 14) + 500) / 1000; - - /* FixPoint1814 * FixPoint1814 = FixPoint3628 := FixPoint0428 */ - sigmaLimitTmp *= sigmaLimitTmp; - - /* FixPoint1616 * FixPoint1616 = FixPoint3232 */ - sigmaEstSqTmp = cSigmaEstRef * cSigmaEstRef; - - /* FixPoint3232 >> 4 = FixPoint0428 */ - sigmaEstSqTmp = (sigmaEstSqTmp + 0x08) >> 4; - - /* FixPoint0428 - FixPoint0428 = FixPoint0428 */ - sigmaLimitTmp -= sigmaEstSqTmp; - - /* uint32_t * FixPoint0428 = FixPoint0428 */ - minSignalNeeded_p4 = 4 * 12 * sigmaLimitTmp; - - /* FixPoint0428 >> 14 = FixPoint1814 */ - minSignalNeeded_p4 = (minSignalNeeded_p4 + 0x2000) >> 14; - - /* uint32 + uint32 = uint32 */ - minSignalNeeded = (minSignalNeeded_p2 + minSignalNeeded_p3); - - /* uint32 / uint32 = uint32 */ - minSignalNeeded += (peakVcselDuration_us/2); - minSignalNeeded /= peakVcselDuration_us; - - /* uint32 << 14 = FixPoint1814 */ - minSignalNeeded <<= 14; - - /* FixPoint1814 / FixPoint1814 = uint32 */ - minSignalNeeded += (minSignalNeeded_p4/2); - minSignalNeeded /= minSignalNeeded_p4; - - /* FixPoint3200 * FixPoint2804 := FixPoint2804*/ - minSignalNeeded *= minSignalNeeded_p1; - - /* Apply correction by dividing by 1000000. - * This assumes 10E16 on the numerator of the equation - * and 10E-22 on the denominator. - * We do this because 32bit fix point calculation can't - * handle the larger and smaller elements of this equation, - * i.e. speed of light and pulse widths. - */ - minSignalNeeded = (minSignalNeeded + 500) / 1000; - minSignalNeeded <<= 4; - - minSignalNeeded = (minSignalNeeded + 500) / 1000; - - /* FixPoint1616 >> 8 = FixPoint2408 */ - signalLimitTmp = (cSignalLimit + 0x80) >> 8; - - /* FixPoint2408/FixPoint2408 = uint32 */ - if (signalLimitTmp != 0) - dmaxDarkTmp = (SignalAt0mm + (signalLimitTmp / 2)) - / signalLimitTmp; - else - dmaxDarkTmp = 0; - - dmaxDark = VL53L0X_isqrt(dmaxDarkTmp); - - /* FixPoint2408/FixPoint2408 = uint32 */ - if (minSignalNeeded != 0) - dmaxAmbient = (SignalAt0mm + minSignalNeeded/2) - / minSignalNeeded; - else - dmaxAmbient = 0; - - dmaxAmbient = VL53L0X_isqrt(dmaxAmbient); - - *pdmax_mm = dmaxDark; - if (dmaxDark > dmaxAmbient) - *pdmax_mm = dmaxAmbient; - - LOG_FUNCTION_END(Status); - - return Status; -} - - -VL53L0X_Error VL53L0X_calc_sigma_estimate(VL53L0X_DEV Dev, - VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, - FixPoint1616_t *pSigmaEstimate, - uint32_t *pDmax_mm) -{ - /* Expressed in 100ths of a ns, i.e. centi-ns */ - const uint32_t cPulseEffectiveWidth_centi_ns = 800; - /* Expressed in 100ths of a ns, i.e. centi-ns */ - const uint32_t cAmbientEffectiveWidth_centi_ns = 600; - const FixPoint1616_t cDfltFinalRangeIntegrationTimeMilliSecs = 0x00190000; /* 25ms */ - const uint32_t cVcselPulseWidth_ps = 4700; /* pico secs */ - const FixPoint1616_t cSigmaEstMax = 0x028F87AE; - const FixPoint1616_t cSigmaEstRtnMax = 0xF000; - const FixPoint1616_t cAmbToSignalRatioMax = 0xF0000000/ - cAmbientEffectiveWidth_centi_ns; - /* Time Of Flight per mm (6.6 pico secs) */ - const FixPoint1616_t cTOF_per_mm_ps = 0x0006999A; - const uint32_t c16BitRoundingParam = 0x00008000; - const FixPoint1616_t cMaxXTalk_kcps = 0x00320000; - const uint32_t cPllPeriod_ps = 1655; - - uint32_t vcselTotalEventsRtn; - uint32_t finalRangeTimeoutMicroSecs; - uint32_t preRangeTimeoutMicroSecs; - uint32_t finalRangeIntegrationTimeMilliSecs; - FixPoint1616_t sigmaEstimateP1; - FixPoint1616_t sigmaEstimateP2; - FixPoint1616_t sigmaEstimateP3; - FixPoint1616_t deltaT_ps; - FixPoint1616_t pwMult; - FixPoint1616_t sigmaEstRtn; - FixPoint1616_t sigmaEstimate; - FixPoint1616_t xTalkCorrection; - FixPoint1616_t ambientRate_kcps; - FixPoint1616_t peakSignalRate_kcps; - FixPoint1616_t xTalkCompRate_mcps; - uint32_t xTalkCompRate_kcps; - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - FixPoint1616_t diff1_mcps; - FixPoint1616_t diff2_mcps; - FixPoint1616_t sqr1; - FixPoint1616_t sqr2; - FixPoint1616_t sqrSum; - FixPoint1616_t sqrtResult_centi_ns; - FixPoint1616_t sqrtResult; - FixPoint1616_t totalSignalRate_mcps; - FixPoint1616_t correctedSignalRate_mcps; - FixPoint1616_t sigmaEstRef; - uint32_t vcselWidth; - uint32_t finalRangeMacroPCLKS; - uint32_t preRangeMacroPCLKS; - uint32_t peakVcselDuration_us; - uint8_t finalRangeVcselPCLKS; - uint8_t preRangeVcselPCLKS; - /*! \addtogroup calc_sigma_estimate - * @{ - * - * Estimates the range sigma - */ - - LOG_FUNCTION_START(""); - - VL53L0X_GETPARAMETERFIELD(Dev, XTalkCompensationRateMegaCps, - xTalkCompRate_mcps); - - /* - * We work in kcps rather than mcps as this helps keep within the - * confines of the 32 Fix1616 type. - */ - - ambientRate_kcps = - (pRangingMeasurementData->AmbientRateRtnMegaCps * 1000) >> 16; - - correctedSignalRate_mcps = - pRangingMeasurementData->SignalRateRtnMegaCps; - - - Status = VL53L0X_get_total_signal_rate( - Dev, pRangingMeasurementData, &totalSignalRate_mcps); - Status = VL53L0X_get_total_xtalk_rate( - Dev, pRangingMeasurementData, &xTalkCompRate_mcps); - - - /* Signal rate measurement provided by device is the - * peak signal rate, not average. - */ - peakSignalRate_kcps = (totalSignalRate_mcps * 1000); - peakSignalRate_kcps = (peakSignalRate_kcps + 0x8000) >> 16; - - xTalkCompRate_kcps = xTalkCompRate_mcps * 1000; - - if (xTalkCompRate_kcps > cMaxXTalk_kcps) - xTalkCompRate_kcps = cMaxXTalk_kcps; - - if (Status == VL53L0X_ERROR_NONE) { - - /* Calculate final range macro periods */ - finalRangeTimeoutMicroSecs = VL53L0X_GETDEVICESPECIFICPARAMETER( - Dev, FinalRangeTimeoutMicroSecs); - - finalRangeVcselPCLKS = VL53L0X_GETDEVICESPECIFICPARAMETER( - Dev, FinalRangeVcselPulsePeriod); - - finalRangeMacroPCLKS = VL53L0X_calc_timeout_mclks( - Dev, finalRangeTimeoutMicroSecs, finalRangeVcselPCLKS); - - /* Calculate pre-range macro periods */ - preRangeTimeoutMicroSecs = VL53L0X_GETDEVICESPECIFICPARAMETER( - Dev, PreRangeTimeoutMicroSecs); - - preRangeVcselPCLKS = VL53L0X_GETDEVICESPECIFICPARAMETER( - Dev, PreRangeVcselPulsePeriod); - - preRangeMacroPCLKS = VL53L0X_calc_timeout_mclks( - Dev, preRangeTimeoutMicroSecs, preRangeVcselPCLKS); - - vcselWidth = 3; - if (finalRangeVcselPCLKS == 8) - vcselWidth = 2; - - - peakVcselDuration_us = vcselWidth * 2048 * - (preRangeMacroPCLKS + finalRangeMacroPCLKS); - peakVcselDuration_us = (peakVcselDuration_us + 500)/1000; - peakVcselDuration_us *= cPllPeriod_ps; - peakVcselDuration_us = (peakVcselDuration_us + 500)/1000; - - /* Fix1616 >> 8 = Fix2408 */ - totalSignalRate_mcps = (totalSignalRate_mcps + 0x80) >> 8; - - /* Fix2408 * uint32 = Fix2408 */ - vcselTotalEventsRtn = totalSignalRate_mcps * - peakVcselDuration_us; - - /* Fix2408 >> 8 = uint32 */ - vcselTotalEventsRtn = (vcselTotalEventsRtn + 0x80) >> 8; - - /* Fix2408 << 8 = Fix1616 = */ - totalSignalRate_mcps <<= 8; - } - - if (Status != VL53L0X_ERROR_NONE) { - LOG_FUNCTION_END(Status); - return Status; - } - - if (peakSignalRate_kcps == 0) { - *pSigmaEstimate = cSigmaEstMax; - PALDevDataSet(Dev, SigmaEstimate, cSigmaEstMax); - *pDmax_mm = 0; - } else { - if (vcselTotalEventsRtn < 1) - vcselTotalEventsRtn = 1; - - sigmaEstimateP1 = cPulseEffectiveWidth_centi_ns; - - /* ((FixPoint1616 << 16)* uint32)/uint32 = FixPoint1616 */ - sigmaEstimateP2 = (ambientRate_kcps << 16)/peakSignalRate_kcps; - if (sigmaEstimateP2 > cAmbToSignalRatioMax) { - /* Clip to prevent overflow. Will ensure safe - * max result. */ - sigmaEstimateP2 = cAmbToSignalRatioMax; - } - sigmaEstimateP2 *= cAmbientEffectiveWidth_centi_ns; - - sigmaEstimateP3 = 2 * VL53L0X_isqrt(vcselTotalEventsRtn * 12); - - /* uint32 * FixPoint1616 = FixPoint1616 */ - deltaT_ps = pRangingMeasurementData->RangeMilliMeter * - cTOF_per_mm_ps; - - /* - * vcselRate - xtalkCompRate - * (uint32 << 16) - FixPoint1616 = FixPoint1616. - * Divide result by 1000 to convert to mcps. - * 500 is added to ensure rounding when integer division - * truncates. - */ - diff1_mcps = (((peakSignalRate_kcps << 16) - - 2 * xTalkCompRate_kcps) + 500)/1000; - - /* vcselRate + xtalkCompRate */ - diff2_mcps = ((peakSignalRate_kcps << 16) + 500)/1000; - - /* Shift by 8 bits to increase resolution prior to the - * division */ - diff1_mcps <<= 8; - - /* FixPoint0824/FixPoint1616 = FixPoint2408 */ - xTalkCorrection = abs(diff1_mcps/diff2_mcps); - - /* FixPoint2408 << 8 = FixPoint1616 */ - xTalkCorrection <<= 8; - - if(pRangingMeasurementData->RangeStatus != 0){ - pwMult = 1 << 16; - } else { - /* FixPoint1616/uint32 = FixPoint1616 */ - pwMult = deltaT_ps/cVcselPulseWidth_ps; /* smaller than 1.0f */ - - /* - * FixPoint1616 * FixPoint1616 = FixPoint3232, however both - * values are small enough such that32 bits will not be - * exceeded. - */ - pwMult *= ((1 << 16) - xTalkCorrection); - - /* (FixPoint3232 >> 16) = FixPoint1616 */ - pwMult = (pwMult + c16BitRoundingParam) >> 16; - - /* FixPoint1616 + FixPoint1616 = FixPoint1616 */ - pwMult += (1 << 16); - - /* - * At this point the value will be 1.xx, therefore if we square - * the value this will exceed 32 bits. To address this perform - * a single shift to the right before the multiplication. - */ - pwMult >>= 1; - /* FixPoint1715 * FixPoint1715 = FixPoint3430 */ - pwMult = pwMult * pwMult; - - /* (FixPoint3430 >> 14) = Fix1616 */ - pwMult >>= 14; - } - - /* FixPoint1616 * uint32 = FixPoint1616 */ - sqr1 = pwMult * sigmaEstimateP1; - - /* (FixPoint1616 >> 16) = FixPoint3200 */ - sqr1 = (sqr1 + 0x8000) >> 16; - - /* FixPoint3200 * FixPoint3200 = FixPoint6400 */ - sqr1 *= sqr1; - - sqr2 = sigmaEstimateP2; - - /* (FixPoint1616 >> 16) = FixPoint3200 */ - sqr2 = (sqr2 + 0x8000) >> 16; - - /* FixPoint3200 * FixPoint3200 = FixPoint6400 */ - sqr2 *= sqr2; - - /* FixPoint64000 + FixPoint6400 = FixPoint6400 */ - sqrSum = sqr1 + sqr2; - - /* SQRT(FixPoin6400) = FixPoint3200 */ - sqrtResult_centi_ns = VL53L0X_isqrt(sqrSum); - - /* (FixPoint3200 << 16) = FixPoint1616 */ - sqrtResult_centi_ns <<= 16; - - /* - * Note that the Speed Of Light is expressed in um per 1E-10 - * seconds (2997) Therefore to get mm/ns we have to divide by - * 10000 - */ - sigmaEstRtn = (((sqrtResult_centi_ns+50)/100) / - sigmaEstimateP3); - sigmaEstRtn *= VL53L0X_SPEED_OF_LIGHT_IN_AIR; - - /* Add 5000 before dividing by 10000 to ensure rounding. */ - sigmaEstRtn += 5000; - sigmaEstRtn /= 10000; - - if (sigmaEstRtn > cSigmaEstRtnMax) { - /* Clip to prevent overflow. Will ensure safe - * max result. */ - sigmaEstRtn = cSigmaEstRtnMax; - } - finalRangeIntegrationTimeMilliSecs = - (finalRangeTimeoutMicroSecs + preRangeTimeoutMicroSecs + 500)/1000; - - /* sigmaEstRef = 1mm * 25ms/final range integration time (inc pre-range) - * sqrt(FixPoint1616/int) = FixPoint2408) - */ - sigmaEstRef = - VL53L0X_isqrt((cDfltFinalRangeIntegrationTimeMilliSecs + - finalRangeIntegrationTimeMilliSecs/2)/ - finalRangeIntegrationTimeMilliSecs); - - /* FixPoint2408 << 8 = FixPoint1616 */ - sigmaEstRef <<= 8; - sigmaEstRef = (sigmaEstRef + 500)/1000; - - /* FixPoint1616 * FixPoint1616 = FixPoint3232 */ - sqr1 = sigmaEstRtn * sigmaEstRtn; - /* FixPoint1616 * FixPoint1616 = FixPoint3232 */ - sqr2 = sigmaEstRef * sigmaEstRef; - - /* sqrt(FixPoint3232) = FixPoint1616 */ - sqrtResult = VL53L0X_isqrt((sqr1 + sqr2)); - /* - * Note that the Shift by 4 bits increases resolution prior to - * the sqrt, therefore the result must be shifted by 2 bits to - * the right to revert back to the FixPoint1616 format. - */ - - sigmaEstimate = 1000 * sqrtResult; - - if ((peakSignalRate_kcps < 1) || (vcselTotalEventsRtn < 1) || - (sigmaEstimate > cSigmaEstMax)) { - sigmaEstimate = cSigmaEstMax; - } - - *pSigmaEstimate = (uint32_t)(sigmaEstimate); - PALDevDataSet(Dev, SigmaEstimate, *pSigmaEstimate); - Status = VL53L0X_calc_dmax( - Dev, - totalSignalRate_mcps, - correctedSignalRate_mcps, - pwMult, - sigmaEstimateP1, - sigmaEstimateP2, - peakVcselDuration_us, - pDmax_mm); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_get_pal_range_status(VL53L0X_DEV Dev, - uint8_t DeviceRangeStatus, - FixPoint1616_t SignalRate, - uint16_t EffectiveSpadRtnCount, - VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, - uint8_t *pPalRangeStatus) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t NoneFlag; - uint8_t SigmaLimitflag = 0; - uint8_t SignalRefClipflag = 0; - uint8_t RangeIgnoreThresholdflag = 0; - uint8_t SigmaLimitCheckEnable = 0; - uint8_t SignalRateFinalRangeLimitCheckEnable = 0; - uint8_t SignalRefClipLimitCheckEnable = 0; - uint8_t RangeIgnoreThresholdLimitCheckEnable = 0; - FixPoint1616_t SigmaEstimate; - FixPoint1616_t SigmaLimitValue; - FixPoint1616_t SignalRefClipValue; - FixPoint1616_t RangeIgnoreThresholdValue; - FixPoint1616_t SignalRatePerSpad; - uint8_t DeviceRangeStatusInternal = 0; - uint16_t tmpWord = 0; - uint8_t Temp8; - uint32_t Dmax_mm = 0; - FixPoint1616_t LastSignalRefMcps; - - LOG_FUNCTION_START(""); - - - /* - * VL53L0X has a good ranging when the value of the - * DeviceRangeStatus = 11. This function will replace the value 0 with - * the value 11 in the DeviceRangeStatus. - * In addition, the SigmaEstimator is not included in the VL53L0X - * DeviceRangeStatus, this will be added in the PalRangeStatus. - */ - - DeviceRangeStatusInternal = ((DeviceRangeStatus & 0x78) >> 3); - - if (DeviceRangeStatusInternal == 0 || - DeviceRangeStatusInternal == 5 || - DeviceRangeStatusInternal == 7 || - DeviceRangeStatusInternal == 12 || - DeviceRangeStatusInternal == 13 || - DeviceRangeStatusInternal == 14 || - DeviceRangeStatusInternal == 15 - ) { - NoneFlag = 1; - } else { - NoneFlag = 0; - } - - /* - * Check if Sigma limit is enabled, if yes then do comparison with limit - * value and put the result back into pPalRangeStatus. - */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_GetLimitCheckEnable(Dev, - VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, - &SigmaLimitCheckEnable); - - if ((SigmaLimitCheckEnable != 0) && (Status == VL53L0X_ERROR_NONE)) { - /* - * compute the Sigma and check with limit - */ - Status = VL53L0X_calc_sigma_estimate( - Dev, - pRangingMeasurementData, - &SigmaEstimate, - &Dmax_mm); - if (Status == VL53L0X_ERROR_NONE) - pRangingMeasurementData->RangeDMaxMilliMeter = Dmax_mm; - - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_GetLimitCheckValue(Dev, - VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, - &SigmaLimitValue); - - if ((SigmaLimitValue > 0) && - (SigmaEstimate > SigmaLimitValue)) - /* Limit Fail */ - SigmaLimitflag = 1; - } - } - - /* - * Check if Signal ref clip limit is enabled, if yes then do comparison - * with limit value and put the result back into pPalRangeStatus. - */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_GetLimitCheckEnable(Dev, - VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, - &SignalRefClipLimitCheckEnable); - - if ((SignalRefClipLimitCheckEnable != 0) && - (Status == VL53L0X_ERROR_NONE)) { - - Status = VL53L0X_GetLimitCheckValue(Dev, - VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, - &SignalRefClipValue); - - /* Read LastSignalRefMcps from device */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_RdWord(Dev, - VL53L0X_REG_RESULT_PEAK_SIGNAL_RATE_REF, - &tmpWord); - - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_WrByte(Dev, 0xFF, 0x00); - - LastSignalRefMcps = VL53L0X_FIXPOINT97TOFIXPOINT1616(tmpWord); - PALDevDataSet(Dev, LastSignalRefMcps, LastSignalRefMcps); - - if ((SignalRefClipValue > 0) && - (LastSignalRefMcps > SignalRefClipValue)) { - /* Limit Fail */ - SignalRefClipflag = 1; - } - } - - /* - * Check if Signal ref clip limit is enabled, if yes then do comparison - * with limit value and put the result back into pPalRangeStatus. - * EffectiveSpadRtnCount has a format 8.8 - * If (Return signal rate < (1.5 x Xtalk x number of Spads)) : FAIL - */ - if (Status == VL53L0X_ERROR_NONE) - Status = VL53L0X_GetLimitCheckEnable(Dev, - VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, - &RangeIgnoreThresholdLimitCheckEnable); - - if ((RangeIgnoreThresholdLimitCheckEnable != 0) && - (Status == VL53L0X_ERROR_NONE)) { - - /* Compute the signal rate per spad */ - if (EffectiveSpadRtnCount == 0) { - SignalRatePerSpad = 0; - } else { - SignalRatePerSpad = (FixPoint1616_t)((256 * SignalRate) - / EffectiveSpadRtnCount); - } - - Status = VL53L0X_GetLimitCheckValue(Dev, - VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, - &RangeIgnoreThresholdValue); - - if ((RangeIgnoreThresholdValue > 0) && - (SignalRatePerSpad < RangeIgnoreThresholdValue)) { - /* Limit Fail add 2^6 to range status */ - RangeIgnoreThresholdflag = 1; - } - } - - if (Status == VL53L0X_ERROR_NONE) { - if (NoneFlag == 1) { - *pPalRangeStatus = 255; /* NONE */ - } else if (DeviceRangeStatusInternal == 1 || - DeviceRangeStatusInternal == 2 || - DeviceRangeStatusInternal == 3) { - *pPalRangeStatus = 5; /* HW fail */ - } else if (DeviceRangeStatusInternal == 6 || - DeviceRangeStatusInternal == 9) { - *pPalRangeStatus = 4; /* Phase fail */ - } else if (DeviceRangeStatusInternal == 8 || - DeviceRangeStatusInternal == 10 || - SignalRefClipflag == 1) { - *pPalRangeStatus = 3; /* Min range */ - } else if (DeviceRangeStatusInternal == 4 || - RangeIgnoreThresholdflag == 1) { - *pPalRangeStatus = 2; /* Signal Fail */ - } else if (SigmaLimitflag == 1) { - *pPalRangeStatus = 1; /* Sigma Fail */ - } else { - *pPalRangeStatus = 0; /* Range Valid */ - } - } - - /* DMAX only relevant during range error */ - if (*pPalRangeStatus == 0) - pRangingMeasurementData->RangeDMaxMilliMeter = 0; - - /* fill the Limit Check Status */ - - Status = VL53L0X_GetLimitCheckEnable(Dev, - VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE, - &SignalRateFinalRangeLimitCheckEnable); - - if (Status == VL53L0X_ERROR_NONE) { - if ((SigmaLimitCheckEnable == 0) || (SigmaLimitflag == 1)) - Temp8 = 1; - else - Temp8 = 0; - VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksStatus, - VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, Temp8); - - if ((DeviceRangeStatusInternal == 4) || - (SignalRateFinalRangeLimitCheckEnable == 0)) - Temp8 = 1; - else - Temp8 = 0; - VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksStatus, - VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE, - Temp8); - - if ((SignalRefClipLimitCheckEnable == 0) || - (SignalRefClipflag == 1)) - Temp8 = 1; - else - Temp8 = 0; - - VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksStatus, - VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, Temp8); - - if ((RangeIgnoreThresholdLimitCheckEnable == 0) || - (RangeIgnoreThresholdflag == 1)) - Temp8 = 1; - else - Temp8 = 0; - - VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksStatus, - VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, - Temp8); - } - - LOG_FUNCTION_END(Status); - return Status; - -} +/******************************************************************************* + Copyright � 2016, STMicroelectronics International N.V. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND + NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. + IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ******************************************************************************/ + +#include "vl53l0x_api.h" +#include "vl53l0x_api_core.h" +#include "vl53l0x_api_calibration.h" + + +#ifndef __KERNEL__ +#include <stdlib.h> +#endif +#define LOG_FUNCTION_START(fmt, ...) \ + _LOG_FUNCTION_START(TRACE_MODULE_API, fmt, ##__VA_ARGS__) +#define LOG_FUNCTION_END(status, ...) \ + _LOG_FUNCTION_END(TRACE_MODULE_API, status, ##__VA_ARGS__) +#define LOG_FUNCTION_END_FMT(status, fmt, ...) \ + _LOG_FUNCTION_END_FMT(TRACE_MODULE_API, status, fmt, ##__VA_ARGS__) + +VL53L0X_Error VL53L0X_reverse_bytes(uint8_t *data, uint32_t size) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t tempData; + uint32_t mirrorIndex; + uint32_t middle = size/2; + uint32_t index; + + for (index = 0; index < middle; index++) { + mirrorIndex = size - index - 1; + tempData = data[index]; + data[index] = data[mirrorIndex]; + data[mirrorIndex] = tempData; + } + return Status; +} + +VL53L0X_Error VL53L0X_measurement_poll_for_completion(VL53L0X_DEV Dev) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t NewDataReady = 0; + uint32_t LoopNb; + + LOG_FUNCTION_START(""); + + LoopNb = 0; + + do { + Status = VL53L0X_GetMeasurementDataReady(Dev, &NewDataReady); + if (Status != 0) + break; /* the error is set */ + + if (NewDataReady == 1) + break; /* done note that status == 0 */ + + LoopNb++; + if (LoopNb >= VL53L0X_DEFAULT_MAX_LOOP) { + Status = VL53L0X_ERROR_TIME_OUT; + break; + } + + VL53L0X_PollingDelay(Dev); + } while (1); + + LOG_FUNCTION_END(Status); + + return Status; +} + + +uint8_t VL53L0X_decode_vcsel_period(uint8_t vcsel_period_reg) +{ + /*! + * Converts the encoded VCSEL period register value into the real + * period in PLL clocks + */ + + uint8_t vcsel_period_pclks = 0; + + vcsel_period_pclks = (vcsel_period_reg + 1) << 1; + + return vcsel_period_pclks; +} + +uint8_t VL53L0X_encode_vcsel_period(uint8_t vcsel_period_pclks) +{ + /*! + * Converts the encoded VCSEL period register value into the real period + * in PLL clocks + */ + + uint8_t vcsel_period_reg = 0; + + vcsel_period_reg = (vcsel_period_pclks >> 1) - 1; + + return vcsel_period_reg; +} + + +uint32_t VL53L0X_isqrt(uint32_t num) +{ + /* + * Implements an integer square root + * + * From: http://en.wikipedia.org/wiki/Methods_of_computing_square_roots + */ + + uint32_t res = 0; + uint32_t bit = 1 << 30; + /* The second-to-top bit is set: + * 1 << 14 for 16-bits, 1 << 30 for 32 bits */ + + /* "bit" starts at the highest power of four <= the argument. */ + while (bit > num) + bit >>= 2; + + + while (bit != 0) { + if (num >= res + bit) { + num -= res + bit; + res = (res >> 1) + bit; + } else + res >>= 1; + + bit >>= 2; + } + + return res; +} + + +uint32_t VL53L0X_quadrature_sum(uint32_t a, uint32_t b) +{ + /* + * Implements a quadrature sum + * + * rea = sqrt(a^2 + b^2) + * + * Trap overflow case max input value is 65535 (16-bit value) + * as internal calc are 32-bit wide + * + * If overflow then seta output to maximum + */ + uint32_t res = 0; + + if (a > 65535 || b > 65535) + res = 65535; + else + res = VL53L0X_isqrt(a * a + b * b); + + return res; +} + + +VL53L0X_Error VL53L0X_device_read_strobe(VL53L0X_DEV Dev) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t strobe; + uint32_t LoopNb; + LOG_FUNCTION_START(""); + + Status |= VL53L0X_WrByte(Dev, 0x83, 0x00); + + /* polling + * use timeout to avoid deadlock*/ + if (Status == VL53L0X_ERROR_NONE) { + LoopNb = 0; + do { + Status = VL53L0X_RdByte(Dev, 0x83, &strobe); + if ((strobe != 0x00) || Status != VL53L0X_ERROR_NONE) + break; + + LoopNb = LoopNb + 1; + } while (LoopNb < VL53L0X_DEFAULT_MAX_LOOP); + + if (LoopNb >= VL53L0X_DEFAULT_MAX_LOOP) + Status = VL53L0X_ERROR_TIME_OUT; + + } + + Status |= VL53L0X_WrByte(Dev, 0x83, 0x01); + + LOG_FUNCTION_END(Status); + return Status; + +} + +VL53L0X_Error VL53L0X_get_info_from_device(VL53L0X_DEV Dev, uint8_t option) +{ + + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t byte; + uint32_t TmpDWord; + uint8_t ModuleId; + uint8_t Revision; + uint8_t ReferenceSpadCount = 0; + uint8_t ReferenceSpadType = 0; + uint32_t PartUIDUpper = 0; + uint32_t PartUIDLower = 0; + uint32_t OffsetFixed1104_mm = 0; + int16_t OffsetMicroMeters = 0; + uint32_t DistMeasTgtFixed1104_mm = 400 << 4; + uint32_t DistMeasFixed1104_400_mm = 0; + uint32_t SignalRateMeasFixed1104_400_mm = 0; + char ProductId[19]; + char *ProductId_tmp; + uint8_t ReadDataFromDeviceDone; + FixPoint1616_t SignalRateMeasFixed400mmFix = 0; + uint8_t NvmRefGoodSpadMap[VL53L0X_REF_SPAD_BUFFER_SIZE]; + int i; + + + LOG_FUNCTION_START(""); + + ReadDataFromDeviceDone = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, + ReadDataFromDeviceDone); + + /* This access is done only once after that a GetDeviceInfo or + * datainit is done*/ + if (ReadDataFromDeviceDone != 7) { + + Status |= VL53L0X_WrByte(Dev, 0x80, 0x01); + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x01); + Status |= VL53L0X_WrByte(Dev, 0x00, 0x00); + + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x06); + Status |= VL53L0X_RdByte(Dev, 0x83, &byte); + Status |= VL53L0X_WrByte(Dev, 0x83, byte|4); + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x07); + Status |= VL53L0X_WrByte(Dev, 0x81, 0x01); + + Status |= VL53L0X_PollingDelay(Dev); + + Status |= VL53L0X_WrByte(Dev, 0x80, 0x01); + + if (((option & 1) == 1) && + ((ReadDataFromDeviceDone & 1) == 0)) { + Status |= VL53L0X_WrByte(Dev, 0x94, 0x6b); + Status |= VL53L0X_device_read_strobe(Dev); + Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); + + ReferenceSpadCount = (uint8_t)((TmpDWord >> 8) & 0x07f); + ReferenceSpadType = (uint8_t)((TmpDWord >> 15) & 0x01); + + Status |= VL53L0X_WrByte(Dev, 0x94, 0x24); + Status |= VL53L0X_device_read_strobe(Dev); + Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); + + + NvmRefGoodSpadMap[0] = (uint8_t)((TmpDWord >> 24) + & 0xff); + NvmRefGoodSpadMap[1] = (uint8_t)((TmpDWord >> 16) + & 0xff); + NvmRefGoodSpadMap[2] = (uint8_t)((TmpDWord >> 8) + & 0xff); + NvmRefGoodSpadMap[3] = (uint8_t)(TmpDWord & 0xff); + + Status |= VL53L0X_WrByte(Dev, 0x94, 0x25); + Status |= VL53L0X_device_read_strobe(Dev); + Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); + + NvmRefGoodSpadMap[4] = (uint8_t)((TmpDWord >> 24) + & 0xff); + NvmRefGoodSpadMap[5] = (uint8_t)((TmpDWord >> 16) + & 0xff); + } + + if (((option & 2) == 2) && + ((ReadDataFromDeviceDone & 2) == 0)) { + + Status |= VL53L0X_WrByte(Dev, 0x94, 0x02); + Status |= VL53L0X_device_read_strobe(Dev); + Status |= VL53L0X_RdByte(Dev, 0x90, &ModuleId); + + Status |= VL53L0X_WrByte(Dev, 0x94, 0x7B); + Status |= VL53L0X_device_read_strobe(Dev); + Status |= VL53L0X_RdByte(Dev, 0x90, &Revision); + + Status |= VL53L0X_WrByte(Dev, 0x94, 0x77); + Status |= VL53L0X_device_read_strobe(Dev); + Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); + + ProductId[0] = (char)((TmpDWord >> 25) & 0x07f); + ProductId[1] = (char)((TmpDWord >> 18) & 0x07f); + ProductId[2] = (char)((TmpDWord >> 11) & 0x07f); + ProductId[3] = (char)((TmpDWord >> 4) & 0x07f); + + byte = (uint8_t)((TmpDWord & 0x00f) << 3); + + Status |= VL53L0X_WrByte(Dev, 0x94, 0x78); + Status |= VL53L0X_device_read_strobe(Dev); + Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); + + ProductId[4] = (char)(byte + + ((TmpDWord >> 29) & 0x07f)); + ProductId[5] = (char)((TmpDWord >> 22) & 0x07f); + ProductId[6] = (char)((TmpDWord >> 15) & 0x07f); + ProductId[7] = (char)((TmpDWord >> 8) & 0x07f); + ProductId[8] = (char)((TmpDWord >> 1) & 0x07f); + + byte = (uint8_t)((TmpDWord & 0x001) << 6); + + Status |= VL53L0X_WrByte(Dev, 0x94, 0x79); + + Status |= VL53L0X_device_read_strobe(Dev); + + Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); + + ProductId[9] = (char)(byte + + ((TmpDWord >> 26) & 0x07f)); + ProductId[10] = (char)((TmpDWord >> 19) & 0x07f); + ProductId[11] = (char)((TmpDWord >> 12) & 0x07f); + ProductId[12] = (char)((TmpDWord >> 5) & 0x07f); + + byte = (uint8_t)((TmpDWord & 0x01f) << 2); + + Status |= VL53L0X_WrByte(Dev, 0x94, 0x7A); + + Status |= VL53L0X_device_read_strobe(Dev); + + Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); + + ProductId[13] = (char)(byte + + ((TmpDWord >> 30) & 0x07f)); + ProductId[14] = (char)((TmpDWord >> 23) & 0x07f); + ProductId[15] = (char)((TmpDWord >> 16) & 0x07f); + ProductId[16] = (char)((TmpDWord >> 9) & 0x07f); + ProductId[17] = (char)((TmpDWord >> 2) & 0x07f); + ProductId[18] = '\0'; + + } + + if (((option & 4) == 4) && + ((ReadDataFromDeviceDone & 4) == 0)) { + + Status |= VL53L0X_WrByte(Dev, 0x94, 0x7B); + Status |= VL53L0X_device_read_strobe(Dev); + Status |= VL53L0X_RdDWord(Dev, 0x90, &PartUIDUpper); + + Status |= VL53L0X_WrByte(Dev, 0x94, 0x7C); + Status |= VL53L0X_device_read_strobe(Dev); + Status |= VL53L0X_RdDWord(Dev, 0x90, &PartUIDLower); + + Status |= VL53L0X_WrByte(Dev, 0x94, 0x73); + Status |= VL53L0X_device_read_strobe(Dev); + Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); + + SignalRateMeasFixed1104_400_mm = (TmpDWord & + 0x0000000ff) << 8; + + Status |= VL53L0X_WrByte(Dev, 0x94, 0x74); + Status |= VL53L0X_device_read_strobe(Dev); + Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); + + SignalRateMeasFixed1104_400_mm |= ((TmpDWord & + 0xff000000) >> 24); + + Status |= VL53L0X_WrByte(Dev, 0x94, 0x75); + Status |= VL53L0X_device_read_strobe(Dev); + Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); + + DistMeasFixed1104_400_mm = (TmpDWord & 0x0000000ff) + << 8; + + Status |= VL53L0X_WrByte(Dev, 0x94, 0x76); + Status |= VL53L0X_device_read_strobe(Dev); + Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord); + + DistMeasFixed1104_400_mm |= ((TmpDWord & 0xff000000) + >> 24); + } + + Status |= VL53L0X_WrByte(Dev, 0x81, 0x00); + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x06); + Status |= VL53L0X_RdByte(Dev, 0x83, &byte); + Status |= VL53L0X_WrByte(Dev, 0x83, byte&0xfb); + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x01); + Status |= VL53L0X_WrByte(Dev, 0x00, 0x01); + + Status |= VL53L0X_WrByte(Dev, 0xFF, 0x00); + Status |= VL53L0X_WrByte(Dev, 0x80, 0x00); + } + + if ((Status == VL53L0X_ERROR_NONE) && + (ReadDataFromDeviceDone != 7)) { + /* Assign to variable if status is ok */ + if (((option & 1) == 1) && + ((ReadDataFromDeviceDone & 1) == 0)) { + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + ReferenceSpadCount, ReferenceSpadCount); + + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + ReferenceSpadType, ReferenceSpadType); + + for (i = 0; i < VL53L0X_REF_SPAD_BUFFER_SIZE; i++) { + Dev->Data.SpadData.RefGoodSpadMap[i] = + NvmRefGoodSpadMap[i]; + } + } + + if (((option & 2) == 2) && + ((ReadDataFromDeviceDone & 2) == 0)) { + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + ModuleId, ModuleId); + + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + Revision, Revision); + + ProductId_tmp = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, + ProductId); + VL53L0X_COPYSTRING(ProductId_tmp, ProductId); + + } + + if (((option & 4) == 4) && + ((ReadDataFromDeviceDone & 4) == 0)) { + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + PartUIDUpper, PartUIDUpper); + + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + PartUIDLower, PartUIDLower); + + SignalRateMeasFixed400mmFix = + VL53L0X_FIXPOINT97TOFIXPOINT1616( + SignalRateMeasFixed1104_400_mm); + + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + SignalRateMeasFixed400mm, + SignalRateMeasFixed400mmFix); + + OffsetMicroMeters = 0; + if (DistMeasFixed1104_400_mm != 0) { + OffsetFixed1104_mm = + DistMeasFixed1104_400_mm - + DistMeasTgtFixed1104_mm; + OffsetMicroMeters = (OffsetFixed1104_mm + * 1000) >> 4; + OffsetMicroMeters *= -1; + } + + PALDevDataSet(Dev, + Part2PartOffsetAdjustmentNVMMicroMeter, + OffsetMicroMeters); + } + byte = (uint8_t)(ReadDataFromDeviceDone|option); + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, ReadDataFromDeviceDone, + byte); + } + + LOG_FUNCTION_END(Status); + return Status; +} + + +uint32_t VL53L0X_calc_macro_period_ps(VL53L0X_DEV Dev, uint8_t vcsel_period_pclks) +{ + uint64_t PLL_period_ps; + uint32_t macro_period_vclks; + uint32_t macro_period_ps; + + LOG_FUNCTION_START(""); + + /* The above calculation will produce rounding errors, + therefore set fixed value + */ + PLL_period_ps = 1655; + + macro_period_vclks = 2304; + macro_period_ps = (uint32_t)(macro_period_vclks + * vcsel_period_pclks * PLL_period_ps); + + LOG_FUNCTION_END(""); + return macro_period_ps; +} + +uint16_t VL53L0X_encode_timeout(uint32_t timeout_macro_clks) +{ + /*! + * Encode timeout in macro periods in (LSByte * 2^MSByte) + 1 format + */ + + uint16_t encoded_timeout = 0; + uint32_t ls_byte = 0; + uint16_t ms_byte = 0; + + if (timeout_macro_clks > 0) { + ls_byte = timeout_macro_clks - 1; + + while ((ls_byte & 0xFFFFFF00) > 0) { + ls_byte = ls_byte >> 1; + ms_byte++; + } + + encoded_timeout = (ms_byte << 8) + + (uint16_t) (ls_byte & 0x000000FF); + } + + return encoded_timeout; + +} + +uint32_t VL53L0X_decode_timeout(uint16_t encoded_timeout) +{ + /*! + * Decode 16-bit timeout register value - format (LSByte * 2^MSByte) + 1 + */ + + uint32_t timeout_macro_clks = 0; + + timeout_macro_clks = ((uint32_t) (encoded_timeout & 0x00FF) + << (uint32_t) ((encoded_timeout & 0xFF00) >> 8)) + 1; + + return timeout_macro_clks; +} + + +/* To convert ms into register value */ +uint32_t VL53L0X_calc_timeout_mclks(VL53L0X_DEV Dev, + uint32_t timeout_period_us, + uint8_t vcsel_period_pclks) +{ + uint32_t macro_period_ps; + uint32_t macro_period_ns; + uint32_t timeout_period_mclks = 0; + + macro_period_ps = VL53L0X_calc_macro_period_ps(Dev, vcsel_period_pclks); + macro_period_ns = (macro_period_ps + 500) / 1000; + + timeout_period_mclks = + (uint32_t) (((timeout_period_us * 1000) + + (macro_period_ns / 2)) / macro_period_ns); + + return timeout_period_mclks; +} + +/* To convert register value into us */ +uint32_t VL53L0X_calc_timeout_us(VL53L0X_DEV Dev, + uint16_t timeout_period_mclks, + uint8_t vcsel_period_pclks) +{ + uint32_t macro_period_ps; + uint32_t macro_period_ns; + uint32_t actual_timeout_period_us = 0; + + macro_period_ps = VL53L0X_calc_macro_period_ps(Dev, vcsel_period_pclks); + macro_period_ns = (macro_period_ps + 500) / 1000; + + actual_timeout_period_us = + ((timeout_period_mclks * macro_period_ns) + 500) / 1000; + + return actual_timeout_period_us; +} + + +VL53L0X_Error get_sequence_step_timeout(VL53L0X_DEV Dev, + VL53L0X_SequenceStepId SequenceStepId, + uint32_t *pTimeOutMicroSecs) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t CurrentVCSELPulsePeriodPClk; + uint8_t EncodedTimeOutByte = 0; + uint32_t TimeoutMicroSeconds = 0; + uint16_t PreRangeEncodedTimeOut = 0; + uint16_t MsrcTimeOutMClks; + uint16_t PreRangeTimeOutMClks; + uint16_t FinalRangeTimeOutMClks = 0; + uint16_t FinalRangeEncodedTimeOut; + VL53L0X_SchedulerSequenceSteps_t SchedulerSequenceSteps; + + if ((SequenceStepId == VL53L0X_SEQUENCESTEP_TCC) || + (SequenceStepId == VL53L0X_SEQUENCESTEP_DSS) || + (SequenceStepId == VL53L0X_SEQUENCESTEP_MSRC)) { + + Status = VL53L0X_GetVcselPulsePeriod(Dev, + VL53L0X_VCSEL_PERIOD_PRE_RANGE, + &CurrentVCSELPulsePeriodPClk); + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_RdByte(Dev, + VL53L0X_REG_MSRC_CONFIG_TIMEOUT_MACROP, + &EncodedTimeOutByte); + } + MsrcTimeOutMClks = VL53L0X_decode_timeout(EncodedTimeOutByte); + + TimeoutMicroSeconds = VL53L0X_calc_timeout_us(Dev, + MsrcTimeOutMClks, + CurrentVCSELPulsePeriodPClk); + } else if (SequenceStepId == VL53L0X_SEQUENCESTEP_PRE_RANGE) { + /* Retrieve PRE-RANGE VCSEL Period */ + Status = VL53L0X_GetVcselPulsePeriod(Dev, + VL53L0X_VCSEL_PERIOD_PRE_RANGE, + &CurrentVCSELPulsePeriodPClk); + + /* Retrieve PRE-RANGE Timeout in Macro periods (MCLKS) */ + if (Status == VL53L0X_ERROR_NONE) { + + /* Retrieve PRE-RANGE VCSEL Period */ + Status = VL53L0X_GetVcselPulsePeriod(Dev, + VL53L0X_VCSEL_PERIOD_PRE_RANGE, + &CurrentVCSELPulsePeriodPClk); + + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_RdWord(Dev, + VL53L0X_REG_PRE_RANGE_CONFIG_TIMEOUT_MACROP_HI, + &PreRangeEncodedTimeOut); + } + + PreRangeTimeOutMClks = VL53L0X_decode_timeout( + PreRangeEncodedTimeOut); + + TimeoutMicroSeconds = VL53L0X_calc_timeout_us(Dev, + PreRangeTimeOutMClks, + CurrentVCSELPulsePeriodPClk); + } + } else if (SequenceStepId == VL53L0X_SEQUENCESTEP_FINAL_RANGE) { + + VL53L0X_GetSequenceStepEnables(Dev, &SchedulerSequenceSteps); + PreRangeTimeOutMClks = 0; + + if (SchedulerSequenceSteps.PreRangeOn) { + /* Retrieve PRE-RANGE VCSEL Period */ + Status = VL53L0X_GetVcselPulsePeriod(Dev, + VL53L0X_VCSEL_PERIOD_PRE_RANGE, + &CurrentVCSELPulsePeriodPClk); + + /* Retrieve PRE-RANGE Timeout in Macro periods + * (MCLKS) */ + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_RdWord(Dev, + VL53L0X_REG_PRE_RANGE_CONFIG_TIMEOUT_MACROP_HI, + &PreRangeEncodedTimeOut); + PreRangeTimeOutMClks = VL53L0X_decode_timeout( + PreRangeEncodedTimeOut); + } + } + + if (Status == VL53L0X_ERROR_NONE) { + /* Retrieve FINAL-RANGE VCSEL Period */ + Status = VL53L0X_GetVcselPulsePeriod(Dev, + VL53L0X_VCSEL_PERIOD_FINAL_RANGE, + &CurrentVCSELPulsePeriodPClk); + } + + /* Retrieve FINAL-RANGE Timeout in Macro periods (MCLKS) */ + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_RdWord(Dev, + VL53L0X_REG_FINAL_RANGE_CONFIG_TIMEOUT_MACROP_HI, + &FinalRangeEncodedTimeOut); + FinalRangeTimeOutMClks = VL53L0X_decode_timeout( + FinalRangeEncodedTimeOut); + } + + FinalRangeTimeOutMClks -= PreRangeTimeOutMClks; + TimeoutMicroSeconds = VL53L0X_calc_timeout_us(Dev, + FinalRangeTimeOutMClks, + CurrentVCSELPulsePeriodPClk); + } + + *pTimeOutMicroSecs = TimeoutMicroSeconds; + + return Status; +} + + +VL53L0X_Error set_sequence_step_timeout(VL53L0X_DEV Dev, + VL53L0X_SequenceStepId SequenceStepId, + uint32_t TimeOutMicroSecs) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t CurrentVCSELPulsePeriodPClk; + uint8_t MsrcEncodedTimeOut; + uint16_t PreRangeEncodedTimeOut; + uint16_t PreRangeTimeOutMClks; + uint16_t MsrcRangeTimeOutMClks; + uint32_t FinalRangeTimeOutMClks; + uint16_t FinalRangeEncodedTimeOut; + VL53L0X_SchedulerSequenceSteps_t SchedulerSequenceSteps; + + if ((SequenceStepId == VL53L0X_SEQUENCESTEP_TCC) || + (SequenceStepId == VL53L0X_SEQUENCESTEP_DSS) || + (SequenceStepId == VL53L0X_SEQUENCESTEP_MSRC)) { + + Status = VL53L0X_GetVcselPulsePeriod(Dev, + VL53L0X_VCSEL_PERIOD_PRE_RANGE, + &CurrentVCSELPulsePeriodPClk); + + if (Status == VL53L0X_ERROR_NONE) { + MsrcRangeTimeOutMClks = VL53L0X_calc_timeout_mclks(Dev, + TimeOutMicroSecs, + (uint8_t)CurrentVCSELPulsePeriodPClk); + + if (MsrcRangeTimeOutMClks > 256) + MsrcEncodedTimeOut = 255; + else + MsrcEncodedTimeOut = + (uint8_t)MsrcRangeTimeOutMClks - 1; + + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + LastEncodedTimeout, + MsrcEncodedTimeOut); + } + + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_MSRC_CONFIG_TIMEOUT_MACROP, + MsrcEncodedTimeOut); + } + } else { + + if (SequenceStepId == VL53L0X_SEQUENCESTEP_PRE_RANGE) { + + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_GetVcselPulsePeriod(Dev, + VL53L0X_VCSEL_PERIOD_PRE_RANGE, + &CurrentVCSELPulsePeriodPClk); + PreRangeTimeOutMClks = + VL53L0X_calc_timeout_mclks(Dev, + TimeOutMicroSecs, + (uint8_t)CurrentVCSELPulsePeriodPClk); + PreRangeEncodedTimeOut = VL53L0X_encode_timeout( + PreRangeTimeOutMClks); + + VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, + LastEncodedTimeout, + PreRangeEncodedTimeOut); + } + + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_WrWord(Dev, + VL53L0X_REG_PRE_RANGE_CONFIG_TIMEOUT_MACROP_HI, + PreRangeEncodedTimeOut); + } + + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_SETDEVICESPECIFICPARAMETER( + Dev, + PreRangeTimeoutMicroSecs, + TimeOutMicroSecs); + } + } else if (SequenceStepId == VL53L0X_SEQUENCESTEP_FINAL_RANGE) { + + /* For the final range timeout, the pre-range timeout + * must be added. To do this both final and pre-range + * timeouts must be expressed in macro periods MClks + * because they have different vcsel periods. + */ + + VL53L0X_GetSequenceStepEnables(Dev, + &SchedulerSequenceSteps); + PreRangeTimeOutMClks = 0; + if (SchedulerSequenceSteps.PreRangeOn) { + + /* Retrieve PRE-RANGE VCSEL Period */ + Status = VL53L0X_GetVcselPulsePeriod(Dev, + VL53L0X_VCSEL_PERIOD_PRE_RANGE, + &CurrentVCSELPulsePeriodPClk); + + /* Retrieve PRE-RANGE Timeout in Macro periods + * (MCLKS) */ + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_RdWord(Dev, 0x51, + &PreRangeEncodedTimeOut); + PreRangeTimeOutMClks = + VL53L0X_decode_timeout( + PreRangeEncodedTimeOut); + } + } + + /* Calculate FINAL RANGE Timeout in Macro Periods + * (MCLKS) and add PRE-RANGE value + */ + if (Status == VL53L0X_ERROR_NONE) { + + Status = VL53L0X_GetVcselPulsePeriod(Dev, + VL53L0X_VCSEL_PERIOD_FINAL_RANGE, + &CurrentVCSELPulsePeriodPClk); + } + if (Status == VL53L0X_ERROR_NONE) { + + FinalRangeTimeOutMClks = + VL53L0X_calc_timeout_mclks(Dev, + TimeOutMicroSecs, + (uint8_t) CurrentVCSELPulsePeriodPClk); + + FinalRangeTimeOutMClks += PreRangeTimeOutMClks; + + FinalRangeEncodedTimeOut = + VL53L0X_encode_timeout(FinalRangeTimeOutMClks); + + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_WrWord(Dev, 0x71, + FinalRangeEncodedTimeOut); + } + + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_SETDEVICESPECIFICPARAMETER( + Dev, + FinalRangeTimeoutMicroSecs, + TimeOutMicroSecs); + } + } + } else + Status = VL53L0X_ERROR_INVALID_PARAMS; + + } + return Status; +} + +VL53L0X_Error VL53L0X_set_vcsel_pulse_period(VL53L0X_DEV Dev, + VL53L0X_VcselPeriod VcselPeriodType, uint8_t VCSELPulsePeriodPCLK) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t vcsel_period_reg; + uint8_t MinPreVcselPeriodPCLK = 12; + uint8_t MaxPreVcselPeriodPCLK = 18; + uint8_t MinFinalVcselPeriodPCLK = 8; + uint8_t MaxFinalVcselPeriodPCLK = 14; + uint32_t MeasurementTimingBudgetMicroSeconds; + uint32_t FinalRangeTimeoutMicroSeconds; + uint32_t PreRangeTimeoutMicroSeconds; + uint32_t MsrcTimeoutMicroSeconds; + uint8_t PhaseCalInt = 0; + + /* Check if valid clock period requested */ + + if ((VCSELPulsePeriodPCLK % 2) != 0) { + /* Value must be an even number */ + Status = VL53L0X_ERROR_INVALID_PARAMS; + } else if (VcselPeriodType == VL53L0X_VCSEL_PERIOD_PRE_RANGE && + (VCSELPulsePeriodPCLK < MinPreVcselPeriodPCLK || + VCSELPulsePeriodPCLK > MaxPreVcselPeriodPCLK)) { + Status = VL53L0X_ERROR_INVALID_PARAMS; + } else if (VcselPeriodType == VL53L0X_VCSEL_PERIOD_FINAL_RANGE && + (VCSELPulsePeriodPCLK < MinFinalVcselPeriodPCLK || + VCSELPulsePeriodPCLK > MaxFinalVcselPeriodPCLK)) { + + Status = VL53L0X_ERROR_INVALID_PARAMS; + } + + /* Apply specific settings for the requested clock period */ + + if (Status != VL53L0X_ERROR_NONE) + return Status; + + + if (VcselPeriodType == VL53L0X_VCSEL_PERIOD_PRE_RANGE) { + + /* Set phase check limits */ + if (VCSELPulsePeriodPCLK == 12) { + + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_HIGH, + 0x18); + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_LOW, + 0x08); + } else if (VCSELPulsePeriodPCLK == 14) { + + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_HIGH, + 0x30); + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_LOW, + 0x08); + } else if (VCSELPulsePeriodPCLK == 16) { + + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_HIGH, + 0x40); + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_LOW, + 0x08); + } else if (VCSELPulsePeriodPCLK == 18) { + + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_HIGH, + 0x50); + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_LOW, + 0x08); + } + } else if (VcselPeriodType == VL53L0X_VCSEL_PERIOD_FINAL_RANGE) { + + if (VCSELPulsePeriodPCLK == 8) { + + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_HIGH, + 0x10); + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_LOW, + 0x08); + + Status |= VL53L0X_WrByte(Dev, + VL53L0X_REG_GLOBAL_CONFIG_VCSEL_WIDTH, 0x02); + Status |= VL53L0X_WrByte(Dev, + VL53L0X_REG_ALGO_PHASECAL_CONFIG_TIMEOUT, 0x0C); + + Status |= VL53L0X_WrByte(Dev, 0xff, 0x01); + Status |= VL53L0X_WrByte(Dev, + VL53L0X_REG_ALGO_PHASECAL_LIM, + 0x30); + Status |= VL53L0X_WrByte(Dev, 0xff, 0x00); + } else if (VCSELPulsePeriodPCLK == 10) { + + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_HIGH, + 0x28); + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_LOW, + 0x08); + + Status |= VL53L0X_WrByte(Dev, + VL53L0X_REG_GLOBAL_CONFIG_VCSEL_WIDTH, 0x03); + Status |= VL53L0X_WrByte(Dev, + VL53L0X_REG_ALGO_PHASECAL_CONFIG_TIMEOUT, 0x09); + + Status |= VL53L0X_WrByte(Dev, 0xff, 0x01); + Status |= VL53L0X_WrByte(Dev, + VL53L0X_REG_ALGO_PHASECAL_LIM, + 0x20); + Status |= VL53L0X_WrByte(Dev, 0xff, 0x00); + } else if (VCSELPulsePeriodPCLK == 12) { + + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_HIGH, + 0x38); + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_LOW, + 0x08); + + Status |= VL53L0X_WrByte(Dev, + VL53L0X_REG_GLOBAL_CONFIG_VCSEL_WIDTH, 0x03); + Status |= VL53L0X_WrByte(Dev, + VL53L0X_REG_ALGO_PHASECAL_CONFIG_TIMEOUT, 0x08); + + Status |= VL53L0X_WrByte(Dev, 0xff, 0x01); + Status |= VL53L0X_WrByte(Dev, + VL53L0X_REG_ALGO_PHASECAL_LIM, + 0x20); + Status |= VL53L0X_WrByte(Dev, 0xff, 0x00); + } else if (VCSELPulsePeriodPCLK == 14) { + + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_HIGH, + 0x048); + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_LOW, + 0x08); + + Status |= VL53L0X_WrByte(Dev, + VL53L0X_REG_GLOBAL_CONFIG_VCSEL_WIDTH, 0x03); + Status |= VL53L0X_WrByte(Dev, + VL53L0X_REG_ALGO_PHASECAL_CONFIG_TIMEOUT, 0x07); + + Status |= VL53L0X_WrByte(Dev, 0xff, 0x01); + Status |= VL53L0X_WrByte(Dev, + VL53L0X_REG_ALGO_PHASECAL_LIM, + 0x20); + Status |= VL53L0X_WrByte(Dev, 0xff, 0x00); + } + } + + + /* Re-calculate and apply timeouts, in macro periods */ + + if (Status == VL53L0X_ERROR_NONE) { + vcsel_period_reg = VL53L0X_encode_vcsel_period((uint8_t) + VCSELPulsePeriodPCLK); + + /* When the VCSEL period for the pre or final range is changed, + * the corresponding timeout must be read from the device using + * the current VCSEL period, then the new VCSEL period can be + * applied. The timeout then must be written back to the device + * using the new VCSEL period. + * + * For the MSRC timeout, the same applies - this timeout being + * dependant on the pre-range vcsel period. + */ + switch (VcselPeriodType) { + case VL53L0X_VCSEL_PERIOD_PRE_RANGE: + Status = get_sequence_step_timeout(Dev, + VL53L0X_SEQUENCESTEP_PRE_RANGE, + &PreRangeTimeoutMicroSeconds); + + if (Status == VL53L0X_ERROR_NONE) + Status = get_sequence_step_timeout(Dev, + VL53L0X_SEQUENCESTEP_MSRC, + &MsrcTimeoutMicroSeconds); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_PRE_RANGE_CONFIG_VCSEL_PERIOD, + vcsel_period_reg); + + + if (Status == VL53L0X_ERROR_NONE) + Status = set_sequence_step_timeout(Dev, + VL53L0X_SEQUENCESTEP_PRE_RANGE, + PreRangeTimeoutMicroSeconds); + + + if (Status == VL53L0X_ERROR_NONE) + Status = set_sequence_step_timeout(Dev, + VL53L0X_SEQUENCESTEP_MSRC, + MsrcTimeoutMicroSeconds); + + VL53L0X_SETDEVICESPECIFICPARAMETER( + Dev, + PreRangeVcselPulsePeriod, + VCSELPulsePeriodPCLK); + break; + case VL53L0X_VCSEL_PERIOD_FINAL_RANGE: + Status = get_sequence_step_timeout(Dev, + VL53L0X_SEQUENCESTEP_FINAL_RANGE, + &FinalRangeTimeoutMicroSeconds); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, + VL53L0X_REG_FINAL_RANGE_CONFIG_VCSEL_PERIOD, + vcsel_period_reg); + + + if (Status == VL53L0X_ERROR_NONE) + Status = set_sequence_step_timeout(Dev, + VL53L0X_SEQUENCESTEP_FINAL_RANGE, + FinalRangeTimeoutMicroSeconds); + + VL53L0X_SETDEVICESPECIFICPARAMETER( + Dev, + FinalRangeVcselPulsePeriod, + VCSELPulsePeriodPCLK); + break; + default: + Status = VL53L0X_ERROR_INVALID_PARAMS; + } + } + + /* Finally, the timing budget must be re-applied */ + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_GETPARAMETERFIELD(Dev, + MeasurementTimingBudgetMicroSeconds, + MeasurementTimingBudgetMicroSeconds); + + Status = VL53L0X_SetMeasurementTimingBudgetMicroSeconds(Dev, + MeasurementTimingBudgetMicroSeconds); + } + + /* Perform the phase calibration. This is needed after changing on + * vcsel period. + * get_data_enable = 0, restore_config = 1 */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_perform_phase_calibration( + Dev, &PhaseCalInt, 0, 1); + + return Status; +} + +VL53L0X_Error VL53L0X_get_vcsel_pulse_period(VL53L0X_DEV Dev, + VL53L0X_VcselPeriod VcselPeriodType, uint8_t *pVCSELPulsePeriodPCLK) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t vcsel_period_reg; + + switch (VcselPeriodType) { + case VL53L0X_VCSEL_PERIOD_PRE_RANGE: + Status = VL53L0X_RdByte(Dev, + VL53L0X_REG_PRE_RANGE_CONFIG_VCSEL_PERIOD, + &vcsel_period_reg); + break; + case VL53L0X_VCSEL_PERIOD_FINAL_RANGE: + Status = VL53L0X_RdByte(Dev, + VL53L0X_REG_FINAL_RANGE_CONFIG_VCSEL_PERIOD, + &vcsel_period_reg); + break; + default: + Status = VL53L0X_ERROR_INVALID_PARAMS; + } + + if (Status == VL53L0X_ERROR_NONE) + *pVCSELPulsePeriodPCLK = + VL53L0X_decode_vcsel_period(vcsel_period_reg); + + return Status; +} + + + +VL53L0X_Error VL53L0X_set_measurement_timing_budget_micro_seconds(VL53L0X_DEV Dev, + uint32_t MeasurementTimingBudgetMicroSeconds) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint32_t FinalRangeTimingBudgetMicroSeconds; + VL53L0X_SchedulerSequenceSteps_t SchedulerSequenceSteps; + uint32_t MsrcDccTccTimeoutMicroSeconds = 2000; + uint32_t StartOverheadMicroSeconds = 1910; + uint32_t EndOverheadMicroSeconds = 960; + uint32_t MsrcOverheadMicroSeconds = 660; + uint32_t TccOverheadMicroSeconds = 590; + uint32_t DssOverheadMicroSeconds = 690; + uint32_t PreRangeOverheadMicroSeconds = 660; + uint32_t FinalRangeOverheadMicroSeconds = 550; + uint32_t PreRangeTimeoutMicroSeconds = 0; + uint32_t cMinTimingBudgetMicroSeconds = 20000; + uint32_t SubTimeout = 0; + + LOG_FUNCTION_START(""); + + if (MeasurementTimingBudgetMicroSeconds + < cMinTimingBudgetMicroSeconds) { + Status = VL53L0X_ERROR_INVALID_PARAMS; + return Status; + } + + FinalRangeTimingBudgetMicroSeconds = + MeasurementTimingBudgetMicroSeconds - + (StartOverheadMicroSeconds + EndOverheadMicroSeconds); + + Status = VL53L0X_GetSequenceStepEnables(Dev, &SchedulerSequenceSteps); + + if (Status == VL53L0X_ERROR_NONE && + (SchedulerSequenceSteps.TccOn || + SchedulerSequenceSteps.MsrcOn || + SchedulerSequenceSteps.DssOn)) { + + /* TCC, MSRC and DSS all share the same timeout */ + Status = get_sequence_step_timeout(Dev, + VL53L0X_SEQUENCESTEP_MSRC, + &MsrcDccTccTimeoutMicroSeconds); + + /* Subtract the TCC, MSRC and DSS timeouts if they are + * enabled. */ + + if (Status != VL53L0X_ERROR_NONE) + return Status; + + /* TCC */ + if (SchedulerSequenceSteps.TccOn) { + + SubTimeout = MsrcDccTccTimeoutMicroSeconds + + TccOverheadMicroSeconds; + + if (SubTimeout < + FinalRangeTimingBudgetMicroSeconds) { + FinalRangeTimingBudgetMicroSeconds -= + SubTimeout; + } else { + /* Requested timeout too big. */ + Status = VL53L0X_ERROR_INVALID_PARAMS; + } + } + + if (Status != VL53L0X_ERROR_NONE) { + LOG_FUNCTION_END(Status); + return Status; + } + + /* DSS */ + if (SchedulerSequenceSteps.DssOn) { + + SubTimeout = 2 * (MsrcDccTccTimeoutMicroSeconds + + DssOverheadMicroSeconds); + + if (SubTimeout < FinalRangeTimingBudgetMicroSeconds) { + FinalRangeTimingBudgetMicroSeconds + -= SubTimeout; + } else { + /* Requested timeout too big. */ + Status = VL53L0X_ERROR_INVALID_PARAMS; + } + } else if (SchedulerSequenceSteps.MsrcOn) { + /* MSRC */ + SubTimeout = MsrcDccTccTimeoutMicroSeconds + + MsrcOverheadMicroSeconds; + + if (SubTimeout < FinalRangeTimingBudgetMicroSeconds) { + FinalRangeTimingBudgetMicroSeconds + -= SubTimeout; + } else { + /* Requested timeout too big. */ + Status = VL53L0X_ERROR_INVALID_PARAMS; + } + } + + } + + if (Status != VL53L0X_ERROR_NONE) { + LOG_FUNCTION_END(Status); + return Status; + } + + if (SchedulerSequenceSteps.PreRangeOn) { + + /* Subtract the Pre-range timeout if enabled. */ + + Status = get_sequence_step_timeout(Dev, + VL53L0X_SEQUENCESTEP_PRE_RANGE, + &PreRangeTimeoutMicroSeconds); + + SubTimeout = PreRangeTimeoutMicroSeconds + + PreRangeOverheadMicroSeconds; + + if (SubTimeout < FinalRangeTimingBudgetMicroSeconds) { + FinalRangeTimingBudgetMicroSeconds -= SubTimeout; + } else { + /* Requested timeout too big. */ + Status = VL53L0X_ERROR_INVALID_PARAMS; + } + } + + + if (Status == VL53L0X_ERROR_NONE && + SchedulerSequenceSteps.FinalRangeOn) { + + FinalRangeTimingBudgetMicroSeconds -= + FinalRangeOverheadMicroSeconds; + + /* Final Range Timeout + * Note that the final range timeout is determined by the timing + * budget and the sum of all other timeouts within the sequence. + * If there is no room for the final range timeout, then an error + * will be set. Otherwise the remaining time will be applied to + * the final range. + */ + Status = set_sequence_step_timeout(Dev, + VL53L0X_SEQUENCESTEP_FINAL_RANGE, + FinalRangeTimingBudgetMicroSeconds); + + VL53L0X_SETPARAMETERFIELD(Dev, + MeasurementTimingBudgetMicroSeconds, + MeasurementTimingBudgetMicroSeconds); + } + + LOG_FUNCTION_END(Status); + + return Status; +} + +VL53L0X_Error VL53L0X_get_measurement_timing_budget_micro_seconds(VL53L0X_DEV Dev, + uint32_t *pMeasurementTimingBudgetMicroSeconds) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + VL53L0X_SchedulerSequenceSteps_t SchedulerSequenceSteps; + uint32_t FinalRangeTimeoutMicroSeconds; + uint32_t MsrcDccTccTimeoutMicroSeconds = 2000; + uint32_t StartOverheadMicroSeconds = 1910; + uint32_t EndOverheadMicroSeconds = 960; + uint32_t MsrcOverheadMicroSeconds = 660; + uint32_t TccOverheadMicroSeconds = 590; + uint32_t DssOverheadMicroSeconds = 690; + uint32_t PreRangeOverheadMicroSeconds = 660; + uint32_t FinalRangeOverheadMicroSeconds = 550; + uint32_t PreRangeTimeoutMicroSeconds = 0; + + LOG_FUNCTION_START(""); + + /* Start and end overhead times always present */ + *pMeasurementTimingBudgetMicroSeconds + = StartOverheadMicroSeconds + EndOverheadMicroSeconds; + + Status = VL53L0X_GetSequenceStepEnables(Dev, &SchedulerSequenceSteps); + + if (Status != VL53L0X_ERROR_NONE) { + LOG_FUNCTION_END(Status); + return Status; + } + + + if (SchedulerSequenceSteps.TccOn || + SchedulerSequenceSteps.MsrcOn || + SchedulerSequenceSteps.DssOn) { + + Status = get_sequence_step_timeout(Dev, + VL53L0X_SEQUENCESTEP_MSRC, + &MsrcDccTccTimeoutMicroSeconds); + + if (Status == VL53L0X_ERROR_NONE) { + if (SchedulerSequenceSteps.TccOn) { + *pMeasurementTimingBudgetMicroSeconds += + MsrcDccTccTimeoutMicroSeconds + + TccOverheadMicroSeconds; + } + + if (SchedulerSequenceSteps.DssOn) { + *pMeasurementTimingBudgetMicroSeconds += + 2 * (MsrcDccTccTimeoutMicroSeconds + + DssOverheadMicroSeconds); + } else if (SchedulerSequenceSteps.MsrcOn) { + *pMeasurementTimingBudgetMicroSeconds += + MsrcDccTccTimeoutMicroSeconds + + MsrcOverheadMicroSeconds; + } + } + } + + if (Status == VL53L0X_ERROR_NONE) { + if (SchedulerSequenceSteps.PreRangeOn) { + Status = get_sequence_step_timeout(Dev, + VL53L0X_SEQUENCESTEP_PRE_RANGE, + &PreRangeTimeoutMicroSeconds); + *pMeasurementTimingBudgetMicroSeconds += + PreRangeTimeoutMicroSeconds + + PreRangeOverheadMicroSeconds; + } + } + + if (Status == VL53L0X_ERROR_NONE) { + if (SchedulerSequenceSteps.FinalRangeOn) { + Status = get_sequence_step_timeout(Dev, + VL53L0X_SEQUENCESTEP_FINAL_RANGE, + &FinalRangeTimeoutMicroSeconds); + *pMeasurementTimingBudgetMicroSeconds += + (FinalRangeTimeoutMicroSeconds + + FinalRangeOverheadMicroSeconds); + } + } + + if (Status == VL53L0X_ERROR_NONE) { + VL53L0X_SETPARAMETERFIELD(Dev, + MeasurementTimingBudgetMicroSeconds, + *pMeasurementTimingBudgetMicroSeconds); + } + + LOG_FUNCTION_END(Status); + return Status; +} + + + +VL53L0X_Error VL53L0X_load_tuning_settings(VL53L0X_DEV Dev, + uint8_t *pTuningSettingBuffer) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + int i; + int Index; + uint8_t msb; + uint8_t lsb; + uint8_t SelectParam; + uint8_t NumberOfWrites; + uint8_t Address; + uint8_t localBuffer[4]; /* max */ + uint16_t Temp16; + + LOG_FUNCTION_START(""); + + Index = 0; + + while ((*(pTuningSettingBuffer + Index) != 0) && + (Status == VL53L0X_ERROR_NONE)) { + NumberOfWrites = *(pTuningSettingBuffer + Index); + Index++; + if (NumberOfWrites == 0xFF) { + /* internal parameters */ + SelectParam = *(pTuningSettingBuffer + Index); + Index++; + switch (SelectParam) { + case 0: /* uint16_t SigmaEstRefArray -> 2 bytes */ + msb = *(pTuningSettingBuffer + Index); + Index++; + lsb = *(pTuningSettingBuffer + Index); + Index++; + Temp16 = VL53L0X_MAKEUINT16(lsb, msb); + PALDevDataSet(Dev, SigmaEstRefArray, Temp16); + break; + case 1: /* uint16_t SigmaEstEffPulseWidth -> 2 bytes */ + msb = *(pTuningSettingBuffer + Index); + Index++; + lsb = *(pTuningSettingBuffer + Index); + Index++; + Temp16 = VL53L0X_MAKEUINT16(lsb, msb); + PALDevDataSet(Dev, SigmaEstEffPulseWidth, + Temp16); + break; + case 2: /* uint16_t SigmaEstEffAmbWidth -> 2 bytes */ + msb = *(pTuningSettingBuffer + Index); + Index++; + lsb = *(pTuningSettingBuffer + Index); + Index++; + Temp16 = VL53L0X_MAKEUINT16(lsb, msb); + PALDevDataSet(Dev, SigmaEstEffAmbWidth, Temp16); + break; + case 3: /* uint16_t targetRefRate -> 2 bytes */ + msb = *(pTuningSettingBuffer + Index); + Index++; + lsb = *(pTuningSettingBuffer + Index); + Index++; + Temp16 = VL53L0X_MAKEUINT16(lsb, msb); + PALDevDataSet(Dev, targetRefRate, Temp16); + break; + default: /* invalid parameter */ + Status = VL53L0X_ERROR_INVALID_PARAMS; + } + + } else if (NumberOfWrites <= 4) { + Address = *(pTuningSettingBuffer + Index); + Index++; + + for (i = 0; i < NumberOfWrites; i++) { + localBuffer[i] = *(pTuningSettingBuffer + + Index); + Index++; + } + + Status = VL53L0X_WriteMulti(Dev, Address, localBuffer, + NumberOfWrites); + + } else { + Status = VL53L0X_ERROR_INVALID_PARAMS; + } + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_get_total_xtalk_rate(VL53L0X_DEV Dev, + VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, + FixPoint1616_t *ptotal_xtalk_rate_mcps) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + uint8_t xtalkCompEnable; + FixPoint1616_t totalXtalkMegaCps; + FixPoint1616_t xtalkPerSpadMegaCps; + + *ptotal_xtalk_rate_mcps = 0; + + Status = VL53L0X_GetXTalkCompensationEnable(Dev, &xtalkCompEnable); + if (Status == VL53L0X_ERROR_NONE) { + + if (xtalkCompEnable) { + + VL53L0X_GETPARAMETERFIELD( + Dev, + XTalkCompensationRateMegaCps, + xtalkPerSpadMegaCps); + + /* FixPoint1616 * FixPoint 8:8 = FixPoint0824 */ + totalXtalkMegaCps = + pRangingMeasurementData->EffectiveSpadRtnCount * + xtalkPerSpadMegaCps; + + /* FixPoint0824 >> 8 = FixPoint1616 */ + *ptotal_xtalk_rate_mcps = + (totalXtalkMegaCps + 0x80) >> 8; + } + } + + return Status; +} + +VL53L0X_Error VL53L0X_get_total_signal_rate(VL53L0X_DEV Dev, + VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, + FixPoint1616_t *ptotal_signal_rate_mcps) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + FixPoint1616_t totalXtalkMegaCps; + + LOG_FUNCTION_START(""); + + *ptotal_signal_rate_mcps = + pRangingMeasurementData->SignalRateRtnMegaCps; + + Status = VL53L0X_get_total_xtalk_rate( + Dev, pRangingMeasurementData, &totalXtalkMegaCps); + + if (Status == VL53L0X_ERROR_NONE) + *ptotal_signal_rate_mcps += totalXtalkMegaCps; + + return Status; +} + +VL53L0X_Error VL53L0X_calc_dmax( + VL53L0X_DEV Dev, + FixPoint1616_t totalSignalRate_mcps, + FixPoint1616_t totalCorrSignalRate_mcps, + FixPoint1616_t pwMult, + uint32_t sigmaEstimateP1, + FixPoint1616_t sigmaEstimateP2, + uint32_t peakVcselDuration_us, + uint32_t *pdmax_mm) +{ + const uint32_t cSigmaLimit = 18; + const FixPoint1616_t cSignalLimit = 0x4000; /* 0.25 */ + const FixPoint1616_t cSigmaEstRef = 0x00000042; /* 0.001 */ + const uint32_t cAmbEffWidthSigmaEst_ns = 6; + const uint32_t cAmbEffWidthDMax_ns = 7; + uint32_t dmaxCalRange_mm; + FixPoint1616_t dmaxCalSignalRateRtn_mcps; + FixPoint1616_t minSignalNeeded; + FixPoint1616_t minSignalNeeded_p1; + FixPoint1616_t minSignalNeeded_p2; + FixPoint1616_t minSignalNeeded_p3; + FixPoint1616_t minSignalNeeded_p4; + FixPoint1616_t sigmaLimitTmp; + FixPoint1616_t sigmaEstSqTmp; + FixPoint1616_t signalLimitTmp; + FixPoint1616_t SignalAt0mm; + FixPoint1616_t dmaxDark; + FixPoint1616_t dmaxAmbient; + FixPoint1616_t dmaxDarkTmp; + FixPoint1616_t sigmaEstP2Tmp; + uint32_t signalRateTemp_mcps; + + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + dmaxCalRange_mm = + PALDevDataGet(Dev, DmaxCalRangeMilliMeter); + + dmaxCalSignalRateRtn_mcps = + PALDevDataGet(Dev, DmaxCalSignalRateRtnMegaCps); + + /* uint32 * FixPoint1616 = FixPoint1616 */ + SignalAt0mm = dmaxCalRange_mm * dmaxCalSignalRateRtn_mcps; + + /* FixPoint1616 >> 8 = FixPoint2408 */ + SignalAt0mm = (SignalAt0mm + 0x80) >> 8; + SignalAt0mm *= dmaxCalRange_mm; + + minSignalNeeded_p1 = 0; + if (totalCorrSignalRate_mcps > 0) { + + /* Shift by 10 bits to increase resolution prior to the + * division */ + signalRateTemp_mcps = totalSignalRate_mcps << 10; + + /* Add rounding value prior to division */ + minSignalNeeded_p1 = signalRateTemp_mcps + + (totalCorrSignalRate_mcps/2); + + /* FixPoint0626/FixPoint1616 = FixPoint2210 */ + minSignalNeeded_p1 /= totalCorrSignalRate_mcps; + + /* Apply a factored version of the speed of light. + Correction to be applied at the end */ + minSignalNeeded_p1 *= 3; + + /* FixPoint2210 * FixPoint2210 = FixPoint1220 */ + minSignalNeeded_p1 *= minSignalNeeded_p1; + + /* FixPoint1220 >> 16 = FixPoint2804 */ + minSignalNeeded_p1 = (minSignalNeeded_p1 + 0x8000) >> 16; + } + + minSignalNeeded_p2 = pwMult * sigmaEstimateP1; + + /* FixPoint1616 >> 16 = uint32 */ + minSignalNeeded_p2 = (minSignalNeeded_p2 + 0x8000) >> 16; + + /* uint32 * uint32 = uint32 */ + minSignalNeeded_p2 *= minSignalNeeded_p2; + + /* Check sigmaEstimateP2 + * If this value is too high there is not enough signal rate + * to calculate dmax value so set a suitable value to ensure + * a very small dmax. + */ + sigmaEstP2Tmp = (sigmaEstimateP2 + 0x8000) >> 16; + sigmaEstP2Tmp = (sigmaEstP2Tmp + cAmbEffWidthSigmaEst_ns/2)/ + cAmbEffWidthSigmaEst_ns; + sigmaEstP2Tmp *= cAmbEffWidthDMax_ns; + + if (sigmaEstP2Tmp > 0xffff) { + minSignalNeeded_p3 = 0xfff00000; + } else { + + /* DMAX uses a different ambient width from sigma, so apply + * correction. + * Perform division before multiplication to prevent overflow. + */ + sigmaEstimateP2 = (sigmaEstimateP2 + cAmbEffWidthSigmaEst_ns/2)/ + cAmbEffWidthSigmaEst_ns; + sigmaEstimateP2 *= cAmbEffWidthDMax_ns; + + /* FixPoint1616 >> 16 = uint32 */ + minSignalNeeded_p3 = (sigmaEstimateP2 + 0x8000) >> 16; + + minSignalNeeded_p3 *= minSignalNeeded_p3; + + } + + /* FixPoint1814 / uint32 = FixPoint1814 */ + sigmaLimitTmp = ((cSigmaLimit << 14) + 500) / 1000; + + /* FixPoint1814 * FixPoint1814 = FixPoint3628 := FixPoint0428 */ + sigmaLimitTmp *= sigmaLimitTmp; + + /* FixPoint1616 * FixPoint1616 = FixPoint3232 */ + sigmaEstSqTmp = cSigmaEstRef * cSigmaEstRef; + + /* FixPoint3232 >> 4 = FixPoint0428 */ + sigmaEstSqTmp = (sigmaEstSqTmp + 0x08) >> 4; + + /* FixPoint0428 - FixPoint0428 = FixPoint0428 */ + sigmaLimitTmp -= sigmaEstSqTmp; + + /* uint32_t * FixPoint0428 = FixPoint0428 */ + minSignalNeeded_p4 = 4 * 12 * sigmaLimitTmp; + + /* FixPoint0428 >> 14 = FixPoint1814 */ + minSignalNeeded_p4 = (minSignalNeeded_p4 + 0x2000) >> 14; + + /* uint32 + uint32 = uint32 */ + minSignalNeeded = (minSignalNeeded_p2 + minSignalNeeded_p3); + + /* uint32 / uint32 = uint32 */ + minSignalNeeded += (peakVcselDuration_us/2); + minSignalNeeded /= peakVcselDuration_us; + + /* uint32 << 14 = FixPoint1814 */ + minSignalNeeded <<= 14; + + /* FixPoint1814 / FixPoint1814 = uint32 */ + minSignalNeeded += (minSignalNeeded_p4/2); + minSignalNeeded /= minSignalNeeded_p4; + + /* FixPoint3200 * FixPoint2804 := FixPoint2804*/ + minSignalNeeded *= minSignalNeeded_p1; + + /* Apply correction by dividing by 1000000. + * This assumes 10E16 on the numerator of the equation + * and 10E-22 on the denominator. + * We do this because 32bit fix point calculation can't + * handle the larger and smaller elements of this equation, + * i.e. speed of light and pulse widths. + */ + minSignalNeeded = (minSignalNeeded + 500) / 1000; + minSignalNeeded <<= 4; + + minSignalNeeded = (minSignalNeeded + 500) / 1000; + + /* FixPoint1616 >> 8 = FixPoint2408 */ + signalLimitTmp = (cSignalLimit + 0x80) >> 8; + + /* FixPoint2408/FixPoint2408 = uint32 */ + if (signalLimitTmp != 0) + dmaxDarkTmp = (SignalAt0mm + (signalLimitTmp / 2)) + / signalLimitTmp; + else + dmaxDarkTmp = 0; + + dmaxDark = VL53L0X_isqrt(dmaxDarkTmp); + + /* FixPoint2408/FixPoint2408 = uint32 */ + if (minSignalNeeded != 0) + dmaxAmbient = (SignalAt0mm + minSignalNeeded/2) + / minSignalNeeded; + else + dmaxAmbient = 0; + + dmaxAmbient = VL53L0X_isqrt(dmaxAmbient); + + *pdmax_mm = dmaxDark; + if (dmaxDark > dmaxAmbient) + *pdmax_mm = dmaxAmbient; + + LOG_FUNCTION_END(Status); + + return Status; +} + + +VL53L0X_Error VL53L0X_calc_sigma_estimate(VL53L0X_DEV Dev, + VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, + FixPoint1616_t *pSigmaEstimate, + uint32_t *pDmax_mm) +{ + /* Expressed in 100ths of a ns, i.e. centi-ns */ + const uint32_t cPulseEffectiveWidth_centi_ns = 800; + /* Expressed in 100ths of a ns, i.e. centi-ns */ + const uint32_t cAmbientEffectiveWidth_centi_ns = 600; + const FixPoint1616_t cDfltFinalRangeIntegrationTimeMilliSecs = 0x00190000; /* 25ms */ + const uint32_t cVcselPulseWidth_ps = 4700; /* pico secs */ + const FixPoint1616_t cSigmaEstMax = 0x028F87AE; + const FixPoint1616_t cSigmaEstRtnMax = 0xF000; + const FixPoint1616_t cAmbToSignalRatioMax = 0xF0000000/ + cAmbientEffectiveWidth_centi_ns; + /* Time Of Flight per mm (6.6 pico secs) */ + const FixPoint1616_t cTOF_per_mm_ps = 0x0006999A; + const uint32_t c16BitRoundingParam = 0x00008000; + const FixPoint1616_t cMaxXTalk_kcps = 0x00320000; + const uint32_t cPllPeriod_ps = 1655; + + uint32_t vcselTotalEventsRtn; + uint32_t finalRangeTimeoutMicroSecs; + uint32_t preRangeTimeoutMicroSecs; + uint32_t finalRangeIntegrationTimeMilliSecs; + FixPoint1616_t sigmaEstimateP1; + FixPoint1616_t sigmaEstimateP2; + FixPoint1616_t sigmaEstimateP3; + FixPoint1616_t deltaT_ps; + FixPoint1616_t pwMult; + FixPoint1616_t sigmaEstRtn; + FixPoint1616_t sigmaEstimate; + FixPoint1616_t xTalkCorrection; + FixPoint1616_t ambientRate_kcps; + FixPoint1616_t peakSignalRate_kcps; + FixPoint1616_t xTalkCompRate_mcps; + uint32_t xTalkCompRate_kcps; + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + FixPoint1616_t diff1_mcps; + FixPoint1616_t diff2_mcps; + FixPoint1616_t sqr1; + FixPoint1616_t sqr2; + FixPoint1616_t sqrSum; + FixPoint1616_t sqrtResult_centi_ns; + FixPoint1616_t sqrtResult; + FixPoint1616_t totalSignalRate_mcps; + FixPoint1616_t correctedSignalRate_mcps; + FixPoint1616_t sigmaEstRef; + uint32_t vcselWidth; + uint32_t finalRangeMacroPCLKS; + uint32_t preRangeMacroPCLKS; + uint32_t peakVcselDuration_us; + uint8_t finalRangeVcselPCLKS; + uint8_t preRangeVcselPCLKS; + /*! \addtogroup calc_sigma_estimate + * @{ + * + * Estimates the range sigma + */ + + LOG_FUNCTION_START(""); + + VL53L0X_GETPARAMETERFIELD(Dev, XTalkCompensationRateMegaCps, + xTalkCompRate_mcps); + + /* + * We work in kcps rather than mcps as this helps keep within the + * confines of the 32 Fix1616 type. + */ + + ambientRate_kcps = + (pRangingMeasurementData->AmbientRateRtnMegaCps * 1000) >> 16; + + correctedSignalRate_mcps = + pRangingMeasurementData->SignalRateRtnMegaCps; + + + Status = VL53L0X_get_total_signal_rate( + Dev, pRangingMeasurementData, &totalSignalRate_mcps); + Status = VL53L0X_get_total_xtalk_rate( + Dev, pRangingMeasurementData, &xTalkCompRate_mcps); + + + /* Signal rate measurement provided by device is the + * peak signal rate, not average. + */ + peakSignalRate_kcps = (totalSignalRate_mcps * 1000); + peakSignalRate_kcps = (peakSignalRate_kcps + 0x8000) >> 16; + + xTalkCompRate_kcps = xTalkCompRate_mcps * 1000; + + if (xTalkCompRate_kcps > cMaxXTalk_kcps) + xTalkCompRate_kcps = cMaxXTalk_kcps; + + if (Status == VL53L0X_ERROR_NONE) { + + /* Calculate final range macro periods */ + finalRangeTimeoutMicroSecs = VL53L0X_GETDEVICESPECIFICPARAMETER( + Dev, FinalRangeTimeoutMicroSecs); + + finalRangeVcselPCLKS = VL53L0X_GETDEVICESPECIFICPARAMETER( + Dev, FinalRangeVcselPulsePeriod); + + finalRangeMacroPCLKS = VL53L0X_calc_timeout_mclks( + Dev, finalRangeTimeoutMicroSecs, finalRangeVcselPCLKS); + + /* Calculate pre-range macro periods */ + preRangeTimeoutMicroSecs = VL53L0X_GETDEVICESPECIFICPARAMETER( + Dev, PreRangeTimeoutMicroSecs); + + preRangeVcselPCLKS = VL53L0X_GETDEVICESPECIFICPARAMETER( + Dev, PreRangeVcselPulsePeriod); + + preRangeMacroPCLKS = VL53L0X_calc_timeout_mclks( + Dev, preRangeTimeoutMicroSecs, preRangeVcselPCLKS); + + vcselWidth = 3; + if (finalRangeVcselPCLKS == 8) + vcselWidth = 2; + + + peakVcselDuration_us = vcselWidth * 2048 * + (preRangeMacroPCLKS + finalRangeMacroPCLKS); + peakVcselDuration_us = (peakVcselDuration_us + 500)/1000; + peakVcselDuration_us *= cPllPeriod_ps; + peakVcselDuration_us = (peakVcselDuration_us + 500)/1000; + + /* Fix1616 >> 8 = Fix2408 */ + totalSignalRate_mcps = (totalSignalRate_mcps + 0x80) >> 8; + + /* Fix2408 * uint32 = Fix2408 */ + vcselTotalEventsRtn = totalSignalRate_mcps * + peakVcselDuration_us; + + /* Fix2408 >> 8 = uint32 */ + vcselTotalEventsRtn = (vcselTotalEventsRtn + 0x80) >> 8; + + /* Fix2408 << 8 = Fix1616 = */ + totalSignalRate_mcps <<= 8; + } + + if (Status != VL53L0X_ERROR_NONE) { + LOG_FUNCTION_END(Status); + return Status; + } + + if (peakSignalRate_kcps == 0) { + *pSigmaEstimate = cSigmaEstMax; + PALDevDataSet(Dev, SigmaEstimate, cSigmaEstMax); + *pDmax_mm = 0; + } else { + if (vcselTotalEventsRtn < 1) + vcselTotalEventsRtn = 1; + + sigmaEstimateP1 = cPulseEffectiveWidth_centi_ns; + + /* ((FixPoint1616 << 16)* uint32)/uint32 = FixPoint1616 */ + sigmaEstimateP2 = (ambientRate_kcps << 16)/peakSignalRate_kcps; + if (sigmaEstimateP2 > cAmbToSignalRatioMax) { + /* Clip to prevent overflow. Will ensure safe + * max result. */ + sigmaEstimateP2 = cAmbToSignalRatioMax; + } + sigmaEstimateP2 *= cAmbientEffectiveWidth_centi_ns; + + sigmaEstimateP3 = 2 * VL53L0X_isqrt(vcselTotalEventsRtn * 12); + + /* uint32 * FixPoint1616 = FixPoint1616 */ + deltaT_ps = pRangingMeasurementData->RangeMilliMeter * + cTOF_per_mm_ps; + + /* + * vcselRate - xtalkCompRate + * (uint32 << 16) - FixPoint1616 = FixPoint1616. + * Divide result by 1000 to convert to mcps. + * 500 is added to ensure rounding when integer division + * truncates. + */ + diff1_mcps = (((peakSignalRate_kcps << 16) - + 2 * xTalkCompRate_kcps) + 500)/1000; + + /* vcselRate + xtalkCompRate */ + diff2_mcps = ((peakSignalRate_kcps << 16) + 500)/1000; + + /* Shift by 8 bits to increase resolution prior to the + * division */ + diff1_mcps <<= 8; + + /* FixPoint0824/FixPoint1616 = FixPoint2408 */ + xTalkCorrection = abs(diff1_mcps/diff2_mcps); + + /* FixPoint2408 << 8 = FixPoint1616 */ + xTalkCorrection <<= 8; + + if(pRangingMeasurementData->RangeStatus != 0){ + pwMult = 1 << 16; + } else { + /* FixPoint1616/uint32 = FixPoint1616 */ + pwMult = deltaT_ps/cVcselPulseWidth_ps; /* smaller than 1.0f */ + + /* + * FixPoint1616 * FixPoint1616 = FixPoint3232, however both + * values are small enough such that32 bits will not be + * exceeded. + */ + pwMult *= ((1 << 16) - xTalkCorrection); + + /* (FixPoint3232 >> 16) = FixPoint1616 */ + pwMult = (pwMult + c16BitRoundingParam) >> 16; + + /* FixPoint1616 + FixPoint1616 = FixPoint1616 */ + pwMult += (1 << 16); + + /* + * At this point the value will be 1.xx, therefore if we square + * the value this will exceed 32 bits. To address this perform + * a single shift to the right before the multiplication. + */ + pwMult >>= 1; + /* FixPoint1715 * FixPoint1715 = FixPoint3430 */ + pwMult = pwMult * pwMult; + + /* (FixPoint3430 >> 14) = Fix1616 */ + pwMult >>= 14; + } + + /* FixPoint1616 * uint32 = FixPoint1616 */ + sqr1 = pwMult * sigmaEstimateP1; + + /* (FixPoint1616 >> 16) = FixPoint3200 */ + sqr1 = (sqr1 + 0x8000) >> 16; + + /* FixPoint3200 * FixPoint3200 = FixPoint6400 */ + sqr1 *= sqr1; + + sqr2 = sigmaEstimateP2; + + /* (FixPoint1616 >> 16) = FixPoint3200 */ + sqr2 = (sqr2 + 0x8000) >> 16; + + /* FixPoint3200 * FixPoint3200 = FixPoint6400 */ + sqr2 *= sqr2; + + /* FixPoint64000 + FixPoint6400 = FixPoint6400 */ + sqrSum = sqr1 + sqr2; + + /* SQRT(FixPoin6400) = FixPoint3200 */ + sqrtResult_centi_ns = VL53L0X_isqrt(sqrSum); + + /* (FixPoint3200 << 16) = FixPoint1616 */ + sqrtResult_centi_ns <<= 16; + + /* + * Note that the Speed Of Light is expressed in um per 1E-10 + * seconds (2997) Therefore to get mm/ns we have to divide by + * 10000 + */ + sigmaEstRtn = (((sqrtResult_centi_ns+50)/100) / + sigmaEstimateP3); + sigmaEstRtn *= VL53L0X_SPEED_OF_LIGHT_IN_AIR; + + /* Add 5000 before dividing by 10000 to ensure rounding. */ + sigmaEstRtn += 5000; + sigmaEstRtn /= 10000; + + if (sigmaEstRtn > cSigmaEstRtnMax) { + /* Clip to prevent overflow. Will ensure safe + * max result. */ + sigmaEstRtn = cSigmaEstRtnMax; + } + finalRangeIntegrationTimeMilliSecs = + (finalRangeTimeoutMicroSecs + preRangeTimeoutMicroSecs + 500)/1000; + + /* sigmaEstRef = 1mm * 25ms/final range integration time (inc pre-range) + * sqrt(FixPoint1616/int) = FixPoint2408) + */ + sigmaEstRef = + VL53L0X_isqrt((cDfltFinalRangeIntegrationTimeMilliSecs + + finalRangeIntegrationTimeMilliSecs/2)/ + finalRangeIntegrationTimeMilliSecs); + + /* FixPoint2408 << 8 = FixPoint1616 */ + sigmaEstRef <<= 8; + sigmaEstRef = (sigmaEstRef + 500)/1000; + + /* FixPoint1616 * FixPoint1616 = FixPoint3232 */ + sqr1 = sigmaEstRtn * sigmaEstRtn; + /* FixPoint1616 * FixPoint1616 = FixPoint3232 */ + sqr2 = sigmaEstRef * sigmaEstRef; + + /* sqrt(FixPoint3232) = FixPoint1616 */ + sqrtResult = VL53L0X_isqrt((sqr1 + sqr2)); + /* + * Note that the Shift by 4 bits increases resolution prior to + * the sqrt, therefore the result must be shifted by 2 bits to + * the right to revert back to the FixPoint1616 format. + */ + + sigmaEstimate = 1000 * sqrtResult; + + if ((peakSignalRate_kcps < 1) || (vcselTotalEventsRtn < 1) || + (sigmaEstimate > cSigmaEstMax)) { + sigmaEstimate = cSigmaEstMax; + } + + *pSigmaEstimate = (uint32_t)(sigmaEstimate); + PALDevDataSet(Dev, SigmaEstimate, *pSigmaEstimate); + Status = VL53L0X_calc_dmax( + Dev, + totalSignalRate_mcps, + correctedSignalRate_mcps, + pwMult, + sigmaEstimateP1, + sigmaEstimateP2, + peakVcselDuration_us, + pDmax_mm); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_get_pal_range_status(VL53L0X_DEV Dev, + uint8_t DeviceRangeStatus, + FixPoint1616_t SignalRate, + uint16_t EffectiveSpadRtnCount, + VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, + uint8_t *pPalRangeStatus) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t NoneFlag; + uint8_t SigmaLimitflag = 0; + uint8_t SignalRefClipflag = 0; + uint8_t RangeIgnoreThresholdflag = 0; + uint8_t SigmaLimitCheckEnable = 0; + uint8_t SignalRateFinalRangeLimitCheckEnable = 0; + uint8_t SignalRefClipLimitCheckEnable = 0; + uint8_t RangeIgnoreThresholdLimitCheckEnable = 0; + FixPoint1616_t SigmaEstimate; + FixPoint1616_t SigmaLimitValue; + FixPoint1616_t SignalRefClipValue; + FixPoint1616_t RangeIgnoreThresholdValue; + FixPoint1616_t SignalRatePerSpad; + uint8_t DeviceRangeStatusInternal = 0; + uint16_t tmpWord = 0; + uint8_t Temp8; + uint32_t Dmax_mm = 0; + FixPoint1616_t LastSignalRefMcps; + + LOG_FUNCTION_START(""); + + + /* + * VL53L0X has a good ranging when the value of the + * DeviceRangeStatus = 11. This function will replace the value 0 with + * the value 11 in the DeviceRangeStatus. + * In addition, the SigmaEstimator is not included in the VL53L0X + * DeviceRangeStatus, this will be added in the PalRangeStatus. + */ + + DeviceRangeStatusInternal = ((DeviceRangeStatus & 0x78) >> 3); + + if (DeviceRangeStatusInternal == 0 || + DeviceRangeStatusInternal == 5 || + DeviceRangeStatusInternal == 7 || + DeviceRangeStatusInternal == 12 || + DeviceRangeStatusInternal == 13 || + DeviceRangeStatusInternal == 14 || + DeviceRangeStatusInternal == 15 + ) { + NoneFlag = 1; + } else { + NoneFlag = 0; + } + + /* + * Check if Sigma limit is enabled, if yes then do comparison with limit + * value and put the result back into pPalRangeStatus. + */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_GetLimitCheckEnable(Dev, + VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, + &SigmaLimitCheckEnable); + + if ((SigmaLimitCheckEnable != 0) && (Status == VL53L0X_ERROR_NONE)) { + /* + * compute the Sigma and check with limit + */ + Status = VL53L0X_calc_sigma_estimate( + Dev, + pRangingMeasurementData, + &SigmaEstimate, + &Dmax_mm); + if (Status == VL53L0X_ERROR_NONE) + pRangingMeasurementData->RangeDMaxMilliMeter = Dmax_mm; + + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_GetLimitCheckValue(Dev, + VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, + &SigmaLimitValue); + + if ((SigmaLimitValue > 0) && + (SigmaEstimate > SigmaLimitValue)) + /* Limit Fail */ + SigmaLimitflag = 1; + } + } + + /* + * Check if Signal ref clip limit is enabled, if yes then do comparison + * with limit value and put the result back into pPalRangeStatus. + */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_GetLimitCheckEnable(Dev, + VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, + &SignalRefClipLimitCheckEnable); + + if ((SignalRefClipLimitCheckEnable != 0) && + (Status == VL53L0X_ERROR_NONE)) { + + Status = VL53L0X_GetLimitCheckValue(Dev, + VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, + &SignalRefClipValue); + + /* Read LastSignalRefMcps from device */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, 0xFF, 0x01); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_RdWord(Dev, + VL53L0X_REG_RESULT_PEAK_SIGNAL_RATE_REF, + &tmpWord); + + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_WrByte(Dev, 0xFF, 0x00); + + LastSignalRefMcps = VL53L0X_FIXPOINT97TOFIXPOINT1616(tmpWord); + PALDevDataSet(Dev, LastSignalRefMcps, LastSignalRefMcps); + + if ((SignalRefClipValue > 0) && + (LastSignalRefMcps > SignalRefClipValue)) { + /* Limit Fail */ + SignalRefClipflag = 1; + } + } + + /* + * Check if Signal ref clip limit is enabled, if yes then do comparison + * with limit value and put the result back into pPalRangeStatus. + * EffectiveSpadRtnCount has a format 8.8 + * If (Return signal rate < (1.5 x Xtalk x number of Spads)) : FAIL + */ + if (Status == VL53L0X_ERROR_NONE) + Status = VL53L0X_GetLimitCheckEnable(Dev, + VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, + &RangeIgnoreThresholdLimitCheckEnable); + + if ((RangeIgnoreThresholdLimitCheckEnable != 0) && + (Status == VL53L0X_ERROR_NONE)) { + + /* Compute the signal rate per spad */ + if (EffectiveSpadRtnCount == 0) { + SignalRatePerSpad = 0; + } else { + SignalRatePerSpad = (FixPoint1616_t)((256 * SignalRate) + / EffectiveSpadRtnCount); + } + + Status = VL53L0X_GetLimitCheckValue(Dev, + VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, + &RangeIgnoreThresholdValue); + + if ((RangeIgnoreThresholdValue > 0) && + (SignalRatePerSpad < RangeIgnoreThresholdValue)) { + /* Limit Fail add 2^6 to range status */ + RangeIgnoreThresholdflag = 1; + } + } + + if (Status == VL53L0X_ERROR_NONE) { + if (NoneFlag == 1) { + *pPalRangeStatus = 255; /* NONE */ + } else if (DeviceRangeStatusInternal == 1 || + DeviceRangeStatusInternal == 2 || + DeviceRangeStatusInternal == 3) { + *pPalRangeStatus = 5; /* HW fail */ + } else if (DeviceRangeStatusInternal == 6 || + DeviceRangeStatusInternal == 9) { + *pPalRangeStatus = 4; /* Phase fail */ + } else if (DeviceRangeStatusInternal == 8 || + DeviceRangeStatusInternal == 10 || + SignalRefClipflag == 1) { + *pPalRangeStatus = 3; /* Min range */ + } else if (DeviceRangeStatusInternal == 4 || + RangeIgnoreThresholdflag == 1) { + *pPalRangeStatus = 2; /* Signal Fail */ + } else if (SigmaLimitflag == 1) { + *pPalRangeStatus = 1; /* Sigma Fail */ + } else { + *pPalRangeStatus = 0; /* Range Valid */ + } + } + + /* DMAX only relevant during range error */ + if (*pPalRangeStatus == 0) + pRangingMeasurementData->RangeDMaxMilliMeter = 0; + + /* fill the Limit Check Status */ + + Status = VL53L0X_GetLimitCheckEnable(Dev, + VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE, + &SignalRateFinalRangeLimitCheckEnable); + + if (Status == VL53L0X_ERROR_NONE) { + if ((SigmaLimitCheckEnable == 0) || (SigmaLimitflag == 1)) + Temp8 = 1; + else + Temp8 = 0; + VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksStatus, + VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE, Temp8); + + if ((DeviceRangeStatusInternal == 4) || + (SignalRateFinalRangeLimitCheckEnable == 0)) + Temp8 = 1; + else + Temp8 = 0; + VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksStatus, + VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE, + Temp8); + + if ((SignalRefClipLimitCheckEnable == 0) || + (SignalRefClipflag == 1)) + Temp8 = 1; + else + Temp8 = 0; + + VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksStatus, + VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP, Temp8); + + if ((RangeIgnoreThresholdLimitCheckEnable == 0) || + (RangeIgnoreThresholdflag == 1)) + Temp8 = 1; + else + Temp8 = 0; + + VL53L0X_SETARRAYPARAMETERFIELD(Dev, LimitChecksStatus, + VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD, + Temp8); + } + + LOG_FUNCTION_END(Status); + return Status; + +} diff --git a/STS/TOF/vl53l0x/vl53l0x_api_core.h b/STS/TOF/vl53l0x/vl53l0x_api_core.h index 91f2042..f534da4 100644 --- a/STS/TOF/vl53l0x/vl53l0x_api_core.h +++ b/STS/TOF/vl53l0x/vl53l0x_api_core.h @@ -1,108 +1,108 @@ -/******************************************************************************* -Copyright � 2016, STMicroelectronics International N.V. -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND -NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. -IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*******************************************************************************/ - -#ifndef _VL53L0X_API_CORE_H_ -#define _VL53L0X_API_CORE_H_ - -#include "vl53l0x_def.h" -#include "vl53l0x_platform.h" - - -#ifdef __cplusplus -extern "C" { -#endif - - -VL53L0X_Error VL53L0X_reverse_bytes(uint8_t *data, uint32_t size); - -VL53L0X_Error VL53L0X_measurement_poll_for_completion(VL53L0X_DEV Dev); - -uint8_t VL53L0X_encode_vcsel_period(uint8_t vcsel_period_pclks); - -uint8_t VL53L0X_decode_vcsel_period(uint8_t vcsel_period_reg); - -uint32_t VL53L0X_isqrt(uint32_t num); - -uint32_t VL53L0X_quadrature_sum(uint32_t a, uint32_t b); - -VL53L0X_Error VL53L0X_get_info_from_device(VL53L0X_DEV Dev, uint8_t option); - -VL53L0X_Error VL53L0X_set_vcsel_pulse_period(VL53L0X_DEV Dev, - VL53L0X_VcselPeriod VcselPeriodType, uint8_t VCSELPulsePeriodPCLK); - -VL53L0X_Error VL53L0X_get_vcsel_pulse_period(VL53L0X_DEV Dev, - VL53L0X_VcselPeriod VcselPeriodType, uint8_t *pVCSELPulsePeriodPCLK); - -uint32_t VL53L0X_decode_timeout(uint16_t encoded_timeout); - -VL53L0X_Error get_sequence_step_timeout(VL53L0X_DEV Dev, - VL53L0X_SequenceStepId SequenceStepId, - uint32_t *pTimeOutMicroSecs); - -VL53L0X_Error set_sequence_step_timeout(VL53L0X_DEV Dev, - VL53L0X_SequenceStepId SequenceStepId, - uint32_t TimeOutMicroSecs); - -VL53L0X_Error VL53L0X_set_measurement_timing_budget_micro_seconds(VL53L0X_DEV Dev, - uint32_t MeasurementTimingBudgetMicroSeconds); - -VL53L0X_Error VL53L0X_get_measurement_timing_budget_micro_seconds(VL53L0X_DEV Dev, - uint32_t *pMeasurementTimingBudgetMicroSeconds); - -VL53L0X_Error VL53L0X_load_tuning_settings(VL53L0X_DEV Dev, - uint8_t *pTuningSettingBuffer); - -VL53L0X_Error VL53L0X_calc_sigma_estimate(VL53L0X_DEV Dev, - VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, - FixPoint1616_t *pSigmaEstimate, uint32_t *pDmax_mm); - -VL53L0X_Error VL53L0X_get_total_xtalk_rate(VL53L0X_DEV Dev, - VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, - FixPoint1616_t *ptotal_xtalk_rate_mcps); - -VL53L0X_Error VL53L0X_get_total_signal_rate(VL53L0X_DEV Dev, - VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, - FixPoint1616_t *ptotal_signal_rate_mcps); - -VL53L0X_Error VL53L0X_get_pal_range_status(VL53L0X_DEV Dev, - uint8_t DeviceRangeStatus, - FixPoint1616_t SignalRate, - uint16_t EffectiveSpadRtnCount, - VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, - uint8_t *pPalRangeStatus); - -uint32_t VL53L0X_calc_timeout_mclks(VL53L0X_DEV Dev, - uint32_t timeout_period_us, uint8_t vcsel_period_pclks); - -uint16_t VL53L0X_encode_timeout(uint32_t timeout_macro_clks); - -#ifdef __cplusplus -} -#endif - -#endif /* _VL53L0X_API_CORE_H_ */ +/******************************************************************************* +Copyright � 2016, STMicroelectronics International N.V. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND +NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. +IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*******************************************************************************/ + +#ifndef _VL53L0X_API_CORE_H_ +#define _VL53L0X_API_CORE_H_ + +#include "vl53l0x_def.h" +#include "vl53l0x_platform.h" + + +#ifdef __cplusplus +extern "C" { +#endif + + +VL53L0X_Error VL53L0X_reverse_bytes(uint8_t *data, uint32_t size); + +VL53L0X_Error VL53L0X_measurement_poll_for_completion(VL53L0X_DEV Dev); + +uint8_t VL53L0X_encode_vcsel_period(uint8_t vcsel_period_pclks); + +uint8_t VL53L0X_decode_vcsel_period(uint8_t vcsel_period_reg); + +uint32_t VL53L0X_isqrt(uint32_t num); + +uint32_t VL53L0X_quadrature_sum(uint32_t a, uint32_t b); + +VL53L0X_Error VL53L0X_get_info_from_device(VL53L0X_DEV Dev, uint8_t option); + +VL53L0X_Error VL53L0X_set_vcsel_pulse_period(VL53L0X_DEV Dev, + VL53L0X_VcselPeriod VcselPeriodType, uint8_t VCSELPulsePeriodPCLK); + +VL53L0X_Error VL53L0X_get_vcsel_pulse_period(VL53L0X_DEV Dev, + VL53L0X_VcselPeriod VcselPeriodType, uint8_t *pVCSELPulsePeriodPCLK); + +uint32_t VL53L0X_decode_timeout(uint16_t encoded_timeout); + +VL53L0X_Error get_sequence_step_timeout(VL53L0X_DEV Dev, + VL53L0X_SequenceStepId SequenceStepId, + uint32_t *pTimeOutMicroSecs); + +VL53L0X_Error set_sequence_step_timeout(VL53L0X_DEV Dev, + VL53L0X_SequenceStepId SequenceStepId, + uint32_t TimeOutMicroSecs); + +VL53L0X_Error VL53L0X_set_measurement_timing_budget_micro_seconds(VL53L0X_DEV Dev, + uint32_t MeasurementTimingBudgetMicroSeconds); + +VL53L0X_Error VL53L0X_get_measurement_timing_budget_micro_seconds(VL53L0X_DEV Dev, + uint32_t *pMeasurementTimingBudgetMicroSeconds); + +VL53L0X_Error VL53L0X_load_tuning_settings(VL53L0X_DEV Dev, + uint8_t *pTuningSettingBuffer); + +VL53L0X_Error VL53L0X_calc_sigma_estimate(VL53L0X_DEV Dev, + VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, + FixPoint1616_t *pSigmaEstimate, uint32_t *pDmax_mm); + +VL53L0X_Error VL53L0X_get_total_xtalk_rate(VL53L0X_DEV Dev, + VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, + FixPoint1616_t *ptotal_xtalk_rate_mcps); + +VL53L0X_Error VL53L0X_get_total_signal_rate(VL53L0X_DEV Dev, + VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, + FixPoint1616_t *ptotal_signal_rate_mcps); + +VL53L0X_Error VL53L0X_get_pal_range_status(VL53L0X_DEV Dev, + uint8_t DeviceRangeStatus, + FixPoint1616_t SignalRate, + uint16_t EffectiveSpadRtnCount, + VL53L0X_RangingMeasurementData_t *pRangingMeasurementData, + uint8_t *pPalRangeStatus); + +uint32_t VL53L0X_calc_timeout_mclks(VL53L0X_DEV Dev, + uint32_t timeout_period_us, uint8_t vcsel_period_pclks); + +uint16_t VL53L0X_encode_timeout(uint32_t timeout_macro_clks); + +#ifdef __cplusplus +} +#endif + +#endif /* _VL53L0X_API_CORE_H_ */ diff --git a/STS/TOF/vl53l0x/vl53l0x_api_ranging.c b/STS/TOF/vl53l0x/vl53l0x_api_ranging.c index f07283f..7d848d8 100644 --- a/STS/TOF/vl53l0x/vl53l0x_api_ranging.c +++ b/STS/TOF/vl53l0x/vl53l0x_api_ranging.c @@ -1,42 +1,42 @@ -/******************************************************************************* - Copyright � 2016, STMicroelectronics International N.V. - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND - NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. - IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY - DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - ******************************************************************************/ - -#include "vl53l0x_api.h" -#include "vl53l0x_api_core.h" - - -#ifndef __KERNEL__ -#include <stdlib.h> -#endif -#define LOG_FUNCTION_START(fmt, ...) \ - _LOG_FUNCTION_START(TRACE_MODULE_API, fmt, ##__VA_ARGS__) -#define LOG_FUNCTION_END(status, ...) \ - _LOG_FUNCTION_END(TRACE_MODULE_API, status, ##__VA_ARGS__) -#define LOG_FUNCTION_END_FMT(status, fmt, ...) \ - _LOG_FUNCTION_END_FMT(TRACE_MODULE_API, status, fmt, ##__VA_ARGS__) - +/******************************************************************************* + Copyright � 2016, STMicroelectronics International N.V. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND + NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. + IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ******************************************************************************/ + +#include "vl53l0x_api.h" +#include "vl53l0x_api_core.h" + + +#ifndef __KERNEL__ +#include <stdlib.h> +#endif +#define LOG_FUNCTION_START(fmt, ...) \ + _LOG_FUNCTION_START(TRACE_MODULE_API, fmt, ##__VA_ARGS__) +#define LOG_FUNCTION_END(status, ...) \ + _LOG_FUNCTION_END(TRACE_MODULE_API, status, ##__VA_ARGS__) +#define LOG_FUNCTION_END_FMT(status, fmt, ...) \ + _LOG_FUNCTION_END_FMT(TRACE_MODULE_API, status, fmt, ##__VA_ARGS__) + diff --git a/STS/TOF/vl53l0x/vl53l0x_api_ranging.h b/STS/TOF/vl53l0x/vl53l0x_api_ranging.h index 6d9f4b0..05b0b27 100644 --- a/STS/TOF/vl53l0x/vl53l0x_api_ranging.h +++ b/STS/TOF/vl53l0x/vl53l0x_api_ranging.h @@ -1,47 +1,47 @@ -/******************************************************************************* -Copyright � 2016, STMicroelectronics International N.V. -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND -NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. -IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*******************************************************************************/ - -#ifndef _VL53L0X_API_RANGING_H_ -#define _VL53L0X_API_RANGING_H_ - -#include "vl53l0x_def.h" -#include "vl53l0x_platform.h" - - -#ifdef __cplusplus -extern "C" { -#endif - - - - -#ifdef __cplusplus -} -#endif - -#endif /* _VL53L0X_API_RANGING_H_ */ +/******************************************************************************* +Copyright � 2016, STMicroelectronics International N.V. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND +NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. +IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*******************************************************************************/ + +#ifndef _VL53L0X_API_RANGING_H_ +#define _VL53L0X_API_RANGING_H_ + +#include "vl53l0x_def.h" +#include "vl53l0x_platform.h" + + +#ifdef __cplusplus +extern "C" { +#endif + + + + +#ifdef __cplusplus +} +#endif + +#endif /* _VL53L0X_API_RANGING_H_ */ diff --git a/STS/TOF/vl53l0x/vl53l0x_api_strings.c b/STS/TOF/vl53l0x/vl53l0x_api_strings.c index bc2bd30..130c9a6 100644 --- a/STS/TOF/vl53l0x/vl53l0x_api_strings.c +++ b/STS/TOF/vl53l0x/vl53l0x_api_strings.c @@ -1,462 +1,462 @@ -/******************************************************************************* - Copyright � 2016, STMicroelectronics International N.V. - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND - NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. - IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY - DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - ******************************************************************************/ - -#include "vl53l0x_api.h" -#include "vl53l0x_api_core.h" -#include "vl53l0x_api_strings.h" - -#ifndef __KERNEL__ -#include <stdlib.h> -#endif - -#define LOG_FUNCTION_START(fmt, ...) \ - _LOG_FUNCTION_START(TRACE_MODULE_API, fmt, ##__VA_ARGS__) -#define LOG_FUNCTION_END(status, ...) \ - _LOG_FUNCTION_END(TRACE_MODULE_API, status, ##__VA_ARGS__) -#define LOG_FUNCTION_END_FMT(status, fmt, ...) \ - _LOG_FUNCTION_END_FMT(TRACE_MODULE_API, status, fmt, ##__VA_ARGS__) - - -VL53L0X_Error VL53L0X_check_part_used(VL53L0X_DEV Dev, - uint8_t *Revision, - VL53L0X_DeviceInfo_t *pVL53L0X_DeviceInfo) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t ModuleIdInt; - char *ProductId_tmp; - - LOG_FUNCTION_START(""); - - Status = VL53L0X_get_info_from_device(Dev, 2); - - if (Status == VL53L0X_ERROR_NONE) { - ModuleIdInt = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, ModuleId); - - if (ModuleIdInt == 0) { - *Revision = 0; - VL53L0X_COPYSTRING(pVL53L0X_DeviceInfo->ProductId, ""); - } else { - *Revision = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, Revision); - ProductId_tmp = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, - ProductId); - VL53L0X_COPYSTRING(pVL53L0X_DeviceInfo->ProductId, ProductId_tmp); - } - } - - LOG_FUNCTION_END(Status); - return Status; -} - - -VL53L0X_Error VL53L0X_get_device_info(VL53L0X_DEV Dev, - VL53L0X_DeviceInfo_t *pVL53L0X_DeviceInfo) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t revision_id; - uint8_t Revision; - - Status = VL53L0X_check_part_used(Dev, &Revision, pVL53L0X_DeviceInfo); - - if (Status == VL53L0X_ERROR_NONE) { - if (Revision == 0) { - VL53L0X_COPYSTRING(pVL53L0X_DeviceInfo->Name, - VL53L0X_STRING_DEVICE_INFO_NAME_TS0); - } else if ((Revision <= 34) && (Revision != 32)) { - VL53L0X_COPYSTRING(pVL53L0X_DeviceInfo->Name, - VL53L0X_STRING_DEVICE_INFO_NAME_TS1); - } else if (Revision < 39) { - VL53L0X_COPYSTRING(pVL53L0X_DeviceInfo->Name, - VL53L0X_STRING_DEVICE_INFO_NAME_TS2); - } else { - VL53L0X_COPYSTRING(pVL53L0X_DeviceInfo->Name, - VL53L0X_STRING_DEVICE_INFO_NAME_ES1); - } - - VL53L0X_COPYSTRING(pVL53L0X_DeviceInfo->Type, - VL53L0X_STRING_DEVICE_INFO_TYPE); - - } - - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_RdByte(Dev, VL53L0X_REG_IDENTIFICATION_MODEL_ID, - &pVL53L0X_DeviceInfo->ProductType); - } - - if (Status == VL53L0X_ERROR_NONE) { - Status = VL53L0X_RdByte(Dev, - VL53L0X_REG_IDENTIFICATION_REVISION_ID, - &revision_id); - pVL53L0X_DeviceInfo->ProductRevisionMajor = 1; - pVL53L0X_DeviceInfo->ProductRevisionMinor = - (revision_id & 0xF0) >> 4; - } - - return Status; -} - - -VL53L0X_Error VL53L0X_get_device_error_string(VL53L0X_DeviceError ErrorCode, - char *pDeviceErrorString) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - switch (ErrorCode) { - case VL53L0X_DEVICEERROR_NONE: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_DEVICEERROR_NONE); - break; - case VL53L0X_DEVICEERROR_VCSELCONTINUITYTESTFAILURE: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_DEVICEERROR_VCSELCONTINUITYTESTFAILURE); - break; - case VL53L0X_DEVICEERROR_VCSELWATCHDOGTESTFAILURE: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_DEVICEERROR_VCSELWATCHDOGTESTFAILURE); - break; - case VL53L0X_DEVICEERROR_NOVHVVALUEFOUND: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_DEVICEERROR_NOVHVVALUEFOUND); - break; - case VL53L0X_DEVICEERROR_MSRCNOTARGET: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_DEVICEERROR_MSRCNOTARGET); - break; - case VL53L0X_DEVICEERROR_SNRCHECK: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_DEVICEERROR_SNRCHECK); - break; - case VL53L0X_DEVICEERROR_RANGEPHASECHECK: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_DEVICEERROR_RANGEPHASECHECK); - break; - case VL53L0X_DEVICEERROR_SIGMATHRESHOLDCHECK: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_DEVICEERROR_SIGMATHRESHOLDCHECK); - break; - case VL53L0X_DEVICEERROR_TCC: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_DEVICEERROR_TCC); - break; - case VL53L0X_DEVICEERROR_PHASECONSISTENCY: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_DEVICEERROR_PHASECONSISTENCY); - break; - case VL53L0X_DEVICEERROR_MINCLIP: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_DEVICEERROR_MINCLIP); - break; - case VL53L0X_DEVICEERROR_RANGECOMPLETE: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_DEVICEERROR_RANGECOMPLETE); - break; - case VL53L0X_DEVICEERROR_ALGOUNDERFLOW: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_DEVICEERROR_ALGOUNDERFLOW); - break; - case VL53L0X_DEVICEERROR_ALGOOVERFLOW: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_DEVICEERROR_ALGOOVERFLOW); - break; - case VL53L0X_DEVICEERROR_RANGEIGNORETHRESHOLD: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_DEVICEERROR_RANGEIGNORETHRESHOLD); - break; - - default: - VL53L0X_COPYSTRING(pDeviceErrorString, - VL53L0X_STRING_UNKNOW_ERROR_CODE); - - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_get_range_status_string(uint8_t RangeStatus, - char *pRangeStatusString) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - switch (RangeStatus) { - case 0: - VL53L0X_COPYSTRING(pRangeStatusString, - VL53L0X_STRING_RANGESTATUS_RANGEVALID); - break; - case 1: - VL53L0X_COPYSTRING(pRangeStatusString, - VL53L0X_STRING_RANGESTATUS_SIGMA); - break; - case 2: - VL53L0X_COPYSTRING(pRangeStatusString, - VL53L0X_STRING_RANGESTATUS_SIGNAL); - break; - case 3: - VL53L0X_COPYSTRING(pRangeStatusString, - VL53L0X_STRING_RANGESTATUS_MINRANGE); - break; - case 4: - VL53L0X_COPYSTRING(pRangeStatusString, - VL53L0X_STRING_RANGESTATUS_PHASE); - break; - case 5: - VL53L0X_COPYSTRING(pRangeStatusString, - VL53L0X_STRING_RANGESTATUS_HW); - break; - - default: /**/ - VL53L0X_COPYSTRING(pRangeStatusString, - VL53L0X_STRING_RANGESTATUS_NONE); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_get_pal_error_string(VL53L0X_Error PalErrorCode, - char *pPalErrorString) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - switch (PalErrorCode) { - case VL53L0X_ERROR_NONE: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_NONE); - break; - case VL53L0X_ERROR_CALIBRATION_WARNING: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_CALIBRATION_WARNING); - break; - case VL53L0X_ERROR_MIN_CLIPPED: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_MIN_CLIPPED); - break; - case VL53L0X_ERROR_UNDEFINED: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_UNDEFINED); - break; - case VL53L0X_ERROR_INVALID_PARAMS: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_INVALID_PARAMS); - break; - case VL53L0X_ERROR_NOT_SUPPORTED: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_NOT_SUPPORTED); - break; - case VL53L0X_ERROR_INTERRUPT_NOT_CLEARED: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_INTERRUPT_NOT_CLEARED); - break; - case VL53L0X_ERROR_RANGE_ERROR: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_RANGE_ERROR); - break; - case VL53L0X_ERROR_TIME_OUT: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_TIME_OUT); - break; - case VL53L0X_ERROR_MODE_NOT_SUPPORTED: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_MODE_NOT_SUPPORTED); - break; - case VL53L0X_ERROR_BUFFER_TOO_SMALL: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_BUFFER_TOO_SMALL); - break; - case VL53L0X_ERROR_GPIO_NOT_EXISTING: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_GPIO_NOT_EXISTING); - break; - case VL53L0X_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED); - break; - case VL53L0X_ERROR_CONTROL_INTERFACE: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_CONTROL_INTERFACE); - break; - case VL53L0X_ERROR_INVALID_COMMAND: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_INVALID_COMMAND); - break; - case VL53L0X_ERROR_DIVISION_BY_ZERO: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_DIVISION_BY_ZERO); - break; - case VL53L0X_ERROR_REF_SPAD_INIT: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_REF_SPAD_INIT); - break; - case VL53L0X_ERROR_NOT_IMPLEMENTED: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_ERROR_NOT_IMPLEMENTED); - break; - - default: - VL53L0X_COPYSTRING(pPalErrorString, - VL53L0X_STRING_UNKNOW_ERROR_CODE); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_get_pal_state_string(VL53L0X_State PalStateCode, - char *pPalStateString) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - switch (PalStateCode) { - case VL53L0X_STATE_POWERDOWN: - VL53L0X_COPYSTRING(pPalStateString, - VL53L0X_STRING_STATE_POWERDOWN); - break; - case VL53L0X_STATE_WAIT_STATICINIT: - VL53L0X_COPYSTRING(pPalStateString, - VL53L0X_STRING_STATE_WAIT_STATICINIT); - break; - case VL53L0X_STATE_STANDBY: - VL53L0X_COPYSTRING(pPalStateString, - VL53L0X_STRING_STATE_STANDBY); - break; - case VL53L0X_STATE_IDLE: - VL53L0X_COPYSTRING(pPalStateString, - VL53L0X_STRING_STATE_IDLE); - break; - case VL53L0X_STATE_RUNNING: - VL53L0X_COPYSTRING(pPalStateString, - VL53L0X_STRING_STATE_RUNNING); - break; - case VL53L0X_STATE_UNKNOWN: - VL53L0X_COPYSTRING(pPalStateString, - VL53L0X_STRING_STATE_UNKNOWN); - break; - case VL53L0X_STATE_ERROR: - VL53L0X_COPYSTRING(pPalStateString, - VL53L0X_STRING_STATE_ERROR); - break; - - default: - VL53L0X_COPYSTRING(pPalStateString, - VL53L0X_STRING_STATE_UNKNOWN); - } - - LOG_FUNCTION_END(Status); - return Status; -} - -VL53L0X_Error VL53L0X_get_sequence_steps_info( - VL53L0X_SequenceStepId SequenceStepId, - char *pSequenceStepsString) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - LOG_FUNCTION_START(""); - - switch (SequenceStepId) { - case VL53L0X_SEQUENCESTEP_TCC: - VL53L0X_COPYSTRING(pSequenceStepsString, - VL53L0X_STRING_SEQUENCESTEP_TCC); - break; - case VL53L0X_SEQUENCESTEP_DSS: - VL53L0X_COPYSTRING(pSequenceStepsString, - VL53L0X_STRING_SEQUENCESTEP_DSS); - break; - case VL53L0X_SEQUENCESTEP_MSRC: - VL53L0X_COPYSTRING(pSequenceStepsString, - VL53L0X_STRING_SEQUENCESTEP_MSRC); - break; - case VL53L0X_SEQUENCESTEP_PRE_RANGE: - VL53L0X_COPYSTRING(pSequenceStepsString, - VL53L0X_STRING_SEQUENCESTEP_PRE_RANGE); - break; - case VL53L0X_SEQUENCESTEP_FINAL_RANGE: - VL53L0X_COPYSTRING(pSequenceStepsString, - VL53L0X_STRING_SEQUENCESTEP_FINAL_RANGE); - break; - - default: - Status = VL53L0X_ERROR_INVALID_PARAMS; - } - - LOG_FUNCTION_END(Status); - - return Status; -} - - -VL53L0X_Error VL53L0X_get_limit_check_info(VL53L0X_DEV Dev, uint16_t LimitCheckId, - char *pLimitCheckString) -{ - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - - LOG_FUNCTION_START(""); - - switch (LimitCheckId) { - case VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE: - VL53L0X_COPYSTRING(pLimitCheckString, - VL53L0X_STRING_CHECKENABLE_SIGMA_FINAL_RANGE); - break; - case VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE: - VL53L0X_COPYSTRING(pLimitCheckString, - VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE); - break; - case VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP: - VL53L0X_COPYSTRING(pLimitCheckString, - VL53L0X_STRING_CHECKENABLE_SIGNAL_REF_CLIP); - break; - case VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD: - VL53L0X_COPYSTRING(pLimitCheckString, - VL53L0X_STRING_CHECKENABLE_RANGE_IGNORE_THRESHOLD); - break; - - case VL53L0X_CHECKENABLE_SIGNAL_RATE_MSRC: - VL53L0X_COPYSTRING(pLimitCheckString, - VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_MSRC); - break; - - case VL53L0X_CHECKENABLE_SIGNAL_RATE_PRE_RANGE: - VL53L0X_COPYSTRING(pLimitCheckString, - VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_PRE_RANGE); - break; - - default: - VL53L0X_COPYSTRING(pLimitCheckString, - VL53L0X_STRING_UNKNOW_ERROR_CODE); - - } - - LOG_FUNCTION_END(Status); - return Status; -} +/******************************************************************************* + Copyright � 2016, STMicroelectronics International N.V. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND + NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. + IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ******************************************************************************/ + +#include "vl53l0x_api.h" +#include "vl53l0x_api_core.h" +#include "vl53l0x_api_strings.h" + +#ifndef __KERNEL__ +#include <stdlib.h> +#endif + +#define LOG_FUNCTION_START(fmt, ...) \ + _LOG_FUNCTION_START(TRACE_MODULE_API, fmt, ##__VA_ARGS__) +#define LOG_FUNCTION_END(status, ...) \ + _LOG_FUNCTION_END(TRACE_MODULE_API, status, ##__VA_ARGS__) +#define LOG_FUNCTION_END_FMT(status, fmt, ...) \ + _LOG_FUNCTION_END_FMT(TRACE_MODULE_API, status, fmt, ##__VA_ARGS__) + + +VL53L0X_Error VL53L0X_check_part_used(VL53L0X_DEV Dev, + uint8_t *Revision, + VL53L0X_DeviceInfo_t *pVL53L0X_DeviceInfo) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t ModuleIdInt; + char *ProductId_tmp; + + LOG_FUNCTION_START(""); + + Status = VL53L0X_get_info_from_device(Dev, 2); + + if (Status == VL53L0X_ERROR_NONE) { + ModuleIdInt = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, ModuleId); + + if (ModuleIdInt == 0) { + *Revision = 0; + VL53L0X_COPYSTRING(pVL53L0X_DeviceInfo->ProductId, ""); + } else { + *Revision = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, Revision); + ProductId_tmp = VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, + ProductId); + VL53L0X_COPYSTRING(pVL53L0X_DeviceInfo->ProductId, ProductId_tmp); + } + } + + LOG_FUNCTION_END(Status); + return Status; +} + + +VL53L0X_Error VL53L0X_get_device_info(VL53L0X_DEV Dev, + VL53L0X_DeviceInfo_t *pVL53L0X_DeviceInfo) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t revision_id; + uint8_t Revision; + + Status = VL53L0X_check_part_used(Dev, &Revision, pVL53L0X_DeviceInfo); + + if (Status == VL53L0X_ERROR_NONE) { + if (Revision == 0) { + VL53L0X_COPYSTRING(pVL53L0X_DeviceInfo->Name, + VL53L0X_STRING_DEVICE_INFO_NAME_TS0); + } else if ((Revision <= 34) && (Revision != 32)) { + VL53L0X_COPYSTRING(pVL53L0X_DeviceInfo->Name, + VL53L0X_STRING_DEVICE_INFO_NAME_TS1); + } else if (Revision < 39) { + VL53L0X_COPYSTRING(pVL53L0X_DeviceInfo->Name, + VL53L0X_STRING_DEVICE_INFO_NAME_TS2); + } else { + VL53L0X_COPYSTRING(pVL53L0X_DeviceInfo->Name, + VL53L0X_STRING_DEVICE_INFO_NAME_ES1); + } + + VL53L0X_COPYSTRING(pVL53L0X_DeviceInfo->Type, + VL53L0X_STRING_DEVICE_INFO_TYPE); + + } + + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_RdByte(Dev, VL53L0X_REG_IDENTIFICATION_MODEL_ID, + &pVL53L0X_DeviceInfo->ProductType); + } + + if (Status == VL53L0X_ERROR_NONE) { + Status = VL53L0X_RdByte(Dev, + VL53L0X_REG_IDENTIFICATION_REVISION_ID, + &revision_id); + pVL53L0X_DeviceInfo->ProductRevisionMajor = 1; + pVL53L0X_DeviceInfo->ProductRevisionMinor = + (revision_id & 0xF0) >> 4; + } + + return Status; +} + + +VL53L0X_Error VL53L0X_get_device_error_string(VL53L0X_DeviceError ErrorCode, + char *pDeviceErrorString) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + switch (ErrorCode) { + case VL53L0X_DEVICEERROR_NONE: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_DEVICEERROR_NONE); + break; + case VL53L0X_DEVICEERROR_VCSELCONTINUITYTESTFAILURE: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_DEVICEERROR_VCSELCONTINUITYTESTFAILURE); + break; + case VL53L0X_DEVICEERROR_VCSELWATCHDOGTESTFAILURE: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_DEVICEERROR_VCSELWATCHDOGTESTFAILURE); + break; + case VL53L0X_DEVICEERROR_NOVHVVALUEFOUND: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_DEVICEERROR_NOVHVVALUEFOUND); + break; + case VL53L0X_DEVICEERROR_MSRCNOTARGET: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_DEVICEERROR_MSRCNOTARGET); + break; + case VL53L0X_DEVICEERROR_SNRCHECK: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_DEVICEERROR_SNRCHECK); + break; + case VL53L0X_DEVICEERROR_RANGEPHASECHECK: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_DEVICEERROR_RANGEPHASECHECK); + break; + case VL53L0X_DEVICEERROR_SIGMATHRESHOLDCHECK: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_DEVICEERROR_SIGMATHRESHOLDCHECK); + break; + case VL53L0X_DEVICEERROR_TCC: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_DEVICEERROR_TCC); + break; + case VL53L0X_DEVICEERROR_PHASECONSISTENCY: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_DEVICEERROR_PHASECONSISTENCY); + break; + case VL53L0X_DEVICEERROR_MINCLIP: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_DEVICEERROR_MINCLIP); + break; + case VL53L0X_DEVICEERROR_RANGECOMPLETE: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_DEVICEERROR_RANGECOMPLETE); + break; + case VL53L0X_DEVICEERROR_ALGOUNDERFLOW: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_DEVICEERROR_ALGOUNDERFLOW); + break; + case VL53L0X_DEVICEERROR_ALGOOVERFLOW: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_DEVICEERROR_ALGOOVERFLOW); + break; + case VL53L0X_DEVICEERROR_RANGEIGNORETHRESHOLD: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_DEVICEERROR_RANGEIGNORETHRESHOLD); + break; + + default: + VL53L0X_COPYSTRING(pDeviceErrorString, + VL53L0X_STRING_UNKNOW_ERROR_CODE); + + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_get_range_status_string(uint8_t RangeStatus, + char *pRangeStatusString) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + switch (RangeStatus) { + case 0: + VL53L0X_COPYSTRING(pRangeStatusString, + VL53L0X_STRING_RANGESTATUS_RANGEVALID); + break; + case 1: + VL53L0X_COPYSTRING(pRangeStatusString, + VL53L0X_STRING_RANGESTATUS_SIGMA); + break; + case 2: + VL53L0X_COPYSTRING(pRangeStatusString, + VL53L0X_STRING_RANGESTATUS_SIGNAL); + break; + case 3: + VL53L0X_COPYSTRING(pRangeStatusString, + VL53L0X_STRING_RANGESTATUS_MINRANGE); + break; + case 4: + VL53L0X_COPYSTRING(pRangeStatusString, + VL53L0X_STRING_RANGESTATUS_PHASE); + break; + case 5: + VL53L0X_COPYSTRING(pRangeStatusString, + VL53L0X_STRING_RANGESTATUS_HW); + break; + + default: /**/ + VL53L0X_COPYSTRING(pRangeStatusString, + VL53L0X_STRING_RANGESTATUS_NONE); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_get_pal_error_string(VL53L0X_Error PalErrorCode, + char *pPalErrorString) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + switch (PalErrorCode) { + case VL53L0X_ERROR_NONE: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_NONE); + break; + case VL53L0X_ERROR_CALIBRATION_WARNING: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_CALIBRATION_WARNING); + break; + case VL53L0X_ERROR_MIN_CLIPPED: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_MIN_CLIPPED); + break; + case VL53L0X_ERROR_UNDEFINED: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_UNDEFINED); + break; + case VL53L0X_ERROR_INVALID_PARAMS: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_INVALID_PARAMS); + break; + case VL53L0X_ERROR_NOT_SUPPORTED: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_NOT_SUPPORTED); + break; + case VL53L0X_ERROR_INTERRUPT_NOT_CLEARED: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_INTERRUPT_NOT_CLEARED); + break; + case VL53L0X_ERROR_RANGE_ERROR: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_RANGE_ERROR); + break; + case VL53L0X_ERROR_TIME_OUT: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_TIME_OUT); + break; + case VL53L0X_ERROR_MODE_NOT_SUPPORTED: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_MODE_NOT_SUPPORTED); + break; + case VL53L0X_ERROR_BUFFER_TOO_SMALL: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_BUFFER_TOO_SMALL); + break; + case VL53L0X_ERROR_GPIO_NOT_EXISTING: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_GPIO_NOT_EXISTING); + break; + case VL53L0X_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED); + break; + case VL53L0X_ERROR_CONTROL_INTERFACE: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_CONTROL_INTERFACE); + break; + case VL53L0X_ERROR_INVALID_COMMAND: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_INVALID_COMMAND); + break; + case VL53L0X_ERROR_DIVISION_BY_ZERO: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_DIVISION_BY_ZERO); + break; + case VL53L0X_ERROR_REF_SPAD_INIT: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_REF_SPAD_INIT); + break; + case VL53L0X_ERROR_NOT_IMPLEMENTED: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_ERROR_NOT_IMPLEMENTED); + break; + + default: + VL53L0X_COPYSTRING(pPalErrorString, + VL53L0X_STRING_UNKNOW_ERROR_CODE); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_get_pal_state_string(VL53L0X_State PalStateCode, + char *pPalStateString) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + switch (PalStateCode) { + case VL53L0X_STATE_POWERDOWN: + VL53L0X_COPYSTRING(pPalStateString, + VL53L0X_STRING_STATE_POWERDOWN); + break; + case VL53L0X_STATE_WAIT_STATICINIT: + VL53L0X_COPYSTRING(pPalStateString, + VL53L0X_STRING_STATE_WAIT_STATICINIT); + break; + case VL53L0X_STATE_STANDBY: + VL53L0X_COPYSTRING(pPalStateString, + VL53L0X_STRING_STATE_STANDBY); + break; + case VL53L0X_STATE_IDLE: + VL53L0X_COPYSTRING(pPalStateString, + VL53L0X_STRING_STATE_IDLE); + break; + case VL53L0X_STATE_RUNNING: + VL53L0X_COPYSTRING(pPalStateString, + VL53L0X_STRING_STATE_RUNNING); + break; + case VL53L0X_STATE_UNKNOWN: + VL53L0X_COPYSTRING(pPalStateString, + VL53L0X_STRING_STATE_UNKNOWN); + break; + case VL53L0X_STATE_ERROR: + VL53L0X_COPYSTRING(pPalStateString, + VL53L0X_STRING_STATE_ERROR); + break; + + default: + VL53L0X_COPYSTRING(pPalStateString, + VL53L0X_STRING_STATE_UNKNOWN); + } + + LOG_FUNCTION_END(Status); + return Status; +} + +VL53L0X_Error VL53L0X_get_sequence_steps_info( + VL53L0X_SequenceStepId SequenceStepId, + char *pSequenceStepsString) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + LOG_FUNCTION_START(""); + + switch (SequenceStepId) { + case VL53L0X_SEQUENCESTEP_TCC: + VL53L0X_COPYSTRING(pSequenceStepsString, + VL53L0X_STRING_SEQUENCESTEP_TCC); + break; + case VL53L0X_SEQUENCESTEP_DSS: + VL53L0X_COPYSTRING(pSequenceStepsString, + VL53L0X_STRING_SEQUENCESTEP_DSS); + break; + case VL53L0X_SEQUENCESTEP_MSRC: + VL53L0X_COPYSTRING(pSequenceStepsString, + VL53L0X_STRING_SEQUENCESTEP_MSRC); + break; + case VL53L0X_SEQUENCESTEP_PRE_RANGE: + VL53L0X_COPYSTRING(pSequenceStepsString, + VL53L0X_STRING_SEQUENCESTEP_PRE_RANGE); + break; + case VL53L0X_SEQUENCESTEP_FINAL_RANGE: + VL53L0X_COPYSTRING(pSequenceStepsString, + VL53L0X_STRING_SEQUENCESTEP_FINAL_RANGE); + break; + + default: + Status = VL53L0X_ERROR_INVALID_PARAMS; + } + + LOG_FUNCTION_END(Status); + + return Status; +} + + +VL53L0X_Error VL53L0X_get_limit_check_info(VL53L0X_DEV Dev, uint16_t LimitCheckId, + char *pLimitCheckString) +{ + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + + LOG_FUNCTION_START(""); + + switch (LimitCheckId) { + case VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE: + VL53L0X_COPYSTRING(pLimitCheckString, + VL53L0X_STRING_CHECKENABLE_SIGMA_FINAL_RANGE); + break; + case VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE: + VL53L0X_COPYSTRING(pLimitCheckString, + VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE); + break; + case VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP: + VL53L0X_COPYSTRING(pLimitCheckString, + VL53L0X_STRING_CHECKENABLE_SIGNAL_REF_CLIP); + break; + case VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD: + VL53L0X_COPYSTRING(pLimitCheckString, + VL53L0X_STRING_CHECKENABLE_RANGE_IGNORE_THRESHOLD); + break; + + case VL53L0X_CHECKENABLE_SIGNAL_RATE_MSRC: + VL53L0X_COPYSTRING(pLimitCheckString, + VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_MSRC); + break; + + case VL53L0X_CHECKENABLE_SIGNAL_RATE_PRE_RANGE: + VL53L0X_COPYSTRING(pLimitCheckString, + VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_PRE_RANGE); + break; + + default: + VL53L0X_COPYSTRING(pLimitCheckString, + VL53L0X_STRING_UNKNOW_ERROR_CODE); + + } + + LOG_FUNCTION_END(Status); + return Status; +} diff --git a/STS/TOF/vl53l0x/vl53l0x_api_strings.h b/STS/TOF/vl53l0x/vl53l0x_api_strings.h index b680d8f..2586b49 100644 --- a/STS/TOF/vl53l0x/vl53l0x_api_strings.h +++ b/STS/TOF/vl53l0x/vl53l0x_api_strings.h @@ -1,277 +1,277 @@ -/******************************************************************************* -Copyright � 2016, STMicroelectronics International N.V. -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND -NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. -IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*******************************************************************************/ - -#ifndef VL53L0X_API_STRINGS_H_ -#define VL53L0X_API_STRINGS_H_ - -#include "vl53l0x_def.h" -#include "vl53l0x_platform.h" - -#ifdef __cplusplus -extern "C" { -#endif - - -VL53L0X_Error VL53L0X_get_device_info(VL53L0X_DEV Dev, - VL53L0X_DeviceInfo_t *pVL53L0X_DeviceInfo); - -VL53L0X_Error VL53L0X_get_device_error_string(VL53L0X_DeviceError ErrorCode, - char *pDeviceErrorString); - -VL53L0X_Error VL53L0X_get_range_status_string(uint8_t RangeStatus, - char *pRangeStatusString); - -VL53L0X_Error VL53L0X_get_pal_error_string(VL53L0X_Error PalErrorCode, - char *pPalErrorString); - -VL53L0X_Error VL53L0X_get_pal_state_string(VL53L0X_State PalStateCode, - char *pPalStateString); - -VL53L0X_Error VL53L0X_get_sequence_steps_info( - VL53L0X_SequenceStepId SequenceStepId, - char *pSequenceStepsString); - -VL53L0X_Error VL53L0X_get_limit_check_info(VL53L0X_DEV Dev, uint16_t LimitCheckId, - char *pLimitCheckString); - - -#ifdef USE_EMPTY_STRING - #define VL53L0X_STRING_DEVICE_INFO_NAME "" - #define VL53L0X_STRING_DEVICE_INFO_NAME_TS0 "" - #define VL53L0X_STRING_DEVICE_INFO_NAME_TS1 "" - #define VL53L0X_STRING_DEVICE_INFO_NAME_TS2 "" - #define VL53L0X_STRING_DEVICE_INFO_NAME_ES1 "" - #define VL53L0X_STRING_DEVICE_INFO_TYPE "" - - /* PAL ERROR strings */ - #define VL53L0X_STRING_ERROR_NONE "" - #define VL53L0X_STRING_ERROR_CALIBRATION_WARNING "" - #define VL53L0X_STRING_ERROR_MIN_CLIPPED "" - #define VL53L0X_STRING_ERROR_UNDEFINED "" - #define VL53L0X_STRING_ERROR_INVALID_PARAMS "" - #define VL53L0X_STRING_ERROR_NOT_SUPPORTED "" - #define VL53L0X_STRING_ERROR_RANGE_ERROR "" - #define VL53L0X_STRING_ERROR_TIME_OUT "" - #define VL53L0X_STRING_ERROR_MODE_NOT_SUPPORTED "" - #define VL53L0X_STRING_ERROR_BUFFER_TOO_SMALL "" - #define VL53L0X_STRING_ERROR_GPIO_NOT_EXISTING "" - #define VL53L0X_STRING_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED "" - #define VL53L0X_STRING_ERROR_CONTROL_INTERFACE "" - #define VL53L0X_STRING_ERROR_INVALID_COMMAND "" - #define VL53L0X_STRING_ERROR_DIVISION_BY_ZERO "" - #define VL53L0X_STRING_ERROR_REF_SPAD_INIT "" - #define VL53L0X_STRING_ERROR_NOT_IMPLEMENTED "" - - #define VL53L0X_STRING_UNKNOW_ERROR_CODE "" - - - - /* Range Status */ - #define VL53L0X_STRING_RANGESTATUS_NONE "" - #define VL53L0X_STRING_RANGESTATUS_RANGEVALID "" - #define VL53L0X_STRING_RANGESTATUS_SIGMA "" - #define VL53L0X_STRING_RANGESTATUS_SIGNAL "" - #define VL53L0X_STRING_RANGESTATUS_MINRANGE "" - #define VL53L0X_STRING_RANGESTATUS_PHASE "" - #define VL53L0X_STRING_RANGESTATUS_HW "" - - - /* Range Status */ - #define VL53L0X_STRING_STATE_POWERDOWN "" - #define VL53L0X_STRING_STATE_WAIT_STATICINIT "" - #define VL53L0X_STRING_STATE_STANDBY "" - #define VL53L0X_STRING_STATE_IDLE "" - #define VL53L0X_STRING_STATE_RUNNING "" - #define VL53L0X_STRING_STATE_UNKNOWN "" - #define VL53L0X_STRING_STATE_ERROR "" - - - /* Device Specific */ - #define VL53L0X_STRING_DEVICEERROR_NONE "" - #define VL53L0X_STRING_DEVICEERROR_VCSELCONTINUITYTESTFAILURE "" - #define VL53L0X_STRING_DEVICEERROR_VCSELWATCHDOGTESTFAILURE "" - #define VL53L0X_STRING_DEVICEERROR_NOVHVVALUEFOUND "" - #define VL53L0X_STRING_DEVICEERROR_MSRCNOTARGET "" - #define VL53L0X_STRING_DEVICEERROR_SNRCHECK "" - #define VL53L0X_STRING_DEVICEERROR_RANGEPHASECHECK "" - #define VL53L0X_STRING_DEVICEERROR_SIGMATHRESHOLDCHECK "" - #define VL53L0X_STRING_DEVICEERROR_TCC "" - #define VL53L0X_STRING_DEVICEERROR_PHASECONSISTENCY "" - #define VL53L0X_STRING_DEVICEERROR_MINCLIP "" - #define VL53L0X_STRING_DEVICEERROR_RANGECOMPLETE "" - #define VL53L0X_STRING_DEVICEERROR_ALGOUNDERFLOW "" - #define VL53L0X_STRING_DEVICEERROR_ALGOOVERFLOW "" - #define VL53L0X_STRING_DEVICEERROR_RANGEIGNORETHRESHOLD "" - #define VL53L0X_STRING_DEVICEERROR_UNKNOWN "" - - /* Check Enable */ - #define VL53L0X_STRING_CHECKENABLE_SIGMA_FINAL_RANGE "" - #define VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE "" - #define VL53L0X_STRING_CHECKENABLE_SIGNAL_REF_CLIP "" - #define VL53L0X_STRING_CHECKENABLE_RANGE_IGNORE_THRESHOLD "" - - /* Sequence Step */ - #define VL53L0X_STRING_SEQUENCESTEP_TCC "" - #define VL53L0X_STRING_SEQUENCESTEP_DSS "" - #define VL53L0X_STRING_SEQUENCESTEP_MSRC "" - #define VL53L0X_STRING_SEQUENCESTEP_PRE_RANGE "" - #define VL53L0X_STRING_SEQUENCESTEP_FINAL_RANGE "" -#else - #define VL53L0X_STRING_DEVICE_INFO_NAME "VL53L0X cut1.0" - #define VL53L0X_STRING_DEVICE_INFO_NAME_TS0 "VL53L0X TS0" - #define VL53L0X_STRING_DEVICE_INFO_NAME_TS1 "VL53L0X TS1" - #define VL53L0X_STRING_DEVICE_INFO_NAME_TS2 "VL53L0X TS2" - #define VL53L0X_STRING_DEVICE_INFO_NAME_ES1 "VL53L0X ES1 or later" - #define VL53L0X_STRING_DEVICE_INFO_TYPE "VL53L0X" - - /* PAL ERROR strings */ - #define VL53L0X_STRING_ERROR_NONE \ - "No Error" - #define VL53L0X_STRING_ERROR_CALIBRATION_WARNING \ - "Calibration Warning Error" - #define VL53L0X_STRING_ERROR_MIN_CLIPPED \ - "Min clipped error" - #define VL53L0X_STRING_ERROR_UNDEFINED \ - "Undefined error" - #define VL53L0X_STRING_ERROR_INVALID_PARAMS \ - "Invalid parameters error" - #define VL53L0X_STRING_ERROR_NOT_SUPPORTED \ - "Not supported error" - #define VL53L0X_STRING_ERROR_RANGE_ERROR \ - "Range error" - #define VL53L0X_STRING_ERROR_TIME_OUT \ - "Time out error" - #define VL53L0X_STRING_ERROR_MODE_NOT_SUPPORTED \ - "Mode not supported error" - #define VL53L0X_STRING_ERROR_BUFFER_TOO_SMALL \ - "Buffer too small" - #define VL53L0X_STRING_ERROR_GPIO_NOT_EXISTING \ - "GPIO not existing" - #define VL53L0X_STRING_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED \ - "GPIO funct not supported" - #define VL53L0X_STRING_ERROR_INTERRUPT_NOT_CLEARED \ - "Interrupt not Cleared" - #define VL53L0X_STRING_ERROR_CONTROL_INTERFACE \ - "Control Interface Error" - #define VL53L0X_STRING_ERROR_INVALID_COMMAND \ - "Invalid Command Error" - #define VL53L0X_STRING_ERROR_DIVISION_BY_ZERO \ - "Division by zero Error" - #define VL53L0X_STRING_ERROR_REF_SPAD_INIT \ - "Reference Spad Init Error" - #define VL53L0X_STRING_ERROR_NOT_IMPLEMENTED \ - "Not implemented error" - - #define VL53L0X_STRING_UNKNOW_ERROR_CODE \ - "Unknown Error Code" - - - - /* Range Status */ - #define VL53L0X_STRING_RANGESTATUS_NONE "No Update" - #define VL53L0X_STRING_RANGESTATUS_RANGEVALID "Range Valid" - #define VL53L0X_STRING_RANGESTATUS_SIGMA "Sigma Fail" - #define VL53L0X_STRING_RANGESTATUS_SIGNAL "Signal Fail" - #define VL53L0X_STRING_RANGESTATUS_MINRANGE "Min Range Fail" - #define VL53L0X_STRING_RANGESTATUS_PHASE "Phase Fail" - #define VL53L0X_STRING_RANGESTATUS_HW "Hardware Fail" - - - /* Range Status */ - #define VL53L0X_STRING_STATE_POWERDOWN "POWERDOWN State" - #define VL53L0X_STRING_STATE_WAIT_STATICINIT \ - "Wait for staticinit State" - #define VL53L0X_STRING_STATE_STANDBY "STANDBY State" - #define VL53L0X_STRING_STATE_IDLE "IDLE State" - #define VL53L0X_STRING_STATE_RUNNING "RUNNING State" - #define VL53L0X_STRING_STATE_UNKNOWN "UNKNOWN State" - #define VL53L0X_STRING_STATE_ERROR "ERROR State" - - - /* Device Specific */ - #define VL53L0X_STRING_DEVICEERROR_NONE "No Update" - #define VL53L0X_STRING_DEVICEERROR_VCSELCONTINUITYTESTFAILURE \ - "VCSEL Continuity Test Failure" - #define VL53L0X_STRING_DEVICEERROR_VCSELWATCHDOGTESTFAILURE \ - "VCSEL Watchdog Test Failure" - #define VL53L0X_STRING_DEVICEERROR_NOVHVVALUEFOUND \ - "No VHV Value found" - #define VL53L0X_STRING_DEVICEERROR_MSRCNOTARGET \ - "MSRC No Target Error" - #define VL53L0X_STRING_DEVICEERROR_SNRCHECK \ - "SNR Check Exit" - #define VL53L0X_STRING_DEVICEERROR_RANGEPHASECHECK \ - "Range Phase Check Error" - #define VL53L0X_STRING_DEVICEERROR_SIGMATHRESHOLDCHECK \ - "Sigma Threshold Check Error" - #define VL53L0X_STRING_DEVICEERROR_TCC \ - "TCC Error" - #define VL53L0X_STRING_DEVICEERROR_PHASECONSISTENCY \ - "Phase Consistency Error" - #define VL53L0X_STRING_DEVICEERROR_MINCLIP \ - "Min Clip Error" - #define VL53L0X_STRING_DEVICEERROR_RANGECOMPLETE \ - "Range Complete" - #define VL53L0X_STRING_DEVICEERROR_ALGOUNDERFLOW \ - "Range Algo Underflow Error" - #define VL53L0X_STRING_DEVICEERROR_ALGOOVERFLOW \ - "Range Algo Overlow Error" - #define VL53L0X_STRING_DEVICEERROR_RANGEIGNORETHRESHOLD \ - "Range Ignore Threshold Error" - #define VL53L0X_STRING_DEVICEERROR_UNKNOWN \ - "Unknown error code" - - /* Check Enable */ - #define VL53L0X_STRING_CHECKENABLE_SIGMA_FINAL_RANGE \ - "SIGMA FINAL RANGE" - #define VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE \ - "SIGNAL RATE FINAL RANGE" - #define VL53L0X_STRING_CHECKENABLE_SIGNAL_REF_CLIP \ - "SIGNAL REF CLIP" - #define VL53L0X_STRING_CHECKENABLE_RANGE_IGNORE_THRESHOLD \ - "RANGE IGNORE THRESHOLD" - #define VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_MSRC \ - "SIGNAL RATE MSRC" - #define VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_PRE_RANGE \ - "SIGNAL RATE PRE RANGE" - - /* Sequence Step */ - #define VL53L0X_STRING_SEQUENCESTEP_TCC "TCC" - #define VL53L0X_STRING_SEQUENCESTEP_DSS "DSS" - #define VL53L0X_STRING_SEQUENCESTEP_MSRC "MSRC" - #define VL53L0X_STRING_SEQUENCESTEP_PRE_RANGE "PRE RANGE" - #define VL53L0X_STRING_SEQUENCESTEP_FINAL_RANGE "FINAL RANGE" -#endif /* USE_EMPTY_STRING */ - - -#ifdef __cplusplus -} -#endif - -#endif - +/******************************************************************************* +Copyright � 2016, STMicroelectronics International N.V. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND +NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. +IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*******************************************************************************/ + +#ifndef VL53L0X_API_STRINGS_H_ +#define VL53L0X_API_STRINGS_H_ + +#include "vl53l0x_def.h" +#include "vl53l0x_platform.h" + +#ifdef __cplusplus +extern "C" { +#endif + + +VL53L0X_Error VL53L0X_get_device_info(VL53L0X_DEV Dev, + VL53L0X_DeviceInfo_t *pVL53L0X_DeviceInfo); + +VL53L0X_Error VL53L0X_get_device_error_string(VL53L0X_DeviceError ErrorCode, + char *pDeviceErrorString); + +VL53L0X_Error VL53L0X_get_range_status_string(uint8_t RangeStatus, + char *pRangeStatusString); + +VL53L0X_Error VL53L0X_get_pal_error_string(VL53L0X_Error PalErrorCode, + char *pPalErrorString); + +VL53L0X_Error VL53L0X_get_pal_state_string(VL53L0X_State PalStateCode, + char *pPalStateString); + +VL53L0X_Error VL53L0X_get_sequence_steps_info( + VL53L0X_SequenceStepId SequenceStepId, + char *pSequenceStepsString); + +VL53L0X_Error VL53L0X_get_limit_check_info(VL53L0X_DEV Dev, uint16_t LimitCheckId, + char *pLimitCheckString); + + +#ifdef USE_EMPTY_STRING + #define VL53L0X_STRING_DEVICE_INFO_NAME "" + #define VL53L0X_STRING_DEVICE_INFO_NAME_TS0 "" + #define VL53L0X_STRING_DEVICE_INFO_NAME_TS1 "" + #define VL53L0X_STRING_DEVICE_INFO_NAME_TS2 "" + #define VL53L0X_STRING_DEVICE_INFO_NAME_ES1 "" + #define VL53L0X_STRING_DEVICE_INFO_TYPE "" + + /* PAL ERROR strings */ + #define VL53L0X_STRING_ERROR_NONE "" + #define VL53L0X_STRING_ERROR_CALIBRATION_WARNING "" + #define VL53L0X_STRING_ERROR_MIN_CLIPPED "" + #define VL53L0X_STRING_ERROR_UNDEFINED "" + #define VL53L0X_STRING_ERROR_INVALID_PARAMS "" + #define VL53L0X_STRING_ERROR_NOT_SUPPORTED "" + #define VL53L0X_STRING_ERROR_RANGE_ERROR "" + #define VL53L0X_STRING_ERROR_TIME_OUT "" + #define VL53L0X_STRING_ERROR_MODE_NOT_SUPPORTED "" + #define VL53L0X_STRING_ERROR_BUFFER_TOO_SMALL "" + #define VL53L0X_STRING_ERROR_GPIO_NOT_EXISTING "" + #define VL53L0X_STRING_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED "" + #define VL53L0X_STRING_ERROR_CONTROL_INTERFACE "" + #define VL53L0X_STRING_ERROR_INVALID_COMMAND "" + #define VL53L0X_STRING_ERROR_DIVISION_BY_ZERO "" + #define VL53L0X_STRING_ERROR_REF_SPAD_INIT "" + #define VL53L0X_STRING_ERROR_NOT_IMPLEMENTED "" + + #define VL53L0X_STRING_UNKNOW_ERROR_CODE "" + + + + /* Range Status */ + #define VL53L0X_STRING_RANGESTATUS_NONE "" + #define VL53L0X_STRING_RANGESTATUS_RANGEVALID "" + #define VL53L0X_STRING_RANGESTATUS_SIGMA "" + #define VL53L0X_STRING_RANGESTATUS_SIGNAL "" + #define VL53L0X_STRING_RANGESTATUS_MINRANGE "" + #define VL53L0X_STRING_RANGESTATUS_PHASE "" + #define VL53L0X_STRING_RANGESTATUS_HW "" + + + /* Range Status */ + #define VL53L0X_STRING_STATE_POWERDOWN "" + #define VL53L0X_STRING_STATE_WAIT_STATICINIT "" + #define VL53L0X_STRING_STATE_STANDBY "" + #define VL53L0X_STRING_STATE_IDLE "" + #define VL53L0X_STRING_STATE_RUNNING "" + #define VL53L0X_STRING_STATE_UNKNOWN "" + #define VL53L0X_STRING_STATE_ERROR "" + + + /* Device Specific */ + #define VL53L0X_STRING_DEVICEERROR_NONE "" + #define VL53L0X_STRING_DEVICEERROR_VCSELCONTINUITYTESTFAILURE "" + #define VL53L0X_STRING_DEVICEERROR_VCSELWATCHDOGTESTFAILURE "" + #define VL53L0X_STRING_DEVICEERROR_NOVHVVALUEFOUND "" + #define VL53L0X_STRING_DEVICEERROR_MSRCNOTARGET "" + #define VL53L0X_STRING_DEVICEERROR_SNRCHECK "" + #define VL53L0X_STRING_DEVICEERROR_RANGEPHASECHECK "" + #define VL53L0X_STRING_DEVICEERROR_SIGMATHRESHOLDCHECK "" + #define VL53L0X_STRING_DEVICEERROR_TCC "" + #define VL53L0X_STRING_DEVICEERROR_PHASECONSISTENCY "" + #define VL53L0X_STRING_DEVICEERROR_MINCLIP "" + #define VL53L0X_STRING_DEVICEERROR_RANGECOMPLETE "" + #define VL53L0X_STRING_DEVICEERROR_ALGOUNDERFLOW "" + #define VL53L0X_STRING_DEVICEERROR_ALGOOVERFLOW "" + #define VL53L0X_STRING_DEVICEERROR_RANGEIGNORETHRESHOLD "" + #define VL53L0X_STRING_DEVICEERROR_UNKNOWN "" + + /* Check Enable */ + #define VL53L0X_STRING_CHECKENABLE_SIGMA_FINAL_RANGE "" + #define VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE "" + #define VL53L0X_STRING_CHECKENABLE_SIGNAL_REF_CLIP "" + #define VL53L0X_STRING_CHECKENABLE_RANGE_IGNORE_THRESHOLD "" + + /* Sequence Step */ + #define VL53L0X_STRING_SEQUENCESTEP_TCC "" + #define VL53L0X_STRING_SEQUENCESTEP_DSS "" + #define VL53L0X_STRING_SEQUENCESTEP_MSRC "" + #define VL53L0X_STRING_SEQUENCESTEP_PRE_RANGE "" + #define VL53L0X_STRING_SEQUENCESTEP_FINAL_RANGE "" +#else + #define VL53L0X_STRING_DEVICE_INFO_NAME "VL53L0X cut1.0" + #define VL53L0X_STRING_DEVICE_INFO_NAME_TS0 "VL53L0X TS0" + #define VL53L0X_STRING_DEVICE_INFO_NAME_TS1 "VL53L0X TS1" + #define VL53L0X_STRING_DEVICE_INFO_NAME_TS2 "VL53L0X TS2" + #define VL53L0X_STRING_DEVICE_INFO_NAME_ES1 "VL53L0X ES1 or later" + #define VL53L0X_STRING_DEVICE_INFO_TYPE "VL53L0X" + + /* PAL ERROR strings */ + #define VL53L0X_STRING_ERROR_NONE \ + "No Error" + #define VL53L0X_STRING_ERROR_CALIBRATION_WARNING \ + "Calibration Warning Error" + #define VL53L0X_STRING_ERROR_MIN_CLIPPED \ + "Min clipped error" + #define VL53L0X_STRING_ERROR_UNDEFINED \ + "Undefined error" + #define VL53L0X_STRING_ERROR_INVALID_PARAMS \ + "Invalid parameters error" + #define VL53L0X_STRING_ERROR_NOT_SUPPORTED \ + "Not supported error" + #define VL53L0X_STRING_ERROR_RANGE_ERROR \ + "Range error" + #define VL53L0X_STRING_ERROR_TIME_OUT \ + "Time out error" + #define VL53L0X_STRING_ERROR_MODE_NOT_SUPPORTED \ + "Mode not supported error" + #define VL53L0X_STRING_ERROR_BUFFER_TOO_SMALL \ + "Buffer too small" + #define VL53L0X_STRING_ERROR_GPIO_NOT_EXISTING \ + "GPIO not existing" + #define VL53L0X_STRING_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED \ + "GPIO funct not supported" + #define VL53L0X_STRING_ERROR_INTERRUPT_NOT_CLEARED \ + "Interrupt not Cleared" + #define VL53L0X_STRING_ERROR_CONTROL_INTERFACE \ + "Control Interface Error" + #define VL53L0X_STRING_ERROR_INVALID_COMMAND \ + "Invalid Command Error" + #define VL53L0X_STRING_ERROR_DIVISION_BY_ZERO \ + "Division by zero Error" + #define VL53L0X_STRING_ERROR_REF_SPAD_INIT \ + "Reference Spad Init Error" + #define VL53L0X_STRING_ERROR_NOT_IMPLEMENTED \ + "Not implemented error" + + #define VL53L0X_STRING_UNKNOW_ERROR_CODE \ + "Unknown Error Code" + + + + /* Range Status */ + #define VL53L0X_STRING_RANGESTATUS_NONE "No Update" + #define VL53L0X_STRING_RANGESTATUS_RANGEVALID "Range Valid" + #define VL53L0X_STRING_RANGESTATUS_SIGMA "Sigma Fail" + #define VL53L0X_STRING_RANGESTATUS_SIGNAL "Signal Fail" + #define VL53L0X_STRING_RANGESTATUS_MINRANGE "Min Range Fail" + #define VL53L0X_STRING_RANGESTATUS_PHASE "Phase Fail" + #define VL53L0X_STRING_RANGESTATUS_HW "Hardware Fail" + + + /* Range Status */ + #define VL53L0X_STRING_STATE_POWERDOWN "POWERDOWN State" + #define VL53L0X_STRING_STATE_WAIT_STATICINIT \ + "Wait for staticinit State" + #define VL53L0X_STRING_STATE_STANDBY "STANDBY State" + #define VL53L0X_STRING_STATE_IDLE "IDLE State" + #define VL53L0X_STRING_STATE_RUNNING "RUNNING State" + #define VL53L0X_STRING_STATE_UNKNOWN "UNKNOWN State" + #define VL53L0X_STRING_STATE_ERROR "ERROR State" + + + /* Device Specific */ + #define VL53L0X_STRING_DEVICEERROR_NONE "No Update" + #define VL53L0X_STRING_DEVICEERROR_VCSELCONTINUITYTESTFAILURE \ + "VCSEL Continuity Test Failure" + #define VL53L0X_STRING_DEVICEERROR_VCSELWATCHDOGTESTFAILURE \ + "VCSEL Watchdog Test Failure" + #define VL53L0X_STRING_DEVICEERROR_NOVHVVALUEFOUND \ + "No VHV Value found" + #define VL53L0X_STRING_DEVICEERROR_MSRCNOTARGET \ + "MSRC No Target Error" + #define VL53L0X_STRING_DEVICEERROR_SNRCHECK \ + "SNR Check Exit" + #define VL53L0X_STRING_DEVICEERROR_RANGEPHASECHECK \ + "Range Phase Check Error" + #define VL53L0X_STRING_DEVICEERROR_SIGMATHRESHOLDCHECK \ + "Sigma Threshold Check Error" + #define VL53L0X_STRING_DEVICEERROR_TCC \ + "TCC Error" + #define VL53L0X_STRING_DEVICEERROR_PHASECONSISTENCY \ + "Phase Consistency Error" + #define VL53L0X_STRING_DEVICEERROR_MINCLIP \ + "Min Clip Error" + #define VL53L0X_STRING_DEVICEERROR_RANGECOMPLETE \ + "Range Complete" + #define VL53L0X_STRING_DEVICEERROR_ALGOUNDERFLOW \ + "Range Algo Underflow Error" + #define VL53L0X_STRING_DEVICEERROR_ALGOOVERFLOW \ + "Range Algo Overlow Error" + #define VL53L0X_STRING_DEVICEERROR_RANGEIGNORETHRESHOLD \ + "Range Ignore Threshold Error" + #define VL53L0X_STRING_DEVICEERROR_UNKNOWN \ + "Unknown error code" + + /* Check Enable */ + #define VL53L0X_STRING_CHECKENABLE_SIGMA_FINAL_RANGE \ + "SIGMA FINAL RANGE" + #define VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE \ + "SIGNAL RATE FINAL RANGE" + #define VL53L0X_STRING_CHECKENABLE_SIGNAL_REF_CLIP \ + "SIGNAL REF CLIP" + #define VL53L0X_STRING_CHECKENABLE_RANGE_IGNORE_THRESHOLD \ + "RANGE IGNORE THRESHOLD" + #define VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_MSRC \ + "SIGNAL RATE MSRC" + #define VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_PRE_RANGE \ + "SIGNAL RATE PRE RANGE" + + /* Sequence Step */ + #define VL53L0X_STRING_SEQUENCESTEP_TCC "TCC" + #define VL53L0X_STRING_SEQUENCESTEP_DSS "DSS" + #define VL53L0X_STRING_SEQUENCESTEP_MSRC "MSRC" + #define VL53L0X_STRING_SEQUENCESTEP_PRE_RANGE "PRE RANGE" + #define VL53L0X_STRING_SEQUENCESTEP_FINAL_RANGE "FINAL RANGE" +#endif /* USE_EMPTY_STRING */ + + +#ifdef __cplusplus +} +#endif + +#endif + diff --git a/STS/TOF/vl53l0x/vl53l0x_def.h b/STS/TOF/vl53l0x/vl53l0x_def.h index 6c9af35..e0d8f74 100644 --- a/STS/TOF/vl53l0x/vl53l0x_def.h +++ b/STS/TOF/vl53l0x/vl53l0x_def.h @@ -1,640 +1,640 @@ -/******************************************************************************* -Copyright � 2016, STMicroelectronics International N.V. -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND -NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. -IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*******************************************************************************/ - -/** - * @file VL53L0X_def.h - * - * @brief Type definitions for VL53L0X API. - * - */ - - -#ifndef _VL53L0X_DEF_H_ -#define _VL53L0X_DEF_H_ - - -#ifdef __cplusplus -extern "C" { -#endif - -/** @defgroup VL53L0X_globaldefine_group VL53L0X Defines - * @brief VL53L0X Defines - * @{ - */ - - -/** PAL SPECIFICATION major version */ -#define VL53L0X10_SPECIFICATION_VER_MAJOR 1 -/** PAL SPECIFICATION minor version */ -#define VL53L0X10_SPECIFICATION_VER_MINOR 2 -/** PAL SPECIFICATION sub version */ -#define VL53L0X10_SPECIFICATION_VER_SUB 7 -/** PAL SPECIFICATION sub version */ -#define VL53L0X10_SPECIFICATION_VER_REVISION 1440 - -/** VL53L0X PAL IMPLEMENTATION major version */ -#define VL53L0X10_IMPLEMENTATION_VER_MAJOR 1 -/** VL53L0X PAL IMPLEMENTATION minor version */ -#define VL53L0X10_IMPLEMENTATION_VER_MINOR 0 -/** VL53L0X PAL IMPLEMENTATION sub version */ -#define VL53L0X10_IMPLEMENTATION_VER_SUB 9 -/** VL53L0X PAL IMPLEMENTATION sub version */ -#define VL53L0X10_IMPLEMENTATION_VER_REVISION 3673 - -/** PAL SPECIFICATION major version */ -#define VL53L0X_SPECIFICATION_VER_MAJOR 1 -/** PAL SPECIFICATION minor version */ -#define VL53L0X_SPECIFICATION_VER_MINOR 2 -/** PAL SPECIFICATION sub version */ -#define VL53L0X_SPECIFICATION_VER_SUB 7 -/** PAL SPECIFICATION sub version */ -#define VL53L0X_SPECIFICATION_VER_REVISION 1440 - -/** VL53L0X PAL IMPLEMENTATION major version */ -#define VL53L0X_IMPLEMENTATION_VER_MAJOR 1 -/** VL53L0X PAL IMPLEMENTATION minor version */ -#define VL53L0X_IMPLEMENTATION_VER_MINOR 0 -/** VL53L0X PAL IMPLEMENTATION sub version */ -#define VL53L0X_IMPLEMENTATION_VER_SUB 2 -/** VL53L0X PAL IMPLEMENTATION sub version */ -#define VL53L0X_IMPLEMENTATION_VER_REVISION 4823 -#define VL53L0X_DEFAULT_MAX_LOOP 2000 -#define VL53L0X_MAX_STRING_LENGTH 32 - - -#include "vl53l0x_device.h" -#include "vl53l0x_types.h" - - -/**************************************** - * PRIVATE define do not edit - ****************************************/ - -/** @brief Defines the parameters of the Get Version Functions - */ -typedef struct { - uint32_t revision; /*!< revision number */ - uint8_t major; /*!< major number */ - uint8_t minor; /*!< minor number */ - uint8_t build; /*!< build number */ -} VL53L0X_Version_t; - - -/** @brief Defines the parameters of the Get Device Info Functions - */ -typedef struct { - char Name[VL53L0X_MAX_STRING_LENGTH]; - /*!< Name of the Device e.g. Left_Distance */ - char Type[VL53L0X_MAX_STRING_LENGTH]; - /*!< Type of the Device e.g VL53L0X */ - char ProductId[VL53L0X_MAX_STRING_LENGTH]; - /*!< Product Identifier String */ - uint8_t ProductType; - /*!< Product Type, VL53L0X = 1, VL53L1 = 2 */ - uint8_t ProductRevisionMajor; - /*!< Product revision major */ - uint8_t ProductRevisionMinor; - /*!< Product revision minor */ -} VL53L0X_DeviceInfo_t; - - -/** @defgroup VL53L0X_define_Error_group Error and Warning code returned by API - * The following DEFINE are used to identify the PAL ERROR - * @{ - */ - -typedef int8_t VL53L0X_Error; - -#define VL53L0X_ERROR_NONE ((VL53L0X_Error) 0) -#define VL53L0X_ERROR_CALIBRATION_WARNING ((VL53L0X_Error) -1) - /*!< Warning invalid calibration data may be in used - \a VL53L0X_InitData() - \a VL53L0X_GetOffsetCalibrationData - \a VL53L0X_SetOffsetCalibrationData */ -#define VL53L0X_ERROR_MIN_CLIPPED ((VL53L0X_Error) -2) - /*!< Warning parameter passed was clipped to min before to be applied */ - -#define VL53L0X_ERROR_UNDEFINED ((VL53L0X_Error) -3) - /*!< Unqualified error */ -#define VL53L0X_ERROR_INVALID_PARAMS ((VL53L0X_Error) -4) - /*!< Parameter passed is invalid or out of range */ -#define VL53L0X_ERROR_NOT_SUPPORTED ((VL53L0X_Error) -5) - /*!< Function is not supported in current mode or configuration */ -#define VL53L0X_ERROR_RANGE_ERROR ((VL53L0X_Error) -6) - /*!< Device report a ranging error interrupt status */ -#define VL53L0X_ERROR_TIME_OUT ((VL53L0X_Error) -7) - /*!< Aborted due to time out */ -#define VL53L0X_ERROR_MODE_NOT_SUPPORTED ((VL53L0X_Error) -8) - /*!< Asked mode is not supported by the device */ -#define VL53L0X_ERROR_BUFFER_TOO_SMALL ((VL53L0X_Error) -9) - /*!< ... */ -#define VL53L0X_ERROR_GPIO_NOT_EXISTING ((VL53L0X_Error) -10) - /*!< User tried to setup a non-existing GPIO pin */ -#define VL53L0X_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED ((VL53L0X_Error) -11) - /*!< unsupported GPIO functionality */ -#define VL53L0X_ERROR_INTERRUPT_NOT_CLEARED ((VL53L0X_Error) -12) - /*!< Error during interrupt clear */ -#define VL53L0X_ERROR_CONTROL_INTERFACE ((VL53L0X_Error) -20) - /*!< error reported from IO functions */ -#define VL53L0X_ERROR_INVALID_COMMAND ((VL53L0X_Error) -30) - /*!< The command is not allowed in the current device state - * (power down) */ -#define VL53L0X_ERROR_DIVISION_BY_ZERO ((VL53L0X_Error) -40) - /*!< In the function a division by zero occurs */ -#define VL53L0X_ERROR_REF_SPAD_INIT ((VL53L0X_Error) -50) - /*!< Error during reference SPAD initialization */ -#define VL53L0X_ERROR_NOT_IMPLEMENTED ((VL53L0X_Error) -99) - /*!< Tells requested functionality has not been implemented yet or - * not compatible with the device */ -/** @} VL53L0X_define_Error_group */ - - -/** @defgroup VL53L0X_define_DeviceModes_group Defines Device modes - * Defines all possible modes for the device - * @{ - */ -typedef uint8_t VL53L0X_DeviceModes; - -#define VL53L0X_DEVICEMODE_SINGLE_RANGING ((VL53L0X_DeviceModes) 0) -#define VL53L0X_DEVICEMODE_CONTINUOUS_RANGING ((VL53L0X_DeviceModes) 1) -#define VL53L0X_DEVICEMODE_SINGLE_HISTOGRAM ((VL53L0X_DeviceModes) 2) -#define VL53L0X_DEVICEMODE_CONTINUOUS_TIMED_RANGING ((VL53L0X_DeviceModes) 3) -#define VL53L0X_DEVICEMODE_SINGLE_ALS ((VL53L0X_DeviceModes) 10) -#define VL53L0X_DEVICEMODE_GPIO_DRIVE ((VL53L0X_DeviceModes) 20) -#define VL53L0X_DEVICEMODE_GPIO_OSC ((VL53L0X_DeviceModes) 21) - /* ... Modes to be added depending on device */ -/** @} VL53L0X_define_DeviceModes_group */ - - - -/** @defgroup VL53L0X_define_HistogramModes_group Defines Histogram modes - * Defines all possible Histogram modes for the device - * @{ - */ -typedef uint8_t VL53L0X_HistogramModes; - -#define VL53L0X_HISTOGRAMMODE_DISABLED ((VL53L0X_HistogramModes) 0) - /*!< Histogram Disabled */ -#define VL53L0X_HISTOGRAMMODE_REFERENCE_ONLY ((VL53L0X_HistogramModes) 1) - /*!< Histogram Reference array only */ -#define VL53L0X_HISTOGRAMMODE_RETURN_ONLY ((VL53L0X_HistogramModes) 2) - /*!< Histogram Return array only */ -#define VL53L0X_HISTOGRAMMODE_BOTH ((VL53L0X_HistogramModes) 3) - /*!< Histogram both Reference and Return Arrays */ - /* ... Modes to be added depending on device */ -/** @} VL53L0X_define_HistogramModes_group */ - - -/** @defgroup VL53L0X_define_PowerModes_group List of available Power Modes - * List of available Power Modes - * @{ - */ - -typedef uint8_t VL53L0X_PowerModes; - -#define VL53L0X_POWERMODE_STANDBY_LEVEL1 ((VL53L0X_PowerModes) 0) - /*!< Standby level 1 */ -#define VL53L0X_POWERMODE_STANDBY_LEVEL2 ((VL53L0X_PowerModes) 1) - /*!< Standby level 2 */ -#define VL53L0X_POWERMODE_IDLE_LEVEL1 ((VL53L0X_PowerModes) 2) - /*!< Idle level 1 */ -#define VL53L0X_POWERMODE_IDLE_LEVEL2 ((VL53L0X_PowerModes) 3) - /*!< Idle level 2 */ - -/** @} VL53L0X_define_PowerModes_group */ - - -/** @brief Defines all parameters for the device - */ -typedef struct { - VL53L0X_DeviceModes DeviceMode; - /*!< Defines type of measurement to be done for the next measure */ - VL53L0X_HistogramModes HistogramMode; - /*!< Defines type of histogram measurement to be done for the next - * measure */ - uint32_t MeasurementTimingBudgetMicroSeconds; - /*!< Defines the allowed total time for a single measurement */ - uint32_t InterMeasurementPeriodMilliSeconds; - /*!< Defines time between two consecutive measurements (between two - * measurement starts). If set to 0 means back-to-back mode */ - uint8_t XTalkCompensationEnable; - /*!< Tells if Crosstalk compensation shall be enable or not */ - uint16_t XTalkCompensationRangeMilliMeter; - /*!< CrossTalk compensation range in millimeter */ - FixPoint1616_t XTalkCompensationRateMegaCps; - /*!< CrossTalk compensation rate in Mega counts per seconds. - * Expressed in 16.16 fixed point format. */ - int32_t RangeOffsetMicroMeters; - /*!< Range offset adjustment (mm). */ - - uint8_t LimitChecksEnable[VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS]; - /*!< This Array store all the Limit Check enable for this device. */ - uint8_t LimitChecksStatus[VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS]; - /*!< This Array store all the Status of the check linked to last - * measurement. */ - FixPoint1616_t LimitChecksValue[VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS]; - /*!< This Array store all the Limit Check value for this device */ - - uint8_t WrapAroundCheckEnable; - /*!< Tells if Wrap Around Check shall be enable or not */ -} VL53L0X_DeviceParameters_t; - - -/** @defgroup VL53L0X_define_State_group Defines the current status of the device - * Defines the current status of the device - * @{ - */ - -typedef uint8_t VL53L0X_State; - -#define VL53L0X_STATE_POWERDOWN ((VL53L0X_State) 0) - /*!< Device is in HW reset */ -#define VL53L0X_STATE_WAIT_STATICINIT ((VL53L0X_State) 1) - /*!< Device is initialized and wait for static initialization */ -#define VL53L0X_STATE_STANDBY ((VL53L0X_State) 2) - /*!< Device is in Low power Standby mode */ -#define VL53L0X_STATE_IDLE ((VL53L0X_State) 3) - /*!< Device has been initialized and ready to do measurements */ -#define VL53L0X_STATE_RUNNING ((VL53L0X_State) 4) - /*!< Device is performing measurement */ -#define VL53L0X_STATE_UNKNOWN ((VL53L0X_State) 98) - /*!< Device is in unknown state and need to be rebooted */ -#define VL53L0X_STATE_ERROR ((VL53L0X_State) 99) - /*!< Device is in error state and need to be rebooted */ - -/** @} VL53L0X_define_State_group */ - - -/** @brief Structure containing the Dmax computation parameters and data - */ -typedef struct { - int32_t AmbTuningWindowFactor_K; - /*!< internal algo tuning (*1000) */ - int32_t RetSignalAt0mm; - /*!< intermediate dmax computation value caching */ -} VL53L0X_DMaxData_t; - -/** - * @struct VL53L0X_RangeData_t - * @brief Range measurement data. - */ -typedef struct { - uint32_t TimeStamp; /*!< 32-bit time stamp. */ - uint32_t MeasurementTimeUsec; - /*!< Give the Measurement time needed by the device to do the - * measurement.*/ - - - uint16_t RangeMilliMeter; /*!< range distance in millimeter. */ - - uint16_t RangeDMaxMilliMeter; - /*!< Tells what is the maximum detection distance of the device - * in current setup and environment conditions (Filled when - * applicable) */ - - FixPoint1616_t SignalRateRtnMegaCps; - /*!< Return signal rate (MCPS)\n these is a 16.16 fix point - * value, which is effectively a measure of target - * reflectance.*/ - FixPoint1616_t AmbientRateRtnMegaCps; - /*!< Return ambient rate (MCPS)\n these is a 16.16 fix point - * value, which is effectively a measure of the ambien - * t light.*/ - - uint16_t EffectiveSpadRtnCount; - /*!< Return the effective SPAD count for the return signal. - * To obtain Real value it should be divided by 256 */ - - uint8_t ZoneId; - /*!< Denotes which zone and range scheduler stage the range - * data relates to. */ - uint8_t RangeFractionalPart; - /*!< Fractional part of range distance. Final value is a - * FixPoint168 value. */ - uint8_t RangeStatus; - /*!< Range Status for the current measurement. This is device - * dependent. Value = 0 means value is valid. - * See \ref RangeStatusPage */ -} VL53L0X_RangingMeasurementData_t; - - -#define VL53L0X_HISTOGRAM_BUFFER_SIZE 24 - -/** - * @struct VL53L0X_HistogramData_t - * @brief Histogram measurement data. - */ -typedef struct { - /* Histogram Measurement data */ - uint32_t HistogramData[VL53L0X_HISTOGRAM_BUFFER_SIZE]; - /*!< Histogram data */ - uint8_t HistogramType; /*!< Indicate the types of histogram data : - Return only, Reference only, both Return and Reference */ - uint8_t FirstBin; /*!< First Bin value */ - uint8_t BufferSize; /*!< Buffer Size - Set by the user.*/ - uint8_t NumberOfBins; - /*!< Number of bins filled by the histogram measurement */ - - VL53L0X_DeviceError ErrorStatus; - /*!< Error status of the current measurement. \n - see @a ::VL53L0X_DeviceError @a VL53L0X_GetStatusErrorString() */ -} VL53L0X_HistogramMeasurementData_t; - -#define VL53L0X_REF_SPAD_BUFFER_SIZE 6 - -/** - * @struct VL53L0X_SpadData_t - * @brief Spad Configuration Data. - */ -typedef struct { - uint8_t RefSpadEnables[VL53L0X_REF_SPAD_BUFFER_SIZE]; - /*!< Reference Spad Enables */ - uint8_t RefGoodSpadMap[VL53L0X_REF_SPAD_BUFFER_SIZE]; - /*!< Reference Spad Good Spad Map */ -} VL53L0X_SpadData_t; - -typedef struct { - FixPoint1616_t OscFrequencyMHz; /* Frequency used */ - - uint16_t LastEncodedTimeout; - /* last encoded Time out used for timing budget*/ - - VL53L0X_GpioFunctionality Pin0GpioFunctionality; - /* store the functionality of the GPIO: pin0 */ - - uint32_t FinalRangeTimeoutMicroSecs; - /*!< Execution time of the final range*/ - uint8_t FinalRangeVcselPulsePeriod; - /*!< Vcsel pulse period (pll clocks) for the final range measurement*/ - uint32_t PreRangeTimeoutMicroSecs; - /*!< Execution time of the final range*/ - uint8_t PreRangeVcselPulsePeriod; - /*!< Vcsel pulse period (pll clocks) for the pre-range measurement*/ - - uint16_t SigmaEstRefArray; - /*!< Reference array sigma value in 1/100th of [mm] e.g. 100 = 1mm */ - uint16_t SigmaEstEffPulseWidth; - /*!< Effective Pulse width for sigma estimate in 1/100th - * of ns e.g. 900 = 9.0ns */ - uint16_t SigmaEstEffAmbWidth; - /*!< Effective Ambient width for sigma estimate in 1/100th of ns - * e.g. 500 = 5.0ns */ - - - uint8_t ReadDataFromDeviceDone; /* Indicate if read from device has - been done (==1) or not (==0) */ - uint8_t ModuleId; /* Module ID */ - uint8_t Revision; /* test Revision */ - char ProductId[VL53L0X_MAX_STRING_LENGTH]; - /* Product Identifier String */ - uint8_t ReferenceSpadCount; /* used for ref spad management */ - uint8_t ReferenceSpadType; /* used for ref spad management */ - uint8_t RefSpadsInitialised; /* reports if ref spads are initialised. */ - uint32_t PartUIDUpper; /*!< Unique Part ID Upper */ - uint32_t PartUIDLower; /*!< Unique Part ID Lower */ - FixPoint1616_t SignalRateMeasFixed400mm; /*!< Peek Signal rate - at 400 mm*/ - -} VL53L0X_DeviceSpecificParameters_t; - -/** - * @struct VL53L0X_DevData_t - * - * @brief VL53L0X PAL device ST private data structure \n - * End user should never access any of these field directly - * - * These must never access directly but only via macro - */ -typedef struct { - VL53L0X_DMaxData_t DMaxData; - /*!< Dmax Data */ - int32_t Part2PartOffsetNVMMicroMeter; - /*!< backed up NVM value */ - int32_t Part2PartOffsetAdjustmentNVMMicroMeter; - /*!< backed up NVM value representing additional offset adjustment */ - VL53L0X_DeviceParameters_t CurrentParameters; - /*!< Current Device Parameter */ - VL53L0X_RangingMeasurementData_t LastRangeMeasure; - /*!< Ranging Data */ - VL53L0X_HistogramMeasurementData_t LastHistogramMeasure; - /*!< Histogram Data */ - VL53L0X_DeviceSpecificParameters_t DeviceSpecificParameters; - /*!< Parameters specific to the device */ - VL53L0X_SpadData_t SpadData; - /*!< Spad Data */ - uint8_t SequenceConfig; - /*!< Internal value for the sequence config */ - uint8_t RangeFractionalEnable; - /*!< Enable/Disable fractional part of ranging data */ - VL53L0X_State PalState; - /*!< Current state of the PAL for this device */ - VL53L0X_PowerModes PowerMode; - /*!< Current Power Mode */ - uint16_t SigmaEstRefArray; - /*!< Reference array sigma value in 1/100th of [mm] e.g. 100 = 1mm */ - uint16_t SigmaEstEffPulseWidth; - /*!< Effective Pulse width for sigma estimate in 1/100th - * of ns e.g. 900 = 9.0ns */ - uint16_t SigmaEstEffAmbWidth; - /*!< Effective Ambient width for sigma estimate in 1/100th of ns - * e.g. 500 = 5.0ns */ - uint8_t StopVariable; - /*!< StopVariable used during the stop sequence */ - uint16_t targetRefRate; - /*!< Target Ambient Rate for Ref spad management */ - FixPoint1616_t SigmaEstimate; - /*!< Sigma Estimate - based on ambient & VCSEL rates and - * signal_total_events */ - FixPoint1616_t SignalEstimate; - /*!< Signal Estimate - based on ambient & VCSEL rates and cross talk */ - FixPoint1616_t LastSignalRefMcps; - /*!< Latest Signal ref in Mcps */ - uint8_t *pTuningSettingsPointer; - /*!< Pointer for Tuning Settings table */ - uint8_t UseInternalTuningSettings; - /*!< Indicate if we use Tuning Settings table */ - uint16_t LinearityCorrectiveGain; - /*!< Linearity Corrective Gain value in x1000 */ - uint16_t DmaxCalRangeMilliMeter; - /*!< Dmax Calibration Range millimeter */ - FixPoint1616_t DmaxCalSignalRateRtnMegaCps; - /*!< Dmax Calibration Signal Rate Return MegaCps */ - -} VL53L0X_DevData_t; - - -/** @defgroup VL53L0X_define_InterruptPolarity_group Defines the Polarity - * of the Interrupt - * Defines the Polarity of the Interrupt - * @{ - */ -typedef uint8_t VL53L0X_InterruptPolarity; - -#define VL53L0X_INTERRUPTPOLARITY_LOW ((VL53L0X_InterruptPolarity) 0) -/*!< Set active low polarity best setup for falling edge. */ -#define VL53L0X_INTERRUPTPOLARITY_HIGH ((VL53L0X_InterruptPolarity) 1) -/*!< Set active high polarity best setup for rising edge. */ - -/** @} VL53L0X_define_InterruptPolarity_group */ - - -/** @defgroup VL53L0X_define_VcselPeriod_group Vcsel Period Defines - * Defines the range measurement for which to access the vcsel period. - * @{ - */ -typedef uint8_t VL53L0X_VcselPeriod; - -#define VL53L0X_VCSEL_PERIOD_PRE_RANGE ((VL53L0X_VcselPeriod) 0) -/*!<Identifies the pre-range vcsel period. */ -#define VL53L0X_VCSEL_PERIOD_FINAL_RANGE ((VL53L0X_VcselPeriod) 1) -/*!<Identifies the final range vcsel period. */ - -/** @} VL53L0X_define_VcselPeriod_group */ - -/** @defgroup VL53L0X_define_SchedulerSequence_group Defines the steps - * carried out by the scheduler during a range measurement. - * @{ - * Defines the states of all the steps in the scheduler - * i.e. enabled/disabled. - */ -typedef struct { - uint8_t TccOn; /*!<Reports if Target Centre Check On */ - uint8_t MsrcOn; /*!<Reports if MSRC On */ - uint8_t DssOn; /*!<Reports if DSS On */ - uint8_t PreRangeOn; /*!<Reports if Pre-Range On */ - uint8_t FinalRangeOn; /*!<Reports if Final-Range On */ -} VL53L0X_SchedulerSequenceSteps_t; - -/** @} VL53L0X_define_SchedulerSequence_group */ - -/** @defgroup VL53L0X_define_SequenceStepId_group Defines the Polarity - * of the Interrupt - * Defines the the sequence steps performed during ranging.. - * @{ - */ -typedef uint8_t VL53L0X_SequenceStepId; - -#define VL53L0X_SEQUENCESTEP_TCC ((VL53L0X_VcselPeriod) 0) -/*!<Target CentreCheck identifier. */ -#define VL53L0X_SEQUENCESTEP_DSS ((VL53L0X_VcselPeriod) 1) -/*!<Dynamic Spad Selection function Identifier. */ -#define VL53L0X_SEQUENCESTEP_MSRC ((VL53L0X_VcselPeriod) 2) -/*!<Minimum Signal Rate Check function Identifier. */ -#define VL53L0X_SEQUENCESTEP_PRE_RANGE ((VL53L0X_VcselPeriod) 3) -/*!<Pre-Range check Identifier. */ -#define VL53L0X_SEQUENCESTEP_FINAL_RANGE ((VL53L0X_VcselPeriod) 4) -/*!<Final Range Check Identifier. */ - -#define VL53L0X_SEQUENCESTEP_NUMBER_OF_CHECKS 5 -/*!<Number of Sequence Step Managed by the API. */ - -/** @} VL53L0X_define_SequenceStepId_group */ - - -/* MACRO Definitions */ -/** @defgroup VL53L0X_define_GeneralMacro_group General Macro Defines - * General Macro Defines - * @{ - */ - -/* Defines */ -#define VL53L0X_SETPARAMETERFIELD(Dev, field, value) \ - PALDevDataSet(Dev, CurrentParameters.field, value) - -#define VL53L0X_GETPARAMETERFIELD(Dev, field, variable) \ - variable = PALDevDataGet(Dev, CurrentParameters).field - - -#define VL53L0X_SETARRAYPARAMETERFIELD(Dev, field, index, value) \ - PALDevDataSet(Dev, CurrentParameters.field[index], value) - -#define VL53L0X_GETARRAYPARAMETERFIELD(Dev, field, index, variable) \ - variable = PALDevDataGet(Dev, CurrentParameters).field[index] - - -#define VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, field, value) \ - PALDevDataSet(Dev, DeviceSpecificParameters.field, value) - -#define VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, field) \ - PALDevDataGet(Dev, DeviceSpecificParameters).field - - -#define VL53L0X_FIXPOINT1616TOFIXPOINT97(Value) \ - (uint16_t)((Value>>9)&0xFFFF) -#define VL53L0X_FIXPOINT97TOFIXPOINT1616(Value) \ - (FixPoint1616_t)(Value<<9) - -#define VL53L0X_FIXPOINT1616TOFIXPOINT88(Value) \ - (uint16_t)((Value>>8)&0xFFFF) -#define VL53L0X_FIXPOINT88TOFIXPOINT1616(Value) \ - (FixPoint1616_t)(Value<<8) - -#define VL53L0X_FIXPOINT1616TOFIXPOINT412(Value) \ - (uint16_t)((Value>>4)&0xFFFF) -#define VL53L0X_FIXPOINT412TOFIXPOINT1616(Value) \ - (FixPoint1616_t)(Value<<4) - -#define VL53L0X_FIXPOINT1616TOFIXPOINT313(Value) \ - (uint16_t)((Value>>3)&0xFFFF) -#define VL53L0X_FIXPOINT313TOFIXPOINT1616(Value) \ - (FixPoint1616_t)(Value<<3) - -#define VL53L0X_FIXPOINT1616TOFIXPOINT08(Value) \ - (uint8_t)((Value>>8)&0x00FF) -#define VL53L0X_FIXPOINT08TOFIXPOINT1616(Value) \ - (FixPoint1616_t)(Value<<8) - -#define VL53L0X_FIXPOINT1616TOFIXPOINT53(Value) \ - (uint8_t)((Value>>13)&0x00FF) -#define VL53L0X_FIXPOINT53TOFIXPOINT1616(Value) \ - (FixPoint1616_t)(Value<<13) - -#define VL53L0X_FIXPOINT1616TOFIXPOINT102(Value) \ - (uint16_t)((Value>>14)&0x0FFF) -#define VL53L0X_FIXPOINT102TOFIXPOINT1616(Value) \ - (FixPoint1616_t)(Value<<12) - -#define VL53L0X_MAKEUINT16(lsb, msb) (uint16_t)((((uint16_t)msb)<<8) + \ - (uint16_t)lsb) - -/** @} VL53L0X_define_GeneralMacro_group */ - -/** @} VL53L0X_globaldefine_group */ - - - - - - - -#ifdef __cplusplus -} -#endif - - -#endif /* _VL53L0X_DEF_H_ */ +/******************************************************************************* +Copyright � 2016, STMicroelectronics International N.V. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND +NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. +IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*******************************************************************************/ + +/** + * @file VL53L0X_def.h + * + * @brief Type definitions for VL53L0X API. + * + */ + + +#ifndef _VL53L0X_DEF_H_ +#define _VL53L0X_DEF_H_ + + +#ifdef __cplusplus +extern "C" { +#endif + +/** @defgroup VL53L0X_globaldefine_group VL53L0X Defines + * @brief VL53L0X Defines + * @{ + */ + + +/** PAL SPECIFICATION major version */ +#define VL53L0X10_SPECIFICATION_VER_MAJOR 1 +/** PAL SPECIFICATION minor version */ +#define VL53L0X10_SPECIFICATION_VER_MINOR 2 +/** PAL SPECIFICATION sub version */ +#define VL53L0X10_SPECIFICATION_VER_SUB 7 +/** PAL SPECIFICATION sub version */ +#define VL53L0X10_SPECIFICATION_VER_REVISION 1440 + +/** VL53L0X PAL IMPLEMENTATION major version */ +#define VL53L0X10_IMPLEMENTATION_VER_MAJOR 1 +/** VL53L0X PAL IMPLEMENTATION minor version */ +#define VL53L0X10_IMPLEMENTATION_VER_MINOR 0 +/** VL53L0X PAL IMPLEMENTATION sub version */ +#define VL53L0X10_IMPLEMENTATION_VER_SUB 9 +/** VL53L0X PAL IMPLEMENTATION sub version */ +#define VL53L0X10_IMPLEMENTATION_VER_REVISION 3673 + +/** PAL SPECIFICATION major version */ +#define VL53L0X_SPECIFICATION_VER_MAJOR 1 +/** PAL SPECIFICATION minor version */ +#define VL53L0X_SPECIFICATION_VER_MINOR 2 +/** PAL SPECIFICATION sub version */ +#define VL53L0X_SPECIFICATION_VER_SUB 7 +/** PAL SPECIFICATION sub version */ +#define VL53L0X_SPECIFICATION_VER_REVISION 1440 + +/** VL53L0X PAL IMPLEMENTATION major version */ +#define VL53L0X_IMPLEMENTATION_VER_MAJOR 1 +/** VL53L0X PAL IMPLEMENTATION minor version */ +#define VL53L0X_IMPLEMENTATION_VER_MINOR 0 +/** VL53L0X PAL IMPLEMENTATION sub version */ +#define VL53L0X_IMPLEMENTATION_VER_SUB 2 +/** VL53L0X PAL IMPLEMENTATION sub version */ +#define VL53L0X_IMPLEMENTATION_VER_REVISION 4823 +#define VL53L0X_DEFAULT_MAX_LOOP 2000 +#define VL53L0X_MAX_STRING_LENGTH 32 + + +#include "vl53l0x_device.h" +#include "vl53l0x_types.h" + + +/**************************************** + * PRIVATE define do not edit + ****************************************/ + +/** @brief Defines the parameters of the Get Version Functions + */ +typedef struct { + uint32_t revision; /*!< revision number */ + uint8_t major; /*!< major number */ + uint8_t minor; /*!< minor number */ + uint8_t build; /*!< build number */ +} VL53L0X_Version_t; + + +/** @brief Defines the parameters of the Get Device Info Functions + */ +typedef struct { + char Name[VL53L0X_MAX_STRING_LENGTH]; + /*!< Name of the Device e.g. Left_Distance */ + char Type[VL53L0X_MAX_STRING_LENGTH]; + /*!< Type of the Device e.g VL53L0X */ + char ProductId[VL53L0X_MAX_STRING_LENGTH]; + /*!< Product Identifier String */ + uint8_t ProductType; + /*!< Product Type, VL53L0X = 1, VL53L1 = 2 */ + uint8_t ProductRevisionMajor; + /*!< Product revision major */ + uint8_t ProductRevisionMinor; + /*!< Product revision minor */ +} VL53L0X_DeviceInfo_t; + + +/** @defgroup VL53L0X_define_Error_group Error and Warning code returned by API + * The following DEFINE are used to identify the PAL ERROR + * @{ + */ + +typedef int8_t VL53L0X_Error; + +#define VL53L0X_ERROR_NONE ((VL53L0X_Error) 0) +#define VL53L0X_ERROR_CALIBRATION_WARNING ((VL53L0X_Error) -1) + /*!< Warning invalid calibration data may be in used + \a VL53L0X_InitData() + \a VL53L0X_GetOffsetCalibrationData + \a VL53L0X_SetOffsetCalibrationData */ +#define VL53L0X_ERROR_MIN_CLIPPED ((VL53L0X_Error) -2) + /*!< Warning parameter passed was clipped to min before to be applied */ + +#define VL53L0X_ERROR_UNDEFINED ((VL53L0X_Error) -3) + /*!< Unqualified error */ +#define VL53L0X_ERROR_INVALID_PARAMS ((VL53L0X_Error) -4) + /*!< Parameter passed is invalid or out of range */ +#define VL53L0X_ERROR_NOT_SUPPORTED ((VL53L0X_Error) -5) + /*!< Function is not supported in current mode or configuration */ +#define VL53L0X_ERROR_RANGE_ERROR ((VL53L0X_Error) -6) + /*!< Device report a ranging error interrupt status */ +#define VL53L0X_ERROR_TIME_OUT ((VL53L0X_Error) -7) + /*!< Aborted due to time out */ +#define VL53L0X_ERROR_MODE_NOT_SUPPORTED ((VL53L0X_Error) -8) + /*!< Asked mode is not supported by the device */ +#define VL53L0X_ERROR_BUFFER_TOO_SMALL ((VL53L0X_Error) -9) + /*!< ... */ +#define VL53L0X_ERROR_GPIO_NOT_EXISTING ((VL53L0X_Error) -10) + /*!< User tried to setup a non-existing GPIO pin */ +#define VL53L0X_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED ((VL53L0X_Error) -11) + /*!< unsupported GPIO functionality */ +#define VL53L0X_ERROR_INTERRUPT_NOT_CLEARED ((VL53L0X_Error) -12) + /*!< Error during interrupt clear */ +#define VL53L0X_ERROR_CONTROL_INTERFACE ((VL53L0X_Error) -20) + /*!< error reported from IO functions */ +#define VL53L0X_ERROR_INVALID_COMMAND ((VL53L0X_Error) -30) + /*!< The command is not allowed in the current device state + * (power down) */ +#define VL53L0X_ERROR_DIVISION_BY_ZERO ((VL53L0X_Error) -40) + /*!< In the function a division by zero occurs */ +#define VL53L0X_ERROR_REF_SPAD_INIT ((VL53L0X_Error) -50) + /*!< Error during reference SPAD initialization */ +#define VL53L0X_ERROR_NOT_IMPLEMENTED ((VL53L0X_Error) -99) + /*!< Tells requested functionality has not been implemented yet or + * not compatible with the device */ +/** @} VL53L0X_define_Error_group */ + + +/** @defgroup VL53L0X_define_DeviceModes_group Defines Device modes + * Defines all possible modes for the device + * @{ + */ +typedef uint8_t VL53L0X_DeviceModes; + +#define VL53L0X_DEVICEMODE_SINGLE_RANGING ((VL53L0X_DeviceModes) 0) +#define VL53L0X_DEVICEMODE_CONTINUOUS_RANGING ((VL53L0X_DeviceModes) 1) +#define VL53L0X_DEVICEMODE_SINGLE_HISTOGRAM ((VL53L0X_DeviceModes) 2) +#define VL53L0X_DEVICEMODE_CONTINUOUS_TIMED_RANGING ((VL53L0X_DeviceModes) 3) +#define VL53L0X_DEVICEMODE_SINGLE_ALS ((VL53L0X_DeviceModes) 10) +#define VL53L0X_DEVICEMODE_GPIO_DRIVE ((VL53L0X_DeviceModes) 20) +#define VL53L0X_DEVICEMODE_GPIO_OSC ((VL53L0X_DeviceModes) 21) + /* ... Modes to be added depending on device */ +/** @} VL53L0X_define_DeviceModes_group */ + + + +/** @defgroup VL53L0X_define_HistogramModes_group Defines Histogram modes + * Defines all possible Histogram modes for the device + * @{ + */ +typedef uint8_t VL53L0X_HistogramModes; + +#define VL53L0X_HISTOGRAMMODE_DISABLED ((VL53L0X_HistogramModes) 0) + /*!< Histogram Disabled */ +#define VL53L0X_HISTOGRAMMODE_REFERENCE_ONLY ((VL53L0X_HistogramModes) 1) + /*!< Histogram Reference array only */ +#define VL53L0X_HISTOGRAMMODE_RETURN_ONLY ((VL53L0X_HistogramModes) 2) + /*!< Histogram Return array only */ +#define VL53L0X_HISTOGRAMMODE_BOTH ((VL53L0X_HistogramModes) 3) + /*!< Histogram both Reference and Return Arrays */ + /* ... Modes to be added depending on device */ +/** @} VL53L0X_define_HistogramModes_group */ + + +/** @defgroup VL53L0X_define_PowerModes_group List of available Power Modes + * List of available Power Modes + * @{ + */ + +typedef uint8_t VL53L0X_PowerModes; + +#define VL53L0X_POWERMODE_STANDBY_LEVEL1 ((VL53L0X_PowerModes) 0) + /*!< Standby level 1 */ +#define VL53L0X_POWERMODE_STANDBY_LEVEL2 ((VL53L0X_PowerModes) 1) + /*!< Standby level 2 */ +#define VL53L0X_POWERMODE_IDLE_LEVEL1 ((VL53L0X_PowerModes) 2) + /*!< Idle level 1 */ +#define VL53L0X_POWERMODE_IDLE_LEVEL2 ((VL53L0X_PowerModes) 3) + /*!< Idle level 2 */ + +/** @} VL53L0X_define_PowerModes_group */ + + +/** @brief Defines all parameters for the device + */ +typedef struct { + VL53L0X_DeviceModes DeviceMode; + /*!< Defines type of measurement to be done for the next measure */ + VL53L0X_HistogramModes HistogramMode; + /*!< Defines type of histogram measurement to be done for the next + * measure */ + uint32_t MeasurementTimingBudgetMicroSeconds; + /*!< Defines the allowed total time for a single measurement */ + uint32_t InterMeasurementPeriodMilliSeconds; + /*!< Defines time between two consecutive measurements (between two + * measurement starts). If set to 0 means back-to-back mode */ + uint8_t XTalkCompensationEnable; + /*!< Tells if Crosstalk compensation shall be enable or not */ + uint16_t XTalkCompensationRangeMilliMeter; + /*!< CrossTalk compensation range in millimeter */ + FixPoint1616_t XTalkCompensationRateMegaCps; + /*!< CrossTalk compensation rate in Mega counts per seconds. + * Expressed in 16.16 fixed point format. */ + int32_t RangeOffsetMicroMeters; + /*!< Range offset adjustment (mm). */ + + uint8_t LimitChecksEnable[VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS]; + /*!< This Array store all the Limit Check enable for this device. */ + uint8_t LimitChecksStatus[VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS]; + /*!< This Array store all the Status of the check linked to last + * measurement. */ + FixPoint1616_t LimitChecksValue[VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS]; + /*!< This Array store all the Limit Check value for this device */ + + uint8_t WrapAroundCheckEnable; + /*!< Tells if Wrap Around Check shall be enable or not */ +} VL53L0X_DeviceParameters_t; + + +/** @defgroup VL53L0X_define_State_group Defines the current status of the device + * Defines the current status of the device + * @{ + */ + +typedef uint8_t VL53L0X_State; + +#define VL53L0X_STATE_POWERDOWN ((VL53L0X_State) 0) + /*!< Device is in HW reset */ +#define VL53L0X_STATE_WAIT_STATICINIT ((VL53L0X_State) 1) + /*!< Device is initialized and wait for static initialization */ +#define VL53L0X_STATE_STANDBY ((VL53L0X_State) 2) + /*!< Device is in Low power Standby mode */ +#define VL53L0X_STATE_IDLE ((VL53L0X_State) 3) + /*!< Device has been initialized and ready to do measurements */ +#define VL53L0X_STATE_RUNNING ((VL53L0X_State) 4) + /*!< Device is performing measurement */ +#define VL53L0X_STATE_UNKNOWN ((VL53L0X_State) 98) + /*!< Device is in unknown state and need to be rebooted */ +#define VL53L0X_STATE_ERROR ((VL53L0X_State) 99) + /*!< Device is in error state and need to be rebooted */ + +/** @} VL53L0X_define_State_group */ + + +/** @brief Structure containing the Dmax computation parameters and data + */ +typedef struct { + int32_t AmbTuningWindowFactor_K; + /*!< internal algo tuning (*1000) */ + int32_t RetSignalAt0mm; + /*!< intermediate dmax computation value caching */ +} VL53L0X_DMaxData_t; + +/** + * @struct VL53L0X_RangeData_t + * @brief Range measurement data. + */ +typedef struct { + uint32_t TimeStamp; /*!< 32-bit time stamp. */ + uint32_t MeasurementTimeUsec; + /*!< Give the Measurement time needed by the device to do the + * measurement.*/ + + + uint16_t RangeMilliMeter; /*!< range distance in millimeter. */ + + uint16_t RangeDMaxMilliMeter; + /*!< Tells what is the maximum detection distance of the device + * in current setup and environment conditions (Filled when + * applicable) */ + + FixPoint1616_t SignalRateRtnMegaCps; + /*!< Return signal rate (MCPS)\n these is a 16.16 fix point + * value, which is effectively a measure of target + * reflectance.*/ + FixPoint1616_t AmbientRateRtnMegaCps; + /*!< Return ambient rate (MCPS)\n these is a 16.16 fix point + * value, which is effectively a measure of the ambien + * t light.*/ + + uint16_t EffectiveSpadRtnCount; + /*!< Return the effective SPAD count for the return signal. + * To obtain Real value it should be divided by 256 */ + + uint8_t ZoneId; + /*!< Denotes which zone and range scheduler stage the range + * data relates to. */ + uint8_t RangeFractionalPart; + /*!< Fractional part of range distance. Final value is a + * FixPoint168 value. */ + uint8_t RangeStatus; + /*!< Range Status for the current measurement. This is device + * dependent. Value = 0 means value is valid. + * See \ref RangeStatusPage */ +} VL53L0X_RangingMeasurementData_t; + + +#define VL53L0X_HISTOGRAM_BUFFER_SIZE 24 + +/** + * @struct VL53L0X_HistogramData_t + * @brief Histogram measurement data. + */ +typedef struct { + /* Histogram Measurement data */ + uint32_t HistogramData[VL53L0X_HISTOGRAM_BUFFER_SIZE]; + /*!< Histogram data */ + uint8_t HistogramType; /*!< Indicate the types of histogram data : + Return only, Reference only, both Return and Reference */ + uint8_t FirstBin; /*!< First Bin value */ + uint8_t BufferSize; /*!< Buffer Size - Set by the user.*/ + uint8_t NumberOfBins; + /*!< Number of bins filled by the histogram measurement */ + + VL53L0X_DeviceError ErrorStatus; + /*!< Error status of the current measurement. \n + see @a ::VL53L0X_DeviceError @a VL53L0X_GetStatusErrorString() */ +} VL53L0X_HistogramMeasurementData_t; + +#define VL53L0X_REF_SPAD_BUFFER_SIZE 6 + +/** + * @struct VL53L0X_SpadData_t + * @brief Spad Configuration Data. + */ +typedef struct { + uint8_t RefSpadEnables[VL53L0X_REF_SPAD_BUFFER_SIZE]; + /*!< Reference Spad Enables */ + uint8_t RefGoodSpadMap[VL53L0X_REF_SPAD_BUFFER_SIZE]; + /*!< Reference Spad Good Spad Map */ +} VL53L0X_SpadData_t; + +typedef struct { + FixPoint1616_t OscFrequencyMHz; /* Frequency used */ + + uint16_t LastEncodedTimeout; + /* last encoded Time out used for timing budget*/ + + VL53L0X_GpioFunctionality Pin0GpioFunctionality; + /* store the functionality of the GPIO: pin0 */ + + uint32_t FinalRangeTimeoutMicroSecs; + /*!< Execution time of the final range*/ + uint8_t FinalRangeVcselPulsePeriod; + /*!< Vcsel pulse period (pll clocks) for the final range measurement*/ + uint32_t PreRangeTimeoutMicroSecs; + /*!< Execution time of the final range*/ + uint8_t PreRangeVcselPulsePeriod; + /*!< Vcsel pulse period (pll clocks) for the pre-range measurement*/ + + uint16_t SigmaEstRefArray; + /*!< Reference array sigma value in 1/100th of [mm] e.g. 100 = 1mm */ + uint16_t SigmaEstEffPulseWidth; + /*!< Effective Pulse width for sigma estimate in 1/100th + * of ns e.g. 900 = 9.0ns */ + uint16_t SigmaEstEffAmbWidth; + /*!< Effective Ambient width for sigma estimate in 1/100th of ns + * e.g. 500 = 5.0ns */ + + + uint8_t ReadDataFromDeviceDone; /* Indicate if read from device has + been done (==1) or not (==0) */ + uint8_t ModuleId; /* Module ID */ + uint8_t Revision; /* test Revision */ + char ProductId[VL53L0X_MAX_STRING_LENGTH]; + /* Product Identifier String */ + uint8_t ReferenceSpadCount; /* used for ref spad management */ + uint8_t ReferenceSpadType; /* used for ref spad management */ + uint8_t RefSpadsInitialised; /* reports if ref spads are initialised. */ + uint32_t PartUIDUpper; /*!< Unique Part ID Upper */ + uint32_t PartUIDLower; /*!< Unique Part ID Lower */ + FixPoint1616_t SignalRateMeasFixed400mm; /*!< Peek Signal rate + at 400 mm*/ + +} VL53L0X_DeviceSpecificParameters_t; + +/** + * @struct VL53L0X_DevData_t + * + * @brief VL53L0X PAL device ST private data structure \n + * End user should never access any of these field directly + * + * These must never access directly but only via macro + */ +typedef struct { + VL53L0X_DMaxData_t DMaxData; + /*!< Dmax Data */ + int32_t Part2PartOffsetNVMMicroMeter; + /*!< backed up NVM value */ + int32_t Part2PartOffsetAdjustmentNVMMicroMeter; + /*!< backed up NVM value representing additional offset adjustment */ + VL53L0X_DeviceParameters_t CurrentParameters; + /*!< Current Device Parameter */ + VL53L0X_RangingMeasurementData_t LastRangeMeasure; + /*!< Ranging Data */ + VL53L0X_HistogramMeasurementData_t LastHistogramMeasure; + /*!< Histogram Data */ + VL53L0X_DeviceSpecificParameters_t DeviceSpecificParameters; + /*!< Parameters specific to the device */ + VL53L0X_SpadData_t SpadData; + /*!< Spad Data */ + uint8_t SequenceConfig; + /*!< Internal value for the sequence config */ + uint8_t RangeFractionalEnable; + /*!< Enable/Disable fractional part of ranging data */ + VL53L0X_State PalState; + /*!< Current state of the PAL for this device */ + VL53L0X_PowerModes PowerMode; + /*!< Current Power Mode */ + uint16_t SigmaEstRefArray; + /*!< Reference array sigma value in 1/100th of [mm] e.g. 100 = 1mm */ + uint16_t SigmaEstEffPulseWidth; + /*!< Effective Pulse width for sigma estimate in 1/100th + * of ns e.g. 900 = 9.0ns */ + uint16_t SigmaEstEffAmbWidth; + /*!< Effective Ambient width for sigma estimate in 1/100th of ns + * e.g. 500 = 5.0ns */ + uint8_t StopVariable; + /*!< StopVariable used during the stop sequence */ + uint16_t targetRefRate; + /*!< Target Ambient Rate for Ref spad management */ + FixPoint1616_t SigmaEstimate; + /*!< Sigma Estimate - based on ambient & VCSEL rates and + * signal_total_events */ + FixPoint1616_t SignalEstimate; + /*!< Signal Estimate - based on ambient & VCSEL rates and cross talk */ + FixPoint1616_t LastSignalRefMcps; + /*!< Latest Signal ref in Mcps */ + uint8_t *pTuningSettingsPointer; + /*!< Pointer for Tuning Settings table */ + uint8_t UseInternalTuningSettings; + /*!< Indicate if we use Tuning Settings table */ + uint16_t LinearityCorrectiveGain; + /*!< Linearity Corrective Gain value in x1000 */ + uint16_t DmaxCalRangeMilliMeter; + /*!< Dmax Calibration Range millimeter */ + FixPoint1616_t DmaxCalSignalRateRtnMegaCps; + /*!< Dmax Calibration Signal Rate Return MegaCps */ + +} VL53L0X_DevData_t; + + +/** @defgroup VL53L0X_define_InterruptPolarity_group Defines the Polarity + * of the Interrupt + * Defines the Polarity of the Interrupt + * @{ + */ +typedef uint8_t VL53L0X_InterruptPolarity; + +#define VL53L0X_INTERRUPTPOLARITY_LOW ((VL53L0X_InterruptPolarity) 0) +/*!< Set active low polarity best setup for falling edge. */ +#define VL53L0X_INTERRUPTPOLARITY_HIGH ((VL53L0X_InterruptPolarity) 1) +/*!< Set active high polarity best setup for rising edge. */ + +/** @} VL53L0X_define_InterruptPolarity_group */ + + +/** @defgroup VL53L0X_define_VcselPeriod_group Vcsel Period Defines + * Defines the range measurement for which to access the vcsel period. + * @{ + */ +typedef uint8_t VL53L0X_VcselPeriod; + +#define VL53L0X_VCSEL_PERIOD_PRE_RANGE ((VL53L0X_VcselPeriod) 0) +/*!<Identifies the pre-range vcsel period. */ +#define VL53L0X_VCSEL_PERIOD_FINAL_RANGE ((VL53L0X_VcselPeriod) 1) +/*!<Identifies the final range vcsel period. */ + +/** @} VL53L0X_define_VcselPeriod_group */ + +/** @defgroup VL53L0X_define_SchedulerSequence_group Defines the steps + * carried out by the scheduler during a range measurement. + * @{ + * Defines the states of all the steps in the scheduler + * i.e. enabled/disabled. + */ +typedef struct { + uint8_t TccOn; /*!<Reports if Target Centre Check On */ + uint8_t MsrcOn; /*!<Reports if MSRC On */ + uint8_t DssOn; /*!<Reports if DSS On */ + uint8_t PreRangeOn; /*!<Reports if Pre-Range On */ + uint8_t FinalRangeOn; /*!<Reports if Final-Range On */ +} VL53L0X_SchedulerSequenceSteps_t; + +/** @} VL53L0X_define_SchedulerSequence_group */ + +/** @defgroup VL53L0X_define_SequenceStepId_group Defines the Polarity + * of the Interrupt + * Defines the the sequence steps performed during ranging.. + * @{ + */ +typedef uint8_t VL53L0X_SequenceStepId; + +#define VL53L0X_SEQUENCESTEP_TCC ((VL53L0X_VcselPeriod) 0) +/*!<Target CentreCheck identifier. */ +#define VL53L0X_SEQUENCESTEP_DSS ((VL53L0X_VcselPeriod) 1) +/*!<Dynamic Spad Selection function Identifier. */ +#define VL53L0X_SEQUENCESTEP_MSRC ((VL53L0X_VcselPeriod) 2) +/*!<Minimum Signal Rate Check function Identifier. */ +#define VL53L0X_SEQUENCESTEP_PRE_RANGE ((VL53L0X_VcselPeriod) 3) +/*!<Pre-Range check Identifier. */ +#define VL53L0X_SEQUENCESTEP_FINAL_RANGE ((VL53L0X_VcselPeriod) 4) +/*!<Final Range Check Identifier. */ + +#define VL53L0X_SEQUENCESTEP_NUMBER_OF_CHECKS 5 +/*!<Number of Sequence Step Managed by the API. */ + +/** @} VL53L0X_define_SequenceStepId_group */ + + +/* MACRO Definitions */ +/** @defgroup VL53L0X_define_GeneralMacro_group General Macro Defines + * General Macro Defines + * @{ + */ + +/* Defines */ +#define VL53L0X_SETPARAMETERFIELD(Dev, field, value) \ + PALDevDataSet(Dev, CurrentParameters.field, value) + +#define VL53L0X_GETPARAMETERFIELD(Dev, field, variable) \ + variable = PALDevDataGet(Dev, CurrentParameters).field + + +#define VL53L0X_SETARRAYPARAMETERFIELD(Dev, field, index, value) \ + PALDevDataSet(Dev, CurrentParameters.field[index], value) + +#define VL53L0X_GETARRAYPARAMETERFIELD(Dev, field, index, variable) \ + variable = PALDevDataGet(Dev, CurrentParameters).field[index] + + +#define VL53L0X_SETDEVICESPECIFICPARAMETER(Dev, field, value) \ + PALDevDataSet(Dev, DeviceSpecificParameters.field, value) + +#define VL53L0X_GETDEVICESPECIFICPARAMETER(Dev, field) \ + PALDevDataGet(Dev, DeviceSpecificParameters).field + + +#define VL53L0X_FIXPOINT1616TOFIXPOINT97(Value) \ + (uint16_t)((Value>>9)&0xFFFF) +#define VL53L0X_FIXPOINT97TOFIXPOINT1616(Value) \ + (FixPoint1616_t)(Value<<9) + +#define VL53L0X_FIXPOINT1616TOFIXPOINT88(Value) \ + (uint16_t)((Value>>8)&0xFFFF) +#define VL53L0X_FIXPOINT88TOFIXPOINT1616(Value) \ + (FixPoint1616_t)(Value<<8) + +#define VL53L0X_FIXPOINT1616TOFIXPOINT412(Value) \ + (uint16_t)((Value>>4)&0xFFFF) +#define VL53L0X_FIXPOINT412TOFIXPOINT1616(Value) \ + (FixPoint1616_t)(Value<<4) + +#define VL53L0X_FIXPOINT1616TOFIXPOINT313(Value) \ + (uint16_t)((Value>>3)&0xFFFF) +#define VL53L0X_FIXPOINT313TOFIXPOINT1616(Value) \ + (FixPoint1616_t)(Value<<3) + +#define VL53L0X_FIXPOINT1616TOFIXPOINT08(Value) \ + (uint8_t)((Value>>8)&0x00FF) +#define VL53L0X_FIXPOINT08TOFIXPOINT1616(Value) \ + (FixPoint1616_t)(Value<<8) + +#define VL53L0X_FIXPOINT1616TOFIXPOINT53(Value) \ + (uint8_t)((Value>>13)&0x00FF) +#define VL53L0X_FIXPOINT53TOFIXPOINT1616(Value) \ + (FixPoint1616_t)(Value<<13) + +#define VL53L0X_FIXPOINT1616TOFIXPOINT102(Value) \ + (uint16_t)((Value>>14)&0x0FFF) +#define VL53L0X_FIXPOINT102TOFIXPOINT1616(Value) \ + (FixPoint1616_t)(Value<<12) + +#define VL53L0X_MAKEUINT16(lsb, msb) (uint16_t)((((uint16_t)msb)<<8) + \ + (uint16_t)lsb) + +/** @} VL53L0X_define_GeneralMacro_group */ + +/** @} VL53L0X_globaldefine_group */ + + + + + + + +#ifdef __cplusplus +} +#endif + + +#endif /* _VL53L0X_DEF_H_ */ diff --git a/STS/TOF/vl53l0x/vl53l0x_device.h b/STS/TOF/vl53l0x/vl53l0x_device.h index dc010c2..4aa572b 100644 --- a/STS/TOF/vl53l0x/vl53l0x_device.h +++ b/STS/TOF/vl53l0x/vl53l0x_device.h @@ -1,257 +1,257 @@ -/******************************************************************************* -Copyright � 2016, STMicroelectronics International N.V. -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND -NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. -IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*******************************************************************************/ - -/** - * Device specific defines. To be adapted by implementer for the targeted - * device. - */ - -#ifndef _VL53L0X_DEVICE_H_ -#define _VL53L0X_DEVICE_H_ - -#include "vl53l0x_types.h" - - -/** @defgroup VL53L0X_DevSpecDefines_group VL53L0X cut1.1 Device Specific Defines - * @brief VL53L0X cut1.1 Device Specific Defines - * @{ - */ - - -/** @defgroup VL53L0X_DeviceError_group Device Error - * @brief Device Error code - * - * This enum is Device specific it should be updated in the implementation - * Use @a VL53L0X_GetStatusErrorString() to get the string. - * It is related to Status Register of the Device. - * @{ - */ -typedef uint8_t VL53L0X_DeviceError; - -#define VL53L0X_DEVICEERROR_NONE ((VL53L0X_DeviceError) 0) - /*!< 0 NoError */ -#define VL53L0X_DEVICEERROR_VCSELCONTINUITYTESTFAILURE ((VL53L0X_DeviceError) 1) -#define VL53L0X_DEVICEERROR_VCSELWATCHDOGTESTFAILURE ((VL53L0X_DeviceError) 2) -#define VL53L0X_DEVICEERROR_NOVHVVALUEFOUND ((VL53L0X_DeviceError) 3) -#define VL53L0X_DEVICEERROR_MSRCNOTARGET ((VL53L0X_DeviceError) 4) -#define VL53L0X_DEVICEERROR_SNRCHECK ((VL53L0X_DeviceError) 5) -#define VL53L0X_DEVICEERROR_RANGEPHASECHECK ((VL53L0X_DeviceError) 6) -#define VL53L0X_DEVICEERROR_SIGMATHRESHOLDCHECK ((VL53L0X_DeviceError) 7) -#define VL53L0X_DEVICEERROR_TCC ((VL53L0X_DeviceError) 8) -#define VL53L0X_DEVICEERROR_PHASECONSISTENCY ((VL53L0X_DeviceError) 9) -#define VL53L0X_DEVICEERROR_MINCLIP ((VL53L0X_DeviceError) 10) -#define VL53L0X_DEVICEERROR_RANGECOMPLETE ((VL53L0X_DeviceError) 11) -#define VL53L0X_DEVICEERROR_ALGOUNDERFLOW ((VL53L0X_DeviceError) 12) -#define VL53L0X_DEVICEERROR_ALGOOVERFLOW ((VL53L0X_DeviceError) 13) -#define VL53L0X_DEVICEERROR_RANGEIGNORETHRESHOLD ((VL53L0X_DeviceError) 14) - -/** @} end of VL53L0X_DeviceError_group */ - - -/** @defgroup VL53L0X_CheckEnable_group Check Enable list - * @brief Check Enable code - * - * Define used to specify the LimitCheckId. - * Use @a VL53L0X_GetLimitCheckInfo() to get the string. - * @{ - */ - -#define VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE 0 -#define VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE 1 -#define VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP 2 -#define VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD 3 -#define VL53L0X_CHECKENABLE_SIGNAL_RATE_MSRC 4 -#define VL53L0X_CHECKENABLE_SIGNAL_RATE_PRE_RANGE 5 - -#define VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS 6 - -/** @} end of VL53L0X_CheckEnable_group */ - - -/** @defgroup VL53L0X_GpioFunctionality_group Gpio Functionality - * @brief Defines the different functionalities for the device GPIO(s) - * @{ - */ -typedef uint8_t VL53L0X_GpioFunctionality; - -#define VL53L0X_GPIOFUNCTIONALITY_OFF \ - ((VL53L0X_GpioFunctionality) 0) /*!< NO Interrupt */ -#define VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_LOW \ - ((VL53L0X_GpioFunctionality) 1) /*!< Level Low (value < thresh_low) */ -#define VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_HIGH \ - ((VL53L0X_GpioFunctionality) 2) /*!< Level High (value > thresh_high) */ -#define VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_OUT \ - ((VL53L0X_GpioFunctionality) 3) - /*!< Out Of Window (value < thresh_low OR value > thresh_high) */ -#define VL53L0X_GPIOFUNCTIONALITY_NEW_MEASURE_READY \ - ((VL53L0X_GpioFunctionality) 4) /*!< New Sample Ready */ - -/** @} end of VL53L0X_GpioFunctionality_group */ - - -/* Device register map */ - -/** @defgroup VL53L0X_DefineRegisters_group Define Registers - * @brief List of all the defined registers - * @{ - */ -#define VL53L0X_REG_SYSRANGE_START 0x000 - /** mask existing bit in #VL53L0X_REG_SYSRANGE_START*/ - #define VL53L0X_REG_SYSRANGE_MODE_MASK 0x0F - /** bit 0 in #VL53L0X_REG_SYSRANGE_START write 1 toggle state in - * continuous mode and arm next shot in single shot mode */ - #define VL53L0X_REG_SYSRANGE_MODE_START_STOP 0x01 - /** bit 1 write 0 in #VL53L0X_REG_SYSRANGE_START set single shot mode */ - #define VL53L0X_REG_SYSRANGE_MODE_SINGLESHOT 0x00 - /** bit 1 write 1 in #VL53L0X_REG_SYSRANGE_START set back-to-back - * operation mode */ - #define VL53L0X_REG_SYSRANGE_MODE_BACKTOBACK 0x02 - /** bit 2 write 1 in #VL53L0X_REG_SYSRANGE_START set timed operation - * mode */ - #define VL53L0X_REG_SYSRANGE_MODE_TIMED 0x04 - /** bit 3 write 1 in #VL53L0X_REG_SYSRANGE_START set histogram operation - * mode */ - #define VL53L0X_REG_SYSRANGE_MODE_HISTOGRAM 0x08 - - -#define VL53L0X_REG_SYSTEM_THRESH_HIGH 0x000C -#define VL53L0X_REG_SYSTEM_THRESH_LOW 0x000E - - -#define VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG 0x0001 -#define VL53L0X_REG_SYSTEM_RANGE_CONFIG 0x0009 -#define VL53L0X_REG_SYSTEM_INTERMEASUREMENT_PERIOD 0x0004 - - -#define VL53L0X_REG_SYSTEM_INTERRUPT_CONFIG_GPIO 0x000A - #define VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_DISABLED 0x00 - #define VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_LEVEL_LOW 0x01 - #define VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_LEVEL_HIGH 0x02 - #define VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_OUT_OF_WINDOW 0x03 - #define VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_NEW_SAMPLE_READY 0x04 - -#define VL53L0X_REG_GPIO_HV_MUX_ACTIVE_HIGH 0x0084 - - -#define VL53L0X_REG_SYSTEM_INTERRUPT_CLEAR 0x000B - -/* Result registers */ -#define VL53L0X_REG_RESULT_INTERRUPT_STATUS 0x0013 -#define VL53L0X_REG_RESULT_RANGE_STATUS 0x0014 - -#define VL53L0X_REG_RESULT_CORE_PAGE 1 -#define VL53L0X_REG_RESULT_CORE_AMBIENT_WINDOW_EVENTS_RTN 0x00BC -#define VL53L0X_REG_RESULT_CORE_RANGING_TOTAL_EVENTS_RTN 0x00C0 -#define VL53L0X_REG_RESULT_CORE_AMBIENT_WINDOW_EVENTS_REF 0x00D0 -#define VL53L0X_REG_RESULT_CORE_RANGING_TOTAL_EVENTS_REF 0x00D4 -#define VL53L0X_REG_RESULT_PEAK_SIGNAL_RATE_REF 0x00B6 - -/* Algo register */ - -#define VL53L0X_REG_ALGO_PART_TO_PART_RANGE_OFFSET_MM 0x0028 - -#define VL53L0X_REG_I2C_SLAVE_DEVICE_ADDRESS 0x008a - -/* Check Limit registers */ -#define VL53L0X_REG_MSRC_CONFIG_CONTROL 0x0060 - -#define VL53L0X_REG_PRE_RANGE_CONFIG_MIN_SNR 0X0027 -#define VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_LOW 0x0056 -#define VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_HIGH 0x0057 -#define VL53L0X_REG_PRE_RANGE_MIN_COUNT_RATE_RTN_LIMIT 0x0064 - -#define VL53L0X_REG_FINAL_RANGE_CONFIG_MIN_SNR 0X0067 -#define VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_LOW 0x0047 -#define VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_HIGH 0x0048 -#define VL53L0X_REG_FINAL_RANGE_CONFIG_MIN_COUNT_RATE_RTN_LIMIT 0x0044 - - -#define VL53L0X_REG_PRE_RANGE_CONFIG_SIGMA_THRESH_HI 0X0061 -#define VL53L0X_REG_PRE_RANGE_CONFIG_SIGMA_THRESH_LO 0X0062 - -/* PRE RANGE registers */ -#define VL53L0X_REG_PRE_RANGE_CONFIG_VCSEL_PERIOD 0x0050 -#define VL53L0X_REG_PRE_RANGE_CONFIG_TIMEOUT_MACROP_HI 0x0051 -#define VL53L0X_REG_PRE_RANGE_CONFIG_TIMEOUT_MACROP_LO 0x0052 - -#define VL53L0X_REG_SYSTEM_HISTOGRAM_BIN 0x0081 -#define VL53L0X_REG_HISTOGRAM_CONFIG_INITIAL_PHASE_SELECT 0x0033 -#define VL53L0X_REG_HISTOGRAM_CONFIG_READOUT_CTRL 0x0055 - -#define VL53L0X_REG_FINAL_RANGE_CONFIG_VCSEL_PERIOD 0x0070 -#define VL53L0X_REG_FINAL_RANGE_CONFIG_TIMEOUT_MACROP_HI 0x0071 -#define VL53L0X_REG_FINAL_RANGE_CONFIG_TIMEOUT_MACROP_LO 0x0072 -#define VL53L0X_REG_CROSSTALK_COMPENSATION_PEAK_RATE_MCPS 0x0020 - -#define VL53L0X_REG_MSRC_CONFIG_TIMEOUT_MACROP 0x0046 - - -#define VL53L0X_REG_SOFT_RESET_GO2_SOFT_RESET_N 0x00bf -#define VL53L0X_REG_IDENTIFICATION_MODEL_ID 0x00c0 -#define VL53L0X_REG_IDENTIFICATION_REVISION_ID 0x00c2 - -#define VL53L0X_REG_OSC_CALIBRATE_VAL 0x00f8 - - -#define VL53L0X_SIGMA_ESTIMATE_MAX_VALUE 65535 -/* equivalent to a range sigma of 655.35mm */ - -#define VL53L0X_REG_GLOBAL_CONFIG_VCSEL_WIDTH 0x032 -#define VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_0 0x0B0 -#define VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_1 0x0B1 -#define VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_2 0x0B2 -#define VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_3 0x0B3 -#define VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_4 0x0B4 -#define VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_5 0x0B5 - -#define VL53L0X_REG_GLOBAL_CONFIG_REF_EN_START_SELECT 0xB6 -#define VL53L0X_REG_DYNAMIC_SPAD_NUM_REQUESTED_REF_SPAD 0x4E /* 0x14E */ -#define VL53L0X_REG_DYNAMIC_SPAD_REF_EN_START_OFFSET 0x4F /* 0x14F */ -#define VL53L0X_REG_POWER_MANAGEMENT_GO1_POWER_FORCE 0x80 - -/* - * Speed of light in um per 1E-10 Seconds - */ - -#define VL53L0X_SPEED_OF_LIGHT_IN_AIR 2997 - -#define VL53L0X_REG_VHV_CONFIG_PAD_SCL_SDA__EXTSUP_HV 0x0089 - -#define VL53L0X_REG_ALGO_PHASECAL_LIM 0x0030 /* 0x130 */ -#define VL53L0X_REG_ALGO_PHASECAL_CONFIG_TIMEOUT 0x0030 - -/** @} VL53L0X_DefineRegisters_group */ - -/** @} VL53L0X_DevSpecDefines_group */ - - -#endif - -/* _VL53L0X_DEVICE_H_ */ - - +/******************************************************************************* +Copyright � 2016, STMicroelectronics International N.V. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND +NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. +IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*******************************************************************************/ + +/** + * Device specific defines. To be adapted by implementer for the targeted + * device. + */ + +#ifndef _VL53L0X_DEVICE_H_ +#define _VL53L0X_DEVICE_H_ + +#include "vl53l0x_types.h" + + +/** @defgroup VL53L0X_DevSpecDefines_group VL53L0X cut1.1 Device Specific Defines + * @brief VL53L0X cut1.1 Device Specific Defines + * @{ + */ + + +/** @defgroup VL53L0X_DeviceError_group Device Error + * @brief Device Error code + * + * This enum is Device specific it should be updated in the implementation + * Use @a VL53L0X_GetStatusErrorString() to get the string. + * It is related to Status Register of the Device. + * @{ + */ +typedef uint8_t VL53L0X_DeviceError; + +#define VL53L0X_DEVICEERROR_NONE ((VL53L0X_DeviceError) 0) + /*!< 0 NoError */ +#define VL53L0X_DEVICEERROR_VCSELCONTINUITYTESTFAILURE ((VL53L0X_DeviceError) 1) +#define VL53L0X_DEVICEERROR_VCSELWATCHDOGTESTFAILURE ((VL53L0X_DeviceError) 2) +#define VL53L0X_DEVICEERROR_NOVHVVALUEFOUND ((VL53L0X_DeviceError) 3) +#define VL53L0X_DEVICEERROR_MSRCNOTARGET ((VL53L0X_DeviceError) 4) +#define VL53L0X_DEVICEERROR_SNRCHECK ((VL53L0X_DeviceError) 5) +#define VL53L0X_DEVICEERROR_RANGEPHASECHECK ((VL53L0X_DeviceError) 6) +#define VL53L0X_DEVICEERROR_SIGMATHRESHOLDCHECK ((VL53L0X_DeviceError) 7) +#define VL53L0X_DEVICEERROR_TCC ((VL53L0X_DeviceError) 8) +#define VL53L0X_DEVICEERROR_PHASECONSISTENCY ((VL53L0X_DeviceError) 9) +#define VL53L0X_DEVICEERROR_MINCLIP ((VL53L0X_DeviceError) 10) +#define VL53L0X_DEVICEERROR_RANGECOMPLETE ((VL53L0X_DeviceError) 11) +#define VL53L0X_DEVICEERROR_ALGOUNDERFLOW ((VL53L0X_DeviceError) 12) +#define VL53L0X_DEVICEERROR_ALGOOVERFLOW ((VL53L0X_DeviceError) 13) +#define VL53L0X_DEVICEERROR_RANGEIGNORETHRESHOLD ((VL53L0X_DeviceError) 14) + +/** @} end of VL53L0X_DeviceError_group */ + + +/** @defgroup VL53L0X_CheckEnable_group Check Enable list + * @brief Check Enable code + * + * Define used to specify the LimitCheckId. + * Use @a VL53L0X_GetLimitCheckInfo() to get the string. + * @{ + */ + +#define VL53L0X_CHECKENABLE_SIGMA_FINAL_RANGE 0 +#define VL53L0X_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE 1 +#define VL53L0X_CHECKENABLE_SIGNAL_REF_CLIP 2 +#define VL53L0X_CHECKENABLE_RANGE_IGNORE_THRESHOLD 3 +#define VL53L0X_CHECKENABLE_SIGNAL_RATE_MSRC 4 +#define VL53L0X_CHECKENABLE_SIGNAL_RATE_PRE_RANGE 5 + +#define VL53L0X_CHECKENABLE_NUMBER_OF_CHECKS 6 + +/** @} end of VL53L0X_CheckEnable_group */ + + +/** @defgroup VL53L0X_GpioFunctionality_group Gpio Functionality + * @brief Defines the different functionalities for the device GPIO(s) + * @{ + */ +typedef uint8_t VL53L0X_GpioFunctionality; + +#define VL53L0X_GPIOFUNCTIONALITY_OFF \ + ((VL53L0X_GpioFunctionality) 0) /*!< NO Interrupt */ +#define VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_LOW \ + ((VL53L0X_GpioFunctionality) 1) /*!< Level Low (value < thresh_low) */ +#define VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_HIGH \ + ((VL53L0X_GpioFunctionality) 2) /*!< Level High (value > thresh_high) */ +#define VL53L0X_GPIOFUNCTIONALITY_THRESHOLD_CROSSED_OUT \ + ((VL53L0X_GpioFunctionality) 3) + /*!< Out Of Window (value < thresh_low OR value > thresh_high) */ +#define VL53L0X_GPIOFUNCTIONALITY_NEW_MEASURE_READY \ + ((VL53L0X_GpioFunctionality) 4) /*!< New Sample Ready */ + +/** @} end of VL53L0X_GpioFunctionality_group */ + + +/* Device register map */ + +/** @defgroup VL53L0X_DefineRegisters_group Define Registers + * @brief List of all the defined registers + * @{ + */ +#define VL53L0X_REG_SYSRANGE_START 0x000 + /** mask existing bit in #VL53L0X_REG_SYSRANGE_START*/ + #define VL53L0X_REG_SYSRANGE_MODE_MASK 0x0F + /** bit 0 in #VL53L0X_REG_SYSRANGE_START write 1 toggle state in + * continuous mode and arm next shot in single shot mode */ + #define VL53L0X_REG_SYSRANGE_MODE_START_STOP 0x01 + /** bit 1 write 0 in #VL53L0X_REG_SYSRANGE_START set single shot mode */ + #define VL53L0X_REG_SYSRANGE_MODE_SINGLESHOT 0x00 + /** bit 1 write 1 in #VL53L0X_REG_SYSRANGE_START set back-to-back + * operation mode */ + #define VL53L0X_REG_SYSRANGE_MODE_BACKTOBACK 0x02 + /** bit 2 write 1 in #VL53L0X_REG_SYSRANGE_START set timed operation + * mode */ + #define VL53L0X_REG_SYSRANGE_MODE_TIMED 0x04 + /** bit 3 write 1 in #VL53L0X_REG_SYSRANGE_START set histogram operation + * mode */ + #define VL53L0X_REG_SYSRANGE_MODE_HISTOGRAM 0x08 + + +#define VL53L0X_REG_SYSTEM_THRESH_HIGH 0x000C +#define VL53L0X_REG_SYSTEM_THRESH_LOW 0x000E + + +#define VL53L0X_REG_SYSTEM_SEQUENCE_CONFIG 0x0001 +#define VL53L0X_REG_SYSTEM_RANGE_CONFIG 0x0009 +#define VL53L0X_REG_SYSTEM_INTERMEASUREMENT_PERIOD 0x0004 + + +#define VL53L0X_REG_SYSTEM_INTERRUPT_CONFIG_GPIO 0x000A + #define VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_DISABLED 0x00 + #define VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_LEVEL_LOW 0x01 + #define VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_LEVEL_HIGH 0x02 + #define VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_OUT_OF_WINDOW 0x03 + #define VL53L0X_REG_SYSTEM_INTERRUPT_GPIO_NEW_SAMPLE_READY 0x04 + +#define VL53L0X_REG_GPIO_HV_MUX_ACTIVE_HIGH 0x0084 + + +#define VL53L0X_REG_SYSTEM_INTERRUPT_CLEAR 0x000B + +/* Result registers */ +#define VL53L0X_REG_RESULT_INTERRUPT_STATUS 0x0013 +#define VL53L0X_REG_RESULT_RANGE_STATUS 0x0014 + +#define VL53L0X_REG_RESULT_CORE_PAGE 1 +#define VL53L0X_REG_RESULT_CORE_AMBIENT_WINDOW_EVENTS_RTN 0x00BC +#define VL53L0X_REG_RESULT_CORE_RANGING_TOTAL_EVENTS_RTN 0x00C0 +#define VL53L0X_REG_RESULT_CORE_AMBIENT_WINDOW_EVENTS_REF 0x00D0 +#define VL53L0X_REG_RESULT_CORE_RANGING_TOTAL_EVENTS_REF 0x00D4 +#define VL53L0X_REG_RESULT_PEAK_SIGNAL_RATE_REF 0x00B6 + +/* Algo register */ + +#define VL53L0X_REG_ALGO_PART_TO_PART_RANGE_OFFSET_MM 0x0028 + +#define VL53L0X_REG_I2C_SLAVE_DEVICE_ADDRESS 0x008a + +/* Check Limit registers */ +#define VL53L0X_REG_MSRC_CONFIG_CONTROL 0x0060 + +#define VL53L0X_REG_PRE_RANGE_CONFIG_MIN_SNR 0X0027 +#define VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_LOW 0x0056 +#define VL53L0X_REG_PRE_RANGE_CONFIG_VALID_PHASE_HIGH 0x0057 +#define VL53L0X_REG_PRE_RANGE_MIN_COUNT_RATE_RTN_LIMIT 0x0064 + +#define VL53L0X_REG_FINAL_RANGE_CONFIG_MIN_SNR 0X0067 +#define VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_LOW 0x0047 +#define VL53L0X_REG_FINAL_RANGE_CONFIG_VALID_PHASE_HIGH 0x0048 +#define VL53L0X_REG_FINAL_RANGE_CONFIG_MIN_COUNT_RATE_RTN_LIMIT 0x0044 + + +#define VL53L0X_REG_PRE_RANGE_CONFIG_SIGMA_THRESH_HI 0X0061 +#define VL53L0X_REG_PRE_RANGE_CONFIG_SIGMA_THRESH_LO 0X0062 + +/* PRE RANGE registers */ +#define VL53L0X_REG_PRE_RANGE_CONFIG_VCSEL_PERIOD 0x0050 +#define VL53L0X_REG_PRE_RANGE_CONFIG_TIMEOUT_MACROP_HI 0x0051 +#define VL53L0X_REG_PRE_RANGE_CONFIG_TIMEOUT_MACROP_LO 0x0052 + +#define VL53L0X_REG_SYSTEM_HISTOGRAM_BIN 0x0081 +#define VL53L0X_REG_HISTOGRAM_CONFIG_INITIAL_PHASE_SELECT 0x0033 +#define VL53L0X_REG_HISTOGRAM_CONFIG_READOUT_CTRL 0x0055 + +#define VL53L0X_REG_FINAL_RANGE_CONFIG_VCSEL_PERIOD 0x0070 +#define VL53L0X_REG_FINAL_RANGE_CONFIG_TIMEOUT_MACROP_HI 0x0071 +#define VL53L0X_REG_FINAL_RANGE_CONFIG_TIMEOUT_MACROP_LO 0x0072 +#define VL53L0X_REG_CROSSTALK_COMPENSATION_PEAK_RATE_MCPS 0x0020 + +#define VL53L0X_REG_MSRC_CONFIG_TIMEOUT_MACROP 0x0046 + + +#define VL53L0X_REG_SOFT_RESET_GO2_SOFT_RESET_N 0x00bf +#define VL53L0X_REG_IDENTIFICATION_MODEL_ID 0x00c0 +#define VL53L0X_REG_IDENTIFICATION_REVISION_ID 0x00c2 + +#define VL53L0X_REG_OSC_CALIBRATE_VAL 0x00f8 + + +#define VL53L0X_SIGMA_ESTIMATE_MAX_VALUE 65535 +/* equivalent to a range sigma of 655.35mm */ + +#define VL53L0X_REG_GLOBAL_CONFIG_VCSEL_WIDTH 0x032 +#define VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_0 0x0B0 +#define VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_1 0x0B1 +#define VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_2 0x0B2 +#define VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_3 0x0B3 +#define VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_4 0x0B4 +#define VL53L0X_REG_GLOBAL_CONFIG_SPAD_ENABLES_REF_5 0x0B5 + +#define VL53L0X_REG_GLOBAL_CONFIG_REF_EN_START_SELECT 0xB6 +#define VL53L0X_REG_DYNAMIC_SPAD_NUM_REQUESTED_REF_SPAD 0x4E /* 0x14E */ +#define VL53L0X_REG_DYNAMIC_SPAD_REF_EN_START_OFFSET 0x4F /* 0x14F */ +#define VL53L0X_REG_POWER_MANAGEMENT_GO1_POWER_FORCE 0x80 + +/* + * Speed of light in um per 1E-10 Seconds + */ + +#define VL53L0X_SPEED_OF_LIGHT_IN_AIR 2997 + +#define VL53L0X_REG_VHV_CONFIG_PAD_SCL_SDA__EXTSUP_HV 0x0089 + +#define VL53L0X_REG_ALGO_PHASECAL_LIM 0x0030 /* 0x130 */ +#define VL53L0X_REG_ALGO_PHASECAL_CONFIG_TIMEOUT 0x0030 + +/** @} VL53L0X_DefineRegisters_group */ + +/** @} VL53L0X_DevSpecDefines_group */ + + +#endif + +/* _VL53L0X_DEVICE_H_ */ + + diff --git a/STS/TOF/vl53l0x/vl53l0x_interrupt_threshold_settings.h b/STS/TOF/vl53l0x/vl53l0x_interrupt_threshold_settings.h index 41677f1..d18358a 100644 --- a/STS/TOF/vl53l0x/vl53l0x_interrupt_threshold_settings.h +++ b/STS/TOF/vl53l0x/vl53l0x_interrupt_threshold_settings.h @@ -1,194 +1,194 @@ -/******************************************************************************* -Copyright � 2016, STMicroelectronics International N.V. -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND -NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. -IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*******************************************************************************/ - - -#ifndef _VL53L0X_INTERRUPT_THRESHOLD_SETTINGS_H_ -#define _VL53L0X_INTERRUPT_THRESHOLD_SETTINGS_H_ - - -#ifdef __cplusplus -extern "C" { -#endif - - -uint8_t InterruptThresholdSettings[] = { - - /* Start of Interrupt Threshold Settings */ - 0x1, 0xff, 0x00, - 0x1, 0x80, 0x01, - 0x1, 0xff, 0x01, - 0x1, 0x00, 0x00, - 0x1, 0xff, 0x01, - 0x1, 0x4f, 0x02, - 0x1, 0xFF, 0x0E, - 0x1, 0x00, 0x03, - 0x1, 0x01, 0x84, - 0x1, 0x02, 0x0A, - 0x1, 0x03, 0x03, - 0x1, 0x04, 0x08, - 0x1, 0x05, 0xC8, - 0x1, 0x06, 0x03, - 0x1, 0x07, 0x8D, - 0x1, 0x08, 0x08, - 0x1, 0x09, 0xC6, - 0x1, 0x0A, 0x01, - 0x1, 0x0B, 0x02, - 0x1, 0x0C, 0x00, - 0x1, 0x0D, 0xD5, - 0x1, 0x0E, 0x18, - 0x1, 0x0F, 0x12, - 0x1, 0x10, 0x01, - 0x1, 0x11, 0x82, - 0x1, 0x12, 0x00, - 0x1, 0x13, 0xD5, - 0x1, 0x14, 0x18, - 0x1, 0x15, 0x13, - 0x1, 0x16, 0x03, - 0x1, 0x17, 0x86, - 0x1, 0x18, 0x0A, - 0x1, 0x19, 0x09, - 0x1, 0x1A, 0x08, - 0x1, 0x1B, 0xC2, - 0x1, 0x1C, 0x03, - 0x1, 0x1D, 0x8F, - 0x1, 0x1E, 0x0A, - 0x1, 0x1F, 0x06, - 0x1, 0x20, 0x01, - 0x1, 0x21, 0x02, - 0x1, 0x22, 0x00, - 0x1, 0x23, 0xD5, - 0x1, 0x24, 0x18, - 0x1, 0x25, 0x22, - 0x1, 0x26, 0x01, - 0x1, 0x27, 0x82, - 0x1, 0x28, 0x00, - 0x1, 0x29, 0xD5, - 0x1, 0x2A, 0x18, - 0x1, 0x2B, 0x0B, - 0x1, 0x2C, 0x28, - 0x1, 0x2D, 0x78, - 0x1, 0x2E, 0x28, - 0x1, 0x2F, 0x91, - 0x1, 0x30, 0x00, - 0x1, 0x31, 0x0B, - 0x1, 0x32, 0x00, - 0x1, 0x33, 0x0B, - 0x1, 0x34, 0x00, - 0x1, 0x35, 0xA1, - 0x1, 0x36, 0x00, - 0x1, 0x37, 0xA0, - 0x1, 0x38, 0x00, - 0x1, 0x39, 0x04, - 0x1, 0x3A, 0x28, - 0x1, 0x3B, 0x30, - 0x1, 0x3C, 0x0C, - 0x1, 0x3D, 0x04, - 0x1, 0x3E, 0x0F, - 0x1, 0x3F, 0x79, - 0x1, 0x40, 0x28, - 0x1, 0x41, 0x1E, - 0x1, 0x42, 0x2F, - 0x1, 0x43, 0x87, - 0x1, 0x44, 0x00, - 0x1, 0x45, 0x0B, - 0x1, 0x46, 0x00, - 0x1, 0x47, 0x0B, - 0x1, 0x48, 0x00, - 0x1, 0x49, 0xA7, - 0x1, 0x4A, 0x00, - 0x1, 0x4B, 0xA6, - 0x1, 0x4C, 0x00, - 0x1, 0x4D, 0x04, - 0x1, 0x4E, 0x01, - 0x1, 0x4F, 0x00, - 0x1, 0x50, 0x00, - 0x1, 0x51, 0x80, - 0x1, 0x52, 0x09, - 0x1, 0x53, 0x08, - 0x1, 0x54, 0x01, - 0x1, 0x55, 0x00, - 0x1, 0x56, 0x0F, - 0x1, 0x57, 0x79, - 0x1, 0x58, 0x09, - 0x1, 0x59, 0x05, - 0x1, 0x5A, 0x00, - 0x1, 0x5B, 0x60, - 0x1, 0x5C, 0x05, - 0x1, 0x5D, 0xD1, - 0x1, 0x5E, 0x0C, - 0x1, 0x5F, 0x3C, - 0x1, 0x60, 0x00, - 0x1, 0x61, 0xD0, - 0x1, 0x62, 0x0B, - 0x1, 0x63, 0x03, - 0x1, 0x64, 0x28, - 0x1, 0x65, 0x10, - 0x1, 0x66, 0x2A, - 0x1, 0x67, 0x39, - 0x1, 0x68, 0x0B, - 0x1, 0x69, 0x02, - 0x1, 0x6A, 0x28, - 0x1, 0x6B, 0x10, - 0x1, 0x6C, 0x2A, - 0x1, 0x6D, 0x61, - 0x1, 0x6E, 0x0C, - 0x1, 0x6F, 0x00, - 0x1, 0x70, 0x0F, - 0x1, 0x71, 0x79, - 0x1, 0x72, 0x00, - 0x1, 0x73, 0x0B, - 0x1, 0x74, 0x00, - 0x1, 0x75, 0x0B, - 0x1, 0x76, 0x00, - 0x1, 0x77, 0xA1, - 0x1, 0x78, 0x00, - 0x1, 0x79, 0xA0, - 0x1, 0x7A, 0x00, - 0x1, 0x7B, 0x04, - 0x1, 0xFF, 0x04, - 0x1, 0x79, 0x1D, - 0x1, 0x7B, 0x27, - 0x1, 0x96, 0x0E, - 0x1, 0x97, 0xFE, - 0x1, 0x98, 0x03, - 0x1, 0x99, 0xEF, - 0x1, 0x9A, 0x02, - 0x1, 0x9B, 0x44, - 0x1, 0x73, 0x07, - 0x1, 0x70, 0x01, - 0x1, 0xff, 0x01, - 0x1, 0x00, 0x01, - 0x1, 0xff, 0x00, - 0x00, 0x00, 0x00 -}; - -#ifdef __cplusplus -} -#endif - -#endif /* _VL53L0X_INTERRUPT_THRESHOLD_SETTINGS_H_ */ +/******************************************************************************* +Copyright � 2016, STMicroelectronics International N.V. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND +NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. +IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*******************************************************************************/ + + +#ifndef _VL53L0X_INTERRUPT_THRESHOLD_SETTINGS_H_ +#define _VL53L0X_INTERRUPT_THRESHOLD_SETTINGS_H_ + + +#ifdef __cplusplus +extern "C" { +#endif + + +uint8_t InterruptThresholdSettings[] = { + + /* Start of Interrupt Threshold Settings */ + 0x1, 0xff, 0x00, + 0x1, 0x80, 0x01, + 0x1, 0xff, 0x01, + 0x1, 0x00, 0x00, + 0x1, 0xff, 0x01, + 0x1, 0x4f, 0x02, + 0x1, 0xFF, 0x0E, + 0x1, 0x00, 0x03, + 0x1, 0x01, 0x84, + 0x1, 0x02, 0x0A, + 0x1, 0x03, 0x03, + 0x1, 0x04, 0x08, + 0x1, 0x05, 0xC8, + 0x1, 0x06, 0x03, + 0x1, 0x07, 0x8D, + 0x1, 0x08, 0x08, + 0x1, 0x09, 0xC6, + 0x1, 0x0A, 0x01, + 0x1, 0x0B, 0x02, + 0x1, 0x0C, 0x00, + 0x1, 0x0D, 0xD5, + 0x1, 0x0E, 0x18, + 0x1, 0x0F, 0x12, + 0x1, 0x10, 0x01, + 0x1, 0x11, 0x82, + 0x1, 0x12, 0x00, + 0x1, 0x13, 0xD5, + 0x1, 0x14, 0x18, + 0x1, 0x15, 0x13, + 0x1, 0x16, 0x03, + 0x1, 0x17, 0x86, + 0x1, 0x18, 0x0A, + 0x1, 0x19, 0x09, + 0x1, 0x1A, 0x08, + 0x1, 0x1B, 0xC2, + 0x1, 0x1C, 0x03, + 0x1, 0x1D, 0x8F, + 0x1, 0x1E, 0x0A, + 0x1, 0x1F, 0x06, + 0x1, 0x20, 0x01, + 0x1, 0x21, 0x02, + 0x1, 0x22, 0x00, + 0x1, 0x23, 0xD5, + 0x1, 0x24, 0x18, + 0x1, 0x25, 0x22, + 0x1, 0x26, 0x01, + 0x1, 0x27, 0x82, + 0x1, 0x28, 0x00, + 0x1, 0x29, 0xD5, + 0x1, 0x2A, 0x18, + 0x1, 0x2B, 0x0B, + 0x1, 0x2C, 0x28, + 0x1, 0x2D, 0x78, + 0x1, 0x2E, 0x28, + 0x1, 0x2F, 0x91, + 0x1, 0x30, 0x00, + 0x1, 0x31, 0x0B, + 0x1, 0x32, 0x00, + 0x1, 0x33, 0x0B, + 0x1, 0x34, 0x00, + 0x1, 0x35, 0xA1, + 0x1, 0x36, 0x00, + 0x1, 0x37, 0xA0, + 0x1, 0x38, 0x00, + 0x1, 0x39, 0x04, + 0x1, 0x3A, 0x28, + 0x1, 0x3B, 0x30, + 0x1, 0x3C, 0x0C, + 0x1, 0x3D, 0x04, + 0x1, 0x3E, 0x0F, + 0x1, 0x3F, 0x79, + 0x1, 0x40, 0x28, + 0x1, 0x41, 0x1E, + 0x1, 0x42, 0x2F, + 0x1, 0x43, 0x87, + 0x1, 0x44, 0x00, + 0x1, 0x45, 0x0B, + 0x1, 0x46, 0x00, + 0x1, 0x47, 0x0B, + 0x1, 0x48, 0x00, + 0x1, 0x49, 0xA7, + 0x1, 0x4A, 0x00, + 0x1, 0x4B, 0xA6, + 0x1, 0x4C, 0x00, + 0x1, 0x4D, 0x04, + 0x1, 0x4E, 0x01, + 0x1, 0x4F, 0x00, + 0x1, 0x50, 0x00, + 0x1, 0x51, 0x80, + 0x1, 0x52, 0x09, + 0x1, 0x53, 0x08, + 0x1, 0x54, 0x01, + 0x1, 0x55, 0x00, + 0x1, 0x56, 0x0F, + 0x1, 0x57, 0x79, + 0x1, 0x58, 0x09, + 0x1, 0x59, 0x05, + 0x1, 0x5A, 0x00, + 0x1, 0x5B, 0x60, + 0x1, 0x5C, 0x05, + 0x1, 0x5D, 0xD1, + 0x1, 0x5E, 0x0C, + 0x1, 0x5F, 0x3C, + 0x1, 0x60, 0x00, + 0x1, 0x61, 0xD0, + 0x1, 0x62, 0x0B, + 0x1, 0x63, 0x03, + 0x1, 0x64, 0x28, + 0x1, 0x65, 0x10, + 0x1, 0x66, 0x2A, + 0x1, 0x67, 0x39, + 0x1, 0x68, 0x0B, + 0x1, 0x69, 0x02, + 0x1, 0x6A, 0x28, + 0x1, 0x6B, 0x10, + 0x1, 0x6C, 0x2A, + 0x1, 0x6D, 0x61, + 0x1, 0x6E, 0x0C, + 0x1, 0x6F, 0x00, + 0x1, 0x70, 0x0F, + 0x1, 0x71, 0x79, + 0x1, 0x72, 0x00, + 0x1, 0x73, 0x0B, + 0x1, 0x74, 0x00, + 0x1, 0x75, 0x0B, + 0x1, 0x76, 0x00, + 0x1, 0x77, 0xA1, + 0x1, 0x78, 0x00, + 0x1, 0x79, 0xA0, + 0x1, 0x7A, 0x00, + 0x1, 0x7B, 0x04, + 0x1, 0xFF, 0x04, + 0x1, 0x79, 0x1D, + 0x1, 0x7B, 0x27, + 0x1, 0x96, 0x0E, + 0x1, 0x97, 0xFE, + 0x1, 0x98, 0x03, + 0x1, 0x99, 0xEF, + 0x1, 0x9A, 0x02, + 0x1, 0x9B, 0x44, + 0x1, 0x73, 0x07, + 0x1, 0x70, 0x01, + 0x1, 0xff, 0x01, + 0x1, 0x00, 0x01, + 0x1, 0xff, 0x00, + 0x00, 0x00, 0x00 +}; + +#ifdef __cplusplus +} +#endif + +#endif /* _VL53L0X_INTERRUPT_THRESHOLD_SETTINGS_H_ */ diff --git a/STS/TOF/vl53l0x/vl53l0x_platform.c b/STS/TOF/vl53l0x/vl53l0x_platform.c index 393b938..1263fb2 100644 --- a/STS/TOF/vl53l0x/vl53l0x_platform.c +++ b/STS/TOF/vl53l0x/vl53l0x_platform.c @@ -1,237 +1,237 @@ -//?????#include "hal.h" -#include "vl53l0x_platform.h" -#include "vl53l0x_api.h" - -#include "stm32wlxx_hal.h" -#include <string.h> - -#define I2C_TIME_OUT_BASE 10 -#define I2C_TIME_OUT_BYTE 1 -#define VL53L0X_OsDelay(...) HAL_Delay(2) - - -#ifndef HAL_I2C_MODULE_ENABLED -#warning "HAL I2C module must be enable " -#endif -//extern I2C_HandleTypeDef hi2c1; -//#define VL53L0X_pI2cHandle (&hi2c1) - -/* when not customized by application define dummy one */ -#ifndef VL53L0X_GetI2cBus -/** This macro can be overloaded by user to enforce i2c sharing in RTOS context - */ -# define VL53L0X_GetI2cBus(...) (void)0 -#endif - -#ifndef VL53L0X_PutI2cBus -/** This macro can be overloaded by user to enforce i2c sharing in RTOS context - */ -# define VL53L0X_PutI2cBus(...) (void)0 -#endif - -#ifndef VL53L0X_OsDelay -# define VL53L0X_OsDelay(...) (void)0 -#endif - - -uint8_t _I2CBuffer[64]; - -int _I2CWrite(VL53L0X_DEV Dev, uint8_t *pdata, uint32_t count) { - int status; - int i2c_time_out = I2C_TIME_OUT_BASE+ count* I2C_TIME_OUT_BYTE; - - status = HAL_I2C_Master_Transmit(Dev->I2cHandle, Dev->I2cDevAddr, pdata, count, i2c_time_out); - if (status) { - //VL6180x_ErrLog("I2C error 0x%x %d len", dev->I2cAddr, len); - //XNUCLEO6180XA1_I2C1_Init(&hi2c1); - } - return status; -} - -int _I2CRead(VL53L0X_DEV Dev, uint8_t *pdata, uint32_t count) { - int status; - int i2c_time_out = I2C_TIME_OUT_BASE+ count* I2C_TIME_OUT_BYTE; - - status = HAL_I2C_Master_Receive(Dev->I2cHandle, Dev->I2cDevAddr|1, pdata, count, i2c_time_out); - if (status) { - //VL6180x_ErrLog("I2C error 0x%x %d len", dev->I2cAddr, len); - //XNUCLEO6180XA1_I2C1_Init(&hi2c1); - } - return status; -} - -// the ranging_sensor_comms.dll will take care of the page selection -VL53L0X_Error VL53L0X_WriteMulti(VL53L0X_DEV Dev, uint8_t index, uint8_t *pdata, uint32_t count) { - int status_int; - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - if (count > sizeof(_I2CBuffer) - 1) { - return VL53L0X_ERROR_INVALID_PARAMS; - } - _I2CBuffer[0] = index; - memcpy(&_I2CBuffer[1], pdata, count); - VL53L0X_GetI2cBus(); - status_int = _I2CWrite(Dev, _I2CBuffer, count + 1); - if (status_int != 0) { - Status = VL53L0X_ERROR_CONTROL_INTERFACE; - } - VL53L0X_PutI2cBus(); - return Status; -} - -// the ranging_sensor_comms.dll will take care of the page selection -VL53L0X_Error VL53L0X_ReadMulti(VL53L0X_DEV Dev, uint8_t index, uint8_t *pdata, uint32_t count) { - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - int32_t status_int; - VL53L0X_GetI2cBus(); - status_int = _I2CWrite(Dev, &index, 1); - if (status_int != 0) { - Status = VL53L0X_ERROR_CONTROL_INTERFACE; - goto done; - } - status_int = _I2CRead(Dev, pdata, count); - if (status_int != 0) { - Status = VL53L0X_ERROR_CONTROL_INTERFACE; - } -done: - VL53L0X_PutI2cBus(); - return Status; -} - -VL53L0X_Error VL53L0X_WrByte(VL53L0X_DEV Dev, uint8_t index, uint8_t data) { - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - int32_t status_int; - - _I2CBuffer[0] = index; - _I2CBuffer[1] = data; - - VL53L0X_GetI2cBus(); - status_int = _I2CWrite(Dev, _I2CBuffer, 2); - if (status_int != 0) { - Status = VL53L0X_ERROR_CONTROL_INTERFACE; - } - VL53L0X_PutI2cBus(); - return Status; -} - -VL53L0X_Error VL53L0X_WrWord(VL53L0X_DEV Dev, uint8_t index, uint16_t data) { - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - int32_t status_int; - - _I2CBuffer[0] = index; - _I2CBuffer[1] = data >> 8; - _I2CBuffer[2] = data & 0x00FF; - - VL53L0X_GetI2cBus(); - status_int = _I2CWrite(Dev, _I2CBuffer, 3); - if (status_int != 0) { - Status = VL53L0X_ERROR_CONTROL_INTERFACE; - } - VL53L0X_PutI2cBus(); - return Status; -} - -VL53L0X_Error VL53L0X_WrDWord(VL53L0X_DEV Dev, uint8_t index, uint32_t data) { - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - int32_t status_int; - _I2CBuffer[0] = index; - _I2CBuffer[1] = (data >> 24) & 0xFF; - _I2CBuffer[2] = (data >> 16) & 0xFF; - _I2CBuffer[3] = (data >> 8) & 0xFF; - _I2CBuffer[4] = (data >> 0 ) & 0xFF; - VL53L0X_GetI2cBus(); - status_int = _I2CWrite(Dev, _I2CBuffer, 5); - if (status_int != 0) { - Status = VL53L0X_ERROR_CONTROL_INTERFACE; - } - VL53L0X_PutI2cBus(); - return Status; -} - -VL53L0X_Error VL53L0X_UpdateByte(VL53L0X_DEV Dev, uint8_t index, uint8_t AndData, uint8_t OrData) { - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - uint8_t data; - - Status = VL53L0X_RdByte(Dev, index, &data); - if (Status) { - goto done; - } - data = (data & AndData) | OrData; - Status = VL53L0X_WrByte(Dev, index, data); -done: - return Status; -} - -VL53L0X_Error VL53L0X_RdByte(VL53L0X_DEV Dev, uint8_t index, uint8_t *data) { - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - int32_t status_int; - - VL53L0X_GetI2cBus(); - status_int = _I2CWrite(Dev, &index, 1); - if( status_int ){ - Status = VL53L0X_ERROR_CONTROL_INTERFACE; - goto done; - } - status_int = _I2CRead(Dev, data, 1); - if (status_int != 0) { - Status = VL53L0X_ERROR_CONTROL_INTERFACE; - } -done: - VL53L0X_PutI2cBus(); - return Status; -} - -VL53L0X_Error VL53L0X_RdWord(VL53L0X_DEV Dev, uint8_t index, uint16_t *data) { - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - int32_t status_int; - - VL53L0X_GetI2cBus(); - status_int = _I2CWrite(Dev, &index, 1); - - if( status_int ){ - Status = VL53L0X_ERROR_CONTROL_INTERFACE; - goto done; - } - status_int = _I2CRead(Dev, _I2CBuffer, 2); - if (status_int != 0) { - Status = VL53L0X_ERROR_CONTROL_INTERFACE; - goto done; - } - - *data = ((uint16_t)_I2CBuffer[0]<<8) + (uint16_t)_I2CBuffer[1]; -done: - VL53L0X_PutI2cBus(); - return Status; -} - -VL53L0X_Error VL53L0X_RdDWord(VL53L0X_DEV Dev, uint8_t index, uint32_t *data) { - VL53L0X_Error Status = VL53L0X_ERROR_NONE; - int32_t status_int; - - VL53L0X_GetI2cBus(); - status_int = _I2CWrite(Dev, &index, 1); - if (status_int != 0) { - Status = VL53L0X_ERROR_CONTROL_INTERFACE; - goto done; - } - status_int = _I2CRead(Dev, _I2CBuffer, 4); - if (status_int != 0) { - Status = VL53L0X_ERROR_CONTROL_INTERFACE; - goto done; - } - - *data = ((uint32_t)_I2CBuffer[0]<<24) + ((uint32_t)_I2CBuffer[1]<<16) + ((uint32_t)_I2CBuffer[2]<<8) + (uint32_t)_I2CBuffer[3]; - -done: - VL53L0X_PutI2cBus(); - return Status; -} - -VL53L0X_Error VL53L0X_PollingDelay(VL53L0X_DEV Dev) { - VL53L0X_Error status = VL53L0X_ERROR_NONE; - - // do nothing - VL53L0X_OsDelay(); - return status; -} - -//end of file +//?????#include "hal.h" +#include "vl53l0x_platform.h" +#include "vl53l0x_api.h" + +#include "stm32wlxx_hal.h" +#include <string.h> + +#define I2C_TIME_OUT_BASE 10 +#define I2C_TIME_OUT_BYTE 1 +#define VL53L0X_OsDelay(...) HAL_Delay(2) + + +#ifndef HAL_I2C_MODULE_ENABLED +#warning "HAL I2C module must be enable " +#endif +//extern I2C_HandleTypeDef hi2c1; +//#define VL53L0X_pI2cHandle (&hi2c1) + +/* when not customized by application define dummy one */ +#ifndef VL53L0X_GetI2cBus +/** This macro can be overloaded by user to enforce i2c sharing in RTOS context + */ +# define VL53L0X_GetI2cBus(...) (void)0 +#endif + +#ifndef VL53L0X_PutI2cBus +/** This macro can be overloaded by user to enforce i2c sharing in RTOS context + */ +# define VL53L0X_PutI2cBus(...) (void)0 +#endif + +#ifndef VL53L0X_OsDelay +# define VL53L0X_OsDelay(...) (void)0 +#endif + + +uint8_t _I2CBuffer[64]; + +int _I2CWrite(VL53L0X_DEV Dev, uint8_t *pdata, uint32_t count) { + int status; + int i2c_time_out = I2C_TIME_OUT_BASE+ count* I2C_TIME_OUT_BYTE; + + status = HAL_I2C_Master_Transmit(Dev->I2cHandle, Dev->I2cDevAddr, pdata, count, i2c_time_out); + if (status) { + //VL6180x_ErrLog("I2C error 0x%x %d len", dev->I2cAddr, len); + //XNUCLEO6180XA1_I2C1_Init(&hi2c1); + } + return status; +} + +int _I2CRead(VL53L0X_DEV Dev, uint8_t *pdata, uint32_t count) { + int status; + int i2c_time_out = I2C_TIME_OUT_BASE+ count* I2C_TIME_OUT_BYTE; + + status = HAL_I2C_Master_Receive(Dev->I2cHandle, Dev->I2cDevAddr|1, pdata, count, i2c_time_out); + if (status) { + //VL6180x_ErrLog("I2C error 0x%x %d len", dev->I2cAddr, len); + //XNUCLEO6180XA1_I2C1_Init(&hi2c1); + } + return status; +} + +// the ranging_sensor_comms.dll will take care of the page selection +VL53L0X_Error VL53L0X_WriteMulti(VL53L0X_DEV Dev, uint8_t index, uint8_t *pdata, uint32_t count) { + int status_int; + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + if (count > sizeof(_I2CBuffer) - 1) { + return VL53L0X_ERROR_INVALID_PARAMS; + } + _I2CBuffer[0] = index; + memcpy(&_I2CBuffer[1], pdata, count); + VL53L0X_GetI2cBus(); + status_int = _I2CWrite(Dev, _I2CBuffer, count + 1); + if (status_int != 0) { + Status = VL53L0X_ERROR_CONTROL_INTERFACE; + } + VL53L0X_PutI2cBus(); + return Status; +} + +// the ranging_sensor_comms.dll will take care of the page selection +VL53L0X_Error VL53L0X_ReadMulti(VL53L0X_DEV Dev, uint8_t index, uint8_t *pdata, uint32_t count) { + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + int32_t status_int; + VL53L0X_GetI2cBus(); + status_int = _I2CWrite(Dev, &index, 1); + if (status_int != 0) { + Status = VL53L0X_ERROR_CONTROL_INTERFACE; + goto done; + } + status_int = _I2CRead(Dev, pdata, count); + if (status_int != 0) { + Status = VL53L0X_ERROR_CONTROL_INTERFACE; + } +done: + VL53L0X_PutI2cBus(); + return Status; +} + +VL53L0X_Error VL53L0X_WrByte(VL53L0X_DEV Dev, uint8_t index, uint8_t data) { + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + int32_t status_int; + + _I2CBuffer[0] = index; + _I2CBuffer[1] = data; + + VL53L0X_GetI2cBus(); + status_int = _I2CWrite(Dev, _I2CBuffer, 2); + if (status_int != 0) { + Status = VL53L0X_ERROR_CONTROL_INTERFACE; + } + VL53L0X_PutI2cBus(); + return Status; +} + +VL53L0X_Error VL53L0X_WrWord(VL53L0X_DEV Dev, uint8_t index, uint16_t data) { + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + int32_t status_int; + + _I2CBuffer[0] = index; + _I2CBuffer[1] = data >> 8; + _I2CBuffer[2] = data & 0x00FF; + + VL53L0X_GetI2cBus(); + status_int = _I2CWrite(Dev, _I2CBuffer, 3); + if (status_int != 0) { + Status = VL53L0X_ERROR_CONTROL_INTERFACE; + } + VL53L0X_PutI2cBus(); + return Status; +} + +VL53L0X_Error VL53L0X_WrDWord(VL53L0X_DEV Dev, uint8_t index, uint32_t data) { + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + int32_t status_int; + _I2CBuffer[0] = index; + _I2CBuffer[1] = (data >> 24) & 0xFF; + _I2CBuffer[2] = (data >> 16) & 0xFF; + _I2CBuffer[3] = (data >> 8) & 0xFF; + _I2CBuffer[4] = (data >> 0 ) & 0xFF; + VL53L0X_GetI2cBus(); + status_int = _I2CWrite(Dev, _I2CBuffer, 5); + if (status_int != 0) { + Status = VL53L0X_ERROR_CONTROL_INTERFACE; + } + VL53L0X_PutI2cBus(); + return Status; +} + +VL53L0X_Error VL53L0X_UpdateByte(VL53L0X_DEV Dev, uint8_t index, uint8_t AndData, uint8_t OrData) { + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + uint8_t data; + + Status = VL53L0X_RdByte(Dev, index, &data); + if (Status) { + goto done; + } + data = (data & AndData) | OrData; + Status = VL53L0X_WrByte(Dev, index, data); +done: + return Status; +} + +VL53L0X_Error VL53L0X_RdByte(VL53L0X_DEV Dev, uint8_t index, uint8_t *data) { + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + int32_t status_int; + + VL53L0X_GetI2cBus(); + status_int = _I2CWrite(Dev, &index, 1); + if( status_int ){ + Status = VL53L0X_ERROR_CONTROL_INTERFACE; + goto done; + } + status_int = _I2CRead(Dev, data, 1); + if (status_int != 0) { + Status = VL53L0X_ERROR_CONTROL_INTERFACE; + } +done: + VL53L0X_PutI2cBus(); + return Status; +} + +VL53L0X_Error VL53L0X_RdWord(VL53L0X_DEV Dev, uint8_t index, uint16_t *data) { + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + int32_t status_int; + + VL53L0X_GetI2cBus(); + status_int = _I2CWrite(Dev, &index, 1); + + if( status_int ){ + Status = VL53L0X_ERROR_CONTROL_INTERFACE; + goto done; + } + status_int = _I2CRead(Dev, _I2CBuffer, 2); + if (status_int != 0) { + Status = VL53L0X_ERROR_CONTROL_INTERFACE; + goto done; + } + + *data = ((uint16_t)_I2CBuffer[0]<<8) + (uint16_t)_I2CBuffer[1]; +done: + VL53L0X_PutI2cBus(); + return Status; +} + +VL53L0X_Error VL53L0X_RdDWord(VL53L0X_DEV Dev, uint8_t index, uint32_t *data) { + VL53L0X_Error Status = VL53L0X_ERROR_NONE; + int32_t status_int; + + VL53L0X_GetI2cBus(); + status_int = _I2CWrite(Dev, &index, 1); + if (status_int != 0) { + Status = VL53L0X_ERROR_CONTROL_INTERFACE; + goto done; + } + status_int = _I2CRead(Dev, _I2CBuffer, 4); + if (status_int != 0) { + Status = VL53L0X_ERROR_CONTROL_INTERFACE; + goto done; + } + + *data = ((uint32_t)_I2CBuffer[0]<<24) + ((uint32_t)_I2CBuffer[1]<<16) + ((uint32_t)_I2CBuffer[2]<<8) + (uint32_t)_I2CBuffer[3]; + +done: + VL53L0X_PutI2cBus(); + return Status; +} + +VL53L0X_Error VL53L0X_PollingDelay(VL53L0X_DEV Dev) { + VL53L0X_Error status = VL53L0X_ERROR_NONE; + + // do nothing + VL53L0X_OsDelay(); + return status; +} + +//end of file diff --git a/STS/TOF/vl53l0x/vl53l0x_platform.h b/STS/TOF/vl53l0x/vl53l0x_platform.h index 9ffbc79..7e49e8c 100644 --- a/STS/TOF/vl53l0x/vl53l0x_platform.h +++ b/STS/TOF/vl53l0x/vl53l0x_platform.h @@ -1,267 +1,267 @@ -/******************************************************************************* -Copyright � 2015, STMicroelectronics International N.V. -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND -NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. -IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -********************************************************************************/ - - -#ifndef _VL53L0X_PLATFORM_H_ -#define _VL53L0X_PLATFORM_H_ - -#include "vl53l0x_def.h" -#include "vl53l0x_platform_log.h" - -#ifdef __cplusplus -extern "C" { -#endif - -#include "stm32wlxx_hal.h" - - -#if TRACE_UART -#define trace_printf uart_printf -#endif - -/** - * @file vl53l0x_platform.h - * - * @brief All end user OS/platform/application porting - */ - -/** - * @defgroup VL53L0X_platform_group VL53L0X Platform Functions - * @brief VL53L0X Platform Functions - * @{ - */ - -/** - * @struct VL53L0X_Dev_t - * @brief Generic PAL device type that does link between API and platform abstraction layer - * - */ -typedef struct { - VL53L0X_DevData_t Data; /*!< embed ST Ewok Dev data as "Data"*/ - - /*!< user specific field */ - - I2C_HandleTypeDef *I2cHandle; - uint8_t I2cDevAddr; - - char DevLetter; - - int Id; - int Present; - int Enabled; - int Ready; - - uint8_t comms_type; - uint16_t comms_speed_khz; - - int LeakyRange; - int LeakyFirst; - uint8_t RangeStatus; - uint8_t PreviousRangeStatus; - FixPoint1616_t SignalRateRtnMegaCps; - uint16_t EffectiveSpadRtnCount; - uint32_t StartTime; - -} VL53L0X_Dev_t; - - -/** - * @brief Declare the device Handle as a pointer of the structure @a VL53L0X_Dev_t. - * - */ -typedef VL53L0X_Dev_t* VL53L0X_DEV; - -/** - * @def PALDevDataGet - * @brief Get ST private structure @a VL53L0X_DevData_t data access - * - * @param Dev Device Handle - * @param field ST structure field name - * It maybe used and as real data "ref" not just as "get" for sub-structure item - * like PALDevDataGet(FilterData.field)[i] or PALDevDataGet(FilterData.MeasurementIndex)++ - */ -#define PALDevDataGet(Dev, field) (Dev->Data.field) - -/** - * @def PALDevDataSet(Dev, field, data) - * @brief Set ST private structure @a VL53L0X_DevData_t data field - * @param Dev Device Handle - * @param field ST structure field name - * @param data Data to be set - */ -#define PALDevDataSet(Dev, field, data) (Dev->Data.field)=(data) - - -/** - * @defgroup VL53L0X_registerAccess_group PAL Register Access Functions - * @brief PAL Register Access Functions - * @{ - */ - -/** - * Lock comms interface to serialize all commands to a shared I2C interface for a specific device - * @param Dev Device Handle - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_Error VL53L0X_LockSequenceAccess(VL53L0X_DEV Dev); - -/** - * Unlock comms interface to serialize all commands to a shared I2C interface for a specific device - * @param Dev Device Handle - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_Error VL53L0X_UnlockSequenceAccess(VL53L0X_DEV Dev); - - -/** - * Writes the supplied byte buffer to the device - * @param Dev Device Handle - * @param index The register index - * @param pdata Pointer to uint8_t buffer containing the data to be written - * @param count Number of bytes in the supplied byte buffer - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_Error VL53L0X_WriteMulti(VL53L0X_DEV Dev, uint8_t index, uint8_t *pdata, uint32_t count); - -/** - * Reads the requested number of bytes from the device - * @param Dev Device Handle - * @param index The register index - * @param pdata Pointer to the uint8_t buffer to store read data - * @param count Number of uint8_t's to read - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_Error VL53L0X_ReadMulti(VL53L0X_DEV Dev, uint8_t index, uint8_t *pdata, uint32_t count); - -/** - * Write single byte register - * @param Dev Device Handle - * @param index The register index - * @param data 8 bit register data - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_Error VL53L0X_WrByte(VL53L0X_DEV Dev, uint8_t index, uint8_t data); - -/** - * Write word register - * @param Dev Device Handle - * @param index The register index - * @param data 16 bit register data - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_Error VL53L0X_WrWord(VL53L0X_DEV Dev, uint8_t index, uint16_t data); - -/** - * Write double word (4 byte) register - * @param Dev Device Handle - * @param index The register index - * @param data 32 bit register data - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_Error VL53L0X_WrDWord(VL53L0X_DEV Dev, uint8_t index, uint32_t data); - -/** - * Read single byte register - * @param Dev Device Handle - * @param index The register index - * @param data pointer to 8 bit data - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_Error VL53L0X_RdByte(VL53L0X_DEV Dev, uint8_t index, uint8_t *data); - -/** - * Read word (2byte) register - * @param Dev Device Handle - * @param index The register index - * @param data pointer to 16 bit data - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_Error VL53L0X_RdWord(VL53L0X_DEV Dev, uint8_t index, uint16_t *data); - -/** - * Read dword (4byte) register - * @param Dev Device Handle - * @param index The register index - * @param data pointer to 32 bit data - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_Error VL53L0X_RdDWord(VL53L0X_DEV Dev, uint8_t index, uint32_t *data); - -/** - * Threat safe Update (read/modify/write) single byte register - * - * Final_reg = (Initial_reg & and_data) |or_data - * - * @param Dev Device Handle - * @param index The register index - * @param AndData 8 bit and data - * @param OrData 8 bit or data - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_Error VL53L0X_UpdateByte(VL53L0X_DEV Dev, uint8_t index, uint8_t AndData, uint8_t OrData); - -/** @} end of VL53L0X_registerAccess_group */ - - -/** - * @brief execute delay in all polling API call - * - * A typical multi-thread or RTOs implementation is to sleep the task for some 5ms (with 100Hz max rate faster polling is not needed) - * if nothing specific is need you can define it as an empty/void macro - * @code - * #define VL53L0X_PollingDelay(...) (void)0 - * @endcode - * @param Dev Device Handle - * @return VL53L0X_ERROR_NONE Success - * @return "Other error code" See ::VL53L0X_Error - */ -VL53L0X_Error VL53L0X_PollingDelay(VL53L0X_DEV Dev); /* usually best implemented as a real function */ - -/** @} end of VL53L0X_platform_group */ - -#define VL53L0X_COPYSTRING(str, ...) strcpy(str, ##__VA_ARGS__) - -#ifdef __cplusplus -} -#endif - -#endif /* _VL53L0X_PLATFORM_H_ */ - - - +/******************************************************************************* +Copyright � 2015, STMicroelectronics International N.V. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND +NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. +IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************************/ + + +#ifndef _VL53L0X_PLATFORM_H_ +#define _VL53L0X_PLATFORM_H_ + +#include "vl53l0x_def.h" +#include "vl53l0x_platform_log.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#include "stm32wlxx_hal.h" + + +#if TRACE_UART +#define trace_printf uart_printf +#endif + +/** + * @file vl53l0x_platform.h + * + * @brief All end user OS/platform/application porting + */ + +/** + * @defgroup VL53L0X_platform_group VL53L0X Platform Functions + * @brief VL53L0X Platform Functions + * @{ + */ + +/** + * @struct VL53L0X_Dev_t + * @brief Generic PAL device type that does link between API and platform abstraction layer + * + */ +typedef struct { + VL53L0X_DevData_t Data; /*!< embed ST Ewok Dev data as "Data"*/ + + /*!< user specific field */ + + I2C_HandleTypeDef *I2cHandle; + uint8_t I2cDevAddr; + + char DevLetter; + + int Id; + int Present; + int Enabled; + int Ready; + + uint8_t comms_type; + uint16_t comms_speed_khz; + + int LeakyRange; + int LeakyFirst; + uint8_t RangeStatus; + uint8_t PreviousRangeStatus; + FixPoint1616_t SignalRateRtnMegaCps; + uint16_t EffectiveSpadRtnCount; + uint32_t StartTime; + +} VL53L0X_Dev_t; + + +/** + * @brief Declare the device Handle as a pointer of the structure @a VL53L0X_Dev_t. + * + */ +typedef VL53L0X_Dev_t* VL53L0X_DEV; + +/** + * @def PALDevDataGet + * @brief Get ST private structure @a VL53L0X_DevData_t data access + * + * @param Dev Device Handle + * @param field ST structure field name + * It maybe used and as real data "ref" not just as "get" for sub-structure item + * like PALDevDataGet(FilterData.field)[i] or PALDevDataGet(FilterData.MeasurementIndex)++ + */ +#define PALDevDataGet(Dev, field) (Dev->Data.field) + +/** + * @def PALDevDataSet(Dev, field, data) + * @brief Set ST private structure @a VL53L0X_DevData_t data field + * @param Dev Device Handle + * @param field ST structure field name + * @param data Data to be set + */ +#define PALDevDataSet(Dev, field, data) (Dev->Data.field)=(data) + + +/** + * @defgroup VL53L0X_registerAccess_group PAL Register Access Functions + * @brief PAL Register Access Functions + * @{ + */ + +/** + * Lock comms interface to serialize all commands to a shared I2C interface for a specific device + * @param Dev Device Handle + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_Error VL53L0X_LockSequenceAccess(VL53L0X_DEV Dev); + +/** + * Unlock comms interface to serialize all commands to a shared I2C interface for a specific device + * @param Dev Device Handle + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_Error VL53L0X_UnlockSequenceAccess(VL53L0X_DEV Dev); + + +/** + * Writes the supplied byte buffer to the device + * @param Dev Device Handle + * @param index The register index + * @param pdata Pointer to uint8_t buffer containing the data to be written + * @param count Number of bytes in the supplied byte buffer + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_Error VL53L0X_WriteMulti(VL53L0X_DEV Dev, uint8_t index, uint8_t *pdata, uint32_t count); + +/** + * Reads the requested number of bytes from the device + * @param Dev Device Handle + * @param index The register index + * @param pdata Pointer to the uint8_t buffer to store read data + * @param count Number of uint8_t's to read + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_Error VL53L0X_ReadMulti(VL53L0X_DEV Dev, uint8_t index, uint8_t *pdata, uint32_t count); + +/** + * Write single byte register + * @param Dev Device Handle + * @param index The register index + * @param data 8 bit register data + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_Error VL53L0X_WrByte(VL53L0X_DEV Dev, uint8_t index, uint8_t data); + +/** + * Write word register + * @param Dev Device Handle + * @param index The register index + * @param data 16 bit register data + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_Error VL53L0X_WrWord(VL53L0X_DEV Dev, uint8_t index, uint16_t data); + +/** + * Write double word (4 byte) register + * @param Dev Device Handle + * @param index The register index + * @param data 32 bit register data + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_Error VL53L0X_WrDWord(VL53L0X_DEV Dev, uint8_t index, uint32_t data); + +/** + * Read single byte register + * @param Dev Device Handle + * @param index The register index + * @param data pointer to 8 bit data + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_Error VL53L0X_RdByte(VL53L0X_DEV Dev, uint8_t index, uint8_t *data); + +/** + * Read word (2byte) register + * @param Dev Device Handle + * @param index The register index + * @param data pointer to 16 bit data + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_Error VL53L0X_RdWord(VL53L0X_DEV Dev, uint8_t index, uint16_t *data); + +/** + * Read dword (4byte) register + * @param Dev Device Handle + * @param index The register index + * @param data pointer to 32 bit data + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_Error VL53L0X_RdDWord(VL53L0X_DEV Dev, uint8_t index, uint32_t *data); + +/** + * Threat safe Update (read/modify/write) single byte register + * + * Final_reg = (Initial_reg & and_data) |or_data + * + * @param Dev Device Handle + * @param index The register index + * @param AndData 8 bit and data + * @param OrData 8 bit or data + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_Error VL53L0X_UpdateByte(VL53L0X_DEV Dev, uint8_t index, uint8_t AndData, uint8_t OrData); + +/** @} end of VL53L0X_registerAccess_group */ + + +/** + * @brief execute delay in all polling API call + * + * A typical multi-thread or RTOs implementation is to sleep the task for some 5ms (with 100Hz max rate faster polling is not needed) + * if nothing specific is need you can define it as an empty/void macro + * @code + * #define VL53L0X_PollingDelay(...) (void)0 + * @endcode + * @param Dev Device Handle + * @return VL53L0X_ERROR_NONE Success + * @return "Other error code" See ::VL53L0X_Error + */ +VL53L0X_Error VL53L0X_PollingDelay(VL53L0X_DEV Dev); /* usually best implemented as a real function */ + +/** @} end of VL53L0X_platform_group */ + +#define VL53L0X_COPYSTRING(str, ...) strcpy(str, ##__VA_ARGS__) + +#ifdef __cplusplus +} +#endif + +#endif /* _VL53L0X_PLATFORM_H_ */ + + + diff --git a/STS/TOF/vl53l0x/vl53l0x_platform_log.c b/STS/TOF/vl53l0x/vl53l0x_platform_log.c index b34420d..bb56edf 100644 --- a/STS/TOF/vl53l0x/vl53l0x_platform_log.c +++ b/STS/TOF/vl53l0x/vl53l0x_platform_log.c @@ -1,59 +1,59 @@ -/* - * COPYRIGHT (C) STMicroelectronics 2015. All rights reserved. - * - * This software is the confidential and proprietary information of - * STMicroelectronics ("Confidential Information"). You shall not - * disclose such Confidential Information and shall use it only in - * accordance with the terms of the license agreement you entered into - * with STMicroelectronics - * - * Programming Golden Rule: Keep it Simple! - * - */ - -/*! - * \file VL53L0X_platform_log.c - * \brief Code function defintions for Ewok Platform Layer - * - */ - - -#include <stdio.h> // sprintf(), vsnprintf(), printf() -#include <stdarg.h> // sprintf(), vsnprintf(), printf() -#ifdef _MSC_VER -#define snprintf _snprintf -#endif - -#include "vl53l0x_def.h" -#include "vl53l0x_platform_log.h" - - -uint32_t _trace_level = TRACE_LEVEL_WARNING; -uint32_t _trace_modules = TRACE_MODULE_NONE; -uint32_t _trace_functions = TRACE_FUNCTION_NONE; - -#if defined(VL53L0X_LOG_ENABLE) && (TRACE_UART==1) -int32_t VL53L0X_trace_config(char *filename, uint32_t modules, uint32_t level, uint32_t functions) -{ - int STATUS = 0; - - _trace_functions = functions; - _trace_level = level; - _trace_modules = modules; - - return STATUS; -} - - -void trace_print_module_function(uint32_t module, uint32_t level, uint32_t function, const char *format, ...) -{ - if ( ((level <=_trace_level) && ((module & _trace_modules) > 0)) - || ((function & _trace_functions) > 0) ) - { - va_list arg_list; - va_start(arg_list, format); - trace_vprintf( format, arg_list); - va_end(arg_list); - } -} -#endif +/* + * COPYRIGHT (C) STMicroelectronics 2015. All rights reserved. + * + * This software is the confidential and proprietary information of + * STMicroelectronics ("Confidential Information"). You shall not + * disclose such Confidential Information and shall use it only in + * accordance with the terms of the license agreement you entered into + * with STMicroelectronics + * + * Programming Golden Rule: Keep it Simple! + * + */ + +/*! + * \file VL53L0X_platform_log.c + * \brief Code function defintions for Ewok Platform Layer + * + */ + + +#include <stdio.h> // sprintf(), vsnprintf(), printf() +#include <stdarg.h> // sprintf(), vsnprintf(), printf() +#ifdef _MSC_VER +#define snprintf _snprintf +#endif + +#include "vl53l0x_def.h" +#include "vl53l0x_platform_log.h" + + +uint32_t _trace_level = TRACE_LEVEL_WARNING; +uint32_t _trace_modules = TRACE_MODULE_NONE; +uint32_t _trace_functions = TRACE_FUNCTION_NONE; + +#if defined(VL53L0X_LOG_ENABLE) && (TRACE_UART==1) +int32_t VL53L0X_trace_config(char *filename, uint32_t modules, uint32_t level, uint32_t functions) +{ + int STATUS = 0; + + _trace_functions = functions; + _trace_level = level; + _trace_modules = modules; + + return STATUS; +} + + +void trace_print_module_function(uint32_t module, uint32_t level, uint32_t function, const char *format, ...) +{ + if ( ((level <=_trace_level) && ((module & _trace_modules) > 0)) + || ((function & _trace_functions) > 0) ) + { + va_list arg_list; + va_start(arg_list, format); + trace_vprintf( format, arg_list); + va_end(arg_list); + } +} +#endif diff --git a/STS/TOF/vl53l0x/vl53l0x_platform_log.h b/STS/TOF/vl53l0x/vl53l0x_platform_log.h index c525bc9..2415b08 100644 --- a/STS/TOF/vl53l0x/vl53l0x_platform_log.h +++ b/STS/TOF/vl53l0x/vl53l0x_platform_log.h @@ -1,121 +1,121 @@ -/******************************************************************************* -Copyright � 2015, STMicroelectronics International N.V. -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND -NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. -IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -********************************************************************************/ - - -#ifndef _VL53L0X_PLATFORM_LOG_H_ -#define _VL53L0X_PLATFORM_LOG_H_ - -#include <stdio.h> -#include <string.h> -/* LOG Functions */ - -#ifdef __cplusplus -extern "C" { -#endif - - -/** - * @file vl53l0x_platform_log.h - * - * @brief platform log function definition - */ - -//#define VL53L0X_LOG_ENABLE 0 - -enum { - TRACE_LEVEL_NONE, - TRACE_LEVEL_ERRORS, - TRACE_LEVEL_WARNING, - TRACE_LEVEL_INFO, - TRACE_LEVEL_DEBUG, - TRACE_LEVEL_ALL, - TRACE_LEVEL_IGNORE -}; - -enum { - TRACE_FUNCTION_NONE = 0, - TRACE_FUNCTION_I2C = 1, - TRACE_FUNCTION_ALL = 0x7fffffff //all bits except sign -}; - -enum { - TRACE_MODULE_NONE = 0x0, - TRACE_MODULE_API = 0x1, - TRACE_MODULE_PLATFORM = 0x2, - TRACE_MODULE_ALL = 0x7fffffff //all bits except sign -}; - - -#if defined(VL53L0X_LOG_ENABLE) && (TRACE_UART==1) - -#include <stdarg.h> -extern int uart_printf(const char *msg, ...); -extern int uart_vprintf(const char *msg, va_list ap); - -#define trace_printf uart_printf -#define trace_vprintf uart_vprintf - - -extern uint32_t _trace_level; - - - -int32_t VL53L0X_trace_config(char *filename, uint32_t modules, uint32_t level, uint32_t functions); -void trace_print_module_function(uint32_t module, uint32_t level, uint32_t function, const char *format, ...); - - -//extern FILE * log_file; - -#define LOG_GET_TIME() (int)HAL_GetTick() - -#define _LOG_FUNCTION_START(module, fmt, ... ) \ - trace_print_module_function(module, _trace_level, TRACE_FUNCTION_ALL, "%ld <START> %s "fmt"\n", LOG_GET_TIME(), __FUNCTION__, ##__VA_ARGS__); - -#define _LOG_FUNCTION_END(module, status, ... )\ - trace_print_module_function(module, _trace_level, TRACE_FUNCTION_ALL, "%d <END> %s %d\n", LOG_GET_TIME(), __FUNCTION__, (int)status, ##__VA_ARGS__) - -#define _LOG_FUNCTION_END_FMT(module, status, fmt, ... )\ - trace_print_module_function(module, _trace_level, TRACE_FUNCTION_ALL, "%d <END> %s %d "fmt"\n", LOG_GET_TIME(), __FUNCTION__, (int)status,##__VA_ARGS__) - - -#else /* VL53L0X_LOG_ENABLE no logging or no TRACE_UART */ - #define VL53L0X_ErrLog(...) (void)0 - #define _LOG_FUNCTION_START(module, fmt, ... ) (void)0 - #define _LOG_FUNCTION_END(module, status, ... ) (void)0 - #define _LOG_FUNCTION_END_FMT(module, status, fmt, ... ) (void)0 - #define trace_vprintf(...) (void)0 - #define VL53L0X_trace_config(...) (void)0 - -#endif /* else */ - -#define VL53L0_COPYSTRING(str, ...) strcpy(str, ##__VA_ARGS__) - -#endif /* _VL53L0X_PLATFORM_LOG_H_ */ - - - +/******************************************************************************* +Copyright � 2015, STMicroelectronics International N.V. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND +NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. +IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************************/ + + +#ifndef _VL53L0X_PLATFORM_LOG_H_ +#define _VL53L0X_PLATFORM_LOG_H_ + +#include <stdio.h> +#include <string.h> +/* LOG Functions */ + +#ifdef __cplusplus +extern "C" { +#endif + + +/** + * @file vl53l0x_platform_log.h + * + * @brief platform log function definition + */ + +//#define VL53L0X_LOG_ENABLE 0 + +enum { + TRACE_LEVEL_NONE, + TRACE_LEVEL_ERRORS, + TRACE_LEVEL_WARNING, + TRACE_LEVEL_INFO, + TRACE_LEVEL_DEBUG, + TRACE_LEVEL_ALL, + TRACE_LEVEL_IGNORE +}; + +enum { + TRACE_FUNCTION_NONE = 0, + TRACE_FUNCTION_I2C = 1, + TRACE_FUNCTION_ALL = 0x7fffffff //all bits except sign +}; + +enum { + TRACE_MODULE_NONE = 0x0, + TRACE_MODULE_API = 0x1, + TRACE_MODULE_PLATFORM = 0x2, + TRACE_MODULE_ALL = 0x7fffffff //all bits except sign +}; + + +#if defined(VL53L0X_LOG_ENABLE) && (TRACE_UART==1) + +#include <stdarg.h> +extern int uart_printf(const char *msg, ...); +extern int uart_vprintf(const char *msg, va_list ap); + +#define trace_printf uart_printf +#define trace_vprintf uart_vprintf + + +extern uint32_t _trace_level; + + + +int32_t VL53L0X_trace_config(char *filename, uint32_t modules, uint32_t level, uint32_t functions); +void trace_print_module_function(uint32_t module, uint32_t level, uint32_t function, const char *format, ...); + + +//extern FILE * log_file; + +#define LOG_GET_TIME() (int)HAL_GetTick() + +#define _LOG_FUNCTION_START(module, fmt, ... ) \ + trace_print_module_function(module, _trace_level, TRACE_FUNCTION_ALL, "%ld <START> %s "fmt"\n", LOG_GET_TIME(), __FUNCTION__, ##__VA_ARGS__); + +#define _LOG_FUNCTION_END(module, status, ... )\ + trace_print_module_function(module, _trace_level, TRACE_FUNCTION_ALL, "%d <END> %s %d\n", LOG_GET_TIME(), __FUNCTION__, (int)status, ##__VA_ARGS__) + +#define _LOG_FUNCTION_END_FMT(module, status, fmt, ... )\ + trace_print_module_function(module, _trace_level, TRACE_FUNCTION_ALL, "%d <END> %s %d "fmt"\n", LOG_GET_TIME(), __FUNCTION__, (int)status,##__VA_ARGS__) + + +#else /* VL53L0X_LOG_ENABLE no logging or no TRACE_UART */ + #define VL53L0X_ErrLog(...) (void)0 + #define _LOG_FUNCTION_START(module, fmt, ... ) (void)0 + #define _LOG_FUNCTION_END(module, status, ... ) (void)0 + #define _LOG_FUNCTION_END_FMT(module, status, fmt, ... ) (void)0 + #define trace_vprintf(...) (void)0 + #define VL53L0X_trace_config(...) (void)0 + +#endif /* else */ + +#define VL53L0_COPYSTRING(str, ...) strcpy(str, ##__VA_ARGS__) + +#endif /* _VL53L0X_PLATFORM_LOG_H_ */ + + + diff --git a/STS/TOF/vl53l0x/vl53l0x_tuning.h b/STS/TOF/vl53l0x/vl53l0x_tuning.h index a7ad71b..918d4fb 100644 --- a/STS/TOF/vl53l0x/vl53l0x_tuning.h +++ b/STS/TOF/vl53l0x/vl53l0x_tuning.h @@ -1,146 +1,146 @@ -/******************************************************************************* -Copyright � 2016, STMicroelectronics International N.V. -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND -NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. -IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*******************************************************************************/ - - -#ifndef _VL53L0X_TUNING_H_ -#define _VL53L0X_TUNING_H_ - -#include "vl53l0x_def.h" - - -#ifdef __cplusplus -extern "C" { -#endif - - -uint8_t DefaultTuningSettings[] = { - - /* update 02/11/2015_v36 */ - 0x01, 0xFF, 0x01, - 0x01, 0x00, 0x00, - - 0x01, 0xFF, 0x00, - 0x01, 0x09, 0x00, - 0x01, 0x10, 0x00, - 0x01, 0x11, 0x00, - - 0x01, 0x24, 0x01, - 0x01, 0x25, 0xff, - 0x01, 0x75, 0x00, - - 0x01, 0xFF, 0x01, - 0x01, 0x4e, 0x2c, - 0x01, 0x48, 0x00, - 0x01, 0x30, 0x20, - - 0x01, 0xFF, 0x00, - 0x01, 0x30, 0x09, /* mja changed from 0x64. */ - 0x01, 0x54, 0x00, - 0x01, 0x31, 0x04, - 0x01, 0x32, 0x03, - 0x01, 0x40, 0x83, - 0x01, 0x46, 0x25, - 0x01, 0x60, 0x00, - 0x01, 0x27, 0x00, - 0x01, 0x50, 0x06, - 0x01, 0x51, 0x00, - 0x01, 0x52, 0x96, - 0x01, 0x56, 0x08, - 0x01, 0x57, 0x30, - 0x01, 0x61, 0x00, - 0x01, 0x62, 0x00, - 0x01, 0x64, 0x00, - 0x01, 0x65, 0x00, - 0x01, 0x66, 0xa0, - - 0x01, 0xFF, 0x01, - 0x01, 0x22, 0x32, - 0x01, 0x47, 0x14, - 0x01, 0x49, 0xff, - 0x01, 0x4a, 0x00, - - 0x01, 0xFF, 0x00, - 0x01, 0x7a, 0x0a, - 0x01, 0x7b, 0x00, - 0x01, 0x78, 0x21, - - 0x01, 0xFF, 0x01, - 0x01, 0x23, 0x34, - 0x01, 0x42, 0x00, - 0x01, 0x44, 0xff, - 0x01, 0x45, 0x26, - 0x01, 0x46, 0x05, - 0x01, 0x40, 0x40, - 0x01, 0x0E, 0x06, - 0x01, 0x20, 0x1a, - 0x01, 0x43, 0x40, - - 0x01, 0xFF, 0x00, - 0x01, 0x34, 0x03, - 0x01, 0x35, 0x44, - - 0x01, 0xFF, 0x01, - 0x01, 0x31, 0x04, - 0x01, 0x4b, 0x09, - 0x01, 0x4c, 0x05, - 0x01, 0x4d, 0x04, - - - 0x01, 0xFF, 0x00, - 0x01, 0x44, 0x00, - 0x01, 0x45, 0x20, - 0x01, 0x47, 0x08, - 0x01, 0x48, 0x28, - 0x01, 0x67, 0x00, - 0x01, 0x70, 0x04, - 0x01, 0x71, 0x01, - 0x01, 0x72, 0xfe, - 0x01, 0x76, 0x00, - 0x01, 0x77, 0x00, - - 0x01, 0xFF, 0x01, - 0x01, 0x0d, 0x01, - - 0x01, 0xFF, 0x00, - 0x01, 0x80, 0x01, - 0x01, 0x01, 0xF8, - - 0x01, 0xFF, 0x01, - 0x01, 0x8e, 0x01, - 0x01, 0x00, 0x01, - 0x01, 0xFF, 0x00, - 0x01, 0x80, 0x00, - - 0x00, 0x00, 0x00 -}; - -#ifdef __cplusplus -} -#endif - -#endif /* _VL53L0X_TUNING_H_ */ +/******************************************************************************* +Copyright � 2016, STMicroelectronics International N.V. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND +NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. +IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*******************************************************************************/ + + +#ifndef _VL53L0X_TUNING_H_ +#define _VL53L0X_TUNING_H_ + +#include "vl53l0x_def.h" + + +#ifdef __cplusplus +extern "C" { +#endif + + +uint8_t DefaultTuningSettings[] = { + + /* update 02/11/2015_v36 */ + 0x01, 0xFF, 0x01, + 0x01, 0x00, 0x00, + + 0x01, 0xFF, 0x00, + 0x01, 0x09, 0x00, + 0x01, 0x10, 0x00, + 0x01, 0x11, 0x00, + + 0x01, 0x24, 0x01, + 0x01, 0x25, 0xff, + 0x01, 0x75, 0x00, + + 0x01, 0xFF, 0x01, + 0x01, 0x4e, 0x2c, + 0x01, 0x48, 0x00, + 0x01, 0x30, 0x20, + + 0x01, 0xFF, 0x00, + 0x01, 0x30, 0x09, /* mja changed from 0x64. */ + 0x01, 0x54, 0x00, + 0x01, 0x31, 0x04, + 0x01, 0x32, 0x03, + 0x01, 0x40, 0x83, + 0x01, 0x46, 0x25, + 0x01, 0x60, 0x00, + 0x01, 0x27, 0x00, + 0x01, 0x50, 0x06, + 0x01, 0x51, 0x00, + 0x01, 0x52, 0x96, + 0x01, 0x56, 0x08, + 0x01, 0x57, 0x30, + 0x01, 0x61, 0x00, + 0x01, 0x62, 0x00, + 0x01, 0x64, 0x00, + 0x01, 0x65, 0x00, + 0x01, 0x66, 0xa0, + + 0x01, 0xFF, 0x01, + 0x01, 0x22, 0x32, + 0x01, 0x47, 0x14, + 0x01, 0x49, 0xff, + 0x01, 0x4a, 0x00, + + 0x01, 0xFF, 0x00, + 0x01, 0x7a, 0x0a, + 0x01, 0x7b, 0x00, + 0x01, 0x78, 0x21, + + 0x01, 0xFF, 0x01, + 0x01, 0x23, 0x34, + 0x01, 0x42, 0x00, + 0x01, 0x44, 0xff, + 0x01, 0x45, 0x26, + 0x01, 0x46, 0x05, + 0x01, 0x40, 0x40, + 0x01, 0x0E, 0x06, + 0x01, 0x20, 0x1a, + 0x01, 0x43, 0x40, + + 0x01, 0xFF, 0x00, + 0x01, 0x34, 0x03, + 0x01, 0x35, 0x44, + + 0x01, 0xFF, 0x01, + 0x01, 0x31, 0x04, + 0x01, 0x4b, 0x09, + 0x01, 0x4c, 0x05, + 0x01, 0x4d, 0x04, + + + 0x01, 0xFF, 0x00, + 0x01, 0x44, 0x00, + 0x01, 0x45, 0x20, + 0x01, 0x47, 0x08, + 0x01, 0x48, 0x28, + 0x01, 0x67, 0x00, + 0x01, 0x70, 0x04, + 0x01, 0x71, 0x01, + 0x01, 0x72, 0xfe, + 0x01, 0x76, 0x00, + 0x01, 0x77, 0x00, + + 0x01, 0xFF, 0x01, + 0x01, 0x0d, 0x01, + + 0x01, 0xFF, 0x00, + 0x01, 0x80, 0x01, + 0x01, 0x01, 0xF8, + + 0x01, 0xFF, 0x01, + 0x01, 0x8e, 0x01, + 0x01, 0x00, 0x01, + 0x01, 0xFF, 0x00, + 0x01, 0x80, 0x00, + + 0x00, 0x00, 0x00 +}; + +#ifdef __cplusplus +} +#endif + +#endif /* _VL53L0X_TUNING_H_ */ diff --git a/STS/TOF/vl53l0x/vl53l0x_types.h b/STS/TOF/vl53l0x/vl53l0x_types.h index 177637e..6773ca1 100644 --- a/STS/TOF/vl53l0x/vl53l0x_types.h +++ b/STS/TOF/vl53l0x/vl53l0x_types.h @@ -1,111 +1,111 @@ -/******************************************************************************* -Copyright � 2015, STMicroelectronics International N.V. -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of STMicroelectronics nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND -NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. -IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -********************************************************************************/ -/** - * @file vl53l0x_types.h - * @brief VL53L0X types definition - */ - -#ifndef VL53L0X_TYPES_H_ -#define VL53L0X_TYPES_H_ - -/** @defgroup porting_type Basic type definition - * @ingroup VL53L0X_platform_group - * - * @brief file vl53l0x_types.h files hold basic type definition that may requires porting - * - * contains type that must be defined for the platform\n - * when target platform and compiler provide stdint.h and stddef.h it is enough to include it.\n - * If stdint.h is not available review and adapt all signed and unsigned 8/16/32 bits basic types. \n - * If stddef.h is not available review and adapt NULL definition . - */ -#include <stdint.h> -#include <stddef.h> - -#ifndef NULL -#error "Error NULL definition should be done. Please add required include " -#endif - - -#if ! defined(STDINT_H) && !defined(_GCC_STDINT_H) &&!defined(__STDINT_DECLS) && !defined(_GCC_WRAP_STDINT_H) && !defined(_STDINT) && !defined(_STDINT_H) - - #pragma message("Please review type definition of STDINT define for your platform and add to list above ") - - /* - * target platform do not provide stdint or use a different #define than above - * to avoid seeing the message below addapt the #define list above or implement - * all type and delete these pragma - */ - -/** \ingroup VL53L0X_portingType_group - * @{ - */ - - -typedef unsigned long long uint64_t; - - -/** @brief Typedef defining 32 bit unsigned int type.\n - * The developer should modify this to suit the platform being deployed. - */ -typedef unsigned int uint32_t; - -/** @brief Typedef defining 32 bit int type.\n - * The developer should modify this to suit the platform being deployed. - */ -typedef int int32_t; - -/** @brief Typedef defining 16 bit unsigned short type.\n - * The developer should modify this to suit the platform being deployed. - */ -typedef unsigned short uint16_t; - -/** @brief Typedef defining 16 bit short type.\n - * The developer should modify this to suit the platform being deployed. - */ -typedef short int16_t; - -/** @brief Typedef defining 8 bit unsigned char type.\n - * The developer should modify this to suit the platform being deployed. - */ -typedef unsigned char uint8_t; - -/** @brief Typedef defining 8 bit char type.\n - * The developer should modify this to suit the platform being deployed. - */ -typedef signed char int8_t; - -/** @} */ -#endif /* _STDINT_H */ - - -/** use where fractional values are expected - * - * Given a floating point value f it's .16 bit point is (int)(f*(1<<16))*/ -typedef uint32_t FixPoint1616_t; - -#endif /* VL53L0X_TYPES_H_ */ +/******************************************************************************* +Copyright � 2015, STMicroelectronics International N.V. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of STMicroelectronics nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND +NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED. +IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************************/ +/** + * @file vl53l0x_types.h + * @brief VL53L0X types definition + */ + +#ifndef VL53L0X_TYPES_H_ +#define VL53L0X_TYPES_H_ + +/** @defgroup porting_type Basic type definition + * @ingroup VL53L0X_platform_group + * + * @brief file vl53l0x_types.h files hold basic type definition that may requires porting + * + * contains type that must be defined for the platform\n + * when target platform and compiler provide stdint.h and stddef.h it is enough to include it.\n + * If stdint.h is not available review and adapt all signed and unsigned 8/16/32 bits basic types. \n + * If stddef.h is not available review and adapt NULL definition . + */ +#include <stdint.h> +#include <stddef.h> + +#ifndef NULL +#error "Error NULL definition should be done. Please add required include " +#endif + + +#if ! defined(STDINT_H) && !defined(_GCC_STDINT_H) &&!defined(__STDINT_DECLS) && !defined(_GCC_WRAP_STDINT_H) && !defined(_STDINT) && !defined(_STDINT_H) + + #pragma message("Please review type definition of STDINT define for your platform and add to list above ") + + /* + * target platform do not provide stdint or use a different #define than above + * to avoid seeing the message below addapt the #define list above or implement + * all type and delete these pragma + */ + +/** \ingroup VL53L0X_portingType_group + * @{ + */ + + +typedef unsigned long long uint64_t; + + +/** @brief Typedef defining 32 bit unsigned int type.\n + * The developer should modify this to suit the platform being deployed. + */ +typedef unsigned int uint32_t; + +/** @brief Typedef defining 32 bit int type.\n + * The developer should modify this to suit the platform being deployed. + */ +typedef int int32_t; + +/** @brief Typedef defining 16 bit unsigned short type.\n + * The developer should modify this to suit the platform being deployed. + */ +typedef unsigned short uint16_t; + +/** @brief Typedef defining 16 bit short type.\n + * The developer should modify this to suit the platform being deployed. + */ +typedef short int16_t; + +/** @brief Typedef defining 8 bit unsigned char type.\n + * The developer should modify this to suit the platform being deployed. + */ +typedef unsigned char uint8_t; + +/** @brief Typedef defining 8 bit char type.\n + * The developer should modify this to suit the platform being deployed. + */ +typedef signed char int8_t; + +/** @} */ +#endif /* _STDINT_H */ + + +/** use where fractional values are expected + * + * Given a floating point value f it's .16 bit point is (int)(f*(1<<16))*/ +typedef uint32_t FixPoint1616_t; + +#endif /* VL53L0X_TYPES_H_ */ diff --git a/hk_as923_decoder.js b/hk_as923_decoder.js index 2af81f3..8509bf2 100644 --- a/hk_as923_decoder.js +++ b/hk_as923_decoder.js @@ -1,567 +1,567 @@ -// Decode decodes an array of bytes into an object. -// - fPort contains the LoRaWAN fPort number -// - bytes is an array of bytes, e.g. [225, 230, 255, 0] -// - variables contains the device variables e.g. {"calibration": "3.5"} (both the key / value are of type string) -// The function must return an object, e.g. {"temperature": 22.5} -// for Yunhorn SmarToilets STS-O7 Occupancy/Fall Detection/Over stay sensor -function Decode(fPort, data, variables) { - var data = {}; - data.length = bytes.length; - // R4 soap/sanitizer sensor - if (fPort === 7) { - data.length = bytes.length; - data.led_state = bytes[0] == 0x0 ? "Off" : "On"; - data.mtm_code_1 = bytes[1]; - data.mtm_code_2 = bytes[2]; - data.hw_code = bytes[3]; - data.battery_level = bytes[4] + "%"; - data.size_value = bytes[5]; - data.measure_tech = (bytes[6] === 0) ? "Capacitive" : "Other"; - data.liquid_level_event = (bytes[7] === 0x1) ? "Liquid Detected" : "No Liquid"; - - return { "Yunhorn_SmarToilets_data": data }; - } - else if ((fPort === 10)) { // STS_O2_O6 V3 version 2023,pixel-network version - switch (bytes[0]) { - case 0x00: - data.LEDcolor = "Dark"; - break; - case 0x01: - data.LEDcolor = "Green"; - data.cubicleOccupyStatus = "Vacant"; - break; - case 0x02: - data.LEDcolor = "Red"; - data.cubicleOccupyStatus = "Occupied"; - break; - case 0x03: - data.LEDcolor = "Blue"; - data.cubicleOccupyStatus = "Maintenance"; - break; - case 0x04: - data.LEDcolor = "Yellow"; - data.cubicleOccupyStatus = "TBD"; - break; - case 0x05: - data.LEDcolor = "Pink"; - data.cubicleOccupyStatus = "TBD"; - break; - case 0x06: - data.LEDcolor = "Cyan"; - data.cubicleOccupyStatus = "TBD"; - break; - case 0x07: - data.LEDcolor = "White"; - data.cubicleOccupyStatus = "TBD"; - break; - case 0x08: - data.LEDcolor = "Red_Blue"; - data.cubicleOccupyStatus = "EMERGENCY"; - break; - case 0x23: - data.LEDcolor = "Red_Blue"; - data.cubicleOccupyStatus = "EMERGENCY"; - break; - case 0x20: - data.LEDcolor = "Red_Flash"; - data.cubicleOccupyStatus = "EMERGENCY"; - break; - default: - data.LEDcolor = "TBD_COLOR"; - data.cubicleOccupyStatus = "TBD_status"; - break; - } - - switch (bytes[1]) { - case 0x0: - data.workmode = "Network_mode"; - break; - case 0x01: - data.workmode = "Wired_Mode"; - break; - case 0x02: - data.workmode = "Hall_element_mode"; - break; - case 0x03: - data.workmode = "MotionDetect_mode"; - break; - case 0x04: - data.workmode = "Dual_mode"; - break; - case 0x05: - data.workmode = "Uni_Mode"; - break; - default: - data.workmode = "Unknown Mode"; - break; - } - // select only one below - // For NC(Normal Closed states - data.Sensor1_Door_Contact_Open = bytes[2] === 0 ? "Door Closed" : "Door Open"; - - // For NC(Normal Closed states - //data.Sensor1_Door_Contact_Open = bytes[3]===1?"Door Closed":"Door Open"; - if (bytes[1] == 0x02) //Hall_element_mode - { - data.Sensor2_SOS_Pushed = bytes[3] === 0 ? "PushDown" : "RelaseUP"; - } else if (bytes[1] > 0x02) { - data.Sensor2_Motion_Detected = bytes[3] === 0 ? "No Motion" : "Motion Detected"; - } - - return { "Yunhorn_SmarToilets_data": data }; - } - else if ((fPort === 17) || (fPort === 19) || (fPort === 21)) { - data.BoardLED = ((bytes[0] & 0x7F) === 0x01) ? "ON" : "OFF"; - switch (bytes[1]) { - case 0x00: - data.LEDcolor = "Dark"; - break; - case 0x01: - data.LEDcolor = "Green"; - data.cubicleOccupyStatus = "Vacant"; - break; - case 0x02: - data.LEDcolor = "Red"; - data.cubicleOccupyStatus = "Occupied"; - break; - case 0x03: - data.LEDcolor = "Blue"; - data.cubicleOccupyStatus = "Maintenance"; - break; - case 0x04: - data.LEDcolor = "Yellow"; - data.cubicleOccupyStatus = "TBD"; - break; - case 0x05: - data.LEDcolor = "Pink"; - data.cubicleOccupyStatus = "TBD"; - break; - case 0x06: - data.LEDcolor = "Cyan"; - data.cubicleOccupyStatus = "TBD"; - break; - case 0x07: - data.LEDcolor = "White"; - data.cubicleOccupyStatus = "TBD"; - break; - case 0x08: - data.LEDcolor = "Red_Blue"; - data.cubicleOccupyStatus = "EMERGENCY"; - break; - case 0x23: - data.LEDcolor = "Red_Blue"; - data.cubicleOccupyStatus = "EMERGENCY"; - break; - case 0x20: - data.LEDcolor = "Red_Flash"; - data.cubicleOccupyStatus = "EMERGENCY"; - break; - default: - data.LEDcolor = "TBD_COLOR"; - data.cubicleOccupyStatus = "TBD_status"; - break; - } - - switch (bytes[2]) { - case 0x0: - data.workmode = "Network_mode"; - break; - case 0x01: - data.workmode = "Wired_Mode"; - break; - case 0x02: - data.workmode = "Hall_element_mode"; - break; - case 0x03: - data.workmode = "MotionDetect_mode"; - break; - case 0x04: - data.workmode = "Dual_mode"; - break; - case 0x05: - data.workmode = "Uni_Mode"; - break; - default: - data.workmode = "Unknown Mode"; - break; - } - // select only one below - // For NC(Normal Closed states - data.Sensor1_Door_Contact_Open = bytes[3] === 0 ? "Door Closed" : "Door Open"; - - // For NC(Normal Closed states - //data.Sensor1_Door_Contact_Open = bytes[3]===1?"Door Closed":"Door Open"; - data.Sensor2_Emergency_Button = bytes[4] === 0 ? "Alarm Push Down" : "No Alarm, Released"; - data.Sensor3_Motion_Detected = bytes[5] === 0 ? "No Motion" : "Motion Detected"; - - data.length = bytes.length; - if (data.length === 9) { - data.Over_stay_state = (bytes[6] === 0) ? "False" : "True"; - data.Over_Stay_duration_in_Seconds = (bytes[7] << 8 | bytes[8]); - - return { "Yunhorn_SmarToilets_data": data }; - } - else if (data.length > 9) { - data.Sensor4_ALARM_MUTE = (bytes[6] === 0) ? "Down Mute" : "No Mute"; - data.Sensor5_ALARM_RESET = (bytes[7] === 0) ? "Down RESET" : "NO Reset"; - data.Distance_in_mm = (bytes[8] << 8 | bytes[9]); - data.MotionLevel = (bytes[10] << 8 | bytes[11]); - - data.Unconcious_State = (bytes[12] == 0) ? "False" : "True"; - - switch (bytes[13]) { - case 0x0: - data.Fall_Down_Detected_State = "Presence_Normal"; - break; - case 0x01: - data.Fall_Down_Detected_State = "Presence_Fall_Down"; - break; - case 0x02: - data.Fall_Down_Detected_State = "Presence_Rising_Up"; - break; - case 0x03: - data.Fall_Down_Detected_State = "Presence_LayDown"; - break; - case 0x04: - data.Fall_Down_Detected_State = "Presence_Unconcious"; - break; - case 0x05: - data.Fall_Down_Detected_State = "Presence_Stay_Still"; - break; - default: - data.Fall_Down_Detected_State = "Presence_Normal"; - break; - } - data.OverStay_Detected_State = (bytes[14] == 0x0) ? "False" : "True"; - data.OverStay_Duration_in_Seconds = (bytes[15] << 8 | bytes[16]); - data.No_Movement_Duration_in_Seconds = (bytes[17] << 8 | bytes[18]); - data.Unconcious_Duration_in_Seconds = (bytes[17] << 8 | bytes[18]); - data.Fall_Down_Speed_in_m_per_s = (bytes[19]); - data.Fall_Down_Gravity_in_g = (bytes[20]); - data.SOS_PushDown_Stamp = (bytes[21] << 24 | bytes[22] << 16 | bytes[23] << 8 | bytes[24]); - if (data.SOS_PushDown_Stamp != 0) { - var sos_start = new Date(1000 * data.SOS_PushDown_Stamp); - data.SOS_PushDown_Time = "[" + sos_start.getDate() + "." + (sos_start.getMonth() + 1) + "." + (sos_start.getFullYear()) + "] " + sos_start.getHours() + ":" + sos_start.getMinutes() + ":" + sos_start.getSeconds(); - } else data.SOS_PushDown_Time = "N/A"; - data.SOS_ReleaseUP_Stamp = (bytes[25] << 24 | bytes[26] << 16 | bytes[27] << 8 | bytes[28]); - if (data.SOS_ReleaseUP_Stamp != 0) { - var sos_stop = new Date(1000 * data.SOS_ReleaseUP_Stamp); - data.SOS_ReleaseUP_Time = "[" + sos_stop.getDate() + "." + (sos_stop.getMonth() + 1) + "." + (sos_stop.getFullYear()) + "] " + sos_stop.getHours() + ":" + sos_stop.getMinutes() + ":" + sos_stop.getSeconds(); - } else data.SOS_ReleaseUP_Time = "N/A"; - - data.Fall_Down_Stamp = (bytes[29] << 24 | bytes[30] << 16 | bytes[31] << 8 | bytes[32]); - if (data.Fall_Down_Stamp != 0) { - var fall_start = new Date(1000 * data.Fall_Down_Stamp); - data.Fall_Down_Time = "[" + fall_start.getDate() + "." + (fall_start.getMonth() + 1) + "." + (fall_start.getFullYear()) + "] " + fall_start.getHours() + ":" + fall_start.getMinutes() + ":" + fall_start.getSeconds(); - } else data.Fall_RiseUp_Stamp = "N/A"; - data.Fall_RiseUp_Stamp = (bytes[33] << 24 | bytes[34] << 16 | bytes[35] << 8 | bytes[36]); - if (data.Fall_RiseUp_Stamp != 0) { - var fall_stop = new Date(1000 * data.Fall_RiseUp_Stamp); - data.Fall_RiseUp_Time = "[" + fall_stop.getDate() + "." + (fall_stop.getMonth() + 1) + "." + (fall_stop.getFullYear()) + "] " + fall_stop.getHours() + ":" + fall_stop.getMinutes() + ":" + fall_stop.getSeconds(); - } else data.Fall_RiseUp_Time = "N/A"; - } - return { "Yunhorn_SmarToilets_data": data }; - } - else if ((fPort === 11) || (fPort === 52)) { - return [ - { - led_state: bytes[0] === 0 ? "Off" : "On", - mtm_code_1: bytes[1], - mtm_code_2: bytes[2], - hw_code: bytes[3], - battery_level: bytes[4] + "%", - //battery_level:(bytes[4])*100+" mV", - size_value: bytes[5], - distance_1_mm: bytes[6] << 8 | bytes[7], - //distance_2_mm:bytes[8]<<8|bytes[9], - //distance_3_mm:bytes[10]<<8|bytes[11], - distance_unit: "mm", - } - ]; - } - // R1D dual roll toilet paper sensor - else if (fPort === 57) { - return [ - { - led_state: bytes[0] === 0 ? "Off" : "On", - mtm_code_1: bytes[1], - mtm_code_2: bytes[2], - hw_code: bytes[3], - battery_level: bytes[4] + "%", - //battery_level:(bytes[4])*100+" mV", - size_value: bytes[5], - distance_1_mm: bytes[6] << 8 | bytes[7], - distance_2_mm: bytes[8] << 8 | bytes[9], - //distance_3_mm:bytes[10]<<8|bytes[11], - distance_unit: "mm", - } - ]; - } - else if ((fPort === 106)) { //STS-P2 bi-directional people counting - data.LED_State = bytes[0] === 0 ? "Off" : "On"; - data.MTM_Code_1 = bytes[1]; - data.MTM_Code_2 = bytes[2]; - data.HW_Code = bytes[3]; - data.Battery_Level = bytes[4] + " %"; - data.Payload_Size = bytes[5]; - data.Walk_In_People_Count = bytes[6] << 8 | bytes[7]; - data.Walk_Out_People_Count = bytes[8] << 8 | bytes[8]; - data.Walk_Around_People_Count = bytes[10] << 8 | bytes[11]; - data.Count_Period = bytes[12]; - data.Count_Period_Unit = String.fromCharCode(bytes[13]); - data.Sum_Day_Walk_In_People_Count = bytes[14] << 8 | bytes[15]; - data.Sum_Day_Walk_Out_People_Count = bytes[16] << 8 | bytes[17]; - data.Sum_Day_Walk_Around_People_Count = bytes[18] << 8 | bytes[19]; - data.Count_Valid = (bytes[20] == 0x0) ? "Error" : "OK"; - - return { "Yunhorn_SmarToilets_data": data }; - } - // Heart Beat - else if ((fPort === 8) || (fPort === 12) || (fPort === 20) || (fPort === 18) || (fPort === 5) || (fPort === 107) || (fPort === 58)) { - var data = {}; - //data.led_state=(bytes[0] & 0x7f) === 0 ? "Off" : "On"; - data.BoardLED = ((bytes[0] & 0x7F) === 0x01) ? "ON" : "OFF"; - //data.battery_level = bytes[1] + " %"; - data.battery_level = bytes[1] * 100 + "mV"; - return { "Yunhorn_SmarToilets_data": data }; - } - - // UPLINK, RFAC - else if (fPort === 1) { - var data = {}; - data.length = bytes.length; - if ((data.length === 10) && (bytes[0] == 0x59) && (bytes[9] == 0x38)) { - data.Yunhorn_PRD = "True"; - data.PRD_String = String.fromCharCode(bytes); - } - else if ((data.length === 4) && (bytes[0] == 0x52) && (bytes[1] == 0x46)) //RFAC - { - data.Request_Performed = "OK"; - data.RFAC = "OK"; - data.AC0 = bytes[0]; - data.AC1 = bytes[1]; - } - else if ((data.length === 4) && (bytes[0] === 0x50) && (bytes[1] === 0x31) && (bytes[2] === 0x31)) { - data.Work_Mode_Switch = "OK"; - switch (bytes[3] - 0x30) { - case 0x0: - data.workmode = "Network_mode"; - break; - case 0x01: - data.workmode = "Wired_Mode"; - break; - case 0x02: - data.workmode = "Hall_element_mode"; - break; - case 0x03: - data.workmode = "MotionDetect_mode"; - break; - case 0x04: - data.workmode = "Dual_mode"; - break; - case 0x05: - data.workmode = "Uni_Mode"; - break; - default: - data.workmode = "Unknown Mode"; - break; - } - } - - if ((bytes[0] === 0x59) && (bytes[1] === 0x44)) //Duration interval - { - data.Uplink_interval = (bytes[2] - 0x30) * 10 + (bytes[3] - 0x30); - data.Uplink_interval_unit = String.fromCharCode(bytes[4]); - //data.Heart_beat_Duration = (bytes[2]-0x30)*10 + (bytes[3]-0x30); - //data.Unit = String.fromCharCode(bytes[4]); - } - - else if ((bytes[0] === 0x59) && (bytes[1] === 0x53)) //Sampling interval or Heart-beat interval - { - data.Heart_Beat_interval = (bytes[2] - 0x30) * 10 + (bytes[3] - 0x30); - data.Heart_Beat_interval_unit = String.fromCharCode(bytes[4]); - //data.Wakeup_sampling_interval = (bytes[2]-0x30)*10 + (bytes[3]-0x30); - //data.Unit = String.fromCharCode(bytes[4]); - } - - else if (bytes[0] === 0x43) { // report current nvm config - data.mtm_code1 = bytes[1]; - data.mtm_code2 = bytes[2]; - data.sts_verion = bytes[3]; - data.sts_hw_ver = bytes[4]; - data.sts_uplink_interval = bytes[5]; - data.sts_uplink_interval_unit = String.fromCharCode(bytes[6]); - data.sts_sampling_interval = bytes[7]; - data.sts_sampling_interval_unit = String.fromCharCode(bytes[8]); - data.sts_work_mode = bytes[9]; - data.sts_service_mask = bytes[10]; - data.sts_reserve01 = bytes[11]; - data.sts_payload_length = bytes[12]; - data.rss_start_distance = bytes[13] * 0.1 + " meter"; - data.rss_range_length = bytes[14] * 0.1 + " meter"; - data.rss_threshold = bytes[15] * 0.1; - data.rss_receiving_gain = bytes[16] + " %"; - data.rss_profile = bytes[17]; - data.rss_rate_tracking = bytes[18]; - data.rss_rate_presence = bytes[19]; - data.rss_HWAAS = bytes[20]; - data.rss_nbr_removed_pc = bytes[21]; - data.rss_inter_frame_deviation_time_const = bytes[22] * 0.1; - data.rss_inter_frame_fast_cutoff = bytes[23]; - data.rss_inter_frame_slow_cutoff = bytes[24]; - data.rss_intra_frame_time_const = bytes[25]; - data.rss_intra_frame_weight = bytes[26] * 0.1; - data.rss_output_time_const = bytes[27] * 0.1; - data.rss_downsampling_factor = bytes[28]; - data.rss_power_saving_mode_active = bytes[29]; - data.rss_reserve02 = bytes[30]; - data.rss_reserve03 = bytes[31]; - data.rss_reserve04 = bytes[32]; - data.reserve2 = bytes[33]; - data.reserve3 = bytes[34]; - data.sensor_install_height = bytes[35] * 10 + " cm"; - - data.alarm_parameter05 = bytes[36]; - data.alarm_mute_expire_timer = bytes[37]; - data.alarm_lamp_bar_flashing_color = bytes[38]; - data.occupancy_overtime_threshold = bytes[39]; - - data.motionless_duration_threshold = bytes[40]; - data.unconcious_threshold = bytes[41]; - - data.fall_detection_acc_threshold = bytes[42]; - data.fall_detection_depth_threshold = bytes[43]; - data.fall_down_confirm_threshold = bytes[44]; - } - else if (bytes[0] === 0x53) { // SELF TEST FUNCTION - data.mtm_code1 = bytes[1]; - data.mtm_code2 = bytes[2]; - data.sts_verion = bytes[3]; - data.sts_hw_ver = bytes[4]; - data.battery_level = bytes[5]; - if ((bytes[6] === 0x03)) { // report sensor install height - data.sts_sensor_install_height = (bytes[7] << 8 | bytes[8]); - data.sts_sensor_install_height_unit = "mm"; - } - else if ((bytes[6] === 0x58)) { - data.sts_Test_Result = "### Motion Sensor Not Detected ###"; - } else if ((bytes[6] === 0x0E)) //result length, 10 rss bytes, 4 distance bytes - { - data.sts_Test_Result = "Motion Sensor Test Result:"; - data.sts_test_result_length = bytes[6]; - data.sts_rss_sub_code1 = bytes[7]; - data.sts_rss_sub_code2 = bytes[8]; - data.sts_rss_sub_code3 = bytes[9]; - data.sts_rss_sub_code4 = bytes[10]; - data.sts_rss_sub_code5 = bytes[11]; - data.sts_rss_sub_code6 = bytes[12]; - data.sts_rss_sub_code7 = bytes[13]; - data.sts_rss_sub_code8 = bytes[14]; - data.sts_rss_sub_code9 = bytes[15]; - data.sts_rss_sub_code10 = bytes[16]; - data.sts_sensor_install_height = String.fromCharCode(bytes[17]) + String.fromCharCode(bytes[18]) + String.fromCharCode(bytes[19]) + String.fromCharCode(bytes[20]) + " mm"; - } - } - else if (bytes[0] === 0x44) { // MEASURE INSTALLATION HEIGHT - data.mtm_code1 = bytes[1]; - data.mtm_code2 = bytes[2]; - data.sts_verion = bytes[3]; - data.sts_hw_ver = bytes[4]; - data.battery_level = bytes[5]; - data.payload_length = bytes[6]; - data.Measure_Distance = String.fromCharCode(bytes[7]) + String.fromCharCode(bytes[8]) + String.fromCharCode(bytes[9]) + String.fromCharCode(bytes[10]); - data.Distance_unit = "mm"; - } - else if (bytes[0] === 0x4c) { // LoRaWAN Class A/B/C - data.mtm_code1 = bytes[1]; - data.mtm_code2 = bytes[2]; - data.sts_verion = bytes[3]; - data.LoRaWAN_Class = String.fromCharCode(bytes[4]); - } - else if (bytes[0] === 0x56) { // FIRMWARE VERSION - - data.mtm_code1 = bytes[1]; - data.mtm_code2 = bytes[2]; - data.sts_verion = bytes[3]; - data.sts_hw_ver = bytes[4]; - data.sts_major = bytes[5]; - data.sts_minor = bytes[6]; - data.subminor = bytes[7]; - - if (data.length === 15) { - data.L_year = (bytes[8] << 8 | bytes[9]); - data.L_mon = bytes[10]; - data.L_day = bytes[11]; - data.L_hour = bytes[12]; - data.L_min = bytes[13]; - data.L_sec = bytes[14]; - data.LocalTime_UTC = "UTC: " + data.L_year + "/" + data.L_mon + "/" + data.L_day + " " + data.L_hour + ":" + data.L_min + ":" + data.L_sec; - data.LocalTime_EST8 = "GMT+8: " + data.L_year + "/" + data.L_mon + "/" + data.L_day + " " + (data.L_hour + 8) + ":" + data.L_min + ":" + data.L_sec; - } - } - else if (bytes[0] === 0x54) { //T: date & time - data.L_year = (bytes[1] << 8 | bytes[2]); - data.L_mon = bytes[3]; - data.L_day = bytes[4]; - data.L_hour = bytes[5]; - data.L_min = bytes[6]; - data.L_sec = bytes[7]; - data.LocalTime_UTC = "UTC: " + data.L_year + "/" + data.L_mon + "/" + data.L_day + " " + data.L_hour + ":" + data.L_min + ":" + data.L_sec; - - } - else if (bytes[0] === 0x50) { // P cmd report - if (data.length == 7) { - switch (bytes[3]) { - case 0x46: // F --- fall down & unconscious detection threshold - data.FALL_acceleration = (bytes[4] == 0x30 ? "Disabled" : ((bytes[4] - 0x30) * 10) + " mg/s2"); - data.FALL_depth_measure = (bytes[5] == 0x30 ? "Disabled" : ((bytes[5] - 0x30) * 10) + " cm"); - data.FALL_confirm_threshold = (bytes[6] == 0x30 ? "Disabled" : ((bytes[6] - 0x30) * 10) + " seconds"); - //data.FALL_reserved = (bytes[7]==0x0?"Disabled":((bytes[6]-0x30)*10)+" min"); - break; - } //switch - } - else if (data.length == 8) { - switch (bytes[3]) { - case 0x4f: // O -- over stay, onconscious, long stay - data.OMU_Motionless_duration_in_min = (bytes[4] == 0x30 ? "Disabled" : ((bytes[4] - 0x30)) + " Min"); - data.OMU_Long_Occupy_duration_in_Min = (bytes[5] == 0x30 ? "Disabled" : ((bytes[5] - 0x30) * 10) + " Min"); - data.OMU_Unconcious_Threshold = (bytes[6] == 0x30 ? "Disabled" : ((bytes[6] - 0x30) * 100) + "ml"); - data.OMU_Alarm_Mute_Reset_Timer = (bytes[7] == 0x30 ? "Disabled" : ((bytes[7] - 0x30) * 10) + " Seconds"); - break; - case 0x46: // F --- fall down & unconscious detection threshold - data.FALL_acceleration = (bytes[4] == 0x30 ? "Disabled" : ((bytes[4] - 0x30) * 10) + " mg/s2"); - data.FALL_depth_measure = (bytes[5] == 0x30 ? "Disabled" : ((bytes[5] - 0x30) * 10) + " cm"); - data.FALL_confirm_threshold = (bytes[6] == 0x30 ? "Disabled" : ((bytes[6] - 0x30) * 10) + " seconds"); - data.FALL_reserved = (bytes[7] == 0x30 ? "Disabled" : ((bytes[6] - 0x30) * 10) + " min"); - break; - } //switch - } else if (data.length == 11) { // P 1108201365 - data.RSS_SIMPLE_Start = ((bytes[3] - 0x30) * 100 + (bytes[4] - 0x30) * 10) + " cm"; - data.RSS_SIMPLE_Length = ((bytes[5] - 0x30) * 100 + (bytes[6] - 0x030) * 10) + " cm"; - data.RSS_SIMPLE_Threshold = ((bytes[7] - 0x30) * 1000 + (bytes[8] - 0x30) * 100) + " ml"; - data.RSS_SIMPLE_Gain = ((bytes[9] - 0x30) * 10 + (bytes[10] - 0x30)) + " %"; - } else if (data.length == 33) { // P 11 - data.RSS_FULL_Start = ((bytes[3] - 0x30) * 100 + (bytes[4] - 0x30) * 10) + " cm"; - data.RSS_FULL_Length = ((bytes[5] - 0x30) * 100 + (bytes[6] - 0x30) * 10) + " cm"; - data.RSS_FULL_Threshold = ((bytes[7] - 0x30) * 1000 + (bytes[8] - 0x30) * 100) + " ml"; - data.RSS_FULL_Gain = ((bytes[9] - 0x30) * 10 + (bytes[10] - 0x30)) + " %"; - data.RSS_FULL_Profile = (bytes[11] - 0x30); - data.RSS_FULL_Rate_Tracking = ((bytes[12] - 0x30) * 10 + (bytes[13] - 0x30)); - data.RSS_FULL_Rate_Presence = ((bytes[14] - 0x30) * 10 + (bytes[15] - 0x30)); - data.RSS_FULL_HWAAS = ((bytes[16] - 0x30) * 10 + (bytes[17] - 0x30)); - data.RSS_FULL_Num_Removed_PC = (bytes[18] - 0x30); - data.RSS_FULL_Inter_Deviation_Time_Const_in_Sec = ((bytes[19] - 0x30) + (bytes[20] - 0x30) * 0.1); - data.RSS_FULL_Inter_Fast_Cut_Off = ((bytes[21] - 0x30) * 10 + (bytes[22] - 0x30)); - data.RSS_FULL_Inter_Slow_Cut_Off = ((bytes[23] - 0x30) * 0.1 + (bytes[24] - 0x30) * 0.001); - data.RSS_FULL_Inter_Time_Const_in_Sec = ((bytes[25] - 0x30) * 10 + (bytes[26] - 0x30)); - data.RSS_FULL_Inter_Weight = ((bytes[27] - 0x30) + (bytes[28] - 0x30) * 0.1); - data.RSS_FULL_Output_Time_Const_in_Sec = ((bytes[29] - 0x30) + (bytes[30] - 0x30) * 0.1); - data.RSS_FULL_DownSampling_factor = (bytes[31] - 0x30); - data.RSS_FULL_Power_Saving_mode = (bytes[32] - 0x30); - - - } - } - return { "Yunhorn_SmarToilets_data": data }; - } +// Decode decodes an array of bytes into an object. +// - fPort contains the LoRaWAN fPort number +// - bytes is an array of bytes, e.g. [225, 230, 255, 0] +// - variables contains the device variables e.g. {"calibration": "3.5"} (both the key / value are of type string) +// The function must return an object, e.g. {"temperature": 22.5} +// for Yunhorn SmarToilets STS-O7 Occupancy/Fall Detection/Over stay sensor +function Decode(fPort, data, variables) { + var data = {}; + data.length = bytes.length; + // R4 soap/sanitizer sensor + if (fPort === 7) { + data.length = bytes.length; + data.led_state = bytes[0] == 0x0 ? "Off" : "On"; + data.mtm_code_1 = bytes[1]; + data.mtm_code_2 = bytes[2]; + data.hw_code = bytes[3]; + data.battery_level = bytes[4] + "%"; + data.size_value = bytes[5]; + data.measure_tech = (bytes[6] === 0) ? "Capacitive" : "Other"; + data.liquid_level_event = (bytes[7] === 0x1) ? "Liquid Detected" : "No Liquid"; + + return { "Yunhorn_SmarToilets_data": data }; + } + else if ((fPort === 10)) { // STS_O2_O6 V3 version 2023,pixel-network version + switch (bytes[0]) { + case 0x00: + data.LEDcolor = "Dark"; + break; + case 0x01: + data.LEDcolor = "Green"; + data.cubicleOccupyStatus = "Vacant"; + break; + case 0x02: + data.LEDcolor = "Red"; + data.cubicleOccupyStatus = "Occupied"; + break; + case 0x03: + data.LEDcolor = "Blue"; + data.cubicleOccupyStatus = "Maintenance"; + break; + case 0x04: + data.LEDcolor = "Yellow"; + data.cubicleOccupyStatus = "TBD"; + break; + case 0x05: + data.LEDcolor = "Pink"; + data.cubicleOccupyStatus = "TBD"; + break; + case 0x06: + data.LEDcolor = "Cyan"; + data.cubicleOccupyStatus = "TBD"; + break; + case 0x07: + data.LEDcolor = "White"; + data.cubicleOccupyStatus = "TBD"; + break; + case 0x08: + data.LEDcolor = "Red_Blue"; + data.cubicleOccupyStatus = "EMERGENCY"; + break; + case 0x23: + data.LEDcolor = "Red_Blue"; + data.cubicleOccupyStatus = "EMERGENCY"; + break; + case 0x20: + data.LEDcolor = "Red_Flash"; + data.cubicleOccupyStatus = "EMERGENCY"; + break; + default: + data.LEDcolor = "TBD_COLOR"; + data.cubicleOccupyStatus = "TBD_status"; + break; + } + + switch (bytes[1]) { + case 0x0: + data.workmode = "Network_mode"; + break; + case 0x01: + data.workmode = "Wired_Mode"; + break; + case 0x02: + data.workmode = "Hall_element_mode"; + break; + case 0x03: + data.workmode = "MotionDetect_mode"; + break; + case 0x04: + data.workmode = "Dual_mode"; + break; + case 0x05: + data.workmode = "Uni_Mode"; + break; + default: + data.workmode = "Unknown Mode"; + break; + } + // select only one below + // For NC(Normal Closed states + data.Sensor1_Door_Contact_Open = bytes[2] === 0 ? "Door Closed" : "Door Open"; + + // For NC(Normal Closed states + //data.Sensor1_Door_Contact_Open = bytes[3]===1?"Door Closed":"Door Open"; + if (bytes[1] == 0x02) //Hall_element_mode + { + data.Sensor2_SOS_Pushed = bytes[3] === 0 ? "PushDown" : "RelaseUP"; + } else if (bytes[1] > 0x02) { + data.Sensor2_Motion_Detected = bytes[3] === 0 ? "No Motion" : "Motion Detected"; + } + + return { "Yunhorn_SmarToilets_data": data }; + } + else if ((fPort === 17) || (fPort === 19) || (fPort === 21)) { + data.BoardLED = ((bytes[0] & 0x7F) === 0x01) ? "ON" : "OFF"; + switch (bytes[1]) { + case 0x00: + data.LEDcolor = "Dark"; + break; + case 0x01: + data.LEDcolor = "Green"; + data.cubicleOccupyStatus = "Vacant"; + break; + case 0x02: + data.LEDcolor = "Red"; + data.cubicleOccupyStatus = "Occupied"; + break; + case 0x03: + data.LEDcolor = "Blue"; + data.cubicleOccupyStatus = "Maintenance"; + break; + case 0x04: + data.LEDcolor = "Yellow"; + data.cubicleOccupyStatus = "TBD"; + break; + case 0x05: + data.LEDcolor = "Pink"; + data.cubicleOccupyStatus = "TBD"; + break; + case 0x06: + data.LEDcolor = "Cyan"; + data.cubicleOccupyStatus = "TBD"; + break; + case 0x07: + data.LEDcolor = "White"; + data.cubicleOccupyStatus = "TBD"; + break; + case 0x08: + data.LEDcolor = "Red_Blue"; + data.cubicleOccupyStatus = "EMERGENCY"; + break; + case 0x23: + data.LEDcolor = "Red_Blue"; + data.cubicleOccupyStatus = "EMERGENCY"; + break; + case 0x20: + data.LEDcolor = "Red_Flash"; + data.cubicleOccupyStatus = "EMERGENCY"; + break; + default: + data.LEDcolor = "TBD_COLOR"; + data.cubicleOccupyStatus = "TBD_status"; + break; + } + + switch (bytes[2]) { + case 0x0: + data.workmode = "Network_mode"; + break; + case 0x01: + data.workmode = "Wired_Mode"; + break; + case 0x02: + data.workmode = "Hall_element_mode"; + break; + case 0x03: + data.workmode = "MotionDetect_mode"; + break; + case 0x04: + data.workmode = "Dual_mode"; + break; + case 0x05: + data.workmode = "Uni_Mode"; + break; + default: + data.workmode = "Unknown Mode"; + break; + } + // select only one below + // For NC(Normal Closed states + data.Sensor1_Door_Contact_Open = bytes[3] === 0 ? "Door Closed" : "Door Open"; + + // For NC(Normal Closed states + //data.Sensor1_Door_Contact_Open = bytes[3]===1?"Door Closed":"Door Open"; + data.Sensor2_Emergency_Button = bytes[4] === 0 ? "Alarm Push Down" : "No Alarm, Released"; + data.Sensor3_Motion_Detected = bytes[5] === 0 ? "No Motion" : "Motion Detected"; + + data.length = bytes.length; + if (data.length === 9) { + data.Over_stay_state = (bytes[6] === 0) ? "False" : "True"; + data.Over_Stay_duration_in_Seconds = (bytes[7] << 8 | bytes[8]); + + return { "Yunhorn_SmarToilets_data": data }; + } + else if (data.length > 9) { + data.Sensor4_ALARM_MUTE = (bytes[6] === 0) ? "Down Mute" : "No Mute"; + data.Sensor5_ALARM_RESET = (bytes[7] === 0) ? "Down RESET" : "NO Reset"; + data.Distance_in_mm = (bytes[8] << 8 | bytes[9]); + data.MotionLevel = (bytes[10] << 8 | bytes[11]); + + data.Unconcious_State = (bytes[12] == 0) ? "False" : "True"; + + switch (bytes[13]) { + case 0x0: + data.Fall_Down_Detected_State = "Presence_Normal"; + break; + case 0x01: + data.Fall_Down_Detected_State = "Presence_Fall_Down"; + break; + case 0x02: + data.Fall_Down_Detected_State = "Presence_Rising_Up"; + break; + case 0x03: + data.Fall_Down_Detected_State = "Presence_LayDown"; + break; + case 0x04: + data.Fall_Down_Detected_State = "Presence_Unconcious"; + break; + case 0x05: + data.Fall_Down_Detected_State = "Presence_Stay_Still"; + break; + default: + data.Fall_Down_Detected_State = "Presence_Normal"; + break; + } + data.OverStay_Detected_State = (bytes[14] == 0x0) ? "False" : "True"; + data.OverStay_Duration_in_Seconds = (bytes[15] << 8 | bytes[16]); + data.No_Movement_Duration_in_Seconds = (bytes[17] << 8 | bytes[18]); + data.Unconcious_Duration_in_Seconds = (bytes[17] << 8 | bytes[18]); + data.Fall_Down_Speed_in_m_per_s = (bytes[19]); + data.Fall_Down_Gravity_in_g = (bytes[20]); + data.SOS_PushDown_Stamp = (bytes[21] << 24 | bytes[22] << 16 | bytes[23] << 8 | bytes[24]); + if (data.SOS_PushDown_Stamp != 0) { + var sos_start = new Date(1000 * data.SOS_PushDown_Stamp); + data.SOS_PushDown_Time = "[" + sos_start.getDate() + "." + (sos_start.getMonth() + 1) + "." + (sos_start.getFullYear()) + "] " + sos_start.getHours() + ":" + sos_start.getMinutes() + ":" + sos_start.getSeconds(); + } else data.SOS_PushDown_Time = "N/A"; + data.SOS_ReleaseUP_Stamp = (bytes[25] << 24 | bytes[26] << 16 | bytes[27] << 8 | bytes[28]); + if (data.SOS_ReleaseUP_Stamp != 0) { + var sos_stop = new Date(1000 * data.SOS_ReleaseUP_Stamp); + data.SOS_ReleaseUP_Time = "[" + sos_stop.getDate() + "." + (sos_stop.getMonth() + 1) + "." + (sos_stop.getFullYear()) + "] " + sos_stop.getHours() + ":" + sos_stop.getMinutes() + ":" + sos_stop.getSeconds(); + } else data.SOS_ReleaseUP_Time = "N/A"; + + data.Fall_Down_Stamp = (bytes[29] << 24 | bytes[30] << 16 | bytes[31] << 8 | bytes[32]); + if (data.Fall_Down_Stamp != 0) { + var fall_start = new Date(1000 * data.Fall_Down_Stamp); + data.Fall_Down_Time = "[" + fall_start.getDate() + "." + (fall_start.getMonth() + 1) + "." + (fall_start.getFullYear()) + "] " + fall_start.getHours() + ":" + fall_start.getMinutes() + ":" + fall_start.getSeconds(); + } else data.Fall_RiseUp_Stamp = "N/A"; + data.Fall_RiseUp_Stamp = (bytes[33] << 24 | bytes[34] << 16 | bytes[35] << 8 | bytes[36]); + if (data.Fall_RiseUp_Stamp != 0) { + var fall_stop = new Date(1000 * data.Fall_RiseUp_Stamp); + data.Fall_RiseUp_Time = "[" + fall_stop.getDate() + "." + (fall_stop.getMonth() + 1) + "." + (fall_stop.getFullYear()) + "] " + fall_stop.getHours() + ":" + fall_stop.getMinutes() + ":" + fall_stop.getSeconds(); + } else data.Fall_RiseUp_Time = "N/A"; + } + return { "Yunhorn_SmarToilets_data": data }; + } + else if ((fPort === 11) || (fPort === 52)) { + return [ + { + led_state: bytes[0] === 0 ? "Off" : "On", + mtm_code_1: bytes[1], + mtm_code_2: bytes[2], + hw_code: bytes[3], + battery_level: bytes[4] + "%", + //battery_level:(bytes[4])*100+" mV", + size_value: bytes[5], + distance_1_mm: bytes[6] << 8 | bytes[7], + //distance_2_mm:bytes[8]<<8|bytes[9], + //distance_3_mm:bytes[10]<<8|bytes[11], + distance_unit: "mm", + } + ]; + } + // R1D dual roll toilet paper sensor + else if (fPort === 57) { + return [ + { + led_state: bytes[0] === 0 ? "Off" : "On", + mtm_code_1: bytes[1], + mtm_code_2: bytes[2], + hw_code: bytes[3], + battery_level: bytes[4] + "%", + //battery_level:(bytes[4])*100+" mV", + size_value: bytes[5], + distance_1_mm: bytes[6] << 8 | bytes[7], + distance_2_mm: bytes[8] << 8 | bytes[9], + //distance_3_mm:bytes[10]<<8|bytes[11], + distance_unit: "mm", + } + ]; + } + else if ((fPort === 106)) { //STS-P2 bi-directional people counting + data.LED_State = bytes[0] === 0 ? "Off" : "On"; + data.MTM_Code_1 = bytes[1]; + data.MTM_Code_2 = bytes[2]; + data.HW_Code = bytes[3]; + data.Battery_Level = bytes[4] + " %"; + data.Payload_Size = bytes[5]; + data.Walk_In_People_Count = bytes[6] << 8 | bytes[7]; + data.Walk_Out_People_Count = bytes[8] << 8 | bytes[8]; + data.Walk_Around_People_Count = bytes[10] << 8 | bytes[11]; + data.Count_Period = bytes[12]; + data.Count_Period_Unit = String.fromCharCode(bytes[13]); + data.Sum_Day_Walk_In_People_Count = bytes[14] << 8 | bytes[15]; + data.Sum_Day_Walk_Out_People_Count = bytes[16] << 8 | bytes[17]; + data.Sum_Day_Walk_Around_People_Count = bytes[18] << 8 | bytes[19]; + data.Count_Valid = (bytes[20] == 0x0) ? "Error" : "OK"; + + return { "Yunhorn_SmarToilets_data": data }; + } + // Heart Beat + else if ((fPort === 8) || (fPort === 12) || (fPort === 20) || (fPort === 18) || (fPort === 5) || (fPort === 107) || (fPort === 58)) { + var data = {}; + //data.led_state=(bytes[0] & 0x7f) === 0 ? "Off" : "On"; + data.BoardLED = ((bytes[0] & 0x7F) === 0x01) ? "ON" : "OFF"; + //data.battery_level = bytes[1] + " %"; + data.battery_level = bytes[1] * 100 + "mV"; + return { "Yunhorn_SmarToilets_data": data }; + } + + // UPLINK, RFAC + else if (fPort === 1) { + var data = {}; + data.length = bytes.length; + if ((data.length === 10) && (bytes[0] == 0x59) && (bytes[9] == 0x38)) { + data.Yunhorn_PRD = "True"; + data.PRD_String = String.fromCharCode(bytes); + } + else if ((data.length === 4) && (bytes[0] == 0x52) && (bytes[1] == 0x46)) //RFAC + { + data.Request_Performed = "OK"; + data.RFAC = "OK"; + data.AC0 = bytes[0]; + data.AC1 = bytes[1]; + } + else if ((data.length === 4) && (bytes[0] === 0x50) && (bytes[1] === 0x31) && (bytes[2] === 0x31)) { + data.Work_Mode_Switch = "OK"; + switch (bytes[3] - 0x30) { + case 0x0: + data.workmode = "Network_mode"; + break; + case 0x01: + data.workmode = "Wired_Mode"; + break; + case 0x02: + data.workmode = "Hall_element_mode"; + break; + case 0x03: + data.workmode = "MotionDetect_mode"; + break; + case 0x04: + data.workmode = "Dual_mode"; + break; + case 0x05: + data.workmode = "Uni_Mode"; + break; + default: + data.workmode = "Unknown Mode"; + break; + } + } + + if ((bytes[0] === 0x59) && (bytes[1] === 0x44)) //Duration interval + { + data.Uplink_interval = (bytes[2] - 0x30) * 10 + (bytes[3] - 0x30); + data.Uplink_interval_unit = String.fromCharCode(bytes[4]); + //data.Heart_beat_Duration = (bytes[2]-0x30)*10 + (bytes[3]-0x30); + //data.Unit = String.fromCharCode(bytes[4]); + } + + else if ((bytes[0] === 0x59) && (bytes[1] === 0x53)) //Sampling interval or Heart-beat interval + { + data.Heart_Beat_interval = (bytes[2] - 0x30) * 10 + (bytes[3] - 0x30); + data.Heart_Beat_interval_unit = String.fromCharCode(bytes[4]); + //data.Wakeup_sampling_interval = (bytes[2]-0x30)*10 + (bytes[3]-0x30); + //data.Unit = String.fromCharCode(bytes[4]); + } + + else if (bytes[0] === 0x43) { // report current nvm config + data.mtm_code1 = bytes[1]; + data.mtm_code2 = bytes[2]; + data.sts_verion = bytes[3]; + data.sts_hw_ver = bytes[4]; + data.sts_uplink_interval = bytes[5]; + data.sts_uplink_interval_unit = String.fromCharCode(bytes[6]); + data.sts_sampling_interval = bytes[7]; + data.sts_sampling_interval_unit = String.fromCharCode(bytes[8]); + data.sts_work_mode = bytes[9]; + data.sts_service_mask = bytes[10]; + data.sts_reserve01 = bytes[11]; + data.sts_payload_length = bytes[12]; + data.rss_start_distance = bytes[13] * 0.1 + " meter"; + data.rss_range_length = bytes[14] * 0.1 + " meter"; + data.rss_threshold = bytes[15] * 0.1; + data.rss_receiving_gain = bytes[16] + " %"; + data.rss_profile = bytes[17]; + data.rss_rate_tracking = bytes[18]; + data.rss_rate_presence = bytes[19]; + data.rss_HWAAS = bytes[20]; + data.rss_nbr_removed_pc = bytes[21]; + data.rss_inter_frame_deviation_time_const = bytes[22] * 0.1; + data.rss_inter_frame_fast_cutoff = bytes[23]; + data.rss_inter_frame_slow_cutoff = bytes[24]; + data.rss_intra_frame_time_const = bytes[25]; + data.rss_intra_frame_weight = bytes[26] * 0.1; + data.rss_output_time_const = bytes[27] * 0.1; + data.rss_downsampling_factor = bytes[28]; + data.rss_power_saving_mode_active = bytes[29]; + data.rss_reserve02 = bytes[30]; + data.rss_reserve03 = bytes[31]; + data.rss_reserve04 = bytes[32]; + data.reserve2 = bytes[33]; + data.reserve3 = bytes[34]; + data.sensor_install_height = bytes[35] * 10 + " cm"; + + data.alarm_parameter05 = bytes[36]; + data.alarm_mute_expire_timer = bytes[37]; + data.alarm_lamp_bar_flashing_color = bytes[38]; + data.occupancy_overtime_threshold = bytes[39]; + + data.motionless_duration_threshold = bytes[40]; + data.unconcious_threshold = bytes[41]; + + data.fall_detection_acc_threshold = bytes[42]; + data.fall_detection_depth_threshold = bytes[43]; + data.fall_down_confirm_threshold = bytes[44]; + } + else if (bytes[0] === 0x53) { // SELF TEST FUNCTION + data.mtm_code1 = bytes[1]; + data.mtm_code2 = bytes[2]; + data.sts_verion = bytes[3]; + data.sts_hw_ver = bytes[4]; + data.battery_level = bytes[5]; + if ((bytes[6] === 0x03)) { // report sensor install height + data.sts_sensor_install_height = (bytes[7] << 8 | bytes[8]); + data.sts_sensor_install_height_unit = "mm"; + } + else if ((bytes[6] === 0x58)) { + data.sts_Test_Result = "### Motion Sensor Not Detected ###"; + } else if ((bytes[6] === 0x0E)) //result length, 10 rss bytes, 4 distance bytes + { + data.sts_Test_Result = "Motion Sensor Test Result:"; + data.sts_test_result_length = bytes[6]; + data.sts_rss_sub_code1 = bytes[7]; + data.sts_rss_sub_code2 = bytes[8]; + data.sts_rss_sub_code3 = bytes[9]; + data.sts_rss_sub_code4 = bytes[10]; + data.sts_rss_sub_code5 = bytes[11]; + data.sts_rss_sub_code6 = bytes[12]; + data.sts_rss_sub_code7 = bytes[13]; + data.sts_rss_sub_code8 = bytes[14]; + data.sts_rss_sub_code9 = bytes[15]; + data.sts_rss_sub_code10 = bytes[16]; + data.sts_sensor_install_height = String.fromCharCode(bytes[17]) + String.fromCharCode(bytes[18]) + String.fromCharCode(bytes[19]) + String.fromCharCode(bytes[20]) + " mm"; + } + } + else if (bytes[0] === 0x44) { // MEASURE INSTALLATION HEIGHT + data.mtm_code1 = bytes[1]; + data.mtm_code2 = bytes[2]; + data.sts_verion = bytes[3]; + data.sts_hw_ver = bytes[4]; + data.battery_level = bytes[5]; + data.payload_length = bytes[6]; + data.Measure_Distance = String.fromCharCode(bytes[7]) + String.fromCharCode(bytes[8]) + String.fromCharCode(bytes[9]) + String.fromCharCode(bytes[10]); + data.Distance_unit = "mm"; + } + else if (bytes[0] === 0x4c) { // LoRaWAN Class A/B/C + data.mtm_code1 = bytes[1]; + data.mtm_code2 = bytes[2]; + data.sts_verion = bytes[3]; + data.LoRaWAN_Class = String.fromCharCode(bytes[4]); + } + else if (bytes[0] === 0x56) { // FIRMWARE VERSION + + data.mtm_code1 = bytes[1]; + data.mtm_code2 = bytes[2]; + data.sts_verion = bytes[3]; + data.sts_hw_ver = bytes[4]; + data.sts_major = bytes[5]; + data.sts_minor = bytes[6]; + data.subminor = bytes[7]; + + if (data.length === 15) { + data.L_year = (bytes[8] << 8 | bytes[9]); + data.L_mon = bytes[10]; + data.L_day = bytes[11]; + data.L_hour = bytes[12]; + data.L_min = bytes[13]; + data.L_sec = bytes[14]; + data.LocalTime_UTC = "UTC: " + data.L_year + "/" + data.L_mon + "/" + data.L_day + " " + data.L_hour + ":" + data.L_min + ":" + data.L_sec; + data.LocalTime_EST8 = "GMT+8: " + data.L_year + "/" + data.L_mon + "/" + data.L_day + " " + (data.L_hour + 8) + ":" + data.L_min + ":" + data.L_sec; + } + } + else if (bytes[0] === 0x54) { //T: date & time + data.L_year = (bytes[1] << 8 | bytes[2]); + data.L_mon = bytes[3]; + data.L_day = bytes[4]; + data.L_hour = bytes[5]; + data.L_min = bytes[6]; + data.L_sec = bytes[7]; + data.LocalTime_UTC = "UTC: " + data.L_year + "/" + data.L_mon + "/" + data.L_day + " " + data.L_hour + ":" + data.L_min + ":" + data.L_sec; + + } + else if (bytes[0] === 0x50) { // P cmd report + if (data.length == 7) { + switch (bytes[3]) { + case 0x46: // F --- fall down & unconscious detection threshold + data.FALL_acceleration = (bytes[4] == 0x30 ? "Disabled" : ((bytes[4] - 0x30) * 10) + " mg/s2"); + data.FALL_depth_measure = (bytes[5] == 0x30 ? "Disabled" : ((bytes[5] - 0x30) * 10) + " cm"); + data.FALL_confirm_threshold = (bytes[6] == 0x30 ? "Disabled" : ((bytes[6] - 0x30) * 10) + " seconds"); + //data.FALL_reserved = (bytes[7]==0x0?"Disabled":((bytes[6]-0x30)*10)+" min"); + break; + } //switch + } + else if (data.length == 8) { + switch (bytes[3]) { + case 0x4f: // O -- over stay, onconscious, long stay + data.OMU_Motionless_duration_in_min = (bytes[4] == 0x30 ? "Disabled" : ((bytes[4] - 0x30)) + " Min"); + data.OMU_Long_Occupy_duration_in_Min = (bytes[5] == 0x30 ? "Disabled" : ((bytes[5] - 0x30) * 10) + " Min"); + data.OMU_Unconcious_Threshold = (bytes[6] == 0x30 ? "Disabled" : ((bytes[6] - 0x30) * 100) + "ml"); + data.OMU_Alarm_Mute_Reset_Timer = (bytes[7] == 0x30 ? "Disabled" : ((bytes[7] - 0x30) * 10) + " Seconds"); + break; + case 0x46: // F --- fall down & unconscious detection threshold + data.FALL_acceleration = (bytes[4] == 0x30 ? "Disabled" : ((bytes[4] - 0x30) * 10) + " mg/s2"); + data.FALL_depth_measure = (bytes[5] == 0x30 ? "Disabled" : ((bytes[5] - 0x30) * 10) + " cm"); + data.FALL_confirm_threshold = (bytes[6] == 0x30 ? "Disabled" : ((bytes[6] - 0x30) * 10) + " seconds"); + data.FALL_reserved = (bytes[7] == 0x30 ? "Disabled" : ((bytes[6] - 0x30) * 10) + " min"); + break; + } //switch + } else if (data.length == 11) { // P 1108201365 + data.RSS_SIMPLE_Start = ((bytes[3] - 0x30) * 100 + (bytes[4] - 0x30) * 10) + " cm"; + data.RSS_SIMPLE_Length = ((bytes[5] - 0x30) * 100 + (bytes[6] - 0x030) * 10) + " cm"; + data.RSS_SIMPLE_Threshold = ((bytes[7] - 0x30) * 1000 + (bytes[8] - 0x30) * 100) + " ml"; + data.RSS_SIMPLE_Gain = ((bytes[9] - 0x30) * 10 + (bytes[10] - 0x30)) + " %"; + } else if (data.length == 33) { // P 11 + data.RSS_FULL_Start = ((bytes[3] - 0x30) * 100 + (bytes[4] - 0x30) * 10) + " cm"; + data.RSS_FULL_Length = ((bytes[5] - 0x30) * 100 + (bytes[6] - 0x30) * 10) + " cm"; + data.RSS_FULL_Threshold = ((bytes[7] - 0x30) * 1000 + (bytes[8] - 0x30) * 100) + " ml"; + data.RSS_FULL_Gain = ((bytes[9] - 0x30) * 10 + (bytes[10] - 0x30)) + " %"; + data.RSS_FULL_Profile = (bytes[11] - 0x30); + data.RSS_FULL_Rate_Tracking = ((bytes[12] - 0x30) * 10 + (bytes[13] - 0x30)); + data.RSS_FULL_Rate_Presence = ((bytes[14] - 0x30) * 10 + (bytes[15] - 0x30)); + data.RSS_FULL_HWAAS = ((bytes[16] - 0x30) * 10 + (bytes[17] - 0x30)); + data.RSS_FULL_Num_Removed_PC = (bytes[18] - 0x30); + data.RSS_FULL_Inter_Deviation_Time_Const_in_Sec = ((bytes[19] - 0x30) + (bytes[20] - 0x30) * 0.1); + data.RSS_FULL_Inter_Fast_Cut_Off = ((bytes[21] - 0x30) * 10 + (bytes[22] - 0x30)); + data.RSS_FULL_Inter_Slow_Cut_Off = ((bytes[23] - 0x30) * 0.1 + (bytes[24] - 0x30) * 0.001); + data.RSS_FULL_Inter_Time_Const_in_Sec = ((bytes[25] - 0x30) * 10 + (bytes[26] - 0x30)); + data.RSS_FULL_Inter_Weight = ((bytes[27] - 0x30) + (bytes[28] - 0x30) * 0.1); + data.RSS_FULL_Output_Time_Const_in_Sec = ((bytes[29] - 0x30) + (bytes[30] - 0x30) * 0.1); + data.RSS_FULL_DownSampling_factor = (bytes[31] - 0x30); + data.RSS_FULL_Power_Saving_mode = (bytes[32] - 0x30); + + + } + } + return { "Yunhorn_SmarToilets_data": data }; + } } \ No newline at end of file -- 2.40.1 From 1a4998a6596ae8c7921bf1e825573693a37d5c88 Mon Sep 17 00:00:00 2001 From: sundp <dp.s@yunhorn.com> Date: Mon, 7 Oct 2024 20:59:37 +0800 Subject: [PATCH 3/4] wip --- STS/Core/Src/yunhorn_sts_process.c | 25 +++++++++++++++++++++++-- STS/TOF/App/app_tof_peoplecount.c | 2 +- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/STS/Core/Src/yunhorn_sts_process.c b/STS/Core/Src/yunhorn_sts_process.c index 81607ef..871b090 100644 --- a/STS/Core/Src/yunhorn_sts_process.c +++ b/STS/Core/Src/yunhorn_sts_process.c @@ -44,9 +44,10 @@ #ifdef VL53L0 #include "X-WL55_WLE5_53L0X.h" #endif -#ifdef STS_P2 +#if defined(STS_P2)||defined(STS_T6) #include "app_tof.h" #include "app_tof_peoplecount.h" +extern volatile uint8_t sts_door_jam_profile; #endif volatile sts_cfg_nvm_t sts_cfg_nvm = { sts_mtmcode1, @@ -119,6 +120,9 @@ static void STS_Show_STS_CFG_NVM(uint8_t * nvm_store_value); extern volatile int sts_tof_distance_data[MAX_TOF_COUNT]; volatile sts_tof_range_data_t sts_range_sensor_data={0x0,0x0,0x0}; #endif +#if defined(STS_P2)||defined(STS_T6) +volatile uint8_t sts_door_jam_profile = 0; +#endif #ifdef STS_R4 volatile uint8_t sts_soap_level_state=0; void STS_R4_sensor_read(sts_r_sensor_data_t *sts_r_sensor_data); @@ -1702,7 +1706,7 @@ void STS_SENSOR_Function_Test_Process(void) tstbuf[i++] = (uint8_t) sts_hardware_ver; tstbuf[i++] = (uint8_t) (99*GetBatteryLevel()/254)&0xff; -#ifdef STS_P2 +#if (defined(STS_P2)||defined(STS_T6)) STS_SENSOR_MEMS_Get_ID(&sensor_id); if (((sensor_id & 0xff)!= 0xCC) && (((sensor_id >>8) & 0xFF)!=0xEA)) // no VL53L1X found @@ -1716,6 +1720,23 @@ void STS_SENSOR_Function_Test_Process(void) tstbuf[i++] = (uint8_t) (sts_sensor_install_height>>8)&0xff; // MSB of sensor height tstbuf[i++] = (uint8_t) (sts_sensor_install_height)&0xff; // LSB of sensor height } + /* */ + /* for STS_P2, set ppc_config -> door_jam_profile and distance threshold accordingly */ + /* */ + + if ((sts_sensor_install_height >= 1500)&&(sts_sensor_install_height<=4000)) + { + sts_door_jam_profile = DOOR_JAM_2000; // DOOR_JAM_2000: assume door_jame less 2000mm + + if (sts_sensor_install_height > 2000) + sts_door_jam_profile ++; //DOOR_JAM_2400 + if (sts_sensor_install_height > 2400) + sts_door_jam_profile ++; //DOOR_JAM_3000 + if (sts_sensor_install_height > 3000) + sts_door_jam_profile ++; //DOOR_JAM_3500 + if (sts_sensor_install_height > 3500) + sts_door_jam_profile ++; //DOOR_JAM_4000 + } #endif #ifdef YUNHORN_STS_O6_ENABLED tstbuf[i++] = (uint8_t)20; //length of following data diff --git a/STS/TOF/App/app_tof_peoplecount.c b/STS/TOF/App/app_tof_peoplecount.c index f6ba0f8..9f3133d 100644 --- a/STS/TOF/App/app_tof_peoplecount.c +++ b/STS/TOF/App/app_tof_peoplecount.c @@ -32,7 +32,7 @@ volatile sts_zone_center_by_rows_of_spads_t zone_center[3]={ {6, 159, 239}, {8, 175, 231}, }; -volatile uint8_t sts_distance_mode = DOOR_JAM_3000; +volatile uint8_t sts_distance_mode = sts_door_jam_profile; //DOOR_JAM_3000; volatile uint8_t sts_people_count_number_changed = 0; static uint32_t cnt_today=0, cnt_week=0; static uint8_t last_year=0, this_year=0,last_month=0, this_month=0,last_week=0, this_week=0,last_day=0, this_day=0; -- 2.40.1 From 5771ce3d0ab1b633a7c6dceb504fd32a7063cc26 Mon Sep 17 00:00:00 2001 From: YunHorn Technology <dp.s@yunhorn.com> Date: Tue, 8 Oct 2024 18:50:57 +0800 Subject: [PATCH 4/4] wip good in presence detection --- Core/Src/sys_app.c | 2 +- LoRaWAN/App/lora_app.c | 7 +- STM32CubeIDE/.settings/language.settings.xml | 4 +- .../Release/Application/User/Core/subdir.mk | 72 ++--- .../Application/User/LoRaWAN/App/subdir.mk | 16 +- .../Application/User/LoRaWAN/Target/subdir.mk | 4 +- .../Application/User/STS/Core/Src/subdir.mk | 12 +- .../Application/User/STS/TOF/App/subdir.mk | 8 +- .../Application/User/STS/TOF/Target/subdir.mk | 4 +- .../User/STS/TOF/vl53l1x_uld/subdir.mk | 16 +- .../Drivers/BSP/STM32WLxx_Nucleo/subdir.mk | 8 +- STM32CubeIDE/Release/Drivers/CMSIS/subdir.mk | 4 +- .../Drivers/STM32WLxx_HAL_Driver/subdir.mk | 96 +++--- .../Release/Middlewares/LoRaWAN/subdir.mk | 132 ++++---- .../Release/Middlewares/SubGHz_Phy/subdir.mk | 12 +- STM32CubeIDE/Release/Utilities/subdir.mk | 32 +- STM32CubeIDE/Release/makefile | 5 +- STM32CubeIDE/Release/sources.mk | 1 - STS/Core/Src/yunhorn_sts_process.c | 10 +- STS/TOF/App/app_tof.c | 10 +- STS/TOF/App/app_tof_peoplecount.c | 296 ++++++++++++++---- STS/TOF/App/app_tof_peoplecount.h | 23 +- 22 files changed, 482 insertions(+), 292 deletions(-) diff --git a/Core/Src/sys_app.c b/Core/Src/sys_app.c index cefc8f5..e566b3a 100644 --- a/Core/Src/sys_app.c +++ b/Core/Src/sys_app.c @@ -117,7 +117,7 @@ void SystemApp_Init(void) /*Initialize the Sensors */ EnvSensors_Init(); -#ifdef STS_P2 +#if defined(STS_P2)||defined(STS_T6) STS_TOF_VL53LX_PeopleCounting_Process_Init(); #endif /*Init low power manager*/ diff --git a/LoRaWAN/App/lora_app.c b/LoRaWAN/App/lora_app.c index 9cb3d5c..252e2d3 100644 --- a/LoRaWAN/App/lora_app.c +++ b/LoRaWAN/App/lora_app.c @@ -518,7 +518,7 @@ void LoRaWAN_Init(void) #endif -#ifdef STS_P2 +#if defined(STS_P2)||defined(STS_T6) UTIL_SEQ_RegTask((1 << CFG_SEQ_Task_YunhornSTSEventP5), UTIL_SEQ_RFU, STS_YunhornSTSEventP5_Process); @@ -531,7 +531,8 @@ void LoRaWAN_Init(void) #ifdef VL53L0 UTIL_SEQ_RegTask((1 << CFG_SEQ_Task_YunhornSTSEventP4), UTIL_SEQ_RFU, STS_YunhornSTSEventP4_Process); #endif -#ifdef STS_P2 + +#if defined(STS_P2)||defined(STS_T6) UTIL_TIMER_Create(&YunhornSTSWakeUpScanTimer, STS_TOFScanPeriod_msec, UTIL_TIMER_PERIODIC, (void*)OnYunhornSTSWakeUpScanTimerEvent, NULL); UTIL_TIMER_Start(&YunhornSTSWakeUpScanTimer); #endif @@ -1460,7 +1461,7 @@ void OnYunhornSTSHeartBeatPeriodicityChanged(uint32_t periodicity) /* USER CODE BEGIN PrFD_YunhornSTSWakeUpScanTimerEvents */ static void OnYunhornSTSWakeUpScanTimerEvent(void *context) { -#ifdef STS_P2 +#if defined(STS_P2)||defined(STS_T6) UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_YunhornSTSEventP5), CFG_SEQ_Prio_0); UTIL_TIMER_Start(&YunhornSTSWakeUpScanTimer); diff --git a/STM32CubeIDE/.settings/language.settings.xml b/STM32CubeIDE/.settings/language.settings.xml index 515be7c..0ec3934 100644 --- a/STM32CubeIDE/.settings/language.settings.xml +++ b/STM32CubeIDE/.settings/language.settings.xml @@ -5,7 +5,7 @@ <provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> <provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/> <provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/> - <provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1137263677548078264" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> + <provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="1048471218779752885" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> <language-scope id="org.eclipse.cdt.core.gcc"/> <language-scope id="org.eclipse.cdt.core.g++"/> </provider> @@ -16,7 +16,7 @@ <provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> <provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/> <provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/> - <provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1137263677548078264" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> + <provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="1048471218779752885" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> <language-scope id="org.eclipse.cdt.core.gcc"/> <language-scope id="org.eclipse.cdt.core.g++"/> </provider> diff --git a/STM32CubeIDE/Release/Application/User/Core/subdir.mk b/STM32CubeIDE/Release/Application/User/Core/subdir.mk index e0450bb..a5d5258 100644 --- a/STM32CubeIDE/Release/Application/User/Core/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/Core/subdir.mk @@ -5,26 +5,26 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc_if.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/dma.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/flash_if.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/gpio.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/i2c.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/main.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/rtc.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32_lpm_if.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_hal_msp.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_it.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/subghz.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_app.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_debug.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_sensors.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc_if.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/dma.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/flash_if.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/gpio.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/i2c.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/main.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/rtc.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32_lpm_if.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_hal_msp.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_it.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/subghz.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_app.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_debug.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_sensors.c \ ../Application/User/Core/syscalls.c \ ../Application/User/Core/sysmem.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/timer_if.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart_if.c +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/timer_if.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart_if.c OBJS += \ ./Application/User/Core/adc.o \ @@ -72,43 +72,43 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Application/User/Core/adc.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc.c Application/User/Core/subdir.mk +Application/User/Core/adc.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/adc_if.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc_if.c Application/User/Core/subdir.mk +Application/User/Core/adc_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/adc_if.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/dma.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/dma.c Application/User/Core/subdir.mk +Application/User/Core/dma.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/dma.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/flash_if.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/flash_if.c Application/User/Core/subdir.mk +Application/User/Core/flash_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/flash_if.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/gpio.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/gpio.c Application/User/Core/subdir.mk +Application/User/Core/gpio.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/gpio.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/i2c.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/i2c.c Application/User/Core/subdir.mk +Application/User/Core/i2c.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/i2c.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/main.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/main.c Application/User/Core/subdir.mk +Application/User/Core/main.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/main.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/rtc.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/rtc.c Application/User/Core/subdir.mk +Application/User/Core/rtc.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/rtc.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/stm32_lpm_if.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32_lpm_if.c Application/User/Core/subdir.mk +Application/User/Core/stm32_lpm_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32_lpm_if.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/stm32wlxx_hal_msp.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_hal_msp.c Application/User/Core/subdir.mk +Application/User/Core/stm32wlxx_hal_msp.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_hal_msp.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/stm32wlxx_it.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_it.c Application/User/Core/subdir.mk +Application/User/Core/stm32wlxx_it.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_it.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/subghz.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/subghz.c Application/User/Core/subdir.mk +Application/User/Core/subghz.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/subghz.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/sys_app.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_app.c Application/User/Core/subdir.mk +Application/User/Core/sys_app.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_app.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/sys_debug.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_debug.c Application/User/Core/subdir.mk +Application/User/Core/sys_debug.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_debug.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/sys_sensors.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_sensors.c Application/User/Core/subdir.mk +Application/User/Core/sys_sensors.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_sensors.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/%.o Application/User/Core/%.su Application/User/Core/%.cyclo: ../Application/User/Core/%.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/timer_if.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/timer_if.c Application/User/Core/subdir.mk +Application/User/Core/timer_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/timer_if.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/usart.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart.c Application/User/Core/subdir.mk +Application/User/Core/usart.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/usart_if.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart_if.c Application/User/Core/subdir.mk +Application/User/Core/usart_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/usart_if.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-Core diff --git a/STM32CubeIDE/Release/Application/User/LoRaWAN/App/subdir.mk b/STM32CubeIDE/Release/Application/User/LoRaWAN/App/subdir.mk index 6063bbc..97b1ee8 100644 --- a/STM32CubeIDE/Release/Application/User/LoRaWAN/App/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/LoRaWAN/App/subdir.mk @@ -5,10 +5,10 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/CayenneLpp.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/app_lorawan.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_app.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_info.c +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/CayenneLpp.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/app_lorawan.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_app.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_info.c OBJS += \ ./Application/User/LoRaWAN/App/CayenneLpp.o \ @@ -24,13 +24,13 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Application/User/LoRaWAN/App/CayenneLpp.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/CayenneLpp.c Application/User/LoRaWAN/App/subdir.mk +Application/User/LoRaWAN/App/CayenneLpp.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/CayenneLpp.c Application/User/LoRaWAN/App/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/LoRaWAN/App/app_lorawan.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/app_lorawan.c Application/User/LoRaWAN/App/subdir.mk +Application/User/LoRaWAN/App/app_lorawan.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/app_lorawan.c Application/User/LoRaWAN/App/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/LoRaWAN/App/lora_app.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_app.c Application/User/LoRaWAN/App/subdir.mk +Application/User/LoRaWAN/App/lora_app.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_app.c Application/User/LoRaWAN/App/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/LoRaWAN/App/lora_info.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_info.c Application/User/LoRaWAN/App/subdir.mk +Application/User/LoRaWAN/App/lora_info.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/App/lora_info.c Application/User/LoRaWAN/App/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-LoRaWAN-2f-App diff --git a/STM32CubeIDE/Release/Application/User/LoRaWAN/Target/subdir.mk b/STM32CubeIDE/Release/Application/User/LoRaWAN/Target/subdir.mk index 58976f4..31957c9 100644 --- a/STM32CubeIDE/Release/Application/User/LoRaWAN/Target/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/LoRaWAN/Target/subdir.mk @@ -5,7 +5,7 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/Target/radio_board_if.c +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/Target/radio_board_if.c OBJS += \ ./Application/User/LoRaWAN/Target/radio_board_if.o @@ -15,7 +15,7 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Application/User/LoRaWAN/Target/radio_board_if.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/Target/radio_board_if.c Application/User/LoRaWAN/Target/subdir.mk +Application/User/LoRaWAN/Target/radio_board_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/LoRaWAN/Target/radio_board_if.c Application/User/LoRaWAN/Target/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-LoRaWAN-2f-Target diff --git a/STM32CubeIDE/Release/Application/User/STS/Core/Src/subdir.mk b/STM32CubeIDE/Release/Application/User/STS/Core/Src/subdir.mk index c07f08d..d24d70d 100644 --- a/STM32CubeIDE/Release/Application/User/STS/Core/Src/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/STS/Core/Src/subdir.mk @@ -5,9 +5,9 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/cmox_low_level.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/sts_cmox_hmac_sha.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/yunhorn_sts_process.c +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/cmox_low_level.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/sts_cmox_hmac_sha.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/yunhorn_sts_process.c OBJS += \ ./Application/User/STS/Core/Src/cmox_low_level.o \ @@ -21,11 +21,11 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Application/User/STS/Core/Src/cmox_low_level.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/cmox_low_level.c Application/User/STS/Core/Src/subdir.mk +Application/User/STS/Core/Src/cmox_low_level.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/cmox_low_level.c Application/User/STS/Core/Src/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/Core/Src/sts_cmox_hmac_sha.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/sts_cmox_hmac_sha.c Application/User/STS/Core/Src/subdir.mk +Application/User/STS/Core/Src/sts_cmox_hmac_sha.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/sts_cmox_hmac_sha.c Application/User/STS/Core/Src/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/Core/Src/yunhorn_sts_process.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/yunhorn_sts_process.c Application/User/STS/Core/Src/subdir.mk +Application/User/STS/Core/Src/yunhorn_sts_process.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/Core/Src/yunhorn_sts_process.c Application/User/STS/Core/Src/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-STS-2f-Core-2f-Src diff --git a/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk b/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk index d06e63c..2c60254 100644 --- a/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk @@ -5,8 +5,8 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c OBJS += \ ./Application/User/STS/TOF/App/app_tof.o \ @@ -18,9 +18,9 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Application/User/STS/TOF/App/app_tof.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c Application/User/STS/TOF/App/subdir.mk +Application/User/STS/TOF/App/app_tof.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c Application/User/STS/TOF/App/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/App/app_tof_peoplecount.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c Application/User/STS/TOF/App/subdir.mk +Application/User/STS/TOF/App/app_tof_peoplecount.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c Application/User/STS/TOF/App/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-App diff --git a/STM32CubeIDE/Release/Application/User/STS/TOF/Target/subdir.mk b/STM32CubeIDE/Release/Application/User/STS/TOF/Target/subdir.mk index 671c64e..4fe81de 100644 --- a/STM32CubeIDE/Release/Application/User/STS/TOF/Target/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/STS/TOF/Target/subdir.mk @@ -5,7 +5,7 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/Target/app_tof_pin_conf.c +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/Target/app_tof_pin_conf.c OBJS += \ ./Application/User/STS/TOF/Target/app_tof_pin_conf.o @@ -15,7 +15,7 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Application/User/STS/TOF/Target/app_tof_pin_conf.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/Target/app_tof_pin_conf.c Application/User/STS/TOF/Target/subdir.mk +Application/User/STS/TOF/Target/app_tof_pin_conf.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/Target/app_tof_pin_conf.c Application/User/STS/TOF/Target/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-Target diff --git a/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l1x_uld/subdir.mk b/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l1x_uld/subdir.mk index f02d30e..baba620 100644 --- a/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l1x_uld/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/STS/TOF/vl53l1x_uld/subdir.mk @@ -5,10 +5,10 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_api.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_calibration.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.c \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/vl53l1_platform.c +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_api.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_calibration.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/vl53l1_platform.c OBJS += \ ./Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.o \ @@ -24,13 +24,13 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_api.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk +Application/User/STS/TOF/vl53l1x_uld/VL53L1X_api.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_api.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_calibration.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk +Application/User/STS/TOF/vl53l1x_uld/VL53L1X_calibration.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/VL53L1X_calibration.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk +Application/User/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/X-NUCLEO-53L1A1.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/vl53l1_platform.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk +Application/User/STS/TOF/vl53l1x_uld/vl53l1_platform.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/vl53l1x_uld/vl53l1_platform.c Application/User/STS/TOF/vl53l1x_uld/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-vl53l1x_uld diff --git a/STM32CubeIDE/Release/Drivers/BSP/STM32WLxx_Nucleo/subdir.mk b/STM32CubeIDE/Release/Drivers/BSP/STM32WLxx_Nucleo/subdir.mk index c53733a..9a73b44 100644 --- a/STM32CubeIDE/Release/Drivers/BSP/STM32WLxx_Nucleo/subdir.mk +++ b/STM32CubeIDE/Release/Drivers/BSP/STM32WLxx_Nucleo/subdir.mk @@ -5,8 +5,8 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/OneDrive/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.c \ -D:/OneDrive/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo_radio.c +D:/ONEDRIVE/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo_radio.c OBJS += \ ./Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.o \ @@ -18,9 +18,9 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.o: D:/OneDrive/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.c Drivers/BSP/STM32WLxx_Nucleo/subdir.mk +Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.o: D:/ONEDRIVE/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo.c Drivers/BSP/STM32WLxx_Nucleo/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo_radio.o: D:/OneDrive/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo_radio.c Drivers/BSP/STM32WLxx_Nucleo/subdir.mk +Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo_radio.o: D:/ONEDRIVE/STM32WLV13/Drivers/BSP/STM32WLxx_Nucleo/stm32wlxx_nucleo_radio.c Drivers/BSP/STM32WLxx_Nucleo/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Drivers-2f-BSP-2f-STM32WLxx_Nucleo diff --git a/STM32CubeIDE/Release/Drivers/CMSIS/subdir.mk b/STM32CubeIDE/Release/Drivers/CMSIS/subdir.mk index e7ccf34..ea0d16e 100644 --- a/STM32CubeIDE/Release/Drivers/CMSIS/subdir.mk +++ b/STM32CubeIDE/Release/Drivers/CMSIS/subdir.mk @@ -5,7 +5,7 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/system_stm32wlxx.c +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/system_stm32wlxx.c OBJS += \ ./Drivers/CMSIS/system_stm32wlxx.o @@ -15,7 +15,7 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Drivers/CMSIS/system_stm32wlxx.o: D:/OneDrive/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/system_stm32wlxx.c Drivers/CMSIS/subdir.mk +Drivers/CMSIS/system_stm32wlxx.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/system_stm32wlxx.c Drivers/CMSIS/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Drivers-2f-CMSIS diff --git a/STM32CubeIDE/Release/Drivers/STM32WLxx_HAL_Driver/subdir.mk b/STM32CubeIDE/Release/Drivers/STM32WLxx_HAL_Driver/subdir.mk index 986f368..ca019d3 100644 --- a/STM32CubeIDE/Release/Drivers/STM32WLxx_HAL_Driver/subdir.mk +++ b/STM32CubeIDE/Release/Drivers/STM32WLxx_HAL_Driver/subdir.mk @@ -5,30 +5,30 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc_ex.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_cortex.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma_ex.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_exti.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash_ex.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_gpio.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c_ex.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr_ex.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc_ex.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc_ex.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_subghz.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim_ex.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart_ex.c \ -D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_ll_adc.c +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc_ex.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_cortex.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma_ex.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_exti.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash_ex.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_gpio.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c_ex.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr_ex.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc_ex.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc_ex.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_subghz.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim_ex.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart_ex.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_ll_adc.c OBJS += \ ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal.o \ @@ -84,53 +84,53 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_adc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_cortex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_cortex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_cortex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_cortex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_dma_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_exti.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_exti.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_exti.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_exti.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_flash_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_gpio.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_gpio.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_gpio.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_gpio.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_i2c_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_pwr_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_subghz.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_subghz.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart_ex.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_uart_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Drivers/STM32WLxx_HAL_Driver/stm32wlxx_ll_adc.o: D:/OneDrive/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_ll_adc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_ll_adc.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_ll_adc.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Drivers-2f-STM32WLxx_HAL_Driver diff --git a/STM32CubeIDE/Release/Middlewares/LoRaWAN/subdir.mk b/STM32CubeIDE/Release/Middlewares/LoRaWAN/subdir.mk index bda4cfd..5286078 100644 --- a/STM32CubeIDE/Release/Middlewares/LoRaWAN/subdir.mk +++ b/STM32CubeIDE/Release/Middlewares/LoRaWAN/subdir.mk @@ -5,39 +5,39 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/LmHandler.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpCompliance.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpPackagesRegistration.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMac.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacAdr.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacClassB.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCommands.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacConfirmQueue.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCrypto.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacParser.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacSerializer.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/NvmDataMgmt.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/Region.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAS923.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAU915.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionBaseUS.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A20.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A26.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B20.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B26.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN779.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCommon.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU433.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU868.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionIN865.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionKR920.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionRU864.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionUS915.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/cmac.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/lorawan_aes.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/soft-se.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Utilities/utilities.c +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/LmHandler.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpCompliance.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpPackagesRegistration.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMac.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacAdr.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacClassB.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCommands.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacConfirmQueue.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCrypto.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacParser.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacSerializer.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/NvmDataMgmt.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/Region.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAS923.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAU915.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionBaseUS.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A20.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A26.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B20.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B26.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN779.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCommon.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU433.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU868.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionIN865.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionKR920.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionRU864.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionUS915.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/cmac.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/lorawan_aes.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/soft-se.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Utilities/utilities.c OBJS += \ ./Middlewares/LoRaWAN/LmHandler.o \ @@ -111,71 +111,71 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Middlewares/LoRaWAN/LmHandler.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/LmHandler.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LmHandler.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/LmHandler.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LmhpCompliance.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpCompliance.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LmhpCompliance.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpCompliance.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LmhpPackagesRegistration.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpPackagesRegistration.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LmhpPackagesRegistration.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/Packages/LmhpPackagesRegistration.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMac.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMac.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMac.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMac.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMacAdr.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacAdr.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMacAdr.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacAdr.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMacClassB.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacClassB.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMacClassB.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacClassB.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMacCommands.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCommands.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMacCommands.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCommands.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMacConfirmQueue.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacConfirmQueue.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMacConfirmQueue.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacConfirmQueue.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMacCrypto.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCrypto.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMacCrypto.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacCrypto.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMacParser.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacParser.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMacParser.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacParser.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/LoRaMacSerializer.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacSerializer.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/LoRaMacSerializer.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/LoRaMacSerializer.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/NvmDataMgmt.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/NvmDataMgmt.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/NvmDataMgmt.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/LmHandler/NvmDataMgmt.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/Region.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/Region.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/Region.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/Region.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionAS923.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAS923.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionAS923.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAS923.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionAU915.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAU915.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionAU915.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionAU915.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionBaseUS.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionBaseUS.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionBaseUS.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionBaseUS.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionCN470.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionCN470.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionCN470A20.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A20.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionCN470A20.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A20.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionCN470A26.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A26.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionCN470A26.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470A26.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionCN470B20.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B20.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionCN470B20.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B20.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionCN470B26.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B26.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionCN470B26.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN470B26.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionCN779.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN779.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionCN779.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCN779.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionCommon.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCommon.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionCommon.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionCommon.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionEU433.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU433.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionEU433.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU433.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionEU868.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU868.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionEU868.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionEU868.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionIN865.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionIN865.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionIN865.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionIN865.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionKR920.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionKR920.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionKR920.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionKR920.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionRU864.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionRU864.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionRU864.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionRU864.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/RegionUS915.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionUS915.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/RegionUS915.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Mac/Region/RegionUS915.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/cmac.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/cmac.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/cmac.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/cmac.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/lorawan_aes.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/lorawan_aes.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/lorawan_aes.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/lorawan_aes.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/soft-se.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/soft-se.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/soft-se.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Crypto/soft-se.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/LoRaWAN/utilities.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Utilities/utilities.c Middlewares/LoRaWAN/subdir.mk +Middlewares/LoRaWAN/utilities.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/LoRaWAN/Utilities/utilities.c Middlewares/LoRaWAN/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Middlewares-2f-LoRaWAN diff --git a/STM32CubeIDE/Release/Middlewares/SubGHz_Phy/subdir.mk b/STM32CubeIDE/Release/Middlewares/SubGHz_Phy/subdir.mk index f909c5b..cfc3fda 100644 --- a/STM32CubeIDE/Release/Middlewares/SubGHz_Phy/subdir.mk +++ b/STM32CubeIDE/Release/Middlewares/SubGHz_Phy/subdir.mk @@ -5,9 +5,9 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_driver.c \ -D:/OneDrive/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_fw.c +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_driver.c \ +D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_fw.c OBJS += \ ./Middlewares/SubGHz_Phy/radio.o \ @@ -21,11 +21,11 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Middlewares/SubGHz_Phy/radio.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio.c Middlewares/SubGHz_Phy/subdir.mk +Middlewares/SubGHz_Phy/radio.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio.c Middlewares/SubGHz_Phy/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/SubGHz_Phy/radio_driver.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_driver.c Middlewares/SubGHz_Phy/subdir.mk +Middlewares/SubGHz_Phy/radio_driver.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_driver.c Middlewares/SubGHz_Phy/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Middlewares/SubGHz_Phy/radio_fw.o: D:/OneDrive/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_fw.c Middlewares/SubGHz_Phy/subdir.mk +Middlewares/SubGHz_Phy/radio_fw.o: D:/ONEDRIVE/STM32WLV13/Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver/radio_fw.c Middlewares/SubGHz_Phy/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Middlewares-2f-SubGHz_Phy diff --git a/STM32CubeIDE/Release/Utilities/subdir.mk b/STM32CubeIDE/Release/Utilities/subdir.mk index d5b4557..a4317bb 100644 --- a/STM32CubeIDE/Release/Utilities/subdir.mk +++ b/STM32CubeIDE/Release/Utilities/subdir.mk @@ -5,14 +5,14 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/OneDrive/STM32WLV13/Utilities/trace/adv_trace/stm32_adv_trace.c \ -D:/OneDrive/STM32WLV13/Utilities/lpm/tiny_lpm/stm32_lpm.c \ -D:/OneDrive/STM32WLV13/Utilities/misc/stm32_mem.c \ -D:/OneDrive/STM32WLV13/Utilities/sequencer/stm32_seq.c \ -D:/OneDrive/STM32WLV13/Utilities/misc/stm32_systime.c \ -D:/OneDrive/STM32WLV13/Utilities/timer/stm32_timer.c \ -D:/OneDrive/STM32WLV13/Utilities/misc/stm32_tiny_sscanf.c \ -D:/OneDrive/STM32WLV13/Utilities/misc/stm32_tiny_vsnprintf.c +D:/ONEDRIVE/STM32WLV13/Utilities/trace/adv_trace/stm32_adv_trace.c \ +D:/ONEDRIVE/STM32WLV13/Utilities/lpm/tiny_lpm/stm32_lpm.c \ +D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_mem.c \ +D:/ONEDRIVE/STM32WLV13/Utilities/sequencer/stm32_seq.c \ +D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_systime.c \ +D:/ONEDRIVE/STM32WLV13/Utilities/timer/stm32_timer.c \ +D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_tiny_sscanf.c \ +D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_tiny_vsnprintf.c OBJS += \ ./Utilities/stm32_adv_trace.o \ @@ -36,21 +36,21 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes -Utilities/stm32_adv_trace.o: D:/OneDrive/STM32WLV13/Utilities/trace/adv_trace/stm32_adv_trace.c Utilities/subdir.mk +Utilities/stm32_adv_trace.o: D:/ONEDRIVE/STM32WLV13/Utilities/trace/adv_trace/stm32_adv_trace.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Utilities/stm32_lpm.o: D:/OneDrive/STM32WLV13/Utilities/lpm/tiny_lpm/stm32_lpm.c Utilities/subdir.mk +Utilities/stm32_lpm.o: D:/ONEDRIVE/STM32WLV13/Utilities/lpm/tiny_lpm/stm32_lpm.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Utilities/stm32_mem.o: D:/OneDrive/STM32WLV13/Utilities/misc/stm32_mem.c Utilities/subdir.mk +Utilities/stm32_mem.o: D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_mem.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Utilities/stm32_seq.o: D:/OneDrive/STM32WLV13/Utilities/sequencer/stm32_seq.c Utilities/subdir.mk +Utilities/stm32_seq.o: D:/ONEDRIVE/STM32WLV13/Utilities/sequencer/stm32_seq.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Utilities/stm32_systime.o: D:/OneDrive/STM32WLV13/Utilities/misc/stm32_systime.c Utilities/subdir.mk +Utilities/stm32_systime.o: D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_systime.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Utilities/stm32_timer.o: D:/OneDrive/STM32WLV13/Utilities/timer/stm32_timer.c Utilities/subdir.mk +Utilities/stm32_timer.o: D:/ONEDRIVE/STM32WLV13/Utilities/timer/stm32_timer.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Utilities/stm32_tiny_sscanf.o: D:/OneDrive/STM32WLV13/Utilities/misc/stm32_tiny_sscanf.c Utilities/subdir.mk +Utilities/stm32_tiny_sscanf.o: D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_tiny_sscanf.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Utilities/stm32_tiny_vsnprintf.o: D:/OneDrive/STM32WLV13/Utilities/misc/stm32_tiny_vsnprintf.c Utilities/subdir.mk +Utilities/stm32_tiny_vsnprintf.o: D:/ONEDRIVE/STM32WLV13/Utilities/misc/stm32_tiny_vsnprintf.c Utilities/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_T6 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Utilities diff --git a/STM32CubeIDE/Release/makefile b/STM32CubeIDE/Release/makefile index 797baa7..148c484 100644 --- a/STM32CubeIDE/Release/makefile +++ b/STM32CubeIDE/Release/makefile @@ -17,7 +17,6 @@ RM := rm -rf -include Drivers/BSP/STM32WLxx_Nucleo/subdir.mk -include Application/User/Startup/subdir.mk -include Application/User/STS/TOF/vl53l1x_uld/subdir.mk --include Application/User/STS/TOF/vl53l0x/subdir.mk -include Application/User/STS/TOF/Target/subdir.mk -include Application/User/STS/TOF/App/subdir.mk -include Application/User/STS/Core/Src/subdir.mk @@ -72,8 +71,8 @@ all: main-build main-build: WLE5CC_NODE_STS.elf secondary-outputs # Tool invocations -WLE5CC_NODE_STS.elf WLE5CC_NODE_STS.map: $(OBJS) $(USER_OBJS) D:\OneDrive\STM32WLV13\Projects\NUCLEO-WL55JC\Applications\LoRaWAN\WLE5CC_NODE_STS\STM32CubeIDE\STM32WLE5CCUX_FLASH.ld makefile objects.list $(OPTIONAL_TOOL_DEPS) - arm-none-eabi-gcc -o "WLE5CC_NODE_STS.elf" @"objects.list" $(USER_OBJS) $(LIBS) -mcpu=cortex-m4 -T"D:\OneDrive\STM32WLV13\Projects\NUCLEO-WL55JC\Applications\LoRaWAN\WLE5CC_NODE_STS\STM32CubeIDE\STM32WLE5CCUX_FLASH.ld" --specs=nosys.specs -Wl,-Map="WLE5CC_NODE_STS.map" -Wl,--gc-sections -static -L../../../../../../../Middlewares/ST/STM32_Cryptographic/lib -z noexecstack -Wunused-but-set-variable -Wunused-variable -fshort-enums --specs=nano.specs -mfloat-abi=soft -mthumb -Wl,--start-group -lc -lm -Wl,--end-group +WLE5CC_NODE_STS.elf WLE5CC_NODE_STS.map: $(OBJS) $(USER_OBJS) D:\ONEDRIVE\STM32WLV13\Projects\NUCLEO-WL55JC\Applications\LoRaWAN\WLE5CC_NODE_STS\STM32CubeIDE\STM32WLE5CCUX_FLASH.ld makefile objects.list $(OPTIONAL_TOOL_DEPS) + arm-none-eabi-gcc -o "WLE5CC_NODE_STS.elf" @"objects.list" $(USER_OBJS) $(LIBS) -mcpu=cortex-m4 -T"D:\ONEDRIVE\STM32WLV13\Projects\NUCLEO-WL55JC\Applications\LoRaWAN\WLE5CC_NODE_STS\STM32CubeIDE\STM32WLE5CCUX_FLASH.ld" --specs=nosys.specs -Wl,-Map="WLE5CC_NODE_STS.map" -Wl,--gc-sections -static -L../../../../../../../Middlewares/ST/STM32_Cryptographic/lib -z noexecstack -Wunused-but-set-variable -Wunused-variable -fshort-enums --specs=nano.specs -mfloat-abi=soft -mthumb -Wl,--start-group -lc -lm -Wl,--end-group @echo 'Finished building target: $@' @echo ' ' diff --git a/STM32CubeIDE/Release/sources.mk b/STM32CubeIDE/Release/sources.mk index d567a58..126325a 100644 --- a/STM32CubeIDE/Release/sources.mk +++ b/STM32CubeIDE/Release/sources.mk @@ -28,7 +28,6 @@ Application/User/LoRaWAN/Target \ Application/User/STS/Core/Src \ Application/User/STS/TOF/App \ Application/User/STS/TOF/Target \ -Application/User/STS/TOF/vl53l0x \ Application/User/STS/TOF/vl53l1x_uld \ Application/User/Startup \ Drivers/BSP/STM32WLxx_Nucleo \ diff --git a/STS/Core/Src/yunhorn_sts_process.c b/STS/Core/Src/yunhorn_sts_process.c index 871b090..10fa6e8 100644 --- a/STS/Core/Src/yunhorn_sts_process.c +++ b/STS/Core/Src/yunhorn_sts_process.c @@ -109,7 +109,7 @@ volatile uint8_t sts_work_mode=4; volatile uint32_t rfac_timer=0; volatile uint16_t sts_sensor_install_height=3000; volatile uint8_t sensor_data_ready=0; -volatile uint32_t STS_TOFScanPeriod_msec=50, STS_TxPeriod_sec=10, STS_HeartBeatTimerPeriod_sec=60; +volatile uint32_t STS_TOFScanPeriod_msec=1000, STS_TxPeriod_sec=10, STS_HeartBeatTimerPeriod_sec=60; static uint8_t outbuf[128]={0x0}; extern volatile hmac_result_t hmac_result; extern uint16_t sensor_id; @@ -1728,13 +1728,13 @@ void STS_SENSOR_Function_Test_Process(void) { sts_door_jam_profile = DOOR_JAM_2000; // DOOR_JAM_2000: assume door_jame less 2000mm - if (sts_sensor_install_height > 2000) + if (sts_sensor_install_height >= 2000) sts_door_jam_profile ++; //DOOR_JAM_2400 - if (sts_sensor_install_height > 2400) + if (sts_sensor_install_height >= 2400) sts_door_jam_profile ++; //DOOR_JAM_3000 - if (sts_sensor_install_height > 3000) + if (sts_sensor_install_height >= 3000) sts_door_jam_profile ++; //DOOR_JAM_3500 - if (sts_sensor_install_height > 3500) + if (sts_sensor_install_height >= 3500) sts_door_jam_profile ++; //DOOR_JAM_4000 } #endif diff --git a/STS/TOF/App/app_tof.c b/STS/TOF/App/app_tof.c index 5d3d044..00eed19 100644 --- a/STS/TOF/App/app_tof.c +++ b/STS/TOF/App/app_tof.c @@ -82,13 +82,17 @@ void MX_TOF_Init(void) * LM background task */ uint16_t MX_TOF_Ranging_Process(void) -{ uint16_t range_distance=0; - uint8_t range_mode = 2; //STS_TOF_LONG_RANGE; +{ + #ifdef STS_P2 + uint16_t range_distance=0; + uint8_t range_mode = 2; //STS_TOF_LONG_RANGE; STS_TOF_VL53LX_Range_Process(range_mode, &range_distance); APP_LOG(TS_OFF, VLEVEL_M, "\n VL53L1 Range distance =%u mm \n\r", (uint16_t)range_distance); -#endif + return (uint16_t) range_distance; +#endif + } void MX_TOF_Process(void) { diff --git a/STS/TOF/App/app_tof_peoplecount.c b/STS/TOF/App/app_tof_peoplecount.c index 9f3133d..f5a97f0 100644 --- a/STS/TOF/App/app_tof_peoplecount.c +++ b/STS/TOF/App/app_tof_peoplecount.c @@ -20,19 +20,26 @@ volatile uint8_t sts_tof_presence_state=0; /* TIMING_BUDGET, in ms possible values [15, 20, 50, 100, 200, 500] */ /* DISTANCE_THRESHOLD = MAX - ASSUME_CHILD_HEIGHT(800mm) */ volatile sts_ppc_cfg_type_t ppc_cfg[6] = { - {DOOR_JAM_2000, 8, 2000,0, 1200,8, tbms_33,DISTANCE_MODE_LONG,175,247}, + {DOOR_JAM_2000, 16, 2000,0, 1200,16, tbms_33,DISTANCE_MODE_LONG,199,199}, {DOOR_JAM_2400, 10, 2400,0, 1600,8, tbms_50,DISTANCE_MODE_LONG,175,231}, {DOOR_JAM_3000, 10, 3000,0, 2200,8,tbms_100,DISTANCE_MODE_LONG,175,231}, {DOOR_JAM_3500, 10, 3500,0, 2700,8,tbms_100,DISTANCE_MODE_LONG,175,231}, {DOOR_JAM_4000, 10, 4000,0, 3200,8,tbms_200,DISTANCE_MODE_LONG,175,231}, {DOOR_SIDE_1600, 8, 1600,0, 300,8, tbms_33,DISTANCE_MODE_SHORT,175,231}, }; -volatile sts_zone_center_by_rows_of_spads_t zone_center[3]={ +volatile sts_zone_center_by_rows_of_spads_t zone_center[4]={ {4, 151, 247}, {6, 159, 239}, {8, 175, 231}, + {16, 191,191}, }; -volatile uint8_t sts_distance_mode = sts_door_jam_profile; //DOOR_JAM_3000; +#if (defined(STS_P2)||defined(STS_T6)) +extern volatile uint8_t sts_door_jam_profile; +volatile uint8_t sts_presence_state=0; +static int PresenceState=0; +volatile uint8_t sts_distance_mode = 0; //sts_door_jam_profile; //DOOR_JAM_3000; +#endif + volatile uint8_t sts_people_count_number_changed = 0; static uint32_t cnt_today=0, cnt_week=0; static uint8_t last_year=0, this_year=0,last_month=0, this_month=0,last_week=0, this_week=0,last_day=0, this_day=0; @@ -73,7 +80,164 @@ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) } #endif /* USER CODE END 0 */ +int ProcessPresenceDetectionData(int16_t Distance, uint8_t zone, uint8_t RangeStatus) +{ + uint16_t MinDistance; + uint8_t i; + #ifdef TRACE_PPC + #define TIMES_WITH_NO_EVENT 10// was 40 + static uint32_t trace_count = TIMES_WITH_NO_EVENT; // replace by 0 if you want to trace the first TIMES_WITH_NO_EVENT values + #endif + + int CurrentZoneStatus = NOBODY; + int AllZonesCurrentStatus = 0; + int AnEventHasOccured = 0; + + // Add just picked distance to the table of the corresponding zone + if (DistancesTableSize[zone] < ppc_cfg[sts_distance_mode].distance_array_size) { + Distances[zone][DistancesTableSize[zone]] = Distance; + DistancesTableSize[zone] ++; + } + else { + for (i=1; i<ppc_cfg[sts_distance_mode].distance_array_size; i++) + Distances[zone][i-1] = Distances[zone][i]; + Distances[zone][ppc_cfg[sts_distance_mode].distance_array_size-1] = Distance; + } + + // pick up the min distance + MinDistance = Distances[zone][0]; + if (DistancesTableSize[zone] >= 2) { + for (i=1; i<DistancesTableSize[zone]; i++) { + if (Distances[zone][i] < MinDistance) + MinDistance = Distances[zone][i]; + } + } + + if (MinDistance < ppc_cfg[sts_distance_mode].dist_threshold) { + // Someone is in ! + CurrentZoneStatus = SOMEONE; + } + + //return CurrentZoneStatus; +#if 1 + // left zone + if (zone == LEFT) { + if (CurrentZoneStatus != LeftPreviousStatus) { + // event in left zone has occured + AnEventHasOccured = 1; + + if (CurrentZoneStatus == SOMEONE) { + AllZonesCurrentStatus += 1; + } + // need to check right zone as well ... + if (RightPreviousStatus == SOMEONE) { + // event in left zone has occured + AllZonesCurrentStatus += 2; + } + // remember for next time + LeftPreviousStatus = CurrentZoneStatus; + } + } + // right zone + else { + + if (CurrentZoneStatus != RightPreviousStatus) { + + // event in left zone has occured + AnEventHasOccured = 1; + if (CurrentZoneStatus == SOMEONE) { + AllZonesCurrentStatus += 2; + } + // need to left right zone as well ... + if (LeftPreviousStatus == SOMEONE) { + // event in left zone has occured + AllZonesCurrentStatus += 1; + } + // remember for next time + RightPreviousStatus = CurrentZoneStatus; + } + } + + #ifdef TRACE_PPC + // print debug data only when someone is within the field of view + trace_count++; + if ((CurrentZoneStatus == SOMEONE) || (LeftPreviousStatus == SOMEONE) || (RightPreviousStatus == SOMEONE)) + trace_count = 0; + #if 1 + if (trace_count < TIMES_WITH_NO_EVENT) + printf ("%d,%d,%d,%d,%d\n", zone, Distance, MinDistance, RangeStatus, PeopleCount); + #endif + #endif + + // if an event has occured + if (AnEventHasOccured) { + if (PathTrackFillingSize < 4) { + PathTrackFillingSize ++; + } + + // if nobody anywhere lets check if an exit or entry has happened + if ((LeftPreviousStatus == NOBODY) && (RightPreviousStatus == NOBODY)) { + + // check exit or entry only if PathTrackFillingSize is 4 (for example 0 1 3 2) and last event is 0 (nobobdy anywhere) + if (PathTrackFillingSize == 4) { + // check exit or entry. no need to check PathTrack[0] == 0 , it is always the case + + if ((PathTrack[1] == 1) && (PathTrack[2] == 3) && (PathTrack[3] == 2)) { + // This an entry + PeopleCount ++; + // reset the table filling size in case an entry or exit just found + DistancesTableSize[0] = 0; + DistancesTableSize[1] = 0; + APP_LOG(TS_OFF, VLEVEL_M,"Walk In, People Count=%d\n", PeopleCount); + sts_people_count_sensor_data.Walk_In_People_Count ++; + sts_people_count_number_changed = 1; + } else if ((PathTrack[1] == 2) && (PathTrack[2] == 3) && (PathTrack[3] == 1)) { + // This an exit + PeopleCount --; + // reset the table filling size in case an entry or exit just found + DistancesTableSize[0] = 0; + DistancesTableSize[1] = 0; + APP_LOG(TS_OFF, VLEVEL_M,"Walk Out, People Count=%d\n", PeopleCount); + sts_people_count_sensor_data.Walk_Out_People_Count ++; + sts_people_count_number_changed = 1; + } else { + // reset the table filling size also in case of unexpected path + DistancesTableSize[0] = 0; + DistancesTableSize[1] = 0; + APP_LOG(TS_OFF, VLEVEL_M,"Walk Around ie. Wrong path\n"); + sts_people_count_sensor_data.Walk_Around_People_Count ++; + } + } + + PathTrackFillingSize = 1; + } + else { + // update PathTrack + // example of PathTrack update + // 0 + // 0 1 + // 0 1 3 + // 0 1 3 1 + // 0 1 3 3 + // 0 1 3 2 ==> if next is 0 : check if exit + PathTrack[PathTrackFillingSize-1] = AllZonesCurrentStatus; + } + + #if 1 + #ifdef TRACE_PPC + if (AnEventHasOccured) { + for (int j=0; j<PathTrackFillingSize; j++) + printf ("%d ", PathTrack[j]); + } + printf("\n"); + #endif + #endif + } + // if SOMEONE IN no matter LEFT or RIGHT or MIDDLE + return(AnEventHasOccured); +#endif +} int ProcessPeopleCountingData(int16_t Distance, uint8_t zone, uint8_t RangeStatus) { uint16_t MinDistance; @@ -366,7 +530,7 @@ void STS_people_count_sensor_Read(sts_people_count_sensor_data_t *sts_p2_sensor_ void STS_TOF_VL53LX_PeopleCounting_Process_Init(void) { - APP_LOG(TS_OFF, VLEVEL_L,"\n\n# YUNHORN STS-P2 PEOPLE COUNTING PROCESS #\r\n"); + APP_LOG(TS_OFF, VLEVEL_M,"\n\n# YUNHORN STS-P2 PEOPLE COUNTING PROCESS #\r\n"); sts_tof_vl53lx_peoplecount_init(); } @@ -396,65 +560,69 @@ void STS_TOF_VL53LX_PresenceDetection_Process_Start(void) } int sts_tof_vl53lx_presence_detection_start(void) { - uint8_t byteData, sensorState=0; - uint16_t wordData; + //uint8_t byteData, sensorState=0; + uint16_t wordData=0; + uint16_t Distance, Signal; + uint8_t RangeStatus; + uint8_t dataReady; + //char DisplayStr[5]; - /* MCU Configuration----------------------------------------------------------*/ - /* Reset of all peripherals, Initializes the Flash interface and the Systick. */ - /* Configure the system clock */ - /* Initialize all configured peripherals */ - //APP_LOG(TS_OFF, VLEVEL_H,"XNUCLEO53L1A1_Init Start .......... \r\n"); - status = XNUCLEO53L1A1_Init(); - //APP_LOG(TS_OFF, VLEVEL_H,"XNUCLEO53L1A1_Init Status : %X\n", status); + /* read and display data */ + + while (dataReady == 0) { + status = VL53L1X_CheckForDataReady(dev, &dataReady); + HAL_Delay(1); + wordData++; + if (wordData > 30) return -1; // 50 ms timer, so make this 60% to fail back + } + dataReady = 0; + status += VL53L1X_GetRangeStatus(dev, &RangeStatus); + status += VL53L1X_GetDistance(dev, &Distance); + status += VL53L1X_GetSignalPerSpad(dev, &Signal); + status += VL53L1X_ClearInterrupt(dev); /* clear interrupt has to be called to enable next interrupt*/ + if (status != 0) { + APP_LOG(TS_OFF, VLEVEL_L,"Error in operating the device\n"); + return (-1); + } + //HAL_Delay(WAIT_BEFORE_PROGRAMMING_OTHER_ZONE_CENTER); // 10, 8, 7, 6 tested OK + + status = VL53L1X_SetROICenter(dev, center[Zone]); + if (status != 0) { + APP_LOG(TS_OFF, VLEVEL_L,"Error in chaning the center of the ROI\n"); + return (-1); + } + // check the status of the ranging. In case of error, lets assume the distance is the max of the use case + // Value RangeStatus string Comment + // 0 VL53L1_RANGESTATUS_RANGE_VALID Ranging measurement is valid + // 1 VL53L1_RANGESTATUS_SIGMA_FAIL Raised if sigma estimator check is above the internal defined threshold + // 2 VL53L1_RANGESTATUS_SIGNAL_FAIL Raised if signal value is below the internal defined threshold + // 4 VL53L1_RANGESTATUS_OUTOFBOUNDS_ FAIL Raised when phase is out of bounds + // 5 VL53L1_RANGESTATUS_HARDWARE_FAIL Raised in case of HW or VCSEL failure + // 7 VL53L1_RANGESTATUS_WRAP_TARGET_ FAIL Wrapped target, not matching phases + // 8 VL53L1_RANGESTATUS_PROCESSING_ FAIL Internal algorithm underflow or overflow + // 14 VL53L1_RANGESTATUS_RANGE_INVALID The reported range is invalid + if ((RangeStatus == 0) || (RangeStatus == 4) || (RangeStatus == 7)) { + if (Distance <= ppc_cfg[sts_distance_mode].min_distance) //MIN_DISTANCE) // wraparound case see the explanation at the constants definition place + Distance = ppc_cfg[sts_distance_mode].max_distance + ppc_cfg[sts_distance_mode].min_distance; //MAX_DISTANCE + MIN_DISTANCE; + } + else // severe error cases + Distance = ppc_cfg[sts_distance_mode].max_distance; //MAX_DISTANCE; + // inject the new ranged distance in the people counting algorithm - status = XNUCLEO53L1A1_ResetId(XNUCLEO53L1A1_DEV_CENTER, 0); // Reset ToF sensor - HAL_Delay(2); - status = XNUCLEO53L1A1_ResetId(XNUCLEO53L1A1_DEV_CENTER, 1); // Reset ToF sensor - - - // Those basic I2C read functions can be used to check your own I2C functions */ - status = VL53L1_RdByte(dev, 0x010F, &byteData); - //APP_LOG(TS_OFF, VLEVEL_H,"VL53L1X Model_ID: %X\n", byteData); - status = VL53L1_RdByte(dev, 0x0110, &byteData); - //APP_LOG(TS_OFF, VLEVEL_H,"VL53L1X Module_Type: %X\n", byteData); - status = VL53L1_RdWord(dev, 0x010F, &wordData); - //APP_LOG(TS_OFF, VLEVEL_H,"VL53L1X: %X\n", wordData); - sensor_id = wordData; - wordData = 0; - while (sensorState == 0) { - status = VL53L1X_BootState(dev, &sensorState); - HAL_Delay(2); - wordData ++; - if (wordData > 8000) { - APP_LOG(TS_OFF, VLEVEL_H,"\n\n ***Failed to boot Chip***\n\n\n"); - return status; - } - } - //APP_LOG(TS_OFF, VLEVEL_H,"\nChip booted\n\n"); - - /* Initialize and configure the device according to people counting need */ - status = VL53L1X_SensorInit(dev); - status += VL53L1X_SetDistanceMode(dev, ppc_cfg[sts_distance_mode].distance_mode); /* 1=short, 2=long, DISTANCE_MODE */ - status += VL53L1X_SetTimingBudgetInMs(dev, ppc_cfg[sts_distance_mode].timing_budget); /* TIMING_BUDGET, in ms possible values [15, 20, 50, 100, 200, 500] */ - status += VL53L1X_SetInterMeasurementInMs(dev, ppc_cfg[sts_distance_mode].timing_budget); - status += VL53L1X_SetROI(dev, ppc_cfg[sts_distance_mode].rows_of_SPADS, 16); /* minimum ROI 4,4 */ - center[0]=ppc_cfg[sts_distance_mode].front_zone_center; - center[1]=ppc_cfg[sts_distance_mode].back_zone_center; - if (status != 0) { - APP_LOG(TS_OFF, VLEVEL_H,"Initialization or configuration of the device\n"); - return (-1); - } - //APP_LOG(TS_OFF, VLEVEL_H,"\n\nStart counting people with profile : %s...\n\n", PROFILE_STRING); - status = VL53L1X_StartRanging(dev); /* This function has to be called to enable the ranging */ - - if (status != 0) { - APP_LOG(TS_OFF, VLEVEL_H,"Error in start ranging\n"); - return (-1); - } - return 0; - + if (Distance < ppc_cfg[sts_distance_mode].dist_threshold) + { + PresenceState = 1; + } else { + PresenceState = 0; + } + //PresenceState = ProcessPresenceDetectionData(Distance, Zone, RangeStatus); + printf("\nPresenceState =%d \n\r", PresenceState); + APP_LOG(TS_OFF, VLEVEL_M,"%d,%d,%d\n", Zone, Distance, Signal); + Zone++; + Zone = Zone%2; + return 0; } int sts_tof_vl53lx_peoplecount_init(void) @@ -486,11 +654,11 @@ int sts_tof_vl53lx_peoplecount_init(void) // Those basic I2C read functions can be used to check your own I2C functions */ status = VL53L1_RdByte(dev, 0x010F, &byteData); - //APP_LOG(TS_OFF, VLEVEL_H,"VL53L1X Model_ID: %X\n", byteData); + APP_LOG(TS_OFF, VLEVEL_H,"VL53L1X Model_ID: %X\n", byteData); status = VL53L1_RdByte(dev, 0x0110, &byteData); - //APP_LOG(TS_OFF, VLEVEL_H,"VL53L1X Module_Type: %X\n", byteData); + APP_LOG(TS_OFF, VLEVEL_M,"VL53L1X Module_Type: %X\n", byteData); status = VL53L1_RdWord(dev, 0x010F, &wordData); - //APP_LOG(TS_OFF, VLEVEL_H,"VL53L1X: %X\n", wordData); + APP_LOG(TS_OFF, VLEVEL_M,"VL53L1X: %X\n", wordData); sensor_id = wordData; wordData = 0; while (sensorState == 0) { @@ -498,11 +666,11 @@ int sts_tof_vl53lx_peoplecount_init(void) HAL_Delay(2); wordData ++; if (wordData > 8000) { - APP_LOG(TS_OFF, VLEVEL_H,"\n\n ***Failed to boot Chip***\n\n\n"); + APP_LOG(TS_OFF, VLEVEL_M,"\n\n ***Failed to boot Chip***\n\n\n"); return status; } } - //APP_LOG(TS_OFF, VLEVEL_H,"\nChip booted\n\n"); + APP_LOG(TS_OFF, VLEVEL_M,"\nChip booted\n\n"); /* Initialize and configure the device according to people counting need */ status = VL53L1X_SensorInit(dev); diff --git a/STS/TOF/App/app_tof_peoplecount.h b/STS/TOF/App/app_tof_peoplecount.h index df1cf9b..ba69c5a 100644 --- a/STS/TOF/App/app_tof_peoplecount.h +++ b/STS/TOF/App/app_tof_peoplecount.h @@ -47,8 +47,8 @@ // define here the profile for your case. - #define PPC_PROFILE DOOR_JAM_2400 - + //#define PPC_PROFILE DOOR_JAM_2400 + #define PPC_PROFILE DOOR_JAM_2000 #define TRACE_PPC 1 // time budget in ms 20,33,50,100,200,500 @@ -71,6 +71,18 @@ #define DISTANCE_MODE DISTANCE_MODE_LONG #endif + //PPC_PROFILE DOOR_JAM_2000 + #if PPC_PROFILE == DOOR_JAM_2000 + #define PROFILE_STRING "DOOR_JAM_2000" + #define DISTANCES_ARRAY_SIZE 10 // nb of samples + #define MAX_DISTANCE 2000 // mm was 2400 + #define MIN_DISTANCE 0 // mm + #define DIST_THRESHOLD 1600 // mm + #define ROWS_OF_SPADS 16 // 8x16 SPADs ROI + #define TIMING_BUDGET 33 //33 // was 20 ms, I found 33 ms has better succes rate with lower reflectance target + #define DISTANCE_MODE DISTANCE_MODE_LONG + #endif + #if ROWS_OF_SPADS == 4 #define FRONT_ZONE_CENTER 151 #define BACK_ZONE_CENTER 247 @@ -80,6 +92,9 @@ #elif ROWS_OF_SPADS == 8 #define FRONT_ZONE_CENTER 175 // was 167, see UM2555 on st.com, centre = 175 has better return signal rate for the ROI #1 #define BACK_ZONE_CENTER 231 + #elif ROWS_OF_SPADS == 16 + #define FRONT_ZONE_CENTER 199 + #define BACK_ZONE_CENTER 199 #endif /* Exported functions --------------------------------------------------------*/ @@ -151,9 +166,13 @@ void STS_TOF_VL53LX_PeopleCounting_Process_Init(void); void STS_TOF_VL53LX_PeopleCounting_Process_Start(void); + void STS_TOF_VL53LX_PresenceDetection_Process_Start(void); +int sts_tof_vl53lx_presence_detection_start(void); + int sts_tof_vl53lx_peoplecount_init(void); int sts_tof_vl53lx_peoplecount_start(void); + //int sts_tof_vl53lx_peoplecount(void); int ProcessPeopleCountingData(int16_t Distance, uint8_t zone, uint8_t RangeStatus); void STS_people_count_sensor_Read(sts_people_count_sensor_data_t *sts_p2_sensor_data); -- 2.40.1