Giter VIP home page Giter VIP logo

andruav_android_app's Introduction

Andruav is an interconnected Android-based system that uses Android mobiles as companian computers to add advanced capabilities to your drones and rc-vehicles.

Andruav saves you lots of gears and connections and replace it with a single Android mobile phone.

Only two mobile devices and Andruav are what you need to get Imaging & FPV Gears and Unlimited Telemetry Range over Wifi & 3G/4G.

Download from Google Play https://play.google.com/store/apps/details?id=arudpilot.andruav

Videos Check this YouTube Channel

Documentation at https://cloud.ardupilot.org/andruav-index.html

Ardupilot Cloud EcoSystem Andruav_AP is part of Ardupilot Cloud Eco System

andruav_android_app's People

Contributors

hefnysco avatar jai-gay avatar shafiqsadat avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar

andruav_android_app's Issues

Java 11 & API > 30

Does anyone encounter this when trying to compile the code?

A problem occurred evaluating project ':andruavmiddlelibrary'.
Failed to apply plugin 'com.android.internal.library'.
Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8.

JCenter service update

Suspicious indentation
image

potential duplicate class conflict with Kotlin (org.jetbrains:annotations)

implementation 'com.intellij:annotations:12.0@jar'

Android Studio Flamingo | 2022.2.1 Patch 1
Build #AI-222.4459.24.2221.9971841, built on April 20, 2023
Runtime version: 17.0.6+0-b2043.56-9586694 amd64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
Windows 10 10.0
Non-Bundled Plugins:
org.intellij.plugins.markdown (222.4345.5)

FCB "3DR service connection closed"

Using Matek F405 V2 flight controller and android 8.1.0.
The phone connects to the web client as expected. When I connect to the flight controller via USB, selecting the same baud rate that works connecting the FCB directly to mission planner (115200), the triangle icon in the top left corner turns blue but the FCB box on the menu is not green, and it keeps saying "3DR service connection closed". There is a notification saying "DroneKit-Android". The web client says no FCB connected.

Video connection problem on a GCS app.

Hello,

I would like to use this app and potentially support the development of this complex application in the future if I can learn this code structure. Specifically, I am interested in improving the ardupilot's capabilities for use on a maritime drone.

However, I have encountered a problem with this app. When I click the "Video" button on the GCS app, it always displays "Video is connecting" but fails to connect. I installed this app yesterday, it is first time I'm using this app. however, this app was used yesterday for 5 minutes flying, so I don't believe it's a problem with my settings. Yesterday, I also had trouble with the "Video is connecting" message consistently displaying on the screen.

for your reference, telemetry is connecting properly, and I was able to hear the "PreArm: Throttle below failsafe" message on both the GCS and drone card. Additionally, I am able to successfully receive photos from the drone card when I press the "shoot" button on the GCS, so I don't believe it's a connection issue.

I have tried using a mobile hotspot, public wifi, and a portable wifi router that worked well for video streaming on other GCS. Therefore, I don't believe it's a problem with the connection speed.

The only issue seems to be that the video is not connecting now. I tried "ask for help" button but there is no log file automatically attached.

Map appears as a white screen.

Although the telemetry connection is well-established, the map is not displaying properly and appears as a white screen.

RTK corrections

This is not really an issue but instead an enhancement request. It would be nice to be able to inject NTRIP GPS corrections for an RTK gps directly from the drone's android phone into the FCB.

This would be very powerful for people who don't want to rely on mission control for the corrections and increase overall drone reliability.

This data is typically derived from a government network. and can be used in lieu of a fixed RTK correction base station. In Spain, the connection string is similar to this:

http://user:[email protected]:2101/VRS3M

GpsStatus APIs not supported, please use GnssStatus APIs instead

Caused by: java.lang.UnsupportedOperationException: GpsStatus APIs not supported, please use GnssStatus APIs instead
at android.location.LocationManager.addGpsStatusListener(LocationManager.java:2462)
at ap.andruavmiddlelibrary.sensors.Sensor_GPS.registerSensor(Sensor_GPS.java:527)
at ap.sensors.SensorService.RegisterListeners(SensorService.java:326)
at ap.sensors.SensorService.onStartCommand(SensorService.java:378)
at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:4913)
at android.app.ActivityThread.-$$Nest$mhandleServiceArgs(Unknown Source:0) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2335) 
at android.os.Handler.dispatchMessage(Handler.java:106) 
at android.os.Looper.loopOnce(Looper.java:240) 
at android.os.Looper.loop(Looper.java:351) 
at android.app.ActivityThread.main(ActivityThread.java:8364) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:584) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1013) 

This class was deprecated in API level 24.
Use GnssStatus instead.

there is no docs about connecting mission planner via UDP

