Multiple UDP listener problems with uIP stack

Technical questions regarding the XTC tools and programming with XMOS.
User avatar
Berni
Respected Member
Posts: 363
Joined: Thu Dec 10, 2009 10:17 pm

Post by Berni »

But do give it a thorough test. Since i can make the TCP ports on the uIP based xtcp on it completely lock up.


User avatar
BEBDigitalAudio
Experienced Member
Posts: 82
Joined: Thu Nov 11, 2010 7:45 pm

Post by BEBDigitalAudio »

TCP is not yet implemented, but I will check twice when it will be ready.

Up to now, I made a test with this library with a board running for 10 hours, receiving 1000 UDP messages per second, and it kept the ryhtm and did not loose any message (with the echo test I put in the packet)

Do you do something special to make the TCP locks up ?
Or does it occur randomly ?

If you can tell me at which moment you got the lockup, I will concentrate on this test
User avatar
Berni
Respected Member
Posts: 363
Joined: Thu Dec 10, 2009 10:17 pm

Post by Berni »

Well well at first it seamed to lock up at random times, but then i found that hosting a small webpage and mashing the F5 button like mad caused it to lock up after like 20 or 30 seconds. I am guessing its some sort of memory leak that chews up the allocated ports.
User avatar
BEBDigitalAudio
Experienced Member
Posts: 82
Joined: Thu Nov 11, 2010 7:45 pm

Post by BEBDigitalAudio »

Ok, I will test this as soon as the TCP server part is implemented (I am currently working on it, it will be version 0.2)
I expect to finish this for the end of the week
User avatar
BEBDigitalAudio
Experienced Member
Posts: 82
Joined: Thu Nov 11, 2010 7:45 pm

Post by BEBDigitalAudio »

Version 0.2 of my socket based stack is available for download.

The TCP server side is now implented.

Most of code cleanup is done now (I mainly removed most of original XTCP code for direct interfacing with
uIP).

Have fun (and do not forget to report any bug or problem)
User avatar
bsmithyman
Experienced Member
Posts: 126
Joined: Fri Feb 12, 2010 10:31 pm

Post by bsmithyman »

Sounds great; I'm just getting started with the XC-2, and looking forward to trying it. Thanks :)
User avatar
lilltroll
XCore Expert
Posts: 956
Joined: Fri Dec 11, 2009 3:53 am
Location: Sweden, Eskilstuna

Post by lilltroll »

Maybe you could write some little on the "View project wiki entry", since this is a really useful thing.

I have connected my XDK, and will start a UDP and a TCP/IP handler in MATLAB to try it out.
Probably not the most confused programmer anymore on the XCORE forum.
User avatar
BEBDigitalAudio
Experienced Member
Posts: 82
Joined: Thu Nov 11, 2010 7:45 pm

Post by BEBDigitalAudio »

Hello all,
I just uploaded the xsockets 0.3 package on the projects page.

This versions corrects a small compilation problem that occurs if the application tries to deactivate TCP or UDP (V0.2 could be compiled only if there was at leats one UDP and one TCP socket).

I also removed the code to control the XC2 LEDs (the code was just switching them off, and it leads to problems on other targets like the XDK)

Removed also some uIP and xsockets logging messages being displayed even if UIP_CONF_LOGGING was set to 0.
User avatar
lilltroll
XCore Expert
Posts: 956
Joined: Fri Dec 11, 2009 3:53 am
Location: Sweden, Eskilstuna

Post by lilltroll »

Now it starts on the XDK!
I also started to write a little on the linked wiki page.

That about the software defined MAC adress - it just random one !?
Is static IP the only choice, or can it get a dynamic IP from DHCP ?

EDIT:
Haha I asked the sysop to use MAC: 0 x ff ff ff in the router
The only one that seems to recreate a random one :lol:
Probably not the most confused programmer anymore on the XCORE forum.
User avatar
BEBDigitalAudio
Experienced Member
Posts: 82
Joined: Thu Nov 11, 2010 7:45 pm

Post by BEBDigitalAudio »

Thanks for these good news liltroll :D

I am happy to know that it also runs on the XDK (should buy one of them as a Christmas gift ;) )

Concerning the MAC, the XC2 provides a MAC address that is stored in OTP. I have no idea if this address is also stored somewhere in the XDK. If not, just use a MAC address (declared in the main module) with 00 as first byte (something like 00:12:34:56:78:90), it should work like a charm.

I did not test XSOCKETS with a DHCP server, but it is implemented, so it should work too.
Just set the IP address in the main module to 0.0.0.0, the DHCP client will activate automatically at startup