Being retired I have quite a bit of free time. My H/W design experience goes back to 1975 and the Intel 8080, STM from STR750 (ARM7) on through F1/F2/F4/L0/L4 series. Software experience dates back to Algol and Fortran, a myriad of assembly language...
The easiest error to simulate is to disconnect from the CAN bus. You'll get a flood of errors which will quickly disconnect the transmitter. You can test how your code recovers from the disconnect in a graceful way, and if your application waits fo...
If you have a battery backup for the RTC you can use the general purpose data registers (I believe there are 20 bytes in the G0 series) to save a few variables across resets and power loss. Jack Peacock
You didn't specify data rates, so I'll assume you're looking for fast exchange since you mentioned SPI. My own approach would be to model this as process control, using CAN and a CANopen stack, but that can be complicated if CAN is unfamiliar..What'...