From 7d464910748f4ea61ac314865e7e67c0c4ec38d7 Mon Sep 17 00:00:00 2001 From: Thomas Gubler Date: Mon, 30 Dec 2013 22:28:07 +0100 Subject: [PATCH 1/3] flightgear debug output --- src/comm/QGCFlightGearLink.cc | 25 +++++++++++++++++++++++++ src/comm/QGCFlightGearLink.h | 2 ++ 2 files changed, 27 insertions(+) diff --git a/src/comm/QGCFlightGearLink.cc b/src/comm/QGCFlightGearLink.cc index 7926fa2..e9be433 100644 --- a/src/comm/QGCFlightGearLink.cc +++ b/src/comm/QGCFlightGearLink.cc @@ -625,6 +625,8 @@ bool QGCFlightGearLink::connectSimulation() // qDebug() << "STARTING: " << processTerraSync << terraSyncArguments; process->start(processFgfs, flightGearArguments); +// connect (process, SIGNAL(readyReadStandardOutput()), this, SLOT(printFgfsOutput())); +// connect (process, SIGNAL(readyReadStandardError()), this, SLOT(printFgfsError())); @@ -665,6 +667,29 @@ void QGCFlightGearLink::printTerraSyncError() } } +void QGCFlightGearLink::printFgfsOutput() +{ + qDebug() << "fgfs stdout:"; + QByteArray byteArray = process->readAllStandardOutput(); + QStringList strLines = QString(byteArray).split("\n"); + + foreach (QString line, strLines){ + qDebug() << line; + } +} + +void QGCFlightGearLink::printFgfsError() +{ + qDebug() << "fgfs stderr:"; + + QByteArray byteArray = process->readAllStandardError(); + QStringList strLines = QString(byteArray).split("\n"); + + foreach (QString line, strLines){ + qDebug() << line; + } +} + /** * @brief Set the startup arguments used to start flightgear * diff --git a/src/comm/QGCFlightGearLink.h b/src/comm/QGCFlightGearLink.h index d043d3c..27ba6d2 100644 --- a/src/comm/QGCFlightGearLink.h +++ b/src/comm/QGCFlightGearLink.h @@ -131,6 +131,8 @@ public slots: void printTerraSyncOutput(); void printTerraSyncError(); + void printFgfsOutput(); + void printFgfsError(); void setStartupArguments(QString startupArguments); protected: From 317901401121d291029112cfcd4ec791ac74ba5e Mon Sep 17 00:00:00 2001 From: Thomas Gubler Date: Mon, 30 Dec 2013 23:37:22 +0100 Subject: [PATCH 2/3] flightgear: prevent aircraft from flying with no input --- src/comm/QGCFlightGearLink.cc | 2 +- src/ui/QGCHilFlightGearConfiguration.ui | 15 +++------------ 2 files changed, 4 insertions(+), 13 deletions(-) diff --git a/src/comm/QGCFlightGearLink.cc b/src/comm/QGCFlightGearLink.cc index e9be433..d110aa0 100644 --- a/src/comm/QGCFlightGearLink.cc +++ b/src/comm/QGCFlightGearLink.cc @@ -598,7 +598,7 @@ bool QGCFlightGearLink::connectSimulation() } flightGearArguments << QString("--lat=%1").arg(UASManager::instance()->getHomeLatitude()); flightGearArguments << QString("--lon=%1").arg(UASManager::instance()->getHomeLongitude()); - flightGearArguments << QString("--altitude=%1").arg(UASManager::instance()->getHomeAltitude()); +// flightGearArguments << QString("--altitude=%1").arg(UASManager::instance()->getHomeAltitude()); // Add new argument with this: flightGearArguments << ""; //flightGearArguments << QString("--aircraft=%2").arg(aircraft); diff --git a/src/ui/QGCHilFlightGearConfiguration.ui b/src/ui/QGCHilFlightGearConfiguration.ui index d06f174..b27ff74 100644 --- a/src/ui/QGCHilFlightGearConfiguration.ui +++ b/src/ui/QGCHilFlightGearConfiguration.ui @@ -7,7 +7,7 @@ 0 0 237 - 204 + 209 @@ -26,16 +26,7 @@ false - - 0 - - - 0 - - - 0 - - + 0 @@ -77,7 +68,7 @@ - --in-air --roll=0 --pitch=0 --vc=90 --heading=300 --timeofday=noon --disable-hud-3d --disable-fullscreen --geometry=400x300 --disable-anti-alias-hud --wind=0@0 --turbulence=0.0 --prop:/sim/frame-rate-throttle-hz=30 --control=mouse --disable-intro-music --disable-sound --disable-random-objects --disable-ai-models --shading-flat --fog-disable --disable-specular-highlight --disable-random-objects --disable-panel --disable-clouds --fdm=jsb --units-meters --prop:/engines/engine/running=true + --roll=0 --pitch=0 --vc=0 --heading=300 --timeofday=noon --disable-hud-3d --disable-fullscreen --geometry=400x300 --disable-anti-alias-hud --wind=0@0 --turbulence=0.0 --prop:/sim/frame-rate-throttle-hz=30 --control=mouse --disable-intro-music --disable-sound --disable-random-objects --disable-ai-models --shading-flat --fog-disable --disable-specular-highlight --disable-random-objects --disable-panel --disable-clouds --fdm=jsb --units-meters --prop:/engines/engine/running=true From 0c985a679d0aa14ce9f54952b664cd84e3c90891 Mon Sep 17 00:00:00 2001 From: Thomas Gubler Date: Tue, 31 Dec 2013 00:00:50 +0100 Subject: [PATCH 3/3] flightgear: add comment about missing altitude setting --- src/comm/QGCFlightGearLink.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/comm/QGCFlightGearLink.cc b/src/comm/QGCFlightGearLink.cc index d110aa0..d757706 100644 --- a/src/comm/QGCFlightGearLink.cc +++ b/src/comm/QGCFlightGearLink.cc @@ -598,7 +598,10 @@ bool QGCFlightGearLink::connectSimulation() } flightGearArguments << QString("--lat=%1").arg(UASManager::instance()->getHomeLatitude()); flightGearArguments << QString("--lon=%1").arg(UASManager::instance()->getHomeLongitude()); -// flightGearArguments << QString("--altitude=%1").arg(UASManager::instance()->getHomeAltitude()); + //The altitude is not set because an altitude not equal to the ground altitude leads to a non-zero default throttle in flightgear + //Without the altitude-setting the aircraft is positioned on the ground + //flightGearArguments << QString("--altitude=%1").arg(UASManager::instance()->getHomeAltitude()); + // Add new argument with this: flightGearArguments << ""; //flightGearArguments << QString("--aircraft=%2").arg(aircraft);