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);