Problems switching to thermal camera with Mobile SDK
I am currently developing an Android application using the DJI Mobile SDK V5.14 with a Matrice 3TD drone.
At the moment, I am trying to implement a function to switch to the thermal (IR) camera using the KeyCameraVideoStreamSource API, which allows selecting the camera source as a parameter. However, it only works when using the default camera. When I attempt to select the infrared camera, the function returns an error of type UNSUPPORTED.
I attach the function that I'm using:
KeyManager.getInstance().setValue(KeyTools.createKey(CameraKey.KeyCameraVideoStreamSource), CameraVideoStreamSourceType.INFRARED_CAMERA, new CommonCallbacks.CompletionCallback() { @Override public void onSuccess() {
... }
Is there any alternative method to switch to the thermal camera via the SDK? Or is this functionality planned for a future SDK or firmware release?
Thank you in advance for your support.
Agent comment from YIGUI LIU in Zendesk ticket #146560:
Dear Developer,
You can first obtain the list of currently supported lens types for the camera via CameraKey.KeyCameraVideoStreamSourceRange, and then set KeyCameraVideoStreamSource.
However, I'd like to confirm if you're using the Matrice 3TD drone. MSDK v5 does not support the Matrice 3TD as it hasn't been adapted or tested for this model. You can refer to the Supported Product List and Firmware Versions in the release notes for the list of supported models. Release notes:https://developer.dji.com/doc/mobile-sdk-tutorial/en/
Currently, the MSDK R&D team has no development plans to adapt MSDK v5 for the Matrice 3TD.
Best Regards,
DJI Innovations SDK Technical Support Team
°°°
Oh! Understood.
Is there any other SDK that would allow switching to the thermal camera on the Matrice3TD?
Agent comment from YIGUI LIU in Zendesk ticket #146560:
Dear Developer,
The PSDK supports the Matrice 3TD model. You can switch the lens type to the infrared lens through the DjiCameraManager_SetStreamSource interface. For PSDK documentation, refer to: https://developer.dji.com/doc/payload-sdk-tutorial/en/basic-introduction/whats-psdk.html.
The cloud API also supports the Matrice 3TD model. For the interface to switch the lens is live_lens_change, refer to: https://developer.dji.com/doc/cloud-api-tutorial/en/api-reference/dock-to-cloud/mqtt/dock/dock2/live.html#set-live-streaming-lens.
Best Regards,
DJI Innovations SDK Technical Support Team
°°°
Hi, I've been reviewing the entire section on how the Payload SDK works, and there are a few things I don't quite understand.
First, is it compulsory to have a payload device physically connected in order to use the PayloadSDK functions, or can I call these functions directly from the drone's Android system?
Also, I'd like to ask how I can disable the obstacle avoidance sensors through the SDK, as I haven't been able to find any function related to that.
Finally, I would really appreciate it if you could share an example or some guidance on how to start implementing the Payload SDK features.
Thank you very much for your time, and sorry for any inconvenience.
Agent comment from LIPING.ZHOU in Zendesk ticket #146560:
Dear Developer,
Hello and thank you for reaching out to DJI Innovations.
You must run the PSDK in order to control the drone via PSDK.
You can either disable it through the app, or by calling the corresponding API.
Refer to the following PSDK-related documentation: 5.7 Joystick Flight Control (flight_control) https://sdk-forum.dji.net/hc/zh-cn/articles/5497460532889-5-7-joystick%E9%A3%9E%E8%A1%8C%E6%8E%A7%E5%88%B6-flight-control-?source=search&auth_token=eyJhbGciOiJIUzI1NiJ9.eyJhY2NvdW50X2lkIjo5Nzg4MTcsInVzZXJfaWQiOjg4MzAxNzc4NTAzOTMsInRpY2tldF9pZCI6NzYwNDAsImNoYW5uZWxfaWQiOjYzLCJ0eXBlIjoiU0VBUkNIIiwiZXhwIjoxNjc2MDkyNzIxfQ.srgv_iyoLNVgW0bO6GplpmlGV-zXFUniYxhhpwkCBVQ
We hope that our solution meets your needs satisfactorily. We appreciate your email and wish you a wonderful day!
Best Regards,
DJI Innovations SDK Technical Support Team
°°°