So I made an app in C# which sends serial data to my arduino.The arduino then processes the bytes to control 84 LED's

The way i currently send my data is the following: 3 bytes with values between 0-255 in a continues datastream. So after one cycle the arduino has processed 252 bytes. However it's taking over 400ms to do this. So now my question is: How do i make it not exceed 100ms?

What I tried so far: Increase the baud rate, however this didn't seem to be a bottleneck.Decrease the timeout. This seems to improve it a bit but no noticable impact

Debugged: timed how low each step takes.

Conclusion: without serial.readBytes it can complete the cycle in 2-3ms.

"Pete, it's a fool (who) looks for logic in the chambers of the human heart." Ulysses Everett McGill.Do not send technical questions via personal messaging - they will be ignored.I speak for myself, not Arduino.

"Pete, it's a fool (who) looks for logic in the chambers of the human heart." Ulysses Everett McGill.Do not send technical questions via personal messaging - they will be ignored.I speak for myself, not Arduino.

"Pete, it's a fool (who) looks for logic in the chambers of the human heart." Ulysses Everett McGill.Do not send technical questions via personal messaging - they will be ignored.I speak for myself, not Arduino.

They're not though. As i said multiple times before, everything except the readBytes runs within a few ms, that includes setting the LED's to a color. I even tried using another lib before i realised it was the readBytes

I can not confirm your findings. When I send 99 bytes, they are read in 8 ms. Any time the are not a multiple of 3 bytes sent, the default time out of 500 ms kicks in. Send 98 bytes reading time is 508 ms. Send 95 bytes and the reading time is 1008 ms. If three bytes are not available to read in your for() loop you run into a time out. You could be using an if() conditional instead of the for() loop.