diff --git a/src/shared/events/EventBroker.cpp b/src/shared/events/EventBroker.cpp
index 96fe93c762b795ac5f32b32fe90d12db35fc6095..fee912fa943b3876ea6972a7b9aa027220ef5cf7 100644
--- a/src/shared/events/EventBroker.cpp
+++ b/src/shared/events/EventBroker.cpp
@@ -66,11 +66,8 @@ uint16_t EventBroker::postDelayed(const Event& ev, uint8_t topic,
 
     Lock<FastMutex> lock(mtxDelayedEvents);
 
-    // Delay in system ticks
-    long long delayTicks =
-        static_cast<long long>(delayMs * miosix::TICK_FREQ / 1000);
-
-    DelayedEvent dev{eventCounter++, ev, topic, getTick() + delayTicks};
+    DelayedEvent dev{eventCounter++, ev, topic,
+                     miosix::getTime() + delayMs * Constants::NS_IN_MS};
     bool added = false;
 
     // Add the new event in the list, ordered by deadline (first = nearest
@@ -141,7 +138,7 @@ void EventBroker::run()
     while (!shouldStop())
     {
         while (delayedEvents.size() > 0 &&
-               delayedEvents.front().deadline <= getTick())
+               delayedEvents.front().deadline <= miosix::getTime())
         {
             // Pop the first element
             DelayedEvent dev = delayedEvents.front();
@@ -157,7 +154,7 @@ void EventBroker::run()
 
         // When to wakeup for the next cycle
         long long sleepUntil =
-            getTick() + EVENT_BROKER_MIN_DELAY * miosix::TICK_FREQ / 1000;
+            miosix::getTime() + EVENT_BROKER_MIN_DELAY * Constants::NS_IN_MS;
 
         if (delayedEvents.size() > 0)
         {
@@ -173,7 +170,7 @@ void EventBroker::run()
             Unlock<FastMutex> unlock(lock);
             StackLogger::getInstance().updateStack(THID_EVT_BROKER);
 
-            Thread::sleepUntil(sleepUntil);
+            Thread::nanoSleepUntil(sleepUntil);
         }
     }
 }
diff --git a/src/shared/events/EventBroker.h b/src/shared/events/EventBroker.h
index 7437d623070bea3d1636528f1e55f92becb8b224..e9e51f1a063afbb222e5bf9b540a3f2a474a042f 100644
--- a/src/shared/events/EventBroker.h
+++ b/src/shared/events/EventBroker.h
@@ -39,7 +39,6 @@ using std::map;
 using std::vector;
 
 using miosix::FastMutex;
-using miosix::getTick;
 using miosix::Lock;
 using miosix::Thread;
 using miosix::Unlock;