Connection timeout from wifi mobile to w5100 tcp server

I have weird situation here, I cant figure out what could be the cause of this. So, my W5100 device is connected to local ethernet switch, which is connected to the wifi router.
I can telnet to w5100 from my PC connected to either wifi or ethernet, but cannot connect from mobile phone wifi. But my phone can connect to PC tcp server. Also my phone connects to the wifi<->uart chip without problems.

I cannot see anything on wireshark cause I guess packet is rejected or something… Now i dont know if the problem is with MTU settings on the router, w5100 or something else.

Anyone have idea what could be the cause of this ?

My mobile device is sending 42bytes long ARP while PC sends 60bytes ARP where last 18bytes are padding 0.
Why is w5100 ignoring 42 bytes ARP ? while it respond to 60byte and starts the TCP communication after that …

To which port number?

To which port number?

This is to be proven. I recommend you, after you check port numbers, to set up linux of windows machine in bridge mode (lan-lan or wifi-lan) just before W5100, and use wireshark to capture what is going on with the interface. Then you will see what is really happening there, and can do more or less reliable conclusions.

Port number is 2000. Same TCP server instance connects the PC (eth, wifi) but not mobile.

I have Linksys WRT54 with DD-WRT firmware and running tcpdump there. Thats how I saw the diff between package size of PC arp and phone arp packets.
Although, tcpdump doesnt show me the header and CRC, so I cant really say if packet is filtered by w5100 or before. But my phone connects perfectly on PC tcp server or on wifly module (over the same wifi router, and not directly to AP connection).

I will try to figure out how to get wireshark working cause I would like to see if w5100 is sending ARP response or it ignores it…

hmm, found out the issue. For some reason MAC address Ive set to w5100 was the problem ?! changing the MAC, w5100 started to accept phone connection…
Any idea why ?

You had multicast or locally administered bits set? There was a conflict two or more devices having same MAC address?
Which one you had did not work and which one works now?

I am not sure what you mean by this.

I wouldnt say so, I picked a random numbers for the mac address, which is probably a bad idea :slight_smile:

This one does not work with mobile phone, but it works with wifi connected PC and cable connected PC.
0x0f, 0x3f, 0x00, 0x33, 0x12, 0x44

And this one works for all of the devices:
0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED

Bold value is having bit #0 set. Read here: https://en.wikipedia.org/wiki/MAC_address#Unicast_vs._multicast

Oh ok, now I see. I just randomly picked the MAC. I didnt expect there are restrictions.
Thanks Eugeny.

I did the same mistake in the past :slight_smile: