I just modified CircleOS 3.7 for the STM32F107 that is pin compatible with the STM32F103 but:
1. STM32F107does not have FSMC (I had to manage the LCD manually, as done for Primer1),
2. STM32F107 allows USB and CAN to work simultaneously.
This version of CircleOS could help. I am wondering if, even for 103, the use of FSMC could be optional (it would allow CAN to work..),
BTW, I also asked ST for information about the CAN+FSMC issue and I am still waiting for their feedback.