Important changes to forums and questions
All forums and questions are now archived. To start a new conversation or read the latest updates go to forums.mbed.com.
6 years, 9 months ago.
is there a limitation of 3 sockets ?
I have a project that needs to run 4 UDP sockets - whatever I try, the 4th socket fails on the socket.open() call. I'm using the NetworkAPI and the sockets are declared as
The project also uses rtos and threads and each socket has its own thread, can anyone help ? thanks, Matthias
6 years, 8 months ago.
I'm getting closer: the problem's cause seems to be a memory issue. The compiler reports a RAM consumption of 119%, but I read in other articles that this information is not necessarily correct.
So I checked the returned values when the lwip_socket() attempts to create a new connection, 0. conn = 0x20080924 1. conn = 0x20080878 2. conn = 0x200807cc 3. conn = 0
Each connection is allocated in (sockets.c) in netconn_new_with_callback() - I don't understand why the address keeps decreasing. I would assume this is heap memory, so the address would increase ?
Also, this shows that each each connection uses 172 bytes, ok, but with respect to these numbers, there is still some memory available...
Since I don't need any TCP, I set "LWIP_TCP" to 0, in order to save memory - this has no visible effect. Any ideas how to reduce the memory consumption..?