Я пытаюсь отправить некоторые байтовые данные из Pycom LoPy4 в Pycom WiPy через передачу UDP.
Я пытался заставить моего клиента (lopy4) указывать на ip-адрес сервера (Wipy), установив для ip-адреса на стороне сервера значение c IP '192.168.0.105 ' с использованием метода .ifconfig (). Затем я использовал метод .sendto () для отправки некоторых данных на тот же IP-адрес '192.168.0.105' .
Мой клиент может отправлять данные, но мой сервер все еще ничего не получает.
Это код моего сервера:
import usocket
from network import WLAN
wlan = WLAN()
## Set static IP address for server
wlan.ifconfig(id = 1, config=('192.168.0.105', '255.255.255.0','192.168.0.1', '192.168.0.1'))
## Set WLAN mode to AP (access point)
wlan.init(mode = WLAN.AP, ssid = 'lopy4_server', auth = None, channel=7, antenna=WLAN.INT_ANT)
print("wlan mode set up: without auth\n")
UDP_IP = "127.0.0.1" ## localhost
UDP_PORT = 5005
## Set up UDP socket and bind
sock = usocket.socket(usocket.AF_INET,usocket.SOCK_DGRAM) ## UDP
sock.bind((UDP_IP, UDP_PORT))
print('binded')
data, addr = sock.recvfrom(1024) ## buffer size is 1024 bytes
print("received message:", data)
print("source: ", addr)
Это код моего клиента :
import usocket
import utime
from network import WLAN
## Set WLAN mode to STA (station/client)
wlan = WLAN(mode = WLAN.STA)
wlan.scan() ## scan for available networks
wlan.connect('lopy4_server', auth = None)
while not wlan.isconnected():
pass
print(wlan.ifconfig())
UDP_IP = '192.168.0.105'
UDP_PORT = 5005
MESSAGE = "Test message"
## Set up UDP socket and connect
sock = usocket.socket(usocket.AF_INET,usocket.SOCK_DGRAM) # UDP
while True:
print ("UDP target IP:", UDP_IP)
print ("UDP target port:", UDP_PORT)
print ("message:", MESSAGE)
sock.sendto(MESSAGE, (UDP_IP, UDP_PORT))
utime.sleep(3)
Это был вывод, который я получил (левый сервер, правый клиент):
![enter image description here](https://i.stack.imgur.com/8xBV2.jpg)
Я подозреваю, что проблема имеет связано с IP-адресами, которые я использовал, но я не могу найти причину. Я надеюсь, что кто-то может мне помочь? Заранее спасибо!