Code Monkey home page Code Monkey logo

tower's Introduction

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.

tower's People

Contributors

alexshafir avatar andrewtusik avatar arthurbenemann avatar aussiemod avatar azrin1972 avatar billbonney avatar bob01 avatar brad112358 avatar bys1123 avatar djellison78 avatar fpvcuritiba avatar geeksville avatar guiseco avatar helibot avatar jandrop avatar jason4short avatar jeroennijhof avatar jmachuca77 avatar juliengamartin avatar kellyschrock avatar m4gr3d avatar madbeef avatar metalnow avatar peterhinson avatar preet90 avatar realbuxtehuder avatar squilter avatar stefanuc111 avatar tshapinsky avatar zumbrunnen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tower's Issues

Text Scaling

How about adding a text scale option in settings?

For smaller android devices this can be very helpful.

"Set Mode" menu

Add a set mode menu option, like the one on Mission Planner.

Fix MAVLink service not fount error

Fix the following error that happens when switching activity's while connected to a drone.

java.lang.RuntimeException: Unable to stop activity {com.droidplanner/com.droidplanner.FlightDataActivity}: java.lang.IllegalArgumentException: Service not registered: com.droidplanner.service.MAVLinkClient$1@4179a0f0
at android.app.ActivityThread.performStopActivityInner(ActivityThread.java:2820)
at android.app.ActivityThread.handleStopActivity(ActivityThread.java:2865)
at android.app.ActivityThread.access$900(ActivityThread.java:128)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1178)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4514)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalArgumentException: Service not registered: com.droidplanner.service.MAVLinkClient$1@4179a0f0
at android.app.LoadedApk.forgetServiceDispatcher(LoadedApk.java:888)
at android.app.ContextImpl.unbindService(ContextImpl.java:1213)
at android.content.ContextWrapper.unbindService(ContextWrapper.java:382)
at com.droidplanner.service.MAVLinkClient.onDestroy(MAVLinkClient.java:53)
at com.droidplanner.FlightDataActivity.onStop(FlightDataActivity.java:66)
at android.app.Instrumentation.callActivityOnStop(Instrumentation.java:1178)
at android.app.Activity.performStop(Activity.java:4603)
at android.app.ActivityThread.performStopActivityInner(ActivityThread.java:2817)
... 11 more

USB support

Implement USB direct connectivity to FTDI chips.

There is a partial development on the branch USB 1c011cf

Translation

Maybe translating the app would be good. But is best to get the other issues done first.

I can translate it to PT-BR.

Fligth track

Add a flight track to the flightMap fragment.

Guided Mode

Add some sort of guided (point and click) flight mode to the flightData Fragment.

Should work like mission planner.

Password protected Viewer mode

Add a password protected user mode only for monitoring mavlink data, which has no permission to send data to the plane.

Improve App navigation

Improve the navigation of the app. Currently there is a backstack of the previus screens and to exit the app you have to pres back a lot of times. It would be better that pressing back always returns to the flight data screen, where your past doesn't matter.

Another press show something like "press again to close the app", and another closes the app.

Missing UI features and artwork improvement

Firstly the design seems to be designed towards arduplane only, it really needs support for copter, rover etc

And secondly i would like to offer to do the artwork for the UI, improve it.
I fly Actual aircraft being a plane called the grob vigilant so i could design it around that?
But more importantly you want a design that doesn't infringe on the mission planner software and is your design.

I love to do artwork and have lots i could make for you
So email me if interested on [email protected]

Suggestions as follows : icons for your model or optional pointer icon for more precision

NullPointerException @ connectButton.setTtitle

connectButton is null because onCreateOptionsMenu being called after the notifyConnected() / notifyDisconnected()

04-12 14:22:00.741: E/AndroidRuntime(6845): FATAL EXCEPTION: main
04-12 14:22:00.741: E/AndroidRuntime(6845): java.lang.NullPointerException
04-12 14:22:00.741: E/AndroidRuntime(6845):     at com.droidplanner.PlanningActivity$1.notifyDisconnected(PlanningActivity.java:283)
04-12 14:22:00.741: E/AndroidRuntime(6845):     at com.droidplanner.service.MAVLinkClient$IncomingHandler.handleMessage(MAVLinkClient.java:85)
04-12 14:22:00.741: E/AndroidRuntime(6845):     at android.os.Handler.dispatchMessage(Handler.java:99)
04-12 14:22:00.741: E/AndroidRuntime(6845):     at android.os.Looper.loop(Looper.java:137)
04-12 14:22:00.741: E/AndroidRuntime(6845):     at android.app.ActivityThread.main(ActivityThread.java:5041)
04-12 14:22:00.741: E/AndroidRuntime(6845):     at java.lang.reflect.Method.invokeNative(Native Method)
04-12 14:22:00.741: E/AndroidRuntime(6845):     at java.lang.reflect.Method.invoke(Method.java:511)
04-12 14:22:00.741: E/AndroidRuntime(6845):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
04-12 14:22:00.741: E/AndroidRuntime(6845):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
04-12 14:22:00.741: E/AndroidRuntime(6845):     at dalvik.system.NativeStart.main(Native Method)

Accelerometer control

Kirill: Is it possible to control using inclination of table (by accelerometers)?

Waypoint Editor

List of thing to be improved:

  • WPs can be re-arrange by sliding its position in the waypoint list
  • Slide to remove
  • Click to edit

Add a menu for editing waypoints when clicked, with the following items:

  • WP type
  • Height

Advanced options based on the WP type like :

  • type limited to Loiter (for some time), lift-off (to a heigth), land, circles and RTH.
  • speed to next WP

mavlink logs

with mission planner, it logs a file for google earth to visualize the flight, at a later stage can this be implemented?

RC control

Give the option of sending RC commands, to eliminate the RC Tx/Rx on Ardupilot.

Copter support

Add icons for Quadcopters, and the corresponding flight modes.

Wiki Manual

Develop a simple manual on the Github Wiki.

Fix "Grow heap" bug

Moving the plane on the flightDataFragment causes the heap to grow continusly, generating the following message:
Grow heap (frag case) ...
Until the heap explodes and the connection is lost.

Add indicators to the HUD fragment

The following itens must be added to the HUD. It's probably best to keep the same layout as MP.

  • Add a RSSI (signal strengh)
  • GPS fix and number of visible GPS satellites to the HUD
  • Battery voltage
  • Battery amperage
  • Battery Capacity

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?

FPV overlay

Add an FPV screen to show a FPV stream on screen

HUD interface

Craig Elder: Can I make a suggestion that you move the roll angle numbers above the arc and the tics below.

Joystick UI

Find a better joysticck widget.

Make joystick work as a mode 2 rc radio. Witch means that the trottle stick should hold its position insted of returning to center.

Add the option to work as a mode 1 controller.

PID adjustment screen

Add a Pids adjust menu so that people can adjust the PIDs in the app, that would be very useful.

Just the basic pids lice the Flight modes, channel 7 function and pich/roll rates.

Offline maps.

Offline maps access. There is some code already implemented see GCSActivity.

App hangs on when tablet orientation changes

I've noticed that the application hangs on when tablet orientation changes. Sometimes it completely hangs on, sometimes I need to press "Connect" again. But all the time when orientation is changed it looses connection.
I have Archos 101g9 tablet, Android 4.1

Add more voice notifications and warnings

Add voice notification for events, such as:

  • Armed / Disarmed
  • Low battery voltage / charge (The battery discharge function already does a great job at this)
  • Weak radio signal, signal loss
  • GPS signal loss
  • Flight mode changed
  • Waypoint reached
  • Next target (waypoint number or home)

And periodic notifications, such as:

  • Flight Time - for every 10 min. of flight
  • Battery discharge notification - every 10%
  • Altitude - periodically
  • speed (air or ground dependent on the sensors) - periodically

Make use of the TTS function

A TTS class has been implemented, but it's use is minimal.

Add more uses for this class, and possible a configuration menu.

Prefetch Offline maps

Add a class to prefetch a map tile database to the local storage, for use as offline maps.

Android Fragments

Fragments should be implemented to have multiview screens like HUD and flight data in on screen. When rotating the screen fragments must rearrange.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.