mirror of
https://bitbucket.org/librepilot/librepilot.git
synced 2025-02-21 11:54:15 +01:00
AndroidGCS: In the SystemAlarms display rank fields by alarm severity. Also
make hte fake telemetry object generate alarms.
This commit is contained in:
parent
a3038af4ad
commit
19b5cf4616
@ -1,12 +1,14 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent" >
|
android:layout_height="match_parent"
|
||||||
|
android:layout_gravity="center" >
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:id="@+id/system_alarms_status"
|
android:id="@+id/system_alarms_status"
|
||||||
android:layout_width="fill_parent"
|
android:layout_width="fill_parent"
|
||||||
android:layout_height="fill_parent" />
|
android:layout_height="fill_parent"
|
||||||
|
android:layout_gravity="center" />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
@ -228,6 +228,13 @@ public class OPTelemetryService extends Service {
|
|||||||
UAVDataObject attitudeActual = (UAVDataObject) objMngr.getObject("AttitudeActual");
|
UAVDataObject attitudeActual = (UAVDataObject) objMngr.getObject("AttitudeActual");
|
||||||
UAVDataObject homeLocation = (UAVDataObject) objMngr.getObject("HomeLocation");
|
UAVDataObject homeLocation = (UAVDataObject) objMngr.getObject("HomeLocation");
|
||||||
UAVDataObject positionActual = (UAVDataObject) objMngr.getObject("PositionActual");
|
UAVDataObject positionActual = (UAVDataObject) objMngr.getObject("PositionActual");
|
||||||
|
UAVDataObject systemAlarms = (UAVDataObject) objMngr.getObject("SystemAlarms");
|
||||||
|
|
||||||
|
systemAlarms.getField("Alarm").setValue("Warning",0);
|
||||||
|
systemAlarms.getField("Alarm").setValue("OK",1);
|
||||||
|
systemAlarms.getField("Alarm").setValue("Critical",2);
|
||||||
|
systemAlarms.getField("Alarm").setValue("Error",3);
|
||||||
|
systemAlarms.updated();
|
||||||
|
|
||||||
homeLocation.getField("Latitude").setDouble(379420315);
|
homeLocation.getField("Latitude").setDouble(379420315);
|
||||||
homeLocation.getField("Longitude").setDouble(-88330078);
|
homeLocation.getField("Longitude").setDouble(-88330078);
|
||||||
@ -250,6 +257,7 @@ public class OPTelemetryService extends Service {
|
|||||||
roll = (roll + 10) % 180;
|
roll = (roll + 10) % 180;
|
||||||
pitch = (pitch + 10) % 180;
|
pitch = (pitch + 10) % 180;
|
||||||
yaw = (yaw + 10) % 360;
|
yaw = (yaw + 10) % 360;
|
||||||
|
|
||||||
systemStats.updated();
|
systemStats.updated();
|
||||||
attitudeActual.updated();
|
attitudeActual.updated();
|
||||||
positionActual.updated();
|
positionActual.updated();
|
||||||
|
@ -20,9 +20,15 @@ public class SystemAlarmActivity extends ObjectManagerActivity {
|
|||||||
UAVObjectField a = obj.getField("Alarm");
|
UAVObjectField a = obj.getField("Alarm");
|
||||||
List<String> names = a.getElementNames();
|
List<String> names = a.getElementNames();
|
||||||
String contents = new String();
|
String contents = new String();
|
||||||
|
List <String> options = a.getOptions();
|
||||||
|
|
||||||
|
// Rank the alarms by order of severity, skip uninitialized
|
||||||
|
for (int j = options.size() - 1; j > 0; j--) {
|
||||||
for (int i = 0; i < names.size(); i++) {
|
for (int i = 0; i < names.size(); i++) {
|
||||||
|
if(a.getDouble(i) == j)
|
||||||
contents += names.get(i) + " : " + a.getValue(i).toString() + "\n";
|
contents += names.get(i) + " : " + a.getValue(i).toString() + "\n";
|
||||||
}
|
}
|
||||||
|
}
|
||||||
alarms.setText(contents);
|
alarms.setText(contents);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user