from machine import Pin, SoftI2C, ADC, PWM
from time import sleep
from servo import Servo
from hc import HCSR04
from lcd_api import LcdApi
from i2c_lcd import I2cLcd
servoPin = Servo(pin=26)
I2C_ADDR = 0x27
totalRows = 2
totalColumns = 16
i2c = SoftI2C(scl=Pin(22), sda=Pin(21), freq=10000) #initializing the I2C method for ESP32
lcd = I2cLcd(i2c, I2C_ADDR, totalRows, totalColumns)
sensor = HCSR04(trigger_pin=27, echo_pin=26,echo_timeout_us=1000000)
while True:
distance = sensor.distance_cm()
print(distance)
lcd.move_to(0, 0)
lcd.putstr("Distance:")
lcd.move_to(0, 1)
lcd.putstr("{:.2f} cm".format(distance))
servoPin.move(170)
sleep(1)
servoPin.move(100)
sleep(1)