Hi, I did some tests and it's as you said, the server was being closed too soon. I made some changes to my Python script and now it works. Here is my code:
Code
import socket
import time
import threading
def handle_client(conn, addr):
try:
while True:
request = '<Sensor><Nmb>11</Nmb></Sensor>'
time.sleep(0.5)
conn.sendall(request.encode('ascii'))
print(f"Request sent to robot {request}")
except Exception as e:
print(f"Error: {e}")
finally:
conn.close()
print(f"Connection with {addr} closed")
def start_server(server_ip, server_port):
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.bind((server_ip, server_port))
s.listen()
print(f"Server listening on {server_ip}:{server_port}")
while True:
conn, addr = s.accept()
print(f"Connected by {addr}")
client_thread = threading.Thread(target=handle_client, args=(conn, addr))
client_thread.daemon = True
client_thread.start()
if __name__ == "__main__":
server_ip = '192.168.10.100'
server_port = 59152
start_server(server_ip, server_port)
Display More
Thank you so much!!!