From 636c1fdf26b474577ca0bd4c6051025d9f44687a Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Mon, 20 Dec 2021 13:37:28 +0100 Subject: [PATCH] added GNSS enable pin handling --- bsp_q7s/boardconfig/busConf.h | 2 ++ bsp_q7s/core/ObjectFactory.cpp | 14 +++++++++++++- linux/fsfwconfig/devices/gpioIds.h | 2 ++ .../pollingsequence/pollingSequenceFactory.cpp | 4 ++-- tmtc | 2 +- 5 files changed, 20 insertions(+), 4 deletions(-) diff --git a/bsp_q7s/boardconfig/busConf.h b/bsp_q7s/boardconfig/busConf.h index 73605471..e6f9ae54 100644 --- a/bsp_q7s/boardconfig/busConf.h +++ b/bsp_q7s/boardconfig/busConf.h @@ -31,6 +31,8 @@ namespace gpioNames { static constexpr char MGM_3_CS[] = "mgm_3_rm3100_chip_select"; static constexpr char RESET_GNSS_0[] = "reset_gnss_0"; static constexpr char RESET_GNSS_1[] = "reset_gnss_1"; + static constexpr char GNSS_0_ENABLE[] = "enable_gnss_0"; + static constexpr char GNSS_1_ENABLE[] = "enable_gnss_1"; static constexpr char GYRO_0_ENABLE[] = "enable_gyro_0"; static constexpr char GYRO_2_ENABLE[] = "enable_gyro_2"; static constexpr char HEATER_0[] = "heater0"; diff --git a/bsp_q7s/core/ObjectFactory.cpp b/bsp_q7s/core/ObjectFactory.cpp index 558f23b1..3b35f89e 100644 --- a/bsp_q7s/core/ObjectFactory.cpp +++ b/bsp_q7s/core/ObjectFactory.cpp @@ -468,7 +468,19 @@ void ObjectFactory::createAcsBoardComponents(LinuxLibgpioIF *gpioComIF, UartComI gpio::LOW); gpioCookieAcsBoard->addGpio(gpioIds::GYRO_2_ENABLE, gpio); - // TODO: Add enable pins for GPS as soon as new interface board design is finished + // Enable pins for GNSS + consumer.str(""); + consumer << "0x" << std::hex << objects::GPS0_HANDLER; + gpio = new GpiodRegularByLineName(q7s::gpioNames::GNSS_0_ENABLE, consumer.str(), + gpio::DIR_OUT, gpio::LOW); + gpioCookieAcsBoard->addGpio(gpioIds::GNSS_0_ENABLE, gpio); + + consumer.str(""); + consumer << "0x" << std::hex << objects::GPS1_HANDLER; + gpio = new GpiodRegularByLineName(q7s::gpioNames::GNSS_1_ENABLE, consumer.str(), gpio::DIR_OUT, + gpio::LOW); + gpioCookieAcsBoard->addGpio(gpioIds::GNSS_1_ENABLE, gpio); + gpioComIF->addGpios(gpioCookieAcsBoard); std::string spiDev = q7s::SPI_DEFAULT_DEV; diff --git a/linux/fsfwconfig/devices/gpioIds.h b/linux/fsfwconfig/devices/gpioIds.h index 8d3f94ca..e4b9f727 100644 --- a/linux/fsfwconfig/devices/gpioIds.h +++ b/linux/fsfwconfig/devices/gpioIds.h @@ -27,6 +27,8 @@ enum gpioId_t { GNSS_0_NRESET, GNSS_1_NRESET, + GNSS_0_ENABLE, + GNSS_1_ENABLE, GYRO_0_ENABLE, GYRO_2_ENABLE, diff --git a/linux/fsfwconfig/pollingsequence/pollingSequenceFactory.cpp b/linux/fsfwconfig/pollingsequence/pollingSequenceFactory.cpp index 19d9b2de..be38fd89 100644 --- a/linux/fsfwconfig/pollingsequence/pollingSequenceFactory.cpp +++ b/linux/fsfwconfig/pollingsequence/pollingSequenceFactory.cpp @@ -439,8 +439,8 @@ ReturnValue_t pst::pstSpi(FixedTimeslotTaskIF *thisSequence) { #endif #if OBSW_ADD_ACS_BOARD == 1 - bool enableAside = true; - bool enableBside = false; + bool enableAside = false; + bool enableBside = true; if(enableAside) { // A side thisSequence->addSlot(objects::MGM_0_LIS3_HANDLER, length * 0, diff --git a/tmtc b/tmtc index 8cfc2892..1c2f09ad 160000 --- a/tmtc +++ b/tmtc @@ -1 +1 @@ -Subproject commit 8cfc2892dd95f959edb4b0ec1bbc8fc4aaa69ef2 +Subproject commit 1c2f09adc8c775cf84cfab860da165a319a756af