iNavFlight / inav-configurator

GNU General Public License v3.0
589 stars 318 forks source link

Flashing Firmware MacOS #1360

Closed mikekenyon99 closed 2 years ago

mikekenyon99 commented 3 years ago

Can someone share the tips of how you flash boards with a Mac? I have seem to spend my life getting the "No response from the boot loader". I have tried with two Mac Mines and one MacBook Pro. All of them are running the latest macOS Big Sur 11.6. After about 30 mins of unplugging, restarting I eventually got one of my boards to update but now nothing.

I have Matek F722-WING boards x2. It's the same on iNav Configurator 2.6, 3.0.0, 3.0.1, 3.0.2. (edit: and now 4.0).

What becomes a quick job turns into an evening epic every time. What is the secret?

Mike

ZJyche commented 2 years ago

I'm using a Macbook pro2020 (Intel version) I'm using kakute F7 V1.5 I had no trouble Flashing the firmware, just like I did on Windows

Perhaps you can try using BetaFlight Configurator to select a local INAV HEX file for flash

MrD-RC commented 2 years ago

Have you tried a different USB cable?

mikekenyon99 commented 2 years ago

Hi - yes I did. It just appears very hit and miss - I always get there in the end but no-way is it a 'plug in, flash, carry on'. I have been using iNav and Mac's for many years now (since iNav 2) and it's never been very reliable. I fully appreciate that it's Open Source and people are doing it in their free time so I don't make a fuss but for me it's a known weakness area.

Cheers

Mike

riverbasin commented 2 years ago

Hi All. I am having a similar issue. I have tried to connect a brand new Matek F405SE (F405-WING) using INAV 4.0. I am totally new to to this and super excited about getting going but I am getting no traction, alas. I am a USB cable that I know works - just tested it with another device. I am on a new M1 running Monterey with a USB C to USB dongle. I have tried using my older Intel mac running Catalina with the same result (no dongle). Betaflight yields similar results.

Any tips for getting connected?

The log reports:

2022-01-15 @ 11:53:31 -- Running - OS: MacOS, Chrome: 87.0.4280.141, Configurator: 4.0.0 2022-01-15 @ 11:53:32 -- Loaded release information from GitHub. 2022-01-15 @ 11:53:52 -- Serial port successfully opened with ID: 1 ... 2022-01-15 @ 12:03:46 -- No configuration received within 10 seconds, communication failed

wx4cb commented 2 years ago

if you are using the cu device try the tty version of the same device. or vice versa

riverbasin commented 2 years ago

Hi wx4cb - thanks for the tip. Can you be more explicit please? I can go into /dev and see a lot of tty devices via ls, but I do not know which is the flight controller. How do I toggle between cu and tty as you suggest?

wx4cb commented 2 years ago

the usb dongle will be something like /dev/cuUSB0 or something along those lines, then there's be another that's something like /dev/ttyUSB0... not sure what the specific name is, but that will give you an idea, as for switching between them just select it from the drop down.

I don't have my mac to hand to look what it is on mine, but that should give you some idea

riverbasin commented 2 years ago

Good ol' StackOverflow gave the hot tip for identifying tty and cu device IDs of a usb device:

$ ls /dev/tty* | grep usb /dev/tty.usbmodem0x80000001

$ ls /dev/cu* | grep usb /dev/cu.usbmodem0x80000001

I double checked by plugging and unplugging, and yup, the Matek is that device. So the computer sees it. Now to get INAV to see it. So, how to use this information to try and get connected to INAV as @wx4cb suggest? Thanks!

riverbasin commented 2 years ago

Select from the drop down in INAV?

wx4cb commented 2 years ago

Select from the drop down in INAV?

yes

riverbasin commented 2 years ago

Okay, I'll give it a shot. Thanks!

riverbasin commented 2 years ago

That worked! Geez - I overlooked the drop down altogether at the beginning. I thought it was only for wireless connectivity! But I learned stuff on the way. Cheers @wx4cb !

riverbasin commented 2 years ago

@mikekenyon99 and others, I though I would follow up with some other things I learned about connecting on a Mac. It seems that the serial connection goes stale after each connection and disconnection from INAV. I have experienced a similar situation with other applications. The solution is unplug and re-plug your board each time you intend to interact with the board from INAV. For instance, you connect, do something from the CLI, then disconnect. Then you realize you wanted to do something else - you must first unplug and replug before attempting to reconnect.

mikekenyon99 commented 2 years ago

@riverbasin thanks for very much for that info - I wasn't aware of that and I will bear it in mind. However, the problem is always with firmware flashing, so you can't unplug/plug like you suggest. I can replicate the issue on two Mac mini's and two MacBook Pro's so there is definitely an issue OR it's the Mateksys flight controllers that I always use.

Normal plugging in and configuration is fine. As I mentioned previously it's open source so I can't complain but I wanted to post here so if anyone else had the issue they could at least see the commentary and see that it's a proper bug/issue and not to get frustrated.

wx4cb commented 2 years ago

@mikekenyon99 and others, I though I would follow up with some other things I learned about connecting on a Mac. It seems that the serial connection goes stale after each connection and disconnection from INAV. I have experienced a similar situation with other applications. The solution is unplug and re-plug your board each time you intend to interact with the board from INAV. For instance, you connect, do something from the CLI, then disconnect. Then you realize you wanted to do something else - you must first unplug and replug before attempting to reconnect.

to be honest. ive noticed a similar thing in windows

FlyingKennel commented 2 years ago

Hi - new to all of this, never used a flight controller before but I really fancied an OSD on DJI goggles, thought it would be really useful for edf jets - in configurator I can get as far as selecting the board firmware I want and the relevant configurator version, but no matter what I've done so far I get a "failure to communicate with boot loader" message - are you folks using commands in CLI for the whole firmware flash process as a workaround..? Apologies if that's a naive question, I'm an RC pilot with virtually no programming skills.

FlyingKennel commented 2 years ago

Ref my recent post - I've managed to successfully flash my F411WSE, here's what I did differently, hope it helps...The configurator "sniffs" the port from the Mac when you physically connect - eventually, I tried manually selecting that same port from the drop down menu and promptly pressed the "flash firmware" screen icon - bingo ! That allowed it to enter DFU mode and flash the firmware successfully... or the thing finally took pity on my repeated attempts - anyway, that worked for me, one more thing to try if you're banging your head off the wall...😜