← index #2198Issue #9105
Related · high · value 0.641
QUERY · ISSUE

Not able to send Multicast messages from ESP8266

openby mostleyopened 2016-06-25updated 2021-08-11
port-esp8266

Simple multicast message example that doesn't work on the ESP8266:

import socket

sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
data = "test data".encode('utf-8')
sock.sendto(data, ('239.0.0.10', 3535))

works with micropython on osx though.

I was experimenting with an Nodemcu v2 ESP8266
MicroPython v1.8.1-31-g9de5eb2 on 2016-06-10

CANDIDATE · ISSUE

Pico W: Joining multicast group doesn't receive messages.

closedby jimmoopened 2022-08-25updated 2022-12-09
bug

Originally reported in the forum: https://forum.micropython.org/viewtopic.php?f=21&t=12965

On the Pico W:

import struct, socket

def inet_aton(addr):
    return bytes(map(int, addr.split(".")))

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(("", 5007))
s.setsockopt(socket.IPPROTO_IP, socket.IP_ADD_MEMBERSHIP, struct.pack(">4sI", inet_aton("224.1.1.1"), 0))
print(s.recvfrom(1024))

From a PC:

import socket

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.setsockopt(socket.IPPROTO_IP, socket.IP_MULTICAST_TTL, 2)
s.sendto(b'some data', ('224.1.1.1', 5007))
s.close()

This same code works fine when the receiving device is an ESP32. On the Pico nothing is received.

Keyboard

j / / n
next pair
k / / p
previous pair
1 / / h
show query pane
2 / / l
show candidate pane
c
copy suggested comment
r
toggle reasoning
g i
go to index
?
show this help
esc
close overlays

press ? or esc to close

copied