diff --git a/src/drivers/imu/invensense/icm20602/ICM20602.hpp b/src/drivers/imu/invensense/icm20602/ICM20602.hpp index 563af1fbda..bb3135a80f 100644 --- a/src/drivers/imu/invensense/icm20602/ICM20602.hpp +++ b/src/drivers/imu/invensense/icm20602/ICM20602.hpp @@ -69,13 +69,9 @@ public: int init() override; void print_status() override; - void Start(); - bool Reset(); - -protected: - void custom_method(const BusCLIArguments &cli) override; - void exit_and_cleanup() override; private: + void exit_and_cleanup() override; + // Sensor Configuration static constexpr float FIFO_SAMPLE_DT{125.f}; static constexpr uint32_t SAMPLES_PER_TRANSFER{2}; // ensure at least 1 new accel sample per transfer @@ -100,6 +96,8 @@ private: int probe() override; + bool Reset(); + bool Configure(); void ConfigureAccel(); void ConfigureGyro(); diff --git a/src/drivers/imu/invensense/icm20602/icm20602_main.cpp b/src/drivers/imu/invensense/icm20602/icm20602_main.cpp index 47821c7596..7a48d456b6 100644 --- a/src/drivers/imu/invensense/icm20602/icm20602_main.cpp +++ b/src/drivers/imu/invensense/icm20602/icm20602_main.cpp @@ -36,15 +36,13 @@ #include #include -void -ICM20602::print_usage() +void ICM20602::print_usage() { PRINT_MODULE_USAGE_NAME("icm20602", "driver"); PRINT_MODULE_USAGE_SUBCATEGORY("imu"); PRINT_MODULE_USAGE_COMMAND("start"); PRINT_MODULE_USAGE_PARAMS_I2C_SPI_DRIVER(false, true); PRINT_MODULE_USAGE_PARAM_INT('R', 0, 0, 35, "Rotation", true); - PRINT_MODULE_USAGE_COMMAND("reset"); PRINT_MODULE_USAGE_DEFAULT_COMMANDS(); } @@ -67,11 +65,6 @@ I2CSPIDriverBase *ICM20602::instantiate(const BusCLIArguments &cli, const BusIns return instance; } -void ICM20602::custom_method(const BusCLIArguments &cli) -{ - Reset(); -} - extern "C" int icm20602_main(int argc, char *argv[]) { int ch; @@ -108,10 +101,6 @@ extern "C" int icm20602_main(int argc, char *argv[]) return ThisDriver::module_status(iterator); } - if (!strcmp(verb, "reset")) { - return ThisDriver::module_custom_method(cli, iterator); - } - ThisDriver::print_usage(); return -1; } diff --git a/src/drivers/imu/invensense/icm20608g/ICM20608G.hpp b/src/drivers/imu/invensense/icm20608g/ICM20608G.hpp index c920a37d3e..f47254490a 100644 --- a/src/drivers/imu/invensense/icm20608g/ICM20608G.hpp +++ b/src/drivers/imu/invensense/icm20608g/ICM20608G.hpp @@ -69,13 +69,9 @@ public: int init() override; void print_status() override; - void Start(); - bool Reset(); - -protected: - void custom_method(const BusCLIArguments &cli) override; - void exit_and_cleanup() override; private: + void exit_and_cleanup() override; + // Sensor Configuration static constexpr float FIFO_SAMPLE_DT{125.f}; static constexpr uint32_t SAMPLES_PER_TRANSFER{2}; // ensure at least 1 new accel sample per transfer @@ -102,6 +98,8 @@ private: int probe() override; + bool Reset(); + bool Configure(); void ConfigureAccel(); void ConfigureGyro(); diff --git a/src/drivers/imu/invensense/icm20608g/icm20608g_main.cpp b/src/drivers/imu/invensense/icm20608g/icm20608g_main.cpp index 5f321e2c6c..038bf728dd 100644 --- a/src/drivers/imu/invensense/icm20608g/icm20608g_main.cpp +++ b/src/drivers/imu/invensense/icm20608g/icm20608g_main.cpp @@ -36,15 +36,13 @@ #include #include -void -ICM20608G::print_usage() +void ICM20608G::print_usage() { PRINT_MODULE_USAGE_NAME("icm20608g", "driver"); PRINT_MODULE_USAGE_SUBCATEGORY("imu"); PRINT_MODULE_USAGE_COMMAND("start"); PRINT_MODULE_USAGE_PARAMS_I2C_SPI_DRIVER(false, true); PRINT_MODULE_USAGE_PARAM_INT('R', 0, 0, 35, "Rotation", true); - PRINT_MODULE_USAGE_COMMAND("reset"); PRINT_MODULE_USAGE_DEFAULT_COMMANDS(); } @@ -67,11 +65,6 @@ I2CSPIDriverBase *ICM20608G::instantiate(const BusCLIArguments &cli, const BusIn return instance; } -void ICM20608G::custom_method(const BusCLIArguments &cli) -{ - Reset(); -} - extern "C" int icm20608g_main(int argc, char *argv[]) { int ch; @@ -108,10 +101,6 @@ extern "C" int icm20608g_main(int argc, char *argv[]) return ThisDriver::module_status(iterator); } - if (!strcmp(verb, "reset")) { - return ThisDriver::module_custom_method(cli, iterator); - } - ThisDriver::print_usage(); return -1; } diff --git a/src/drivers/imu/invensense/icm20689/ICM20689.hpp b/src/drivers/imu/invensense/icm20689/ICM20689.hpp index 49c16af497..b64071d5ba 100644 --- a/src/drivers/imu/invensense/icm20689/ICM20689.hpp +++ b/src/drivers/imu/invensense/icm20689/ICM20689.hpp @@ -69,13 +69,9 @@ public: int init() override; void print_status() override; - void Start(); - bool Reset(); - -protected: - void custom_method(const BusCLIArguments &cli) override; - void exit_and_cleanup() override; private: + void exit_and_cleanup() override; + // Sensor Configuration static constexpr float FIFO_SAMPLE_DT{125.f}; static constexpr uint32_t SAMPLES_PER_TRANSFER{2}; // ensure at least 1 new accel sample per transfer @@ -102,6 +98,8 @@ private: int probe() override; + bool Reset(); + bool Configure(); void ConfigureAccel(); void ConfigureGyro(); diff --git a/src/drivers/imu/invensense/icm20689/icm20689_main.cpp b/src/drivers/imu/invensense/icm20689/icm20689_main.cpp index 4a7164304f..1e0a351523 100644 --- a/src/drivers/imu/invensense/icm20689/icm20689_main.cpp +++ b/src/drivers/imu/invensense/icm20689/icm20689_main.cpp @@ -36,15 +36,13 @@ #include #include -void -ICM20689::print_usage() +void ICM20689::print_usage() { PRINT_MODULE_USAGE_NAME("icm20689", "driver"); PRINT_MODULE_USAGE_SUBCATEGORY("imu"); PRINT_MODULE_USAGE_COMMAND("start"); PRINT_MODULE_USAGE_PARAMS_I2C_SPI_DRIVER(false, true); PRINT_MODULE_USAGE_PARAM_INT('R', 0, 0, 35, "Rotation", true); - PRINT_MODULE_USAGE_COMMAND("reset"); PRINT_MODULE_USAGE_DEFAULT_COMMANDS(); } @@ -67,11 +65,6 @@ I2CSPIDriverBase *ICM20689::instantiate(const BusCLIArguments &cli, const BusIns return instance; } -void ICM20689::custom_method(const BusCLIArguments &cli) -{ - Reset(); -} - extern "C" int icm20689_main(int argc, char *argv[]) { int ch; @@ -108,10 +101,6 @@ extern "C" int icm20689_main(int argc, char *argv[]) return ThisDriver::module_status(iterator); } - if (!strcmp(verb, "reset")) { - return ThisDriver::module_custom_method(cli, iterator); - } - ThisDriver::print_usage(); return -1; } diff --git a/src/drivers/imu/invensense/icm40609d/ICM40609D.hpp b/src/drivers/imu/invensense/icm40609d/ICM40609D.hpp index 55c25be5dc..336d752248 100644 --- a/src/drivers/imu/invensense/icm40609d/ICM40609D.hpp +++ b/src/drivers/imu/invensense/icm40609d/ICM40609D.hpp @@ -69,13 +69,9 @@ public: int init() override; void print_status() override; - void Start(); - bool Reset(); - -protected: - void custom_method(const BusCLIArguments &cli) override; - void exit_and_cleanup() override; private: + void exit_and_cleanup() override; + // Sensor Configuration static constexpr float FIFO_SAMPLE_DT{125.f}; static constexpr uint32_t SAMPLES_PER_TRANSFER{1}; // ensure at least 1 new accel sample per transfer @@ -103,6 +99,8 @@ private: int probe() override; + bool Reset(); + bool Configure(); void ConfigureAccel(); void ConfigureGyro(); diff --git a/src/drivers/imu/invensense/icm40609d/icm40609d_main.cpp b/src/drivers/imu/invensense/icm40609d/icm40609d_main.cpp index aab912c496..a366698fc0 100644 --- a/src/drivers/imu/invensense/icm40609d/icm40609d_main.cpp +++ b/src/drivers/imu/invensense/icm40609d/icm40609d_main.cpp @@ -43,7 +43,6 @@ void ICM40609D::print_usage() PRINT_MODULE_USAGE_COMMAND("start"); PRINT_MODULE_USAGE_PARAMS_I2C_SPI_DRIVER(false, true); PRINT_MODULE_USAGE_PARAM_INT('R', 0, 0, 35, "Rotation", true); - PRINT_MODULE_USAGE_COMMAND("reset"); PRINT_MODULE_USAGE_DEFAULT_COMMANDS(); } @@ -66,11 +65,6 @@ I2CSPIDriverBase *ICM40609D::instantiate(const BusCLIArguments &cli, const BusIn return instance; } -void ICM40609D::custom_method(const BusCLIArguments &cli) -{ - Reset(); -} - extern "C" int icm40609d_main(int argc, char *argv[]) { int ch; @@ -107,10 +101,6 @@ extern "C" int icm40609d_main(int argc, char *argv[]) return ThisDriver::module_status(iterator); } - if (!strcmp(verb, "reset")) { - return ThisDriver::module_custom_method(cli, iterator); - } - ThisDriver::print_usage(); return -1; } diff --git a/src/drivers/imu/invensense/icm42688p/ICM42688P.hpp b/src/drivers/imu/invensense/icm42688p/ICM42688P.hpp index 409be7e176..de8547a934 100644 --- a/src/drivers/imu/invensense/icm42688p/ICM42688P.hpp +++ b/src/drivers/imu/invensense/icm42688p/ICM42688P.hpp @@ -69,13 +69,9 @@ public: int init() override; void print_status() override; - void Start(); - bool Reset(); - -protected: - void custom_method(const BusCLIArguments &cli) override; - void exit_and_cleanup() override; private: + void exit_and_cleanup() override; + // Sensor Configuration static constexpr float FIFO_SAMPLE_DT{125.f}; static constexpr uint32_t SAMPLES_PER_TRANSFER{1}; // ensure at least 1 new accel sample per transfer @@ -103,6 +99,8 @@ private: int probe() override; + bool Reset(); + bool Configure(); void ConfigureAccel(); void ConfigureGyro(); diff --git a/src/drivers/imu/invensense/icm42688p/icm42688p_main.cpp b/src/drivers/imu/invensense/icm42688p/icm42688p_main.cpp index 5c2920216c..42d90df8bf 100644 --- a/src/drivers/imu/invensense/icm42688p/icm42688p_main.cpp +++ b/src/drivers/imu/invensense/icm42688p/icm42688p_main.cpp @@ -43,7 +43,6 @@ void ICM42688P::print_usage() PRINT_MODULE_USAGE_COMMAND("start"); PRINT_MODULE_USAGE_PARAMS_I2C_SPI_DRIVER(false, true); PRINT_MODULE_USAGE_PARAM_INT('R', 0, 0, 35, "Rotation", true); - PRINT_MODULE_USAGE_COMMAND("reset"); PRINT_MODULE_USAGE_DEFAULT_COMMANDS(); } @@ -66,11 +65,6 @@ I2CSPIDriverBase *ICM42688P::instantiate(const BusCLIArguments &cli, const BusIn return instance; } -void ICM42688P::custom_method(const BusCLIArguments &cli) -{ - Reset(); -} - extern "C" int icm42688p_main(int argc, char *argv[]) { int ch; @@ -107,10 +101,6 @@ extern "C" int icm42688p_main(int argc, char *argv[]) return ThisDriver::module_status(iterator); } - if (!strcmp(verb, "reset")) { - return ThisDriver::module_custom_method(cli, iterator); - } - ThisDriver::print_usage(); return -1; } diff --git a/src/drivers/imu/invensense/mpu6000/MPU6000.hpp b/src/drivers/imu/invensense/mpu6000/MPU6000.hpp index 1373a0beca..a7a3208052 100644 --- a/src/drivers/imu/invensense/mpu6000/MPU6000.hpp +++ b/src/drivers/imu/invensense/mpu6000/MPU6000.hpp @@ -69,13 +69,9 @@ public: int init() override; void print_status() override; - void Start(); - bool Reset(); - -protected: - void custom_method(const BusCLIArguments &cli) override; - void exit_and_cleanup() override; private: + void exit_and_cleanup() override; + // Sensor Configuration static constexpr float FIFO_SAMPLE_DT{125.f}; static constexpr uint32_t SAMPLES_PER_TRANSFER{8}; // ensure at least 1 new accel sample per transfer @@ -100,6 +96,8 @@ private: int probe() override; + bool Reset(); + bool Configure(); void ConfigureAccel(); void ConfigureGyro(); diff --git a/src/drivers/imu/invensense/mpu6000/mpu6000_main.cpp b/src/drivers/imu/invensense/mpu6000/mpu6000_main.cpp index 495ae4f538..da095ee0f2 100644 --- a/src/drivers/imu/invensense/mpu6000/mpu6000_main.cpp +++ b/src/drivers/imu/invensense/mpu6000/mpu6000_main.cpp @@ -36,15 +36,13 @@ #include #include -void -MPU6000::print_usage() +void MPU6000::print_usage() { PRINT_MODULE_USAGE_NAME("mpu6000", "driver"); PRINT_MODULE_USAGE_SUBCATEGORY("imu"); PRINT_MODULE_USAGE_COMMAND("start"); PRINT_MODULE_USAGE_PARAMS_I2C_SPI_DRIVER(false, true); PRINT_MODULE_USAGE_PARAM_INT('R', 0, 0, 35, "Rotation", true); - PRINT_MODULE_USAGE_COMMAND("reset"); PRINT_MODULE_USAGE_DEFAULT_COMMANDS(); } @@ -67,17 +65,12 @@ I2CSPIDriverBase *MPU6000::instantiate(const BusCLIArguments &cli, const BusInst return instance; } -void MPU6000::custom_method(const BusCLIArguments &cli) -{ - Reset(); -} - extern "C" int mpu6000_main(int argc, char *argv[]) { int ch; using ThisDriver = MPU6000; BusCLIArguments cli{false, true}; - cli.default_spi_frequency = InvenSense_MPU6000::SPI_SPEED; + cli.default_spi_frequency = SPI_SPEED; while ((ch = cli.getopt(argc, argv, "R:")) != EOF) { switch (ch) { @@ -108,10 +101,6 @@ extern "C" int mpu6000_main(int argc, char *argv[]) return ThisDriver::module_status(iterator); } - if (!strcmp(verb, "reset")) { - return ThisDriver::module_custom_method(cli, iterator); - } - ThisDriver::print_usage(); return -1; } diff --git a/src/drivers/imu/invensense/mpu6500/MPU6500.hpp b/src/drivers/imu/invensense/mpu6500/MPU6500.hpp index 5a2f592029..1117fa26ce 100644 --- a/src/drivers/imu/invensense/mpu6500/MPU6500.hpp +++ b/src/drivers/imu/invensense/mpu6500/MPU6500.hpp @@ -69,13 +69,9 @@ public: int init() override; void print_status() override; - void Start(); - bool Reset(); - -protected: - void custom_method(const BusCLIArguments &cli) override; - void exit_and_cleanup() override; private: + void exit_and_cleanup() override; + // Sensor Configuration static constexpr float FIFO_SAMPLE_DT{125.f}; static constexpr uint32_t SAMPLES_PER_TRANSFER{2}; // ensure at least 1 new accel sample per transfer @@ -100,6 +96,8 @@ private: int probe() override; + bool Reset(); + bool Configure(); void ConfigureAccel(); void ConfigureGyro(); diff --git a/src/drivers/imu/invensense/mpu6500/mpu6500_main.cpp b/src/drivers/imu/invensense/mpu6500/mpu6500_main.cpp index 11995b8af2..82f39b005c 100644 --- a/src/drivers/imu/invensense/mpu6500/mpu6500_main.cpp +++ b/src/drivers/imu/invensense/mpu6500/mpu6500_main.cpp @@ -36,15 +36,13 @@ #include #include -void -MPU6500::print_usage() +void MPU6500::print_usage() { PRINT_MODULE_USAGE_NAME("mpu9520", "driver"); PRINT_MODULE_USAGE_SUBCATEGORY("imu"); PRINT_MODULE_USAGE_COMMAND("start"); PRINT_MODULE_USAGE_PARAMS_I2C_SPI_DRIVER(false, true); PRINT_MODULE_USAGE_PARAM_INT('R', 0, 0, 35, "Rotation", true); - PRINT_MODULE_USAGE_COMMAND("reset"); PRINT_MODULE_USAGE_DEFAULT_COMMANDS(); } @@ -67,11 +65,6 @@ I2CSPIDriverBase *MPU6500::instantiate(const BusCLIArguments &cli, const BusInst return instance; } -void MPU6500::custom_method(const BusCLIArguments &cli) -{ - Reset(); -} - extern "C" int mpu6500_main(int argc, char *argv[]) { int ch; @@ -108,10 +101,6 @@ extern "C" int mpu6500_main(int argc, char *argv[]) return ThisDriver::module_status(iterator); } - if (!strcmp(verb, "reset")) { - return ThisDriver::module_custom_method(cli, iterator); - } - ThisDriver::print_usage(); return -1; } diff --git a/src/drivers/imu/invensense/mpu9250/MPU9250.hpp b/src/drivers/imu/invensense/mpu9250/MPU9250.hpp index 99ee4a2889..3048bb7ad6 100644 --- a/src/drivers/imu/invensense/mpu9250/MPU9250.hpp +++ b/src/drivers/imu/invensense/mpu9250/MPU9250.hpp @@ -71,13 +71,9 @@ public: int init() override; void print_status() override; - void Start(); - bool Reset(); - -protected: - void custom_method(const BusCLIArguments &cli) override; - void exit_and_cleanup() override; private: + void exit_and_cleanup() override; + // Sensor Configuration static constexpr float FIFO_SAMPLE_DT{125.f}; static constexpr uint32_t SAMPLES_PER_TRANSFER{2}; // ensure at least 1 new accel sample per transfer @@ -102,6 +98,8 @@ private: int probe() override; + bool Reset(); + bool Configure(); void ConfigureAccel(); void ConfigureGyro(); diff --git a/src/drivers/imu/invensense/mpu9250/MPU9250_AK8963.hpp b/src/drivers/imu/invensense/mpu9250/MPU9250_AK8963.hpp index 08ac7b6ffc..bc9a876af5 100644 --- a/src/drivers/imu/invensense/mpu9250/MPU9250_AK8963.hpp +++ b/src/drivers/imu/invensense/mpu9250/MPU9250_AK8963.hpp @@ -61,7 +61,6 @@ public: ~MPU9250_AK8963() override; bool Init(); - void Start(); void Stop(); bool Reset(); void PrintInfo(); diff --git a/src/drivers/imu/invensense/mpu9250/mpu9250_main.cpp b/src/drivers/imu/invensense/mpu9250/mpu9250_main.cpp index 7a729c6c81..8c9636dad6 100644 --- a/src/drivers/imu/invensense/mpu9250/mpu9250_main.cpp +++ b/src/drivers/imu/invensense/mpu9250/mpu9250_main.cpp @@ -36,8 +36,7 @@ #include #include -void -MPU9250::print_usage() +void MPU9250::print_usage() { PRINT_MODULE_USAGE_NAME("mpu9520", "driver"); PRINT_MODULE_USAGE_SUBCATEGORY("imu"); @@ -45,7 +44,6 @@ MPU9250::print_usage() PRINT_MODULE_USAGE_PARAMS_I2C_SPI_DRIVER(false, true); PRINT_MODULE_USAGE_PARAM_FLAG('M', "Enable Magnetometer (AK8963)", true); PRINT_MODULE_USAGE_PARAM_INT('R', 0, 0, 35, "Rotation", true); - PRINT_MODULE_USAGE_COMMAND("reset"); PRINT_MODULE_USAGE_DEFAULT_COMMANDS(); } @@ -69,11 +67,6 @@ I2CSPIDriverBase *MPU9250::instantiate(const BusCLIArguments &cli, const BusInst return instance; } -void MPU9250::custom_method(const BusCLIArguments &cli) -{ - Reset(); -} - extern "C" int mpu9250_main(int argc, char *argv[]) { int ch; @@ -114,10 +107,6 @@ extern "C" int mpu9250_main(int argc, char *argv[]) return ThisDriver::module_status(iterator); } - if (!strcmp(verb, "reset")) { - return ThisDriver::module_custom_method(cli, iterator); - } - ThisDriver::print_usage(); return -1; }