Boss lady
Boss lady
DIIDevHeads IoT Integration Server
Created by Boss lady on 8/13/2024 in #firmware-and-baremetal
Continuous Distance Measurement and OLED Update on BeagleBone Black with VL53L0X
Hello guys, based on my project parking assistance system using a BeagleBone Black running Embedded Linux, VL53L0X time of flight distance sensor to detect the distance to nearby objects and a 0.96-inch OLED display to show the distance and warning messages. how do I continuously measure the distance using the VL53L0X sensor and update the OLED display with the readings? I have added debug prints, checked for memory issues, ensured proper handling of the OLED display but am getting the error prompt Error: ValueError: I/O operation on closed file here's my code
import board
import busio
import adafruit_vl53l0x
from Adafruit_SSD1306 import SSD1306_128_64
import time

# Initialize I2C bus and devices
i2c = busio.I2C(board.SCL, board.SDA)
vl53 = adafruit_vl53l0x.VL53L0X(i2c)
disp = SSD1306_128_64(rst=None)
disp.begin()
disp.clear()
disp.display()

while True:
distance = vl53.range
print(f"Distance: {distance} mm")

disp.clear()
disp.text(f"Distance: {distance} mm", 0, 0, 1)
disp.display()

time.sleep(1)
import board
import busio
import adafruit_vl53l0x
from Adafruit_SSD1306 import SSD1306_128_64
import time

# Initialize I2C bus and devices
i2c = busio.I2C(board.SCL, board.SDA)
vl53 = adafruit_vl53l0x.VL53L0X(i2c)
disp = SSD1306_128_64(rst=None)
disp.begin()
disp.clear()
disp.display()

while True:
distance = vl53.range
print(f"Distance: {distance} mm")

disp.clear()
disp.text(f"Distance: {distance} mm", 0, 0, 1)
disp.display()

time.sleep(1)
5 replies