Ground Control Station for Android Devices

Related tags

App Tower
Overview

Build Status Issue Stats Issue Stats

Tower

Join the chat at https://gitter.im/DroidPlanner/Tower

Tower is a Ground Control Station (GCS) Android app built atop DroneKit-Android, for UAVs running Ardupilot software.

Google Play Store

Usage Guide

The wiki has some basic documentation (Help us by making it better!)

For help, visit the Tower Discuss forum.

Tower beta

Droidplanner 3.0 beta screenshot

The next version of Tower is under development, and we would love your help with beta testing. To join the beta:

  1. Access and download the beta through https://play.google.com/store/apps/details?id=org.droidplanner.android.beta.
  2. Post your feedback in the Tower Discuss forum. We want to hear what you think!

Contributing

Tower is in active development. If you would like to contribute to the project, see the Build Setup wiki page.

If you aren't a developer but want to help out, you can do so by improving the documentation in the Wiki or by writing user guides.

Comments
  •  BTRadio: BT re-connection fix + exeptions' msgs  - using service

    BTRadio: BT re-connection fix + exeptions' msgs - using service

    • BTRadio: BT re-connection problem solved, almost solved :)

    The current state of the code is the best I can do now. There are some Android BT stack issues involved here. The solution I used is told to work at about 75% re-connection tests. It seems it does, we can not get more...

    to-do: Add a message box to visualize BT stack problems, asking to reboot Drone BT module.

    opened by Paku- 83
  • Allow connection via USB to ardumega

    Allow connection via USB to ardumega

    Not everyone has Mavlink but they don't want to lug a laptop to the field to setup the ardumega, so if it is possible, could a USB link be implemented to allow direct connection to the board?

    opened by JaredReabow 54
  • DP2.0 Rc calibration

    DP2.0 Rc calibration

    ~~This is a work in progress~~ Work is now completed RC Configuration has 3 menus

    1. Calibration
    2. RC Failsafe
    3. RC Options

    configuration flow is now completed. moving into actual MAVLink parameter update.

    opened by azrin1972 50
  • DroidPlanner 3 name change: Tower

    DroidPlanner 3 name change: Tower

    Hi all, we're considering a name change for the DroidPlanner app for the Version 3 release. As of now, the new name under consideration is Tower (as in control tower).

    opened by m4gr3d 41
  • Thoughts on improving Waypoint Editor

    Thoughts on improving Waypoint Editor

    Just splitting #293.

    1. Clicking on a waypoint on the map or in the list should highlight the corresponding waypoint on the map or list
    2. ~~Show waypoint number inside or above pin~~ (Fixed by #299)
    3. ~~In waypoint list, long press to move waypoint, short press to open param dialogue~~ (Fixed by #299)
    4. ~~DO_JUMP is missing arguments--waypoint and duration~~ (Fixed by @azrin1972 on v1.0.1)
    5. ~~After moving waypoints in list, redo the numbering so that it's 1...n~~ (Fixed in #321)
    6. ~~Make the waypoint editor be able to expand and contract too save space on the screen.~~ (Fix in #299 by @azrin1972 )
    7. ~~Distance measurements while moving waypoints.~~ (Fixed in #328)
    8. ~~Total flight plan distance~~ (Fixed by #299)
    9. Total expected flight time (given distance and speed)
    10. ~~Increase column height of waypoint line items in left panel. Not very finger friendly on the nexus 7 v2.~~ (Fixed by #299)
    11. ~~Don't draw line from home to first waypoint (home may be unknown if planning while disconnected)~~ (Done in current master)
    12. Reduce the range of the altitude slider on the waypoint dialog. Hard to select practical multirotor heights (10m - 120m). Maybe make max expected altitude an option.
    13. ~~add delay parameter to waypoint~~ (in master, done by @azrin1972 )
    14. ~~add DO_CHANGE_SPEED nav command (in fact implement support and UI for all APM/ArduCopter supported nav commands)~~ (Fixed by #299)
    15. ~~ROI waypoints should be excluded from the flight path (no lines to / from)~~ (Fixed by #299)
    16. ~~Waypoint lables always displayed~~ (same as 2)
    17. ~~Use different markers for different functions in the mission (instead of just colored markers).~~ (Fixed in #328)
    18. Control to force an altitude change for all of the waypoints
    19. ~~Short click on map marker should open the correspondent waypoint dialog.~~ (Fixed by #299)
    20. Make altitude also editable via text by clicking in the texview on the right of the slider.
    opened by arthurbenemann 39
  •  DPv2 not showing flight modes

    DPv2 not showing flight modes

    So lets try to summarize the bug:

    • changing mode via tablet doesn't do nothing.
    • mode changes from other sorces (RC controller) are not reported in the app.
    • Everything else from the items above work as expected.
    • Both DP1 and DP2 are affected. Although we will focus on dp2.
    • The affected firmware is AC3.X.

    Please let me know if the description above has some error. And also, give the exact version code you have flashed on ardupilot.

    We will do our best to fix this issue, but first we need to be able to reproduce the bug. From what I understood this is a bug that's related only to DP working with the newer releases of arducopter. There is no relation to the tablets, board, telemetry. Just an incompatibility between firmware and software.

    I hijacked @Skipirate post to keep the bug description up here. Bellow is the original message.

    Hey guys, I have a apm 2.6 with the latest firmware on. In missionplanner everything works all just fine also with the 3dr module. Now i also got a samsung galaxy tab 3 where i have 3 planner installed on 1- droidplanner 2- droidplanner v2.0 3- andropilot In both the first and second app, i can plan missions,load them to the apm, the hub also works, batt voltage, arming... The thing that is not working on the tab is it doesnt reconize the flight modes or doesnt change them. Found a some videos where they can use kinda all the funtion. I also have been reading that it works with previous 2.9.1 firmware. and also some people who have this problem, but at the end theres not really a solution. Trying everything out i didnt tried the andropilot, started it and i just reconizes all right away, load the missions, ...... and it also changes the flight modes! So this one does work!! This tells me that its not the tablet, its not the new apm firmware, its not the 3dr module or connection. But i like the droidplanner the most i would be great if that one would work! anyone else has some idea or know some info about a fix... plz let me know https://www.youtube.com/watch?v=Mip6j9ZJTto grtz

    opened by Skipirate 35
  • ** DEVs talks ** not an issue ...

    ** DEVs talks ** not an issue ...

    Hi,

    As it seems we have serious political talks spread around various issues and pull requests, it could be a good idea to keep them in one place so it will be easier for all to follow.

    One of the most important is the master branch state after merging the NewUI.

    The situation now is that there are some pull req. hanging while @arthurbenemann is merging some new code or fast fixes. In the mean time @azrin asked to freeze the code /master or requests? I assume requests/.

    Let's discuss the problem using main strings.xml as the example:

    https://github.com/arthurbenemann/droidplanner/commits/master/DroidPlanner/res/values/strings.xml

    if you would look into the top commit you will see changes like adding 3 lines:

    https://github.com/arthurbenemann/droidplanner/commit/accdf2f3c840cf67ee553b56ee4c253f287c0e3a#diff-d968c6f4734582c451eeec7eb6a4f225R214

    +    <string name="screen_tuning">Tuning</string>
    
    +    <string name="screen_modes">Modes</string>
    
    +    <string name="screen_checklist">Checklist</string>
    

    it's simple for human but will confuse git as there is another request hanging (from me btw) changing the lines just above ("fasil" changed to "failsafe" or on other place "conect" to "connected")

    https://github.com/Paku-/droidplanner/commit/21c09735f8ba2512bc27074c566199ff8a7a1115

    So we (or @arthurbenemann ) will get conflict of he tries to merge this request. What's more he is not familiar with changes I made so could not be able to resolve it properly.

    So what is the solution ... 1.Do not allow requests to hang to long /so master is not changing in the mean time/. If it did read p.3 2.Do not keep your code locally to long as long running branches make mess .. 3. @arthurbenemann should force author to pull master and resolve conflicts locally before merging the request (it seems to me github includes them then automatically ) 4. keep requests merging based on their timebase (not so easy but possible).

    Finall /periodically synchronized/ request looks ugly:

    https://github.com/arthurbenemann/droidplanner/pull/446

    but by keeping it up to date and resolved (DEVMaster):

    https://github.com/arthurbenemann/droidplanner/network

    it should be easy for @arthurbenemann to merge with one click only ... (hope so)

    @azrin: freezing means all or most of hanging requests will produce conflicts ... so (as above) they should me merge fast or kept in synch with every @arthurbenemann's update ....

    sorry for long speech,hope it will help a little ...

    opened by Paku- 30
  • Non-Metric Support

    Non-Metric Support

    I know we are all used to metric units but not everyone who uses the app is. There could be several ListPreference options added to allow this change.

    UI improvement Feature 
    opened by TShapinsky 29
  • SysId not set correctly?

    SysId not set correctly?

    I have connected up version 0.9 of DroidPlanner to UDB4 running MatrixPilot, and using MAVlink version 1.0 protocol. The HUD and GPS display are working correctly.

    But the parameters window did not refresh correctly, until I commented out the code in MatrixPilot that checks that the MAVLink parameter message has been sent to the correct MAVLink sysid. (In our case sysid defaults to 055 for most of our users in their mavlink options).

    Here is a sample of the code that has been commented out from the handleMessage() section of our Mavlink code:-

    case MAVLINK_MSG_ID_PARAM_REQUEST_LIST:
            {
                mavlink_param_request_list_t packet;
                mavlink_msg_param_request_list_decode(handle_msg, &packet);
                //if (packet.target_system != mavlink_system.sysid) break;
                // Start sending parameters
                send_variables_counter = 0;
                mavlink_flags.mavlink_send_variables = 1;
                break;
            }
            case MAVLINK_MSG_ID_PARAM_REQUEST_READ:
            {
                mavlink_param_request_read_t packet;
                mavlink_msg_param_request_read_decode(handle_msg, &packet);
                //if (packet.target_system != mavlink_system.sysid) break;
                if ((packet.param_index >= 0)&& (packet.param_index <= count_of_parameters_list))
                {
                    send_by_index = packet.param_index;
                    mavlink_flags.mavlink_send_specific_variable = 1;
                }
                break;
            }
    

    So I seriously wonder whether DroidPlanner is taking account of the Sysid of the plane that is sending the parameters to ?

    Our full trunk code (which I was using) is at this location for this issue:- https://code.google.com/p/gentlenav/source/browse/trunk/MatrixPilot/MAVLink.c?r=2668#1175

    Best wishes, Pete

    Mavlink Issues 
    opened by phollands 27
  • telemetry signal drop on DP2

    telemetry signal drop on DP2

    Why telemetry rssi drop when I use dp2? When I use MP on laptop the telemetry signal was good still 80% at 400meters. But when connected on DP2, the telemetry rssi zerro only about 100meters distance.

    opened by detcord 26
  • Frame Orientation

    Frame Orientation

    Hi Arthur,

    the frame setup of my hexa is in + mode. Droidplanner shows a quad (which is fine) in + mode but the orientation is wrong. The following image shows the problem. orientation On the left side you see the setup of my copter on the right is what I see in Droidplanner. Is there some option to adjust orientation?

    Thanks, Thorsten

    opened by ghost 26
  • Improve GRADLE build Performance

    Improve GRADLE build Performance

    gradle caching. Shared caches can reduce the number of tasks you need to execute by reusing outputs already generated elsewhere. This can significantly decrease build times. We can enable this feature by setting org.gradle.caching=true.

    Gradle daemon. The Daemon is a long-lived process that help to avoid the cost of JVM startup for every build. Since Gradle 3.0, Gradle daemon is enabled by default. For an older version, you should enable it by setting org.gradle.daemon=true.

    ===================== If there are any inappropriate modifications in this PR, please give me a reply and I will change them.

    opened by hongdongni 0
  • Compiles for 3.6 beta 5, how to publish?

    Compiles for 3.6 beta 5, how to publish?

    Hi,

    I somehow managed to get the code compile for the current Android Studio. It works because I modify text strings and they appear changed :) The map seems to be not showing, maybe it's the issue of API key?

    I've changed lots of kotlin, gradle, sdk, multidex versions.

    How should I publish it? I'm not very experienced with the pull request, especially when many files are affected. Should I publish the code as a fork?

    It would be really great to revive this magnificent app. I somehow can't get along with QGroundControl, seems weird to use and also I can't compile it (it's written in Qt).

    EDIT: OK, I've inserted my own google API key and the maps work. But how to publish it? Is there any DroidPlanner key available?

    opened by maciek252 0
  • Discontinue old API used for Mapbox projects/classic, replace with Mapbox Studio styled raster tiles

    Discontinue old API used for Mapbox projects/classic, replace with Mapbox Studio styled raster tiles

    Mapbox integration was faulty after Mapbox discontinued their "Projects" and stopped developing Mapbox Classic. New solution for map designers (or anyone interested in creating a free account to use their services) is Mapbox Studio. Tower threw error messages of incorrect credentials, but could partly display mapbox maps if . was entered into Tower Map ID field.

    This pull request solves the error messages by switching out the API to retrieve raster tiles from styles. API documented here: https://docs.mapbox.com/api/maps/#retrieve-raster-tiles-from-styles To support this API, a field to capture the users mapbox user name is introduced. In addition, the mapId field is re-used to enter the ID of the style rather than the mapId. Two API calls to retrieve additional "markers" and "polygons" are disabled since I had problems to support that and saw no obvious use case. But if these objects are included into their mapbox style, they will be retrieved by Tower anyway. In addition, the leak canary is disabled in this PR.

    Solution works almost flawless. One problem remains: When user select the flight data screen, the style tiles are not shown. Seems to be caused in DroneMap.java, where use case start flight data only trigger function onStart(), while use cases starting editor/history/"flip orientation" all have a preceding call to onCreateView() upfront of onStart(). The workaround in flight data screen: Rotate device (horisontal <=> portrait), and mapbox tiles becomes visible again.

    opened by OlavAa 0
  • Merge DroneKit in Tower

    Merge DroneKit in Tower

    It would make sense to merge DroneKit Service part into Tower because:

    • it will make Tower install simpler
    • it doesn't seem to me that there will be cases when multiple apps will control multiple drones, one drone per app

    Idea by: @Linjieqiang

    opened by snorkel123 1
Releases(Tower-v4.0.0.10)
This Android app shows bus connections from Koleje Strahov station to Dejvická station and the other way in the city of Prague

This Android app shows bus connections from Koleje Strahov station to Dejvická station and the other way in the city of Prague. These are important for many students from the Czech Technical University in Prague.

Lašťa Apps 3 Jul 28, 2022
Link to GTA Vice City Soundtracks by station

SoundsLink Link to GTA Vice City Soundtracks by station The Basics This application was built for those who loved everything about GTA Vice City inclu

Ayana Bando 0 Oct 31, 2021
Real time gps location based alarming system tracking the road accident and providing medical assitance plus concern from near by police station.

Real time gps location based alarming system tracking the road accident and providing medical assitance plus concern from near by police station.

Sandeep Verma 1 Mar 12, 2022
An android & arduino project. The android app is used to control motors via Arduino.

Boccia ramp project An android & arduino project. The android app is used to control motors via Arduino. Description This project is made in the conte

vql 2 Jul 29, 2022
PortalController - A rudimentary TeamViewer-like remote control app for Android, using ws.

PortalController A TeamViewer-like app for Android-to-Android remote control, using node.js and websockets (ws). Some insight The reason I call it rud

Mike Anderson 10 Dec 15, 2022
🚀 React Native Segmented Control, Pure Javascript for iOS and Android

Installation Add the dependency: npm i react-native-segmented-control-2 Peer Dependencies Zero Dependency ?? Usage Import import SegmentedControl from

FreakyCoder 11 Nov 10, 2022
AdpPad is a GUI application to use adb. adb is a command line tool to control android device.

AdbPad AdpPad is a GUI application to use adb. adb is a command line tool to control android device. Demo.mp4 ✨ Feature Observe a connected android de

katz 31 Dec 30, 2022
TrackerControl: monitor and control trackers and ads.

About TrackerControl Download directly here, from F-Droid, or a feature-reduced version from Google Play. If you have missing features or bugs, join t

Oxford HCC 1.1k Jan 9, 2023
It can control PPTby using EuPI.

wave-pdf Sample App for using Euphony library - EuPI mode. You can show pdf file to viewer, and control it by controller. How to use Controller In con

Euphony 6 Oct 21, 2022
SnapChat-Clone - The android studio project for a snapchat clone for android devices

SnapChat-Clone This is the android studio project for a snapchat clone for andro

Ujjwal Sharma 0 Jan 30, 2022
Ankiconnect Android allows you to utilize the standard Anki mining workflow on Android devices like phones and eReaders

Ankiconnect Android Ankiconnect Android allows you to utilize the standard Anki mining workflow on Android devices like phones and eReaders. Create An

Kamron Bhavnagri 29 Dec 28, 2022
Record full-resolution video on your Android devices.

DEPRECATED: Android 11 now includes native screen recording! License Copyright 2015 Jake Wharton Licensed under the Apache License, Version 2.0 (the

Jake Wharton 2.5k Dec 15, 2022
Endoscope lets you to stream live video between android devices over Wi-Fi! 📱📲

Endoscope - RTSP live video streamer for android devices via Wi-Fi. Project is no longer supported. Alternative solution is under development. Stay tu

Przemek 640 Dec 21, 2022
EBT Compass is a compass and GPS app for Android devices.

EBT Compass is a compass and GPS app for Android devices.

Eric Bergman-Terrell 6 Aug 25, 2022
Android library for finding connected devices on same WiFi network. It can provide IP Address, device name, MAC Address and vendor names.

Android WiFi Tools Android library for finding connected devices on the same WiFi network. It can provide IP Addresses, device names, MAC Address and

Tej Magar 5 Nov 16, 2022
Android samples built using Jetpack Window Manager for foldable and dual-screen devices like Microsoft Surface Duo.

Jetpack Window Manager samples for dual-screen and foldable devices like Microsoft Surface Duo Android app samples that use Jetpack Window Manager to

Microsoft 45 Dec 19, 2022
📲💬 react-native-fontext is a lightweight library to integrate fonts in your React Native application that works seamlessly in android and iOS devices.

React Native Fontext react-native-fontext is a lightweight library to integrate fonts in your React Native application that works seamlessly in androi

mroads 9 Dec 3, 2021
Unicopy is an application for Android devices and helps users to copy useful special characters

Unicopy Android Application Unicopy is an application for Android 'Phone' Devices. This helps you to copy and paste some special and complicated Unico

Jacob Lim 1 Oct 28, 2021