IMG_0551

this is my GCS tablet screen.

telemetry connection is well estabilished.

both mission planner laptop and GCS tablet are on same network.

and I tried that ip address and port via UDPCL, UDP, TCP, AUTO on mission planner.

but couldn't make connection on mission planner.

Video connection problem again

#8

I had thought that the problem was solved now.
however, while I go out for flying outdoors, the video connection failed to establish again. when drone card connected to WIFI, not LTE, the video connection could be estabilished.

Despite many many attempts, the connection couldn't be established. Initially, I believed that turning off the network program had solved the issue, but that was not the case.

Although changing the settings (including the initial installation, ID, and network) worked the first time, but connection is not established after that. it is common repeated problem until now

build target 33

More needs to be done before the app can safely move to AP1 33.
Under build target 33, all permissions are allowed still missing permission keeps popping up.

images are attached.

READ_EXTERNAL_STORAGE is deprecated (and is not granted) when targeting Android 13+.
If you need to query or interact with MediaStore or media files on the shared storage,
you should instead use one or more new storage permissions: READ_MEDIA_IMAGES,
READ_MEDIA_VIDEO or READ_MEDIA_AUDIO.

SDK_33
SDK_31

Backup access code during upgrade

After a new release of the Android app I often find that I need to re-enter my access code. It would be nice if this could be backed-up and restored so users don't need to re-enter it.

CheckAppPermissions.checkPermissionAndRequest

Is there contains a logic error for this logic check?

when PackageManager.PERMISSION_GRANTED it will return true yet it goes into the if statement to request for permission.

