I have been integrating my previous code with yours and slowly but surely. It is really strange as it all works and then I add in extra bit and it will suddenly stop.
This is a common problem. Normally it is because your Arduino has run out of SRAM. That is what the F() function helps with. It keeps those static strings in program memory instead of importing them into SRAM before using them. You have 2K of SRAM in an Uno, so you must use it wisely.