diff --git a/src/MockupMain/BoardScheduler.h b/src/MockupMain/BoardScheduler.h
index 1769434b2c5254281ec7aa3ff57fb2a18d5817fc..f347ce413cb89e8290e0be816c00a443636c99ca 100644
--- a/src/MockupMain/BoardScheduler.h
+++ b/src/MockupMain/BoardScheduler.h
@@ -52,10 +52,10 @@ public:
         };
     };
 
-    Boardcore::TaskScheduler& nasController() { return critical; }
     Boardcore::TaskScheduler& sensors() { return high; }
     Boardcore::TaskScheduler& pinHandler() { return high; }
     Boardcore::TaskScheduler& radio() { return medium; }
+    Boardcore::TaskScheduler& nasController() { return low; }
 
     static Priority::PriorityLevel flightModeManagerPriority()
     {
@@ -64,7 +64,7 @@ public:
 
     static Priority::PriorityLevel nasControllerPriority()
     {
-        return Priority::MEDIUM;
+        return Priority::LOW;
     }
 
     /**
diff --git a/src/MockupMain/Configs/SensorsConfig.h b/src/MockupMain/Configs/SensorsConfig.h
index 132f19f80590d075daebbb215f50456163c2b61f..01da8ae1551e95d8d5c7d723d5f15a04d6a83456 100644
--- a/src/MockupMain/Configs/SensorsConfig.h
+++ b/src/MockupMain/Configs/SensorsConfig.h
@@ -55,7 +55,7 @@ constexpr auto ACC_GYRO_ODR = Boardcore::BMX160Config::OutputDataRate::HZ_100;
 constexpr auto MAG_ODR      = Boardcore::BMX160Config::OutputDataRate::HZ_100;
 
 static const Boardcore::AxisOrthoOrientation AXIS_ORIENTATION = {
-    Boardcore::Direction::POSITIVE_Z, Boardcore::Direction::POSITIVE_Y};
+    Boardcore::Direction::NEGATIVE_Z, Boardcore::Direction::POSITIVE_Y};
 
 constexpr auto TEMP_DIVIDER   = 0;
 constexpr auto FIFO_WATERMARK = 40;
@@ -69,7 +69,7 @@ constexpr auto MAG_DATA_SIZE    = 8;
 namespace H3LIS331DL
 {
 constexpr auto ENABLED       = true;
-constexpr auto SAMPLING_RATE = 800_hz;
+constexpr auto SAMPLING_RATE = 400_hz;
 constexpr auto ODR = Boardcore::H3LIS331DLDefs::OutputDataRate::ODR_1000;
 constexpr auto BDU =
     Boardcore::H3LIS331DLDefs::BlockDataUpdate::BDU_CONTINUOS_UPDATE;
@@ -87,7 +87,7 @@ constexpr auto ODR           = Boardcore::LPS22DF::ODR_50;
 namespace UBXGPS
 {
 constexpr auto ENABLED       = true;
-constexpr auto SAMPLING_RATE = 10_hz;
+constexpr auto SAMPLING_RATE = 6_hz;
 }  // namespace UBXGPS
 
 namespace ADS131M08
@@ -103,14 +103,14 @@ namespace LIS3MDL
 {
 constexpr auto ENABLED       = true;
 constexpr auto SAMPLING_RATE = 100_hz;
-constexpr auto ODR           = Boardcore::LIS3MDL::ODR_155_HZ;
+constexpr auto ODR           = Boardcore::LIS3MDL::ODR_10_HZ;
 constexpr auto FSR           = Boardcore::LIS3MDL::FS_4_GAUSS;
 }  // namespace LIS3MDL
 
 namespace InternalADC
 {
 constexpr auto ENABLED       = true;
-constexpr auto SAMPLING_RATE = 100_hz;
+constexpr auto SAMPLING_RATE = 1_hz;
 constexpr auto VBAT_CH       = Boardcore::InternalADC::Channel::CH5;
 constexpr auto VBAT_COEFF    = (150 + 40.2) / 40.2;
 }  // namespace InternalADC
@@ -118,7 +118,7 @@ constexpr auto VBAT_COEFF    = (150 + 40.2) / 40.2;
 namespace LoadCell
 {
 constexpr auto ENABLED       = true;
-constexpr auto SAMPLING_RATE = InternalADC::SAMPLING_RATE;
+constexpr auto SAMPLING_RATE = ADS131M08::SAMPLING_RATE;
 constexpr auto ADC_CHANNEL   = Boardcore::ADS131M08Defs::Channel::CHANNEL_0;
 
 namespace Calibration
diff --git a/src/MockupMain/Sensors/Sensors.cpp b/src/MockupMain/Sensors/Sensors.cpp
index fad15ae3cdedb82e7b301b161bcc5cce897d6707..0cdf2738cff7aa157305d9d7f99648365eff7337 100644
--- a/src/MockupMain/Sensors/Sensors.cpp
+++ b/src/MockupMain/Sensors/Sensors.cpp
@@ -62,6 +62,9 @@ bool Sensors::start()
     if (config::InternalADC::ENABLED)
         internalADCInit();
 
+    if (config::LoadCell::ENABLED)
+        loadCellInit();
+
     if (!postSensorCreationHook())
     {
         LOG_ERR(logger, "Sensors post-creation hook failed");
@@ -527,6 +530,13 @@ bool Sensors::sensorManagerInit()
         map.emplace(internalAdc.get(), info);
     }
 
+    if (loadCell)
+    {
+        SensorInfo info{"LoadCell", config::LoadCell::SAMPLING_RATE,
+                        [this]() { loadCellCallback(); }};
+        map.emplace(loadCell.get(), info);
+    }
+
     auto& scheduler = getModule<BoardScheduler>()->sensors();
     manager         = std::make_unique<SensorManager>(map, &scheduler);
     return manager->start();
diff --git a/src/MockupMain/mockup-entry.cpp b/src/MockupMain/mockup-entry.cpp
index 0ea06da34b5cc5ddfb6ff4a99a39999a7b441190..76e3480c4c7c60c9c57d7a0a2571c38d2b362c58 100644
--- a/src/MockupMain/mockup-entry.cpp
+++ b/src/MockupMain/mockup-entry.cpp
@@ -134,7 +134,7 @@ int main()
 
     START_MODULE(pinHandler);
     START_MODULE(radio);
-    START_MODULE(nasController);
+    // START_MODULE(nasController);
     START_MODULE(flightModeManager);
 
     START_MODULE(scheduler);