Skip to content

Commit 43bf054

Browse files
committed
examples: independent python udp server
1 parent a4c8b5c commit 43bf054

File tree

1 file changed

+8
-14
lines changed

1 file changed

+8
-14
lines changed

examples/udp_echo/python/main.py

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
import argparse
2020
import time
2121
from datetime import datetime
22-
from arduino.app_utils import *
2322

2423

2524
def log(msg):
@@ -44,19 +43,15 @@ def __init__(self, port=5000, prefix="ECHO: ", buffer_size=4096):
4443
self.bytes_sent = 0
4544
self.start_time = None
4645

47-
# Bridge
48-
self.bridge_connection_id = 0
49-
5046
def start(self):
5147
"""Start the echo server"""
5248
try:
5349
# Create UDP socket
54-
#self.socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
55-
#self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
50+
self.socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
51+
self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
5652

5753
# Bind to all interfaces
58-
#self.socket.bind(('0.0.0.0', self.port))
59-
self.bridge_connection_id = Bridge.call("udp/connect", '127.0.0.1', self.port)
54+
self.socket.bind(('127.0.0.1', self.port))
6055

6156
log("=" * 60)
6257
log("UDP Echo Server")
@@ -91,9 +86,8 @@ def run(self):
9186
while self.running:
9287
try:
9388
# Receive data
94-
# data, addr = self.socket.recvfrom(self.buffer_size)
95-
data, host, port = Bridge.call("udp/read", self.bridge_connection_id, self.buffer_size)
96-
addr = [host, port]
89+
data, addr = self.socket.recvfrom(self.buffer_size)
90+
log(f"Attempt to read incoming messages")
9791

9892
self.packets_received += 1
9993
self.bytes_received += len(data)
@@ -117,18 +111,18 @@ def run(self):
117111
response = data
118112

119113
# Send echo back
120-
# sent = self.socket.sendto(response, addr)
121-
sent = Bridge.call("udp/write", self.bridge_connection_id, str(addr[0]), int(addr[1]), data)
122-
log(f"Echo response: {sent}\n")
114+
sent = self.socket.sendto(response, addr)
123115

124116
self.packets_sent += 1
125117
self.bytes_sent += sent
126118

127119
log(f" Echoed: {sent} bytes\n")
128120

129121
except socket.timeout:
122+
log("UDP socket timeout")
130123
continue
131124
except KeyboardInterrupt:
125+
log("Keyboard interrupt")
132126
raise
133127
except Exception as e:
134128
log(f"Error handling packet: {e}\n")

0 commit comments

Comments
 (0)