I just tried using the time data processor to limit the sampling rate of the different sensor fusion channels to allow the simultaneous streaming of more than one data_signal over BLE.
This is working so far, as that I am able to get samples from multiple channels, but the data in these channels is, for lack of a better word, strange.
My setup of the processor was done using the pymetawear python library using the python wrapper of the c++ API.
The relevant calls to the library are the following:
data_source = sensor.SensorFusion.DATA_CORRECTED_ACC
data_signal = libmetawear.mbl_mw_sensor_fusion_get_data_signal(self.board, data_source)
mode = processor.Time.MODE_ABSOLUTE
libmetawear.mbl_mw_dataprocessor_time_create(data_source, mode, 20, core.Fn_VoidPtr(processor_set))
# the processor_set callback will assign the returned processor to the processor_signal variable