sumorobot-remote/main.py
2024-11-03 20:38:26 +02:00

44 lines
978 B
Python

import socket
from machine import Pin, ADC
from utime import sleep_ms
import os
while not wlan.isconnected():
sleep_ms(100)
adc = ADC(0)
# Wemos D1 Mini (277010)
# Pin 16 forward pin 4 backwards
#forward = Pin(0, Pin.IN)
#backward = Pin(2, Pin.IN)
# Wemos D1 Normal Arduino
# Pin 16 forward pin 4 backwards
forward = Pin(16, Pin.IN)
backward = Pin(4, Pin.IN)
calibration = adc.read()
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) # UDP
sock.bind(("", 37020))
while True:
try:
sockaddr = socket.getaddrinfo('sumo-%s' % config["remote-id"], 44444)[0][-1]
except OSError:
print("failed to resolve sumo-%s" % config["remote-id"])
sleep_ms(500)
else:
break
#sockaddr = "100.101.100.70", 44444
print("Sending packets to", sockaddr)
while True:
msg = "%d:%d:%d" % (adc.read()-calibration, not forward.value(), not backward.value())
print(msg)
sock.sendto(msg.encode("ascii"), sockaddr)
sleep_ms(30)