2. When the `SensorManager` is started, for each sampler it schedules a periodic task, according to the required frequency.
3. From that point on, the `TaskScheduler` periodically calls the `SensorSampler` objects. When called, each sampler performs the sampling of all the sensors it manages and for each of them calls the associated callback.
For simplicity, each arrow in the diagram describes an action and reports the phase number that action belongs to (according to the above defined phases).