When using matrice 300 rtk, why does set camera mode returns Not supported by current firmware? - dji-sdk

I am using dji android sdk
Matrice 300 rtk
calling DJIHelper.getProductInstance()
.getCamera()
.setMode(SettingsDefinitions.CameraMode.MEDIA_DOWNLOAD
The above fails with "Not supported by current firmware"
Any workarounds or ideas how to get this to work?

Related

DJI Mavic Air 2 Camera can't set mode?

I'm trying to see why our DJI-enabled app isn't working correctly with the Mavic Air 2 on iOS or Android. Here I'm debugging with iOS but I've seen the same failures when briefly testing on our Android app.
When calling setMode:completion: on the single camera belonging to the Mavic Air 2, I consistently get "Current product does not support this feature.(code:-1013)"
isMediaDownloadModeSupported returns true for the camera, and yet I can't set the camera mode to media download mode at all (or any other mode).
I've found that setFlatMode:completion: seems to work ok to set photo and video modes as a sort of alternative, however this is only for photo/video modes, and won't help me with downloading media from the SD card. (right?)
Any help out there?
From my DJI Developer Support ticket for the same issue:
For the Mavic Air 2 drone, should use the setFlatMode to switch the photo, video mode, and use the enterPlayback, exitPlayback to enter/ exit the download mode.

PanoramaMissionOperator compatibility with DJI Mavic Pro and Phantom 4 Pro

Has anyone used PanoramaMissionOperator on the mobile SDK for android or iOS? I can't see any example code online. Also it seems to be unclear which products support the use of PanoramaMissionOperator from the documentation. When I attempt to get the state of the PanoramaMissionOperator with a Mavic Pro and Phantom 4 Pro, I get a PanoramaMissionState of DISCONNECTED.
I know the DJI documentation describes how to achieve the same with a Waypoint Mission but some drones miss photos during waypoint missions.
PanoramaMissionOperator operator = MissionControl.getInstance().getPanoramaMissionOperator();
PanoramaMissionState missionState = operator.getCurrentState();
The PanoramaMissions are only supported for OSMO devices, source:
https://developer.dji.com/mobile-sdk/documentation/introduction/component-guide-missions.html -> scroll to the bottom.
Unfortunately the SDK documentation doesn't mention this and the only hint I got there is the description of the DISCONNECTED state: "The connection between the mobile device and Osmo is broken."
https://developer.dji.com/api-reference/android-api/Components/Missions/DJIPanoramaMissionState.html#djipanoramamissionstate_disconnected_inline

How to download waypoints from drone to Onboard-SDK?

My use case is the following: I would like to retrieve waypoints set from a third party app in OnBoard SDK.
For the moment, I tried to set waypoints thanks to Altizure. Everything works just as expected in DJI PC Assistant 2 simulator. But I don't get the waypoints in OnBoard SDK (I am using ROS package to be more precise).
Is there some kind of way of requesting waypoints download in OnBoard SDK ?
Thanks

How to control the Mavic 2 pro using the Virtual Controller from Windows SDK

I developed an application using DJI Windows SDK to control a Mavic 2 Pro. I manged to get all the data from the drone but when I tried to send commands to the drone through the VirtualRemoteController nothing happens
The set up is the following. I first send the command to auto-take off from my Windows app, which does it without out problems. Then, I give a position to move on my app. All the calculations are done as I expected but the drone continues hovering despite the values that I am sending are different of 0 and are on the range [-1,1].
I am getting an instance of the virtual remote controller as it follows:
VirtualRemoteController virtualController = DJISDKManager.Instance.VirtualRemoteController;
Then, I use the following command to send the movement that I want to execute:
virtualController.UpdateJoystickValue(throttle,roll,pitch,yaw);
throttle, roll, pitch and yaw are values between [-1,1]
This API is only supported for DJI aircraft that have a "WIFI-only" capability.
It is available for the Mavic Air for the Windows SDK.
The Mavic Pro supports Wifi but the Windows SDK does not support the Mavic Pro.
None of the Mavic 2 models support wifi.

which devices support the DJI mobile SDK?

https://developer.dji.com/mobile-sdk/documentation/introduction/product_introduction.html#Supported-Products
what does the "-" mean?
Does it mean that spark, mavic can not be accessed and controlled by mobile SDK?
The "-" is for the accessories list (not applicable on the specified products).
Spark and Mavic are definitely supported by the mobile SDK.
You can control drone directly with mobile SDK.
You can use virtual stick input for this. It allows to send 4 axis valus to copter: pitch, roll, yaw, throttle.
You can find some information about this in Simulator tutorial.
Virtual sticks documentation
obstacle avoidance can be turned on and off throug SDK calls. (look at Flight Assistant)

Resources