I have the "master" of the IO module, in your case the MC088, detect the presence of the IO module as Mebib described (or with an input pin hard-wired to +supply, or with the "Configured" signal from the IO module's CAN sub-bus). Then I have the MC088 send a CAN message to the screen with a bit flag indicating the IO module connection state. Naturally, if the MC088 communications fails then the IO module state is unknown, but in that case it's irrelevant anyway. So I make sure my error messages are prioritized correctly.
All programmable CAN nodes broadcast a status message with the first bit flag always set to TRUE. The receiver software in the screen then simply forces these flags to FALSE after a short timeout. Just like a regular software watchdog, and really simple.