I'm guessing that BionX has the electronics distributed in three components, the hub, battery, and display, with the I2C bus (older models) or CAN bus (newer models) connecting all three as follows:
The hub contains the motor, the hall sensors, the torque sensor, the power switches (commonly referred to as the motor controller), and additional electronics, including a bus interface, hall sensor interface smarts, torque sensor interface smarts, and maybe more, such as a temp sensor, and probably includes the core speed control logic.
The battery contains the cells, the battery management smarts, including the charger interface and discharge and cell balance and temperature protection circuits, as well as a bus interface and probably the main system control logic and flash memory. The main control smarts stores and acts on the dozens of programmable settings of the BionX system.
The display includes the readout display, drivers, and backlight, the input pad and interface, the throttle sensor, the brake sensor interface, and the bus interface,.
Also, in addition to the 6 wire bus (dual differential signals plus power and ground) that connects the three main components, there are two power leads between the battery and the hub, and a two wire cable between the display and the brake switch.
That is, my expectation is that most of the system logic and memory that interfaces to the motor (power controller and torque sensor), BMS, and display (readout/input pad/throttle/brake switch) is inside the battery. It is possible that some or all of this logic and memory is in the hub or display, or split between the three components.
I hope I did not make the BionX system seem overly complex. My opinion is that it is extremely well engineered with minimal complexity for the exceptional pallet of features and ease of use (installation, programming ease and riding simplicity). Most of the elements above (except for the bus, torque sensor, multi-function input pad and display, and the higher level logic and memory electronics) are found on most ebikes. On the other hand, the very tight integration of so many added features makes interchanging non-BionX components such as batteries difficult.
One important feature I have not seen mentioned elsewhere in these threads is that by putting the power switches (motor speed controller) inside the motor hub, the wire lengths between the controller and motor windings are minimized. This is far more important than most may realize. On the many RC planes I have built, efficiency and responsiveness of the brushless motors degrade very quickly as the lead length to the speed controller (ESC) increases; and every inch matters.
-- Alan