Maybe not the direct cause but well worth doing to save precious RAM
But you also wrote this
Thanks a lot for this one - it solved my issue! (I was not familiar with that F() macro). I still don't quite understand why the for loop failed, while a 27 times statement works (the number of variables, so memory usage, is the same), but I can continue now.
Thanks also to johnwasser - you gave me some nice coding hints (like the hex2int)
There is now evidence that you did indeed have some kind of memory issues. When that is the case, almost anything can happen, and it makes no sense to look further into why some random change makes differences in the (mis)behaviour.
Sometimes just moving functions around can make strange things happen if the circumstances for strange things happening have been set up.