#DogBot version 2.0
#Written by PRANAV JHUNJHUNWALA
#20-11-2022

from math import sin, cos
from lx16a import *
import time

LX16A.initialize("/dev/ttyUSB0", 0.1)

try:
    servo1 = LX16A(1)
    servo2 = LX16A(2)
    servo3 = LX16A(3)
    servo4 = LX16A(4)
    servo5 = LX16A(5)
    servo6 = LX16A(6)
    servo7 = LX16A(7)
    servo8 = LX16A(8)
except ServoTimeoutError as e:
    print(f"Servo {e.id_} is not responding. Exiting...")
    quit()
    
t = 0
while True:
    servo1.move(cos(t) * 15 + 113)
    servo2.move(sin(t) * 15 + 80.5)
    servo3.move(cos(t) * 15   + 105)
    servo4.move(sin(t) * 15   + 33)
    servo5.move(sin(t) * 15   + 119)
    servo6.move(cos(t) * 15   + 33)
    servo7.move(sin(t) * 15  + 162)
    servo8.move(cos(t) * 15   + 33)
    time.sleep(0.05)
    t += 0.4 