I have a private version of the VL53L1X driver ecause the driver in ncs2.9.0 hasnt been properly updated per my previous case. They suggested changing the CONFIG_VL53L1X=y to something like CONFIG_VL53L1X_PRIV which I have done. All of my code is compiled fine, however so is the driver from ncs2.9.0 So i get duplicate definitions. What would be causing this driver to still be included?
c:/ncs/toolchains/b620d30767/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd.exe: zephyr/drivers/sensor/st/vl53l1x/libdrivers__sensor__st__vl53l1x.a(vl53l1_platform.c.obj): in function `VL53L1_WriteMulti': C:/ncs/v2.9.0/zephyr/drivers/sensor/st/vl53l1x/vl53l1_platform.c:25: multiple definition of `VL53L1_WriteMulti'; app/libapp.a(vl53l1_platform.c.obj):C:/Users/-----/source/repos/hhhhhh-plus/cpuapp/src/vl53l1x/vl53l1_platform.c:25: first defined here etc...
I have defined a new config:
menuconfig VL53L1X_ABC bool "VL53L1X time of flight sensor" #depends on I2C <--took out because of a circular reference select HAS_STLIB help Enable driver for VL53L1X_ABC I2C-based time of flight sensor. if VL53L1X_ABC config VL53L1X_PROXIMITY_THRESHOLD int "Proximity threshold in millimeters" default 100 depends on VL53L1X_ABC help Threshold used for proximity detection when sensor is used with SENSOR_CHAN_PROX. config VL53L1X_INTERRUPT_MODE bool "Use interrupt mode for VL53L1X time of flight sensor" default n depends on GPIO help Enable interrupt mode for VL53L1X time of flight sensor. Otherwise, the driver will use the polling method. config VL53L1X_XSHUT bool "Use xshut pin on VL53L1X time of flight sensor" default n depends on GPIO help Enable to use the xshut pin on the VL53L1X. If not, the pin should be connected to VDD. module = VL53L1X_ABC module-str = VL53L1X_ABC source "${ZEPHYR_BASE}/subsys/logging/Kconfig.template.log_config" module = RANGER module-str = RANGER source "${ZEPHYR_BASE}/subsys/logging/Kconfig.template.log_config" endif # VL53L1X_ABC