mavicBreak / DroneZBreak

Change DJI drones flight controller parameters and flash firmwares natively on OSX
81 stars 24 forks source link

Error: Firmware version can not be retrieved (Spark) #3

Closed Jokerx3 closed 6 years ago

Jokerx3 commented 7 years ago

Hi,

first of all I want to thank a lot for this good looking application. But since the first start I got the message:

Firmware version can not be retrieved. It might be a problem with accessing the service. Restart DJI Assistant and DroneZBreak or you may try to re-install DJI Assistant completely and disconnect internet before starting DJI Assistant (to avoid silent patching by DJI).

I'm on Sierra 10.12.6 with my MacBook Pro 15" Mid 2015 and having the newest DroneZBreak version 0.4 running and having Assistant 2 1.1.2 -2 beta. I reinstalled Assistant 2 and restarted my Mac but I got the same error again. In Assistant 2 the Spark is recognized correctly. The Spark is on .500 firmware.

Could you help out please?

mavicBreak commented 7 years ago

Once DroneZBreak has started but before starting Assistant and connecting your drone please press CMD+D to enter debug mode. Window title changes to "debug" confirms this. Then start Assistant and connect your drone. When you experience the problem please look for the DZB_log.txt file on your desktop and upload it for further investigation.

Meanwhile can you please try it with DJI Assistant 2 version 1.0.9? Some Win users reported this issue but was never reported on Mac. If you have the opportunity please also try it on another Mac.

Jokerx3 commented 6 years ago

Thanks for your reply. CMD+D is not working for me, nothing changes. When I press it the Mac sound for not recognizing the command plays. Of course despite DroneZBreak is highlighted. I tried with assistant 1.0.9 but I'm getting the same error. Could you send me a version with debug mode enabled by default?

mavicBreak commented 6 years ago

Let me check this I will get back to you.

mavicBreak commented 6 years ago

Are you sure CMD+D is not working in v0.4? I have just tested it on two different Macbooks with Sierra and it works.. If you launch DroneZBreak without DJI Assistant running it will pop up a message to start it. You should press NO and then press CMD + D. These modal popup windows are inhibiting shourtcuts in any osx app.

Jokerx3 commented 6 years ago

Thanks for your fast reply. I'm sure it is not working for me, sorry. I'm an experienced Mac user, it's not due to my skill :P

mavicBreak commented 6 years ago

Okay that is strange. Version .5 is rolled out with the debug button lets try with this.

Jokerx3 commented 6 years ago

Thanks a lot, now it's working! I really appreciate your fast reaction. I attached the log. DZB_log.txt

mavicBreak commented 6 years ago

Okay from the log it seems that for some reason your Spark is not providing the firmware version when DroneZBreak is calling the upgrade service.

"DEVICE_CONNECTED": true, "ERROR": "FAILURE", "ERROR_MESSAGE": "Unknown error",

This is generated by your Spark as an answer for a simple request. I was thinking about if there is some new code in FW500 but there is not, because it works perfectly with a Spark on fw 500 that I have just tried. So it could be either something unusual with your drone, or the communication is interfered by Assistant for some reason what I can't investigate further from here. If you can try it on another Mac please do so, or maybe in a guest account with a fresh install of DroneZBreak, DJI Assistant 1.0.9 or 1.1.2 -2 beta installing everything OFFLINE and in offline state try to connect. You don't need to log in to Assistant with your account.

mavicBreak commented 6 years ago

Have you used DroneZBreak, pyDUML, DUMLdore, etc for any upgrade/downgrade in the past?

Jokerx3 commented 6 years ago

No, never. I will try what you suggested and will keep you updated, thank you!

Jokerx3 commented 6 years ago

I tried creating a new admin account on my MacBook and tested everything offline but still getting the same result. I had to reinstall Assistant within the new test account otherwise the Spark wasn't even recognized in Assistant. I tested again Assistant 1.0.9 and 1.1.2 - 2 . Tomorrow I will get the possibility to test everything on a MacBook Pro 2012 on El Capitan. I will post the results.

mavicBreak commented 6 years ago

All right. I have the feeling that someting might not OK with your setup. As an other option I would also try to do a complete reinstall of the firmware from Assistant or with DroneZBreak, pyDUML, DUMLdore, or DUMLrub. Note: if you go to the latest firmware (600 or above) there is an anti-rollback check. From these latest versions you can only downgrade by DUMLdore (at the moment) or by manually removing the cfg sig file from the backup folder on the FTP before flashing a lower firmware. From your current firmware (500) you can easily go down with DroneZBreak too. So feel free to reflash the frimware with Assistant or with any tool if is not okay with the MacBook as something is definitely wrong.

Jokerx3 commented 6 years ago

I tried DroneZBreak again with the same Spark with the same firmware on a different MacBook Pro with El Capitan. I installed everything offline and got the same error but with a different error message. I attached the log again. This evening I will try to reflash the Spark and test again.

09:35:44.6989 | { "DEVICE_CONNECTED": true, "ERROR": "FAILURE", "ERROR_MESSAGE": "Host mydjiflight.dji.com not found", "FAILED_DEVICES": [ ]

DZB_log.txt

dronething commented 6 years ago

Hmm what firmware version are you at? I'm curious

On Mon, Aug 28, 2017 at 4:42 PM marck1991 notifications@github.com wrote:

I tried DroneZBreak again with the same Spark with the same firmware on a different MacBook Pro with El Capitan. I installed everything offline and got the same error but with a different error message. I attached the log again. This evening I will try to reflash the Spark and test again.

09:35:44.6989 | {

"DEVICE_CONNECTED": true, "ERROR": "FAILURE",

"ERROR_MESSAGE": "Host mydjiflight.dji.com not found", "FAILED_DEVICES": [ ]

DZB_log.txt https://github.com/mavicBreak/DroneZBreak/files/1255416/DZB_log.txt

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/mavicBreak/DroneZBreak/issues/3#issuecomment-325283517, or mute the thread https://github.com/notifications/unsubscribe-auth/AcUyw6WesjwUQOnLH_ysir5MQgfTbu2xks5scm9mgaJpZM4PBF_i .

-- -arik-

Jokerx3 commented 6 years ago

I have written this in my first post, I'm on .500 , always upgraded two times the official way starting on .300.

dronething commented 6 years ago

@marck1991 that error message said that your computer can't resolve mydjiflight.dji.com domain. do you run application online or offline? if it's offline try online.

mavicBreak commented 6 years ago

Yep it looks like Assistant is blocking the upgrade service communication for some reason on the drone. DroneZBreak needs this to resolve the version of the firmware.

Jokerx3 commented 6 years ago

It worked at the different Mac now in online mode with Assistant 1.1.2 -2 , was in offline mode before. I have to figure out why my Mac is not functional, thanks a lot for your fast assist. So the problem was not due to my Spark.

Jokerx3 commented 6 years ago

@mavicBreak @dronething I found the mistake! I blocked all outgoing connections for Assistant using LittleSnitch (Mac software firewall). After deleting this rule DroneZBreak is also functional on my Mac. Maybe you could write this online hint into the readme.

mavicBreak commented 6 years ago

Awesome. Thanks for investigation. Issue is closed.