diff --git a/src/shared/sensors/Sensor.h b/src/shared/sensors/Sensor.h
index 80c6e8e1a9632e3ba61008136e6737d39583f91a..5cba9b216e5a72cf0f52bf8e6ae9ad8e4a287bbc 100644
--- a/src/shared/sensors/Sensor.h
+++ b/src/shared/sensors/Sensor.h
@@ -116,7 +116,7 @@ class SensorFIFO : public Sensor<Data>
 {
 protected:
     std::array<Data, FifoSize> lastFifo;
-    uint8_t lastFifoLevel = 1;  ///< number of samples in lastFifo
+    uint16_t lastFifoLevel = 1;  ///< number of samples in lastFifo
 
     uint64_t lastInterruptTimestamp = 0;
     uint64_t interruptTimestampDelta =
@@ -139,7 +139,7 @@ public:
     /**
      * @return number of elements in the last FIFO sampled from the sensor
      */
-    uint8_t getLastFifoSize() const { return lastFifoLevel; }
+    uint16_t getLastFifoSize() const { return lastFifoLevel; }
 
     /**
      * @brief Called by the interrupt handling routine: provides the timestamp
diff --git a/src/tests/sensors/test-bmx160.cpp b/src/tests/sensors/test-bmx160.cpp
index 27f3f332fcc8b599cb5ae542a89c644f5ee6845d..43e3cc9760c4d054019b3169686b0af2d3dc95ac 100644
--- a/src/tests/sensors/test-bmx160.cpp
+++ b/src/tests/sensors/test-bmx160.cpp
@@ -103,9 +103,9 @@ int main()
         printf("Fill: %d\n", sensor->getLastFifoSize());
 
         printf("----------------------------\n");
-        uint8_t len = std::min(sensor->getLastFifoSize(), (uint8_t)5);
+        uint16_t len = std::min(sensor->getLastFifoSize(), (uint16_t)5);
 
-        for (uint8_t i = 0; i < len; i++)
+        for (uint16_t i = 0; i < len; i++)
         {
             BMX160Data data = sensor->getFifoElement(i);
             printf("Mag [%.4f s]:\t%.2f\t%.2f\t%.2f\n",