update FSFW and related version handling
This commit is contained in:
parent
e8ced3c4c4
commit
0063ce0ccd
@ -4,9 +4,9 @@
|
|||||||
|
|
||||||
#include "OBSWConfig.h"
|
#include "OBSWConfig.h"
|
||||||
#include "OBSWVersion.h"
|
#include "OBSWVersion.h"
|
||||||
#include "fsfw/FSFWVersion.h"
|
|
||||||
#include "fsfw/serviceinterface/ServiceInterface.h"
|
#include "fsfw/serviceinterface/ServiceInterface.h"
|
||||||
#include "fsfw/timemanager/Stopwatch.h"
|
#include "fsfw/timemanager/Stopwatch.h"
|
||||||
|
#include "fsfw/version.h"
|
||||||
#include "watchdogConf.h"
|
#include "watchdogConf.h"
|
||||||
#if OBSW_USE_TMTC_TCP_BRIDGE == 0
|
#if OBSW_USE_TMTC_TCP_BRIDGE == 0
|
||||||
#include "fsfw/osal/common/UdpTmTcBridge.h"
|
#include "fsfw/osal/common/UdpTmTcBridge.h"
|
||||||
@ -72,10 +72,10 @@ ReturnValue_t CoreController::initializeLocalDataPool(localpool::DataPool &local
|
|||||||
}
|
}
|
||||||
|
|
||||||
LocalPoolDataSetBase *CoreController::getDataSetHandle(sid_t sid) {
|
LocalPoolDataSetBase *CoreController::getDataSetHandle(sid_t sid) {
|
||||||
if (sid.ownerSetId == core::HK_SET_ID) {
|
if (sid.ownerSetId == core::HK_SET_ID) {
|
||||||
return &hkSet;
|
return &hkSet;
|
||||||
}
|
}
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
ReturnValue_t CoreController::initialize() {
|
ReturnValue_t CoreController::initialize() {
|
||||||
@ -618,6 +618,7 @@ ReturnValue_t CoreController::incrementAllocationFailureCount() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
ReturnValue_t CoreController::initVersionFile() {
|
ReturnValue_t CoreController::initVersionFile() {
|
||||||
|
using namespace fsfw;
|
||||||
std::string unameFileName = "/tmp/uname_version.txt";
|
std::string unameFileName = "/tmp/uname_version.txt";
|
||||||
// TODO: No -v flag for now. If the kernel version is used, need to cut off first few letters
|
// TODO: No -v flag for now. If the kernel version is used, need to cut off first few letters
|
||||||
std::string unameCmd = "uname -mnrso > " + unameFileName;
|
std::string unameCmd = "uname -mnrso > " + unameFileName;
|
||||||
@ -634,9 +635,9 @@ ReturnValue_t CoreController::initVersionFile() {
|
|||||||
std::string fullObswVersionString = "OBSW: v" + std::to_string(SW_VERSION) + "." +
|
std::string fullObswVersionString = "OBSW: v" + std::to_string(SW_VERSION) + "." +
|
||||||
std::to_string(SW_SUBVERSION) + "." +
|
std::to_string(SW_SUBVERSION) + "." +
|
||||||
std::to_string(SW_REVISION);
|
std::to_string(SW_REVISION);
|
||||||
std::string fullFsfwVersionString = "FSFW: v" + std::to_string(FSFW_VERSION) + "." +
|
char versionString[16] = {};
|
||||||
std::to_string(FSFW_SUBVERSION) + "." +
|
fsfw::FSFW_VERSION.getVersion(versionString, sizeof(versionString));
|
||||||
std::to_string(FSFW_REVISION);
|
std::string fullFsfwVersionString = "FSFW: v" + std::string(versionString);
|
||||||
std::string systemString = "System: " + unameLine;
|
std::string systemString = "System: " + unameLine;
|
||||||
std::string mountPrefix = SdCardManager::instance()->getCurrentMountPrefix();
|
std::string mountPrefix = SdCardManager::instance()->getCurrentMountPrefix();
|
||||||
std::string versionFilePath = mountPrefix + VERSION_FILE;
|
std::string versionFilePath = mountPrefix + VERSION_FILE;
|
||||||
|
@ -6,10 +6,10 @@
|
|||||||
|
|
||||||
#include <cstddef>
|
#include <cstddef>
|
||||||
|
|
||||||
|
#include "CoreDefinitions.h"
|
||||||
#include "bsp_q7s/memory/SdCardManager.h"
|
#include "bsp_q7s/memory/SdCardManager.h"
|
||||||
#include "events/subsystemIdRanges.h"
|
#include "events/subsystemIdRanges.h"
|
||||||
#include "fsfw/controller/ExtendedControllerBase.h"
|
#include "fsfw/controller/ExtendedControllerBase.h"
|
||||||
#include "CoreDefinitions.h"
|
|
||||||
|
|
||||||
class Timer;
|
class Timer;
|
||||||
class SdCardManager;
|
class SdCardManager;
|
||||||
|
@ -8,18 +8,13 @@ namespace core {
|
|||||||
static const uint8_t HK_SET_ENTRIES = 3;
|
static const uint8_t HK_SET_ENTRIES = 3;
|
||||||
static const uint32_t HK_SET_ID = 5;
|
static const uint32_t HK_SET_ID = 5;
|
||||||
|
|
||||||
enum PoolIds {
|
enum PoolIds { TEMPERATURE, PS_VOLTAGE, PL_VOLTAGE };
|
||||||
TEMPERATURE,
|
|
||||||
PS_VOLTAGE,
|
|
||||||
PL_VOLTAGE
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Set storing OBC internal housekeeping data
|
* @brief Set storing OBC internal housekeeping data
|
||||||
*/
|
*/
|
||||||
class HkSet : public StaticLocalDataSet<HK_SET_ENTRIES> {
|
class HkSet : public StaticLocalDataSet<HK_SET_ENTRIES> {
|
||||||
public:
|
public:
|
||||||
|
|
||||||
HkSet(HasLocalDataPoolIF* owner) : StaticLocalDataSet(owner, HK_SET_ID) {}
|
HkSet(HasLocalDataPoolIF* owner) : StaticLocalDataSet(owner, HK_SET_ID) {}
|
||||||
|
|
||||||
HkSet(object_id_t objectId) : StaticLocalDataSet(sid_t(objectId, HK_SET_ID)) {}
|
HkSet(object_id_t objectId) : StaticLocalDataSet(sid_t(objectId, HK_SET_ID)) {}
|
||||||
@ -32,13 +27,13 @@ class HkSet : public StaticLocalDataSet<HK_SET_ENTRIES> {
|
|||||||
lp_var_t<float> plVoltage = lp_var_t<float>(sid.objectId, PoolIds::PL_VOLTAGE, this);
|
lp_var_t<float> plVoltage = lp_var_t<float>(sid.objectId, PoolIds::PL_VOLTAGE, this);
|
||||||
|
|
||||||
void printSet() {
|
void printSet() {
|
||||||
sif::info << "HkSet::printSet: On-chip temperature: " << this->temperature
|
sif::info << "HkSet::printSet: On-chip temperature: " << this->temperature << " °C"
|
||||||
<< " °C" << std::endl;
|
<< std::endl;
|
||||||
sif::info << "HkSet::printSet: PS voltage: " << this->psVoltage << " mV" << std::endl;
|
sif::info << "HkSet::printSet: PS voltage: " << this->psVoltage << " mV" << std::endl;
|
||||||
sif::info << "HkSet::printSet: PL voltage: " << this->plVoltage << " mV" << std::endl;
|
sif::info << "HkSet::printSet: PL voltage: " << this->plVoltage << " mV" << std::endl;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
} // namespace core
|
||||||
|
|
||||||
#endif /* BSP_Q7S_CORE_COREDEFINITIONS_H_ */
|
#endif /* BSP_Q7S_CORE_COREDEFINITIONS_H_ */
|
||||||
|
@ -5,6 +5,7 @@ class LinuxLibgpioIF;
|
|||||||
class UartComIF;
|
class UartComIF;
|
||||||
class SpiComIF;
|
class SpiComIF;
|
||||||
class I2cComIF;
|
class I2cComIF;
|
||||||
|
class PowerSwitchIF;
|
||||||
|
|
||||||
namespace ObjectFactory {
|
namespace ObjectFactory {
|
||||||
|
|
||||||
@ -13,13 +14,13 @@ void produce(void* args);
|
|||||||
|
|
||||||
void createCommunicationInterfaces(LinuxLibgpioIF** gpioComIF, UartComIF** uartComIF,
|
void createCommunicationInterfaces(LinuxLibgpioIF** gpioComIF, UartComIF** uartComIF,
|
||||||
SpiComIF** spiComIF, I2cComIF** i2cComIF);
|
SpiComIF** spiComIF, I2cComIF** i2cComIF);
|
||||||
|
void createPcduComponents(LinuxLibgpioIF* gpioComIF, PowerSwitchIF** pwrSwitcher);
|
||||||
void createPlPcduComponents(LinuxLibgpioIF* gpioComIF, SpiComIF* spiComIF);
|
void createPlPcduComponents(LinuxLibgpioIF* gpioComIF, SpiComIF* spiComIF);
|
||||||
void createTmpComponents();
|
void createTmpComponents();
|
||||||
void createPcduComponents(LinuxLibgpioIF* gpioComIF);
|
|
||||||
void createRadSensorComponent(LinuxLibgpioIF* gpioComIF);
|
void createRadSensorComponent(LinuxLibgpioIF* gpioComIF);
|
||||||
void createSunSensorComponents(LinuxLibgpioIF* gpioComIF, SpiComIF* spiComIF);
|
void createSunSensorComponents(LinuxLibgpioIF* gpioComIF, SpiComIF* spiComIF);
|
||||||
void createAcsBoardComponents(LinuxLibgpioIF* gpioComIF, UartComIF* uartComIF);
|
void createAcsBoardComponents(LinuxLibgpioIF* gpioComIF, UartComIF* uartComIF,
|
||||||
|
PowerSwitchIF* pwrSwitcher);
|
||||||
void createHeaterComponents();
|
void createHeaterComponents();
|
||||||
void createSolarArrayDeploymentComponents();
|
void createSolarArrayDeploymentComponents();
|
||||||
void createSyrlinksComponents();
|
void createSyrlinksComponents();
|
||||||
|
2
fsfw
2
fsfw
@ -1 +1 @@
|
|||||||
Subproject commit 47d158156b9efa0edbca9b3a1694f4132b0b30e5
|
Subproject commit 5ca5fe4040189ff8bc6553a9febdb6ffdeb73fe3
|
Loading…
Reference in New Issue
Block a user