diff --git a/hbp_nrp_music_interface/hbp_nrp_music_interface/launch/MUSICBrainProcess.py b/hbp_nrp_music_interface/hbp_nrp_music_interface/launch/MUSICBrainProcess.py
index 76034327179229fe37d07a3a4e80777a415a9e95..893bfc4bf1caa9c005925e7b9bdab2f28879e0d6 100644
--- a/hbp_nrp_music_interface/hbp_nrp_music_interface/launch/MUSICBrainProcess.py
+++ b/hbp_nrp_music_interface/hbp_nrp_music_interface/launch/MUSICBrainProcess.py
@@ -94,6 +94,9 @@ class MUSICBrainProcess(object):
 
         self._proxies = xml_factory.create_proxies(music_xml)
 
+        # extract the simulation timestep from the BIBI or default to 20 ms
+        self._timestep = float(self._bibi.timestep) if self._bibi.timestep is not None else 20.0
+
     def run(self):
         """
         Blocking run loop for this brain process. First accept any transfer function configuration
@@ -140,7 +143,7 @@ class MUSICBrainProcess(object):
 
         # run until forcefully terminated
         while True:
-            sim.run(sim.get_time_step())
+            self._brain_controller.run_step(self._timestep)
 
     def _connect_tf(self, params):
         """