Arduino Static Struct and interrupt service routine issue

Yes this is correct.

However you maybe just want to use a std::vector<cell_t> for simplicity? Then you don’t have to check whether you assigned an object’s properties already, you just iterate through a vector of objects. But that’s already going in the direction of a code review anways.

Does your code work now as expected?