return ContextCompat.checkSelfPermission(activity,

So, the check should be this way, right, missing !?
if ( ! checkPermission(activity,permission))

Note: If your app targets Build.VERSION_CODES.R or higher, WRITE_EXTERNAL_STORAGE permission has no effect.

Video encoding problem with samsung phones.

I have had this issue on every samsung phone I have tested. S4, S9, S10e and A21s all of them really struggle to get over 1fps when a lot of the image starts to move, my best guess is that its trying to capture video at a stupid high resolution because the window on the web streaming client gets huge when I open the video. Is it possible samsungs allow capture at photo resolutions so its trying to send something like 16mp stills rather than 1080 video?

cannot connect with mission planner.

something is wrong with andruav, i cannot connect to any of my phones, they all show up as working on the webclient, but i cannot connect to them from mission planner..

turn off the log 'No subscribers registered for event class xxx.xxx'

EventBus.builder().logNoSubscriberMessages(false).installDefaultEventBus();

I had tried the two followings, but it does not work.

  1. EventBus.builder().logNoSubscriberMessages(true).installDefaultEventBus();
  2. //EventBus.builder().logNoSubscriberMessages(false).installDefaultEventBus();

I still getting these
No subscribers registered for event class com.andruav.event.droneReport_Event.Event_IMU_Ready
No subscribers registered for event class de.greenrobot.event.NoSubscriberEvent

How does it work?

AndruavMessage_CameraSwitch cannot be cast to AndruavMessage_CameraZoom

I got an error yesterday. Still trying to see what is the problem with the unmodified code.
Today, I cannot even start the live video streaming.

Event D No subscribers registered for event class de.greenrobot.event.NoSubscriberEvent
org.webrtc.Logging I CameraStatistics: Camera fps: 10.
System.err W java.lang.ClassCastException: com.andruav.protocol.commands.textMessages.AndruavMessage_CameraSwitch cannot be cast to com.andruav.protocol.commands.textMessages.AndruavMessage_CameraZoom
System.err W at com.andruav.protocol.communication.websocket.AndruavWSClientBase.executeInternalCommand_default(AndruavWSClientBase.java:883)
System.err W at com.andruav.protocol.communication.websocket.AndruavWSClientBase.Execute(AndruavWSClientBase.java:1554)
System.err W at com.andruav.protocol.communication.websocket.AndruavWSClientBase.onTextMessage(AndruavWSClientBase.java:588)
System.err W at com.andruav.protocol.communication.websocket.AndruavWSClientBase_TooTallNate$1.onMessage(AndruavWSClientBase_TooTallNate.java:153)
System.err W at org.java_websocket.client.WebSocketClient.onWebsocketMessage(WebSocketClient.java:462)
System.err W at org.java_websocket.drafts.Draft_6455.processFrame(Draft_6455.java:696)
System.err W at org.java_websocket.WebSocketImpl.decodeFrames(WebSocketImpl.java:367)
System.err W at org.java_websocket.WebSocketImpl.decode(WebSocketImpl.java:212)
System.err W at org.java_websocket.client.WebSocketClient.run(WebSocketClient.java:389)
System.err W at java.lang.Thread.run(Thread.java:1012)
org.webrtc.Logging I CameraCapturer: switchCamera
org.webrtc.Logging I CameraCapturer: switchCamera internal
OplusCamer...agerGlobal I setClientInfo, packageName: com.wikitude.sdksamples, uid: 10474, pid: 14009
org.webrtc.Logging I CameraCapturer: switchCamera: Stopping session
org.webrtc.Logging I CameraCapturer: switchCamera done
org.webrtc.Logging I Camera2Session: Stop camera2 session on camera 0
org.webrtc.Logging I Camera2Session: Stop internal
org.webrtc.Logging I SurfaceTextureHelper: stopListening()
BufferQueueProducer D SurfaceTexture-1-14009-2 disconnect: api 4
CameraManagerGlobal E Camera 5 is not available. Ignore physical camera status change
org.webrtc.Logging I Camera2Session: Stop done
org.webrtc.Logging I Camera2Session: Create new camera2 session on camera 1
org.webrtc.Logging I Camera2Session: start
OplusCamer...agerGlobal I setClientInfo, packageName: com.wikitude.sdksamples, uid: 10474, pid: 14009
org.webrtc.Logging I Camera2Session: Available preview sizes: [2328x1748, 2304x1728, 2304x1296, 2048x1080, 2160x1080, 1920x1080, 1920x864, 1920x822, 1600x1200, 1600x800, 1600x720, 1600x592, 1584x720, 1440x1080, 1280x960, 1280x768, 1024x768, 1280x720, 1200x1200, 1188x540, 1200x540, 1080x1080, 840x360, 800x400, 792x360, 720x540, 720x480, 640x640, 640x480, 640x360, 352x288, 320x240, 176x144]
org.webrtc.Logging I Camera2Session: Available fps ranges: [[10.0:10.0], [15.0:15.0], [24.0:24.0], [10.0:30.0], [15.0:30.0], [30.0:30.0]]
org.webrtc.Logging I Camera2Session: Using capture format: 1280x720@[10.0:10.0]
org.webrtc.Logging I Camera2Session: Opening camera 1
OplusCamer...agerGlobal I setClientInfo, packageName: com.wikitude.sdksamples, uid: 10474, pid: 14009
libc W Access denied finding property "persist.vendor.camera.privapp.list"
OplusCamer...agerGlobal I setClientInfo, packageName: com.wikitude.sdksamples, uid: 10474, pid: 14009
OplusCameraUtils I current activityName: ap.andruav_ap.activities.fpv.drone.FPVDroneRTCWebCamActivity
OplusCameraUtils I getComponentName, componentName: com.wikitude.sdksamples/ap.andruav_ap.activities.fpv.drone.FPVDroneRTCWebCamActivity, packageName:com.wikitude.sdksamples, activityName:ap.andruav_ap.activities.fpv.drone.FPVDroneRTCWebCamActivity
org.webrtc.Logging I Camera2Session: Camera device closed.
OplusCamer...icsManager D addPreviewInfo, eventMap: {halLevel=3, preview_time=90316, cameraId=0, pkgName=com.wikitude.sdksamples, apLevel=2}
OplusCamer...icsManager D addInfo, eventMap: {halLevel=3, cameraId=0, disconnectTime=1688375408365, pkgName=com.wikitude.sdksamples, connentTime=1688375318049, apLevel=2, timeCost=90316}
org.webrtc.Logging I Camera2Session: Camera opened.
BufferQueueProducer D SurfaceTexture-1-14009-2 connect: api=4 producerControlledByApp=true
OplusCamer...icsManager D addInfo, eventMap: {halLevel=3, cameraId=1, pkgName=com.wikitude.sdksamples, connentTime=1688375408395, apLevel=2}
org.webrtc.Logging I Camera2Session: Camera capture session configured.
org.webrtc.Logging I Camera2Session: Using video stabilization.
org.webrtc.Logging I Camera2Session: Auto-focus is not available.
org.webrtc.Logging I Camera2Session: Camera device successfully started.
org.webrtc.Logging I CameraCapturer: Create session done. Switch state: IN_PROGRESS
org.webrtc.Logging I SurfaceTextureHelper: Setting listener to org.webrtc.Camera2Session$CaptureSessionCallback$$ExternalSyntheticLambda0@6314d4
tude.sdksamples I createIfNeeded: Recreate new EGLImage since dataspace changed
Sensor_GPS D has been onSatelliteStatusChanged
Sensor_GPS D onSatelliteStatusChanged = NULL misFirstFix = false
Event D No subscribers registered for event class ap.andruavmiddlelibrary.sensors._7asasatEvents.Event_GPS_NMEA
Event D No subscribers registered for event class de.greenrobot.event.NoSubscriberEvent

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.