Wt32-eth01 cannot Tx UDP to a Linux host but can Tx to Windows

Windows: I can successfully send a UDP packet to my wt32-eth01 and it receives the 1 byte message from my Windows laptop. The wt32-eth01 replies with a 64 byte packet back to the laptop. The laptop IP is 192.168.86.26. I am using UDP broadcast on 192.168.86.255. Works great!

Linux: I can successfully send a UDP packet to my wt32-eth01 and it receives the 1 byte message from my Debian computer. (Half way there!). I get a printout that it arrived and I use beginPacket( IP, port) and endPacket() to send back the 7 bytes just like as Windows (same code). The Debian computer's IP address is 192.168.86.215. The responding packet of 7 bytes does not show up on Wireshark (on laptop) or tcpdump (Debian). The beginPacket and endPacket both return true. I tried going straight connection between the wt32-eth01 and the Debian but that did not help.

I tried to look at some of the wt32-eth01 Network AT commands but I cannot figure out how to query them. Do I use Serial.print? Serial2.print? Does IO0 have to be grounded? I tried all of these interfaces and also appended "\r\n" to the AT command. I also tried the Serial Monitor on Arduino 2.0.

One more detail:
When I send the 7 byte packet back to the Debian computer using 192.168.86.255 from the wt32-eth01, the wt32-eth01 sees it's own reflection UDP packet and I have to process it (which is typical for all computer). This tells me that the message is viewed by the wt32-eth01 as being GONE but no other computers see it.

What UDP port is Windows sending from?
What UDP port is Windows listening on?
What UDP port is the wt32-eth01 sending from?
What UDP port is the wt32-eth01 listening on?
What UDP port is Debian sending from?
What UDP port is Debian listening on?

Thanks, All UDP ports are 6500.

The Debian bind function uses “”, 6500. Do you think an error in the Debian bind function will cause my problem?

Do you have any idea how I can do an AT command.

Tim Curry

Could be. Did you check that you received a zero (meaning success) back from bind()?

Thanks, John,
The Debian code is in python:

Bind ret = None

Even if the bind failed, I should see the UDP broadcast show up in Wireshark or tcpdump. Right?

Next, I am going to lower the Debian IP from .215 to <127 such as .120. Then, I am going to make a very small example with only the code that I need.

I wrote my small example. I still cannot get my wt32-eth01 outgoing packet to show up anywhere external. It seems like the outgoing packet is sent out on local host 127.0.0.1 because the code on the wt32-eth01 receives it back when I do a read on that port.

I also tried port 65000 and it has the same problem.