Mini 2: cannot retrieve media list with `getSDCardFileListSnapshot`
Hi,
I am getting this problem with my DJI Mini 2 and SDK 4.16.2. Most times the getSDCardFileListSnapshot method of MediaManager does not retrieve the full list of media from the drone, even after calling refreshFileListOfStorageLocation. Instead, I get a list with one only media file with name DJI_0000.jpg, which seems a non-existent file (it has size 0 bytes). As a consequence, I cannot download nor delete any media from the drone.
This only happens on my Mini 2, while on my Mavic Mini and Mavic Air everything works normally.
Any help would be appreciated, thank you.
We do find out sometimes you cannot refresh and read the media files properly on Mini 2 now. Known issues. It happens sometimes, it can return normal when restart the app.
Any update on this? Is there a workaround that doesn't involve restarting the app yet?
We will solve this issue on 4.16.5 on December.
Any update on when 4.16.5 will release, the bug fixes in this release are greatly needed!
@jwcharp There are many bugs to be fixed. Release data has been delayed, I cannot tell you the exact date.
@jwcharp There are many bugs to be fixed. Release data has been delayed, I cannot tell you the exact date.
Thank your quick reply @DJI-William I am most interest in the Media Manager and ability to transfer files.
We have been working over a year and are about launch a 360 Drone Video App for DJI Mini SE and Mini 2. We want to recommend the Mini 2 due to better communication radio which yields better FPV, if the 360 photobooth operator wants to screencast the feed to a nearby TV.
You can see a demo of our product here: https://www.youtube.com/watch?v=XExYzZCN2x8&feature=youtu.be
If you are unable to release the SDK, is there a way we can override this media manager connection class with the bug fix in our code, so we can download the short 360 revolution video clips with more stability? As currently it seems to only have about a 50% success rate on app start of being able to see the SD card on the Mini 2.
Our market is the thousands of photo and video booth vendors around the world. This could mean potentially thousands of Mini 2 sales for DJI (I'm sure just a drop in the bucket compared to DJI's Enterprise and Military contracts). But this product could also make drones even more popular for the everyday person. Almost like free advertising at events that will be using our 360 Drone Photo booth App.
Thank you in advance and any information you can provide will be greatly appreciated!
We will try fix it but 4.16.x has a low priority now. There is no way for you to fix it. Very strange, other people say this is easy to reproduce but it is very hard for us. Could it depends on the cell phone model?
@DJI-William We are using tablets. The 3 tablets we have tested on are the following: Samsung Galaxy Tablet S7 SM-T733 Samsung Galaxy Tablet S8 SM-X700 Lenovo Yoga Tab 11 ZA8W0084US
What mobile android device are you using? We can get one to test with and see if we have a more stable connection.
Could it be the SD card, do you have a preferred SD card? We have currently been using a ScanDisk Extreme 128GB MicroSD XC - amazon link
We see a failure of 50-66% where we are unable to access the drone SD card. We have just also officially launched the app - https://play.google.com/store/apps/details?id=org.DroneBooth.app And website - https://360dronebooth.com/
Hope we can find a solution for the Mini 2.
Thanks for the replies!!
I reported this same issue 7 months ago to email support - we had to disable our media gallery for mini 2 as it's essentially useless with this bug. Very much doubt it has anything to do with the device model, we tested several devices all with same issue (Samsung Tab S5e, Samsung S20, Google Pixel 6 and others)
Hello this is Al Charpentier, CEO of 360 Motion Labs.
Thank you again for your prompt response this week. I want to plead for DJI's help on this issue. We are about to head to a very important trade show in less than 3 weeks (February 19th) in Las Vegas where we hope to sell hundreds of your drones, to people who would not have purchased a drone previously. Over the course of the next year we expect 2000+ to purchase a new DJI drone. We have put in over a year of development with our small team, and this will all be all for nothing.
If you want to download our app on the Android play store here, we can send over a license key. App download:
Here are the tablets we are recommending: Samsung Galaxy Tablet S7 Samsung Galaxy Tablet S8 Lenovo Yoga Tab 11
You will need to download and print a small 8"X8" helipad:
You will see that the Media Manager (SD card) is not accessible about 50+% of the time and requires a full start on the app to reinitialize and try again.
We hope this request is kindly reviewed and accepted.
You can learn more about our really neat new app here:
When we embarked on this development journey, we believed the Mini 2 SDK would be in a spot that minimally allows basic functionality without much issue. Without this fix, all of this hard work will be for nothing.
I look forward to your reply.
Thank you,
Al Charpentier
Can you guys provide a very clear reprodue method to us. We cannot reproduce it. Please watch this testing video.
https://user-images.githubusercontent.com/77274755/216567460-fd0b6491-bfa5-4053-8804-e691d1d3687c.mp4
Hi @DJI-William,
Spent the day trying to classify the issue at hand. While we are seeing additional issues in our App in just getting the SD card file list at times. When in this state the list only returns DJI_0000.jpg. However, in the Sample App trying to download or having the Ability to download fails 66% of the time on fresh Sample App starts or Restarts.
Upon further review, in comparison to your video, we are attempting to download ~15 second .mp4 videos from the drone. Your video shows .jpg image downloads, which could be a notable difference. The sample application is able to enter playback and show each video on the SD card, but the download of the file(s) is unsuccessful. The error seems to arise from the fetchFileData call, and the application gets into the onFailure callback. We have added a video below of the steps that we've taken. I can send you a video file taken by the drone if that would help reach a solution. Please note we are using a Mini 2 and testing in low traffic zones - so connection issues are not likely at all.
We also have no issue on the Mini SE getting the file list or downloading, so feel that the issue is not due the type of SD card we are using.
Thank you again for your attention to this matter, I am hopeful we will find the solution together.
https://user-images.githubusercontent.com/7977270/216725333-69d6664e-60cd-4ada-8dd9-68ec8604e74c.mp4
In our case, using the latest SDK demo and Mini 2 firmware, if we have not tested after a long time, photos usually load fine in the media manager sample on the first test. Then usually after one restart of the app, the media manager lists a single (fake) DJI_0000.jpg photo and stops working entirely. Restarting the app does not fix the issue, factory resetting the device (in this case pixel 6) does not fix the issue, formatting the sdcard in DJI Fly or hard formatting the sdcard in windows does not fix the issue either. It is just stuck in that state until we test again one or 2 months later (not sure exactly how long) then it works once and gets into the bugged state again.
William,
I've tried my best to help understand the DJI_0000.jpg issue. This footage shows the media manager interaction with a Mini 2.
The SD card (same SD card as yours) is entirely blank to start. Next, I record a short .mp4 video that is saved to the SD card inside the Mini 2. When I open the media manager after recording the video, the only file is DJI_0000.jpg. This is also the only file even after recording multiple videos.
https://user-images.githubusercontent.com/103587122/217079146-ec96eb56-c42b-4e43-8d61-36e006c17eb4.mp4
I have repeated this process multiple times, but I almost always get the same result. There is about a 5% chance that the media manager will work correctly, from my testing.
A difference that I noticed between our videos is that you are able to shoot a single photo on your Mini 2 within the Sample Demo. When I attempt to take a single photo, a toast message says "Camera is busy or the command is not supported in the Camera's current state". I can write logic to fix that popup and correctly put the Mini 2 in single shoot mode, but I want to leave the Sample Demo as untouched as possible.
When I perform the same actions in my video on a Mini SE, everything works as intended and I am able to see the files on the SD card.
Please let me know what else you would like me to recreate, I hope this is helpful!
I think it is something wrong in parsing the maediaManager packet in protols, will check it.
Seems like there is no hope for a fix for this...
@DJI-William will you be pushing and adding support for v5 mSDK to mini 2 and other legacy mini products? (Mini 2, Mini SE, Mini 2 SE)? And would v5 resolve this issue?
Is there a way to load v5 and v4 mSDK so 1 app can support all drones? we are struggling how to get both SDKs in 1 App
@vctechplus are supporting both v4 and v5 in your app?
Thank you, Joe
v4 and v5 can't be used in the same app as far as I know still hoping for a mini 2 gallery fix at some point
I'm also seeing all of these issues. As well as all of the issues mentioned previously with the mini 2 in this thread, I find the SDK often fails to get the camera to enterPlayback mode. I can see from my log outputs that intermittently the completion handler does not fire at all. The only way to fix it is multiple restarts of the drone/RC and app running the SDK.
DJISDKManager.getInstance().getProduct().getCamera().enterPlayback(djiError -> {
Log.d("DEBUG", "enterPlayback completion handler");
if (djiError != null) {
Log.d("DEBUG", djiError.getDescription());
} else {
Log.d("DEBUG", "NO ERROR FROM camera.enterPlayback");
}
});
Log.d("DEBUG", "After camera.enterPlayback");
Did anyone ever figure out a workaround for this issue or is it unfixable without an SDK or firmware fix from DJI?
@DJI-William @dji-dev are there any possibilities of an updated version of the v4 mobile sdk for Android?