Commit f38fc465 authored by lm's avatar lm

write read eeprom added, actions updated

parent 0566491b
...@@ -661,10 +661,20 @@ void UAS::requestParameters() ...@@ -661,10 +661,20 @@ void UAS::requestParameters()
sendMessage(msg); sendMessage(msg);
} }
void UAS::writeParameters() void UAS::writeParametersToStorage()
{ {
//mavlink_message_t msg; mavlink_message_t msg;
qDebug() << __FILE__ << __LINE__ << __func__ << "IS NOT IMPLEMENTED!"; // TODO Replace MG System ID with static function call and allow to change ID in GUI
mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(),MAV_COMP_ID_IMU, (uint8_t)MAV_ACTION_STORAGE_WRITE);
sendMessage(msg);
}
void UAS::readParametersFromStorage()
{
mavlink_message_t msg;
// TODO Replace MG System ID with static function call and allow to change ID in GUI
mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), MAV_COMP_ID_IMU,(uint8_t)MAV_ACTION_STORAGE_READ);
sendMessage(msg);
} }
void UAS::enableAllDataTransmission(bool enabled) void UAS::enableAllDataTransmission(bool enabled)
...@@ -929,7 +939,7 @@ void UAS::launch() ...@@ -929,7 +939,7 @@ void UAS::launch()
{ {
mavlink_message_t msg; mavlink_message_t msg;
// TODO Replace MG System ID with static function call and allow to change ID in GUI // TODO Replace MG System ID with static function call and allow to change ID in GUI
mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(),(uint8_t)MAV_ACTION_LAUNCH); mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), MAV_COMP_ID_IMU, (uint8_t)MAV_ACTION_LAUNCH);
// Send message twice to increase chance of reception // Send message twice to increase chance of reception
sendMessage(msg); sendMessage(msg);
sendMessage(msg); sendMessage(msg);
...@@ -943,7 +953,7 @@ void UAS::enable_motors() ...@@ -943,7 +953,7 @@ void UAS::enable_motors()
{ {
mavlink_message_t msg; mavlink_message_t msg;
// TODO Replace MG System ID with static function call and allow to change ID in GUI // TODO Replace MG System ID with static function call and allow to change ID in GUI
mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(),(uint8_t)MAV_ACTION_MOTORS_START); mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), MAV_COMP_ID_IMU, (uint8_t)MAV_ACTION_MOTORS_START);
// Send message twice to increase chance of reception // Send message twice to increase chance of reception
sendMessage(msg); sendMessage(msg);
sendMessage(msg); sendMessage(msg);
...@@ -957,7 +967,7 @@ void UAS::disable_motors() ...@@ -957,7 +967,7 @@ void UAS::disable_motors()
{ {
mavlink_message_t msg; mavlink_message_t msg;
// TODO Replace MG System ID with static function call and allow to change ID in GUI // TODO Replace MG System ID with static function call and allow to change ID in GUI
mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(),(uint8_t)MAV_ACTION_MOTORS_STOP); mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), MAV_COMP_ID_IMU, (uint8_t)MAV_ACTION_MOTORS_STOP);
// Send message twice to increase chance of reception // Send message twice to increase chance of reception
sendMessage(msg); sendMessage(msg);
sendMessage(msg); sendMessage(msg);
...@@ -1069,7 +1079,7 @@ void UAS::halt() ...@@ -1069,7 +1079,7 @@ void UAS::halt()
{ {
mavlink_message_t msg; mavlink_message_t msg;
// TODO Replace MG System ID with static function call and allow to change ID in GUI // TODO Replace MG System ID with static function call and allow to change ID in GUI
mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), (int)MAV_ACTION_HALT); mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), MAV_COMP_ID_IMU, (int)MAV_ACTION_HALT);
// Send message twice to increase chance of reception // Send message twice to increase chance of reception
sendMessage(msg); sendMessage(msg);
sendMessage(msg); sendMessage(msg);
...@@ -1079,7 +1089,7 @@ void UAS::go() ...@@ -1079,7 +1089,7 @@ void UAS::go()
{ {
mavlink_message_t msg; mavlink_message_t msg;
// TODO Replace MG System ID with static function call and allow to change ID in GUI // TODO Replace MG System ID with static function call and allow to change ID in GUI
mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), (int)MAV_ACTION_CONTINUE); mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), MAV_COMP_ID_IMU, (int)MAV_ACTION_CONTINUE);
// Send message twice to increase chance of reception // Send message twice to increase chance of reception
sendMessage(msg); sendMessage(msg);
sendMessage(msg); sendMessage(msg);
...@@ -1090,7 +1100,7 @@ void UAS::home() ...@@ -1090,7 +1100,7 @@ void UAS::home()
{ {
mavlink_message_t msg; mavlink_message_t msg;
// TODO Replace MG System ID with static function call and allow to change ID in GUI // TODO Replace MG System ID with static function call and allow to change ID in GUI
mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), (int)MAV_ACTION_RETURN); mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), MAV_COMP_ID_IMU, (int)MAV_ACTION_RETURN);
// Send message twice to increase chance of reception // Send message twice to increase chance of reception
sendMessage(msg); sendMessage(msg);
sendMessage(msg); sendMessage(msg);
...@@ -1104,7 +1114,7 @@ void UAS::emergencySTOP() ...@@ -1104,7 +1114,7 @@ void UAS::emergencySTOP()
{ {
mavlink_message_t msg; mavlink_message_t msg;
// TODO Replace MG System ID with static function call and allow to change ID in GUI // TODO Replace MG System ID with static function call and allow to change ID in GUI
mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), (int)MAV_ACTION_EMCY_LAND); mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), MAV_COMP_ID_IMU, (int)MAV_ACTION_EMCY_LAND);
// Send message twice to increase chance of reception // Send message twice to increase chance of reception
sendMessage(msg); sendMessage(msg);
sendMessage(msg); sendMessage(msg);
...@@ -1135,7 +1145,7 @@ bool UAS::emergencyKILL() ...@@ -1135,7 +1145,7 @@ bool UAS::emergencyKILL()
{ {
mavlink_message_t msg; mavlink_message_t msg;
// TODO Replace MG System ID with static function call and allow to change ID in GUI // TODO Replace MG System ID with static function call and allow to change ID in GUI
mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), (int)MAV_ACTION_EMCY_KILL); mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), MAV_COMP_ID_IMU, (int)MAV_ACTION_EMCY_KILL);
// Send message twice to increase chance of reception // Send message twice to increase chance of reception
sendMessage(msg); sendMessage(msg);
sendMessage(msg); sendMessage(msg);
...@@ -1164,7 +1174,7 @@ void UAS::shutdown() ...@@ -1164,7 +1174,7 @@ void UAS::shutdown()
// If the active UAS is set, execute command // If the active UAS is set, execute command
mavlink_message_t msg; mavlink_message_t msg;
// TODO Replace MG System ID with static function call and allow to change ID in GUI // TODO Replace MG System ID with static function call and allow to change ID in GUI
mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), (int)MAV_ACTION_SHUTDOWN); mavlink_msg_action_pack(MG::SYSTEM::ID, MG::SYSTEM::COMPID, &msg, this->getUASID(), MAV_COMP_ID_IMU,(int)MAV_ACTION_SHUTDOWN);
// Send message twice to increase chance of reception // Send message twice to increase chance of reception
sendMessage(msg); sendMessage(msg);
sendMessage(msg); sendMessage(msg);
......
...@@ -200,7 +200,9 @@ public slots: ...@@ -200,7 +200,9 @@ public slots:
void setParameter(int component, QString id, float value); void setParameter(int component, QString id, float value);
/** @brief Write parameters to permanent storage */ /** @brief Write parameters to permanent storage */
void writeParameters(); void writeParametersToStorage();
/** @brief Read parameters from permanent storage */
void readParametersFromStorage();
void enableAllDataTransmission(bool enabled); void enableAllDataTransmission(bool enabled);
void enableRawSensorDataTransmission(bool enabled); void enableRawSensorDataTransmission(bool enabled);
......
...@@ -173,7 +173,9 @@ public slots: ...@@ -173,7 +173,9 @@ public slots:
/** @brief Request all onboard parameters of all components */ /** @brief Request all onboard parameters of all components */
virtual void requestParameters() = 0; virtual void requestParameters() = 0;
/** @brief Write parameter to permanent storage */ /** @brief Write parameter to permanent storage */
virtual void writeParameters() = 0; virtual void writeParametersToStorage() = 0;
/** @brief Read parameter from permanent storage */
virtual void readParametersFromStorage() = 0;
/** @brief Set a system parameter /** @brief Set a system parameter
* @param component ID of the system component to write the parameter to * @param component ID of the system component to write the parameter to
* @param id String identifying the parameter * @param id String identifying the parameter
......
...@@ -64,18 +64,22 @@ QGCParamWidget::QGCParamWidget(UASInterface* uas, QWidget *parent) : ...@@ -64,18 +64,22 @@ QGCParamWidget::QGCParamWidget(UASInterface* uas, QWidget *parent) :
horizontalLayout->setSizeConstraint(QLayout::SetMinimumSize); horizontalLayout->setSizeConstraint(QLayout::SetMinimumSize);
horizontalLayout->addWidget(tree, 0, 0, 1, 3); horizontalLayout->addWidget(tree, 0, 0, 1, 3);
QPushButton* readButton = new QPushButton(tr("Read")); QPushButton* refreshButton = new QPushButton(tr("Refresh"));
connect(readButton, SIGNAL(clicked()), this, SLOT(requestParameterList())); connect(refreshButton, SIGNAL(clicked()), this, SLOT(requestParameterList()));
horizontalLayout->addWidget(readButton, 1, 0); horizontalLayout->addWidget(refreshButton, 1, 0);
QPushButton* setButton = new QPushButton(tr("Set (RAM)")); QPushButton* setButton = new QPushButton(tr("Transmit"));
connect(setButton, SIGNAL(clicked()), this, SLOT(setParameters())); connect(setButton, SIGNAL(clicked()), this, SLOT(setParameters()));
horizontalLayout->addWidget(setButton, 1, 1); horizontalLayout->addWidget(setButton, 1, 1);
QPushButton* writeButton = new QPushButton(tr("Write (Disk)")); QPushButton* writeButton = new QPushButton(tr("Write (ROM)"));
connect(writeButton, SIGNAL(clicked()), this, SLOT(writeParameters())); connect(writeButton, SIGNAL(clicked()), this, SLOT(writeParameters()));
horizontalLayout->addWidget(writeButton, 1, 2); horizontalLayout->addWidget(writeButton, 1, 2);
QPushButton* readButton = new QPushButton(tr("Read (ROM)"));
connect(readButton, SIGNAL(clicked()), this, SLOT(readParameters()));
horizontalLayout->addWidget(readButton, 2, 2);
QPushButton* loadFileButton = new QPushButton(tr("Load File")); QPushButton* loadFileButton = new QPushButton(tr("Load File"));
connect(loadFileButton, SIGNAL(clicked()), this, SLOT(loadParameters())); connect(loadFileButton, SIGNAL(clicked()), this, SLOT(loadParameters()));
horizontalLayout->addWidget(loadFileButton, 2, 0); horizontalLayout->addWidget(loadFileButton, 2, 0);
...@@ -432,7 +436,12 @@ void QGCParamWidget::setParameters() ...@@ -432,7 +436,12 @@ void QGCParamWidget::setParameters()
*/ */
void QGCParamWidget::writeParameters() void QGCParamWidget::writeParameters()
{ {
mav->writeParameters(); mav->writeParametersToStorage();
}
void QGCParamWidget::readParameters()
{
mav->readParametersFromStorage();
} }
/** /**
......
...@@ -65,6 +65,8 @@ public slots: ...@@ -65,6 +65,8 @@ public slots:
void setParameters(); void setParameters();
/** @brief Write the current parameters to permanent storage (EEPROM/HDD) */ /** @brief Write the current parameters to permanent storage (EEPROM/HDD) */
void writeParameters(); void writeParameters();
/** @brief Read the parameters from permanent storage to RAM */
void readParameters();
/** @brief Clear the parameter list */ /** @brief Clear the parameter list */
void clear(); void clear();
/** @brief Update when user changes parameters */ /** @brief Update when user changes parameters */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment