Simple test¶
Ensure your device works with this simple test.
import time
from machine import Pin, I2C
from micropython_vcnl4010 import vcnl4010
i2c = I2C(1, sda=Pin(2), scl=Pin(3)) # Correct I2C pins for RP2040
vcn = vcnl4010.VCNL4010(i2c)
while True:
print(f"Proximity: {vcn.proximity}")
print(f"Ambient light: {vcn.ambient} lux")
print()
time.sleep(1.0)
Proximity rate settings¶
Example showing the Proximity rate setting
import time
from machine import Pin, I2C
from micropython_vcnl4010 import vcnl4010
i2c = I2C(1, sda=Pin(2), scl=Pin(3)) # Correct I2C pins for RP2040
vcn = vcnl4010.VCNL4010(i2c)
vcn.proximity_rate = vcnl4010.SAMPLERATE_31_25
while True:
for proximity_rate in vcnl4010.proximity_rate_values:
print("Current Proximity rate setting: ", vcn.proximity_rate)
for _ in range(10):
print(f"Proximity: {vcn.proximity}")
print(f"Ambient light: {vcn.ambient} lux")
print()
time.sleep(0.5)
vcn.proximity_rate = proximity_rate
Ambient light rate settings¶
Example showing the Ambient light rate setting
import time
from machine import Pin, I2C
from micropython_vcnl4010 import vcnl4010
i2c = I2C(1, sda=Pin(2), scl=Pin(3)) # Correct I2C pins for RP2040
vcn = vcnl4010.VCNL4010(i2c)
vcn.ambient_light_rate = vcnl4010.AMBIENT_LIGHT_RATE2
while True:
for ambient_light_rate in vcnl4010.ambient_light_rate_values:
print("Current Ambient light rate setting: ", vcn.ambient_light_rate)
for _ in range(10):
light = vcn.light
print(f"Proximity: {vcn.proximity}")
print(f"Ambient light: {vcn.ambient} lux")
print()
time.sleep(0.5)
vcn.ambient_light_rate = ambient_light_rate
Ambient light average settings¶
Example showing the Ambient light average setting
import time
from machine import Pin, I2C
from micropython_vcnl4010 import vcnl4010
i2c = I2C(1, sda=Pin(2), scl=Pin(3)) # Correct I2C pins for RP2040
vcn = vcnl4010.VCNL4010(i2c)
vcn.ambient_light_average = vcnl4010.AL_AVERAGE4
while True:
for ambient_light_average in vcnl4010.ambient_light_average_values:
print("Current Ambient light average setting: ", vcn.ambient_light_average)
for _ in range(10):
light = vcn.light
print(f"Proximity: {vcn.proximity}")
print(f"Ambient light: {vcn.ambient} lux")
print()
time.sleep(0.5)
vcn.ambient_light_average = ambient_light_average