There is a fairly recent standard published by ECSS that specifies the use of CAN bus and CANopen protocol for space applications (ECSS-E-ST-50-15C). It provides a reliable and fast bus that is feasible to be used in CubeSats, and makes a much better alternative to the commonly used I2C bus.
There are currently Micropython and C prototype implementation being developed under the LibreCube framework. For example, the Micropython implementation can be found here: https://gitlab.com/librecube/WP-1005.
Please feel free to provide your comments or feedback to this.