V1.08 déployée

This commit is contained in:
2025-05-03 20:26:14 -04:00
parent e298577c2f
commit c0dd8562fb
24 changed files with 1623 additions and 527 deletions
+41 -20
View File
@@ -28,6 +28,11 @@ COtarcikCan::COtarcikCan(QObject *parent) : QObject(parent)
connect(mWatchdogTimer,&QTimer::timeout,this,&COtarcikCan::WatchdogUpdateTimerExpired);
mWatchdogTimer->setSingleShot(false);
mWatchdogTimer->setInterval(1000);
mMQTTDataTransmitTimer = new QTimer;
connect(mMQTTDataTransmitTimer,&QTimer::timeout,this,&COtarcikCan::MQTTDataTransmitTimerExpired);
mMQTTDataTransmitTimer->setInterval(10000);
mMQTTDataTransmitTimer->setSingleShot(false);
}
COtarcikCan::~COtarcikCan()
@@ -93,19 +98,20 @@ int COtarcikCan::Start()
mMainWindow.mDataLoggingSettingsPage->SetCloudParams(mCloudLoggingParamsList);
for(int i = 0; i < mCloudLoggingParamsList->size(); i++)
{
CMQTTClientWrapper *NewMQTTWrapper = new CMQTTClientWrapper;
NewMQTTWrapper->mProgramPtr = this;
NewMQTTWrapper->SetMQTTParams(mCloudLoggingParamsList->at(i));
NewMQTTWrapper->SetCANDevicesList(&mCANDevicesList);
if(mCloudLoggingParamsList->at(i)->mMQTTBrokerActive == true)
{
CMQTTClientWrapper *NewMQTTWrapper = new CMQTTClientWrapper;
NewMQTTWrapper->mProgramPtr = this;
NewMQTTWrapper->SetMQTTParams(mCloudLoggingParamsList->at(i));
NewMQTTWrapper->SetCANDevicesList(&mCANDevicesList);
#ifdef ENABLE_CHIPSET_DRIVER
NewMQTTWrapper->SetCPUInterface(&mCPUInterface);
NewMQTTWrapper->SetCPUInterface(&mCPUInterface);
#endif
NewMQTTWrapper->SetMQTTServerPresenceCANBit(mSystemConfig.GetDeviceDetectionConfig()->mMQTTDetectionCANStatusBit);
mCANBusMQTTClientList.append(NewMQTTWrapper);
NewMQTTWrapper->SetMQTTServerPresenceCANBit(mSystemConfig.GetDeviceDetectionConfig()->mMQTTDetectionCANStatusBit);
mCANBusMQTTClientList.append(NewMQTTWrapper);
}
}
// mCANBusMQTTClient.SetMQTTParams(mCloudLoggingParamsList->at(0)); //TODO: Fix that
// mCANBusMQTTClient.SetCANDevicesList(&mCANDevicesList);
mMQTTDataTransmitTimer->setInterval(mCloudLoggingParamsList->at(0)->mMQTTTransmitTimeout); //Use the first
mGeneralSystemParams = *mSystemConfig.GetGeneralSystemSettings();
mMainWindow.mDataLoggingSettingsPage->SetGeneralSettingsParams(&mGeneralSystemParams);
@@ -156,12 +162,11 @@ int COtarcikCan::Start()
CGeneralMessagesLogDispatcher::instance()->AddLogMessage(QString("Démarrage du logiciel OtarcikCAN"),"CPCANInterface");
// mCANBusMQTTClient.ConnectToBroker();
//mCANBusMQTTClient.StartMQTTClient();
for(int i = 0; i < mCANBusMQTTClientList.size(); i++)
{
mCANBusMQTTClientList.at(i)->StartMQTTClient();
}
mMQTTDataTransmitTimer->start();
mMainWindow.mCANbusSettingsPage->SetDevicesList(&mCANDevicesList);
connect(&mInternetMonitor,&CInternetMonitor::InternetStateChanged,mMainWindow.mGeneralStatusPage,&CGeneralStatusPage::InternetStatusChanged);
@@ -256,17 +261,20 @@ int COtarcikCan::SaveCloudLoggingConfigRequest(QList<CCloudParams *> *CloudParam
}
for(int i = 0; i < CloudParams->size(); i++)
{
CMQTTClientWrapper *NewMQTTWrapper = new CMQTTClientWrapper;
NewMQTTWrapper->mProgramPtr = this;
NewMQTTWrapper->SetMQTTParams(CloudParams->at(i));
NewMQTTWrapper->SetCANDevicesList(&mCANDevicesList);
if(mCloudLoggingParamsList->at(i)->mMQTTBrokerActive == true)
{
CMQTTClientWrapper *NewMQTTWrapper = new CMQTTClientWrapper;
NewMQTTWrapper->mProgramPtr = this;
NewMQTTWrapper->SetMQTTParams(CloudParams->at(i));
NewMQTTWrapper->SetCANDevicesList(&mCANDevicesList);
#ifdef ENABLE_CHIPSET_DRIVER
NewMQTTWrapper->SetCPUInterface(&mCPUInterface);
NewMQTTWrapper->SetCPUInterface(&mCPUInterface);
#endif
NewMQTTWrapper->SetMQTTServerPresenceCANBit(mSystemConfig.GetDeviceDetectionConfig()->mMQTTDetectionCANStatusBit);
mCANBusMQTTClientList.append(NewMQTTWrapper);
NewMQTTWrapper->SetMQTTServerPresenceCANBit(mSystemConfig.GetDeviceDetectionConfig()->mMQTTDetectionCANStatusBit);
mCANBusMQTTClientList.append(NewMQTTWrapper);
NewMQTTWrapper->StartMQTTClient();
NewMQTTWrapper->StartMQTTClient();
}
}
mSystemConfig.mDeviceDetectionParams.SetCANPresenceMonitors(mCANBusMQTTClientList.at(0),&mLANDevicesPresenceMonitor,&mInternetMonitor);
//mCANBusMQTTClient.SetMQTTParams(mCloudLoggingParamsList->at(0)); //TODO: Fix
@@ -383,6 +391,19 @@ int COtarcikCan::SaveCANWatchdogSettingsRequest(CCANWatchdogConfig *CANWatchdogC
return mSystemConfig.SaveConfig();
}
void COtarcikCan::MQTTDataTransmitTimerExpired()
{
QList<CMQTTMessage> *MQTTMsgList;
for(int i = 0; i< mCANDevicesList.size(); i++)
{
MQTTMsgList = mCANDevicesList.at(i)->GetMQTTMessagesList();
for(int i = 0; i < mCANBusMQTTClientList.size(); i++)
{
mCANBusMQTTClientList.at(i)->SendMQTTMessages(MQTTMsgList);
}
}
}
void COtarcikCan::WatchdogUpdateTimerExpired() //Time to kick the CPU watchdog
{
#ifdef ENABLE_CHIPSET_DRIVER