From 62bbc6de8cb45509b622257a96bbe5e8c5201679 Mon Sep 17 00:00:00 2001 From: Charles Rothbaum <33434729+mynamecharlesrothbaum@users.noreply.github.com> Date: Mon, 8 Apr 2024 20:43:55 -0600 Subject: [PATCH 1/4] force arm btn --- .idea/compiler.xml | 2 +- .idea/deploymentTargetDropDown.xml | 10 ++++++++++ .idea/gradle.xml | 5 ++--- .idea/migrations.xml | 10 ++++++++++ .idea/misc.xml | 2 +- .../com/chobitsfan/minigcs/MainActivity.java | 2 ++ .../com/chobitsfan/minigcs/MyMavlinkWork.java | 18 ++++++++++++++++++ app/src/main/res/layout/activity_main.xml | 6 +++--- 8 files changed, 47 insertions(+), 8 deletions(-) create mode 100644 .idea/deploymentTargetDropDown.xml create mode 100644 .idea/migrations.xml diff --git a/.idea/compiler.xml b/.idea/compiler.xml index fb7f4a8..b589d56 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml new file mode 100644 index 0000000..0c0c338 --- /dev/null +++ b/.idea/deploymentTargetDropDown.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/gradle.xml b/.idea/gradle.xml index a0de2a1..0897082 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -4,16 +4,15 @@ diff --git a/.idea/migrations.xml b/.idea/migrations.xml new file mode 100644 index 0000000..f8051a6 --- /dev/null +++ b/.idea/migrations.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 54d5acd..0ad17cb 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,7 +1,7 @@ - + diff --git a/app/src/main/java/com/chobitsfan/minigcs/MainActivity.java b/app/src/main/java/com/chobitsfan/minigcs/MainActivity.java index 4655be5..300eb26 100644 --- a/app/src/main/java/com/chobitsfan/minigcs/MainActivity.java +++ b/app/src/main/java/com/chobitsfan/minigcs/MainActivity.java @@ -123,6 +123,8 @@ public void onRTLBtn(View view) { mav_work.setModeRTL(); } + public void onArmBtn(View view) {mav_work.forceArm();} + public void onRebootBtn(View view) { long ts = SystemClock.elapsedRealtime(); if (ts - reboot_ts > 3000) { diff --git a/app/src/main/java/com/chobitsfan/minigcs/MyMavlinkWork.java b/app/src/main/java/com/chobitsfan/minigcs/MyMavlinkWork.java index bd7ca2f..9547556 100644 --- a/app/src/main/java/com/chobitsfan/minigcs/MyMavlinkWork.java +++ b/app/src/main/java/com/chobitsfan/minigcs/MyMavlinkWork.java @@ -118,6 +118,24 @@ public void writeParam(String name, float val) { } } + public void forceArm() { + try { + // Create a CommandLong MAVLink message to arm the vehicle. + // param1 = 1 (to arm the vehicle), + // param2 = 21196 (magic number to bypass pre-arm checks and force arm) + CommandLong command = CommandLong.builder() + .command(MavCmd.MAV_CMD_COMPONENT_ARM_DISARM) + .param1(1) + .param2(21196) + .build(); + + // Send the command to the vehicle. + mav_conn.send1(255, 0, command); + } catch (IOException e) { + if (MyAppConfig.DEBUG) Log.d("chobits", "Failed to send force arm command: " + e.getMessage()); + } + } + public void rebootFC() { try { mav_conn.send1(255, 0, CommandLong.builder().command(MavCmd.MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN).param1(1).build()); diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 7a15a75..2177d10 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -106,11 +106,11 @@ android:text="Land" />