I added a 4 (LCD_PAIRS) slots for the LCD to rotate among them. However the idea of only showing the "enabled" slots instead of all of them didn't really take off. So all I could do so far is to show the default slot (0) before any other data is sent to the LCD, once at least one other slot is in use, slot 0 won't be shown anymore, however the other empty slots will be shown (all XXXXX).
Also, I added an error message on the communication "protocol". This actually helped a lot to understand why the rotation was not working. Right now there's only 2 errors been flagged, and both of them are within the read_screen_data() function in arduino.ino. I should have done this on a separate branch...
There's a few things going on here: