Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
    OlavAa
    @OlavAa
    This example is for Dronekit
    Found this example for Dronekit python. I assume it might provide relevant guidance even though not for Dronekit Android: https://dronekit-python.readthedocs.io/en/latest/examples/create_attribute.html
    OlavAa
    @OlavAa
    And perhaps there is some hint for you in this brief issue discussion on github: dronekit/dronekit-android#403
    Hugo Daniel Martins Silva
    @hugosilva123_gitlab
    Good night I would like to know where to find a tutorial for setting up the drone kit in android studio
    OlavAa
    @OlavAa
    Ref comment from Oct 20th: You can get it on Gitbub here: https://github.com/dronekit/dronekit-android
    Sorry. The link you need for instructions were added in a comment on Oct 11th... I followed these instructions, and after some struggle (don't remember the details) I got it to work: https://github.com/DroidPlanner/Tower/wiki/Work-with-DroneKit-Android
    Hugo Daniel Martins Silva
    @hugosilva123_gitlab
    Thanks a lot for the help. Now should I install the api that is on dronekit?
    Hugo Daniel Martins Silva
    @hugosilva123_gitlab
    i dwoload the tower and now?
    OlavAa
    @OlavAa
    I guess the only reason to clone Dronekit is to have full control and to be able to modify it if needed. If that is not necessary then you only need to clone Tower. If you intend to alter Dronekit, work according to the instructions in the link. The cloned Tower should come up easily as long as you do not upgrade gradle (plugin?). You will probably want to at some point, but it is nice to be able to build Tower at least once before you struggle. Just my point of view, of course.
    Sudarshan-Impace
    @Sudarshan-Impace
    @OlavAa Thank you ,Actually I update gradle when i open project first time then errors are occured in my project.
    Donoorkans
    @Donoorkans
    2019-11-21 (2).png
    how to decide mavlink message length? Here length is 28
    Vincent Schmid
    @VincentSchmid
    can dronekit be used for fixed-wing aircraft? Or is it generally for quads and such
    Bill Bonney
    @billbonney
    You can used dronekit-android for fixed wing aircraft
    why do you need the message length? that is used only by the parser.
    JeremyJalpha
    @JeremyJalpha

    Dear All,

    Please may someone very kindly assist me?
    I have built my own drone with an android phone connected to an IOIO board (https://www.sparkfun.com/products/13613) which outputs PWM signals to my ESCs.
    For Controls, I have an Xbox remote BlueToothed to the flying phone.

    In my android app, I am able to read the stick movements on the remote but now need to convert them to Throttle values to send to the ESCs, so far I have the below:

    Given values: Throttle, DeltaX and DeltaY

    BL = (((Throttle + (DeltaX - DeltaY))10)+1000)
    FL = (((Throttle + (DeltaX + DeltaY))
    10)+1000)
    BR = (((Throttle - (DeltaX + DeltaY))10)+1000)
    FR = (((Throttle - (DeltaX - DeltaY))
    10)+1000)

    I am looking for the correct formulas to translate stick movement into a corresponding change in throttle to steer the drone. I am not sure if the above formulas are correct because if the drone is at 100% throttle then some output values would be "clipped" out.

    Any advice would be greatly appreciated.

    JeremyJalpha
    @JeremyJalpha
    PS ALL your links are dead
    denisbujoreanu
    @denisbujoreanu
    I think you should be aware that although the Android smartphones run a flavor of Linux it is not a RTOS(RealTimeOS) so regardless how fast the CPUs and how many there are they won't deliver real-time responses. That's why there aren't many flying platforms based on smartphones.
    JeremyJalpha
    @JeremyJalpha
    @denisbujoreanu ok which phone is being used in the flone videos and then how did you get it to work?
    @denisbujoreanu And what about using Phone to SBUS as an "emulated" receiver?
    @denisbujoreanu how should I proceed?
    denisbujoreanu
    @denisbujoreanu

    sadly I didn't follow up on the phone-drone initiative. I know there was a kickstarter project trying to get some funds but haven't seen anything on the market to confirm they got it to work consistently.

    From what I recall though, the idea to use a smartphone as flight controller is only limited to how hast it can read data from sensors (gyro, baro, gps, compass, lidar etc.) and produce output commands for the motors.

    Now whether this is done via PWM or SBUS I have no clue, the easiest was to go with PWM since the hardware was somewhat simpler to come by and the connectivity wasn't that much of an issue with the smartphone, if I'm not mistaken it took some sort of OTG-to-UART converter then there was another chip downstream which actually took the outputs from the smartphone and did the conversion to PWM and sent it to the motors.

    Sudarshan-Impace
    @Sudarshan-Impace
    Hi, I have tried changing the flight mode using VehicleApi.getApi(drone).setVehicleMode(VehicleMode.COPTER_AUTO), when i without upload mission plan it work but when i upload mission plan then it show vehicle mode change failed. Let me know if am doing this wrong.
    JustinXangchay
    @JustinXangchay
    does anyone know where to find the android docs for dronekit? or any guides on how to use it?
    OlavAa
    @OlavAa
    Sudarschan-Impace: Several requirements to enter auto mode, like GPS lock. That's the typical cause of a mode change failure.
    danielss24
    @danielss24
    Hello, i am new in ArduPilot, i am trying to use ardupilot as default system for my final work of master. I am trying to develop a system where i can get data from main sensors such as, gyro, accel and so on. I am so interested in ardupilot system cause it has all i need, autohold, automode, altitude control... i bought a beaglebone black and follow the guide to make it run but i got some problems during it, i cant initialize the barometer and cant check my imu (9250) and baro (gy-63). The only restricction i have is that it has to be in C code, any tip or help? Thank you very much
    Pranesh Dhake
    @praneshdhake
    Documentation: http://android.dronekit.io/ not working
    OlavAa
    @OlavAa
    Documentation not available. You have to figure out whatever is needed for your app on your own...
    James-paradox
    @James-paradox
    Can any one please guide me , how to create an android application to control drone via virtual joystics
    OlavAa
    @OlavAa
    You need detect joystick movement away from center (zero throttle, zero steering). Then to calculate pwm values (typical extreme range 1000 as full backward/left to 2000 as full forward/right) for the throttle and the steering channel from the joystick position. And finally send the result to the drone as an rc_override mavlink message.
    Sudarshan-Impace
    @Sudarshan-Impace
    When i am cloning git clone https://github.com/DroidPlanner/Tower.git repository then show me The apk for your currently selected variant (tower-beta-release.400010.apk) is not signed. Please specify a signing configuration for this variant (beta-release). error . When i change build variant as a prodRelease then show me Could not find com.android.support:multidex:1.0.1.
    Required by:
    Tower_04:Android:unspecified error. What i will do for running this code?
    pankajvarma8
    @pankajvarma8_twitter
    While running the app i'm getting this error:-

    While running the app i'm getting this error:-
    Unable to find method 'org.gradle.api.tasks.compile.CompileOptions.setBootClasspath(Ljava/lang/String;)V'.
    Possible causes for this unexpected error include:
    Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)
    Re-download dependencies and sync project (requires network)

    The state of a Gradle build process (daemon) may be corrupt. Stopping all Gradle daemons may solve this problem.
    Stop Gradle build processes (requires restart)

    Your project may be using a third-party plugin which is not compatible with the other plugins in the project or the version of Gradle requested by the project.

    In the case of corrupt Gradle processes, you can also try closing the IDE and then killing all Java processes.

    Pleasae help me

    OlavAa
    @OlavAa
    @Sudarshan-Impace : Start building it as a dev debug variant. It will run fine in emulator and on real devices. You won't need a beta (or a release) build until you want to publish a redesigned Tower as a new app on Google Play.
    @pankajvarma8_twitter : If this is your first build after cloning, do NOT upgrade the gradle plugin when Android Studio suggests you to. Lift the gradle, the gradle plugin, the build sdk and the target sdk carefully in steps afterwards. I did this in small steps and carefully corrected all problems and tested both build and running the app in emulator towards sitl between each step. But then I am a newbie of course...
    James-paradox
    @James-paradox
    @OlavAa can you please tell me how can i implement mavlink in my android studio to send the pwm result as rc_override mavlink message. I am bit stuck over here can you please help me with it.
    @OlavAa and is it necessary to use dronekit sdk in the application to control the drone via virtual joysticks
    OlavAa
    @OlavAa
    @James-paradox Out fishing and ran out of juice on both PCs. I can tell how I did it to support a virtual joystick, but not right now. The way I did it was to build in (make part of the project) the latest Dronekit version into my Tower based app (carppilot.org). And then I was free to make desired adjustments and additions. To run a joystick, everything you need is already available (rc_override, part of the experimental Api if my memory serves me right)
    My next challenge is actually to enable support for mavlink 2. Is not a problem til build the messages and the JAR. But a missing step on how to negotiate with the autopilot on which mavlink version to use (at least I think this is were I hit the wall on my first try)
    pankajvarma8
    @pankajvarma8_twitter
    @OlavAa Thanks for helping me out, but I'm not able to find how to run it in dev debug varient
    Could not find com.google.android.gms:play-services-base:8.4.0.
    I'm getting this new error, i tried to resolve it but still no solution
    OlavAa
    @OlavAa
    @James-paradox In the mavlink of you will find the class for msg_rc_channels_override. The public function takes mavlink Packet as argument. Broken down to sysid, compid, msgid and payload. For a rover that I made this for, two channels are uses (throttle and steering). You use the ExperimentalApi.getApi(drone).sendMavlinkMessage(mavlinkMessageWrapper). I build the wrapper like this: rc_override = msg_rc_channels_override. Then add the two desired PWM values: rc_override.chan1_raw = steeringPwm and rc_override.chan3_raw = throttlePwm. Assumption here are default channels for a rover. Then you also need to add: rc_override.target_system = 0 and rcoverride. Target
    And rc_override.target_component = 0
    Last step is to set a variable to mavlinkMessageWrapper = MavlinkMessageWrapper(rc_override).
    And then send the message with the function from the experimental API I described earlier
    Sudarshan-Impace
    @Sudarshan-Impace
    How to resolved this error ,when i connect drone using ConnectionParameter the show me error like this when i use android 10 device otherwise worked well. java.lang.RuntimeException: Error receiving broadcast Intent { act=android.net.wifi.STATE_CHANGE } in org.droidplanner.services.android.impl.utils.connection.WifiConnectionHandler. Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.net.wifi.WifiInfo.getSSID()' on a null object reference
    OlavAa
    @OlavAa
    @Sudarshan-Impace For some reason the object is null. Try to figure out why this happens for Android 10 only...
    Did you get Video streaming to work? If so, for UVC?
    Sudarshan-Impace
    @Sudarshan-Impace
    Ok .. For video streaming i use GStreamer library.