I'm currently working on a bridge that takes in artnet packets (theatrical lighting control) and spits it out as data for ws8212 leds.
I've got working code setup and running on an olimex stm32-E407 dev board, a copy of this can be found in this repo: GitHub - solexious/dometroller: stm32f407 code for ws8212b control via artnet (config generated with stm32cubemx)
My current issue is that if I send more than 9 packets at once (target is 16 packets, one for each output) then any over the first 9 seem to have a high chance of getting dropped. Artnet is UDP and fits into a 530 byte packet. (for testing I send all 16 from my pc at once, then wait 1000ms before doing the same, ideally when all is working the stm32f4 should be able to process 16 packets sent at once up to 44 times a second, this currently works fine if I restrict myself to 9 packets 44 times a second)
I'm not sure if this is definitely the packets getting dropped, but it seems that way. I'm not sure if this is a memory allocation issue with lwip, or not being able to keep up with the speed of 16 packets all at once. Any pointers for what to troubleshoot or fixes I can try would be very much appreciated.