Arduino Mega 2560: MegaJoy and Seeed CANshield

Good afternoon all!

I have successfully implemented the MegaJoy code where the DI/AI get converted into virtual joystick signals on your computer to run a game with external joysticks.

Now I want to take this one step further, and have my joystick signals not come directly into the DI/AI inputs on the arduino board, but through a CANbus signal from another PLC.
Again I was successful with implementing the CANbus communication between the other PLC and the Arduino using the standard Seeed CANshield library.

However, when now trying to link these two together (external PLC > CANshield > Arduino > MegaJoy > PC) I seem to be running into an issue.
It looks like the CANshield uses DI 13 as the SCK signal for the CANbus transmission, but MegaJoy is also relying on this pin for it's internal timing with the serial USB PC connection. As these two data tranmissions are not in sync, it results in massive reading errors as well as flickering.

Does anyone have any idea how I can split this timing pin up for the CANbus data transmission and the serial USB transmission? So either in the CANshield code or in MegaJoy?

In the attachment I have added the IO connections for the CANshield and a bit more explanation.

Any help would be much appreciated!