I had a quick look at your code. While I cannot see the exact problem some things to note: You have masses of code in the loop function, making it very difficult to follow. Look at my examples and learn to split your code into functions. There are loads of 5 second delays, that means places where for 5 seconds nothing happens, including not doing anything with any data received on the serial port. You have some huge number of structs individually defined with just a number to distinguish them. When you have something like this it's time to learn about arrays. Without wishing to be unkind I think you are trying to create something well beyond your current abilities. Here are some suggested tutorials for you to work on, in addition to mine linked to in the other topic.