Situation:
- The author is running macOS ARM64
- off of a USB disk
- plugged into DFU capable USB-C port
- that shouldn't be the DFU one according to docs
- attempting to run macOS updater
- (supposedly)there's nothing else connected to it
Outcomes:
- updates were failing and rolling back with cryptic errors
- errors persist despite all efforts
- -> later magically solved after changing the port
- -> the problematic port later revealed to be the DFU port
- contradictory to Apple documentation
Or at least that's how it reads to me. As for reasons, I don't know why anything that can boot from USB can't from DFU-enabled USB port, but maybe it's configured as a special non-USB debug connector while bootloader is executing. - plugged into DFU capable USB-C port
This is what I'm contending. No, I don't think this is true. All he found was the upgrading macOS on the external disk, which as documented must not be on a DFU capable USB-C port, did not work when plugged into a port that was documented to not be DFU.The source the author is referring to, Michael Tsai, indeed found that he had plugged his external disk into the DFU port. The author then (reasonably, but IMHO erroneously) deduced that his problem, also solved by changing ports, must thus have had the same cause. I say it may be confounding factors, and the only way to validate the wrong DFU port hypothesis is putting their mac in DFU mode and then running Recovery Assistant (from another machine) against it, on various ports.
Tangentially, it is infuriating that Apple would swap what the DFU port is across generations, as if it wasn't confusing enough.
Also...
> As for reasons, I don't know why anything that can boot from USB can't from DFU-enabled USB port, but maybe it's configured as a special non-USB debug connector while bootloader is executing.
My guess is it's because DFU requires the port to be in Device mode, whereas booting from a external disk requires the port to be in Host mode. Apple care about boot time, so perhaps they don't want to waste time in the boot process to check the port in Device mode for a few secs, then switch to Host mode to try external disk booting.
If you don't think it's true you're "contesting" it not "contending" it. To "contend" is to argue, so you would only use that if you were adopting the argument you quoted.
At most the DFU capable USB port on the Mac doesn't support booting of USB mass storage devices for some stupid reason.
And I guess because of the wide variety of third-party hardware macOS has to support, it's not practical to write a pre-flight check into the update process either.
He is saying the documented _behaviour_ of DFU port is wrong (or, at least, in complete.)
> This is wrong, a discovery that took me about a half dozen attempts to update macOS on an external disk. I have a 16-inch MacBook Pro with an M4 chip, specifically an M4 Pro chip, and the DFU port seems to be the USB-C port on the right side of the Mac, not on the left side."
It appears that the author is directly contradicting your read.
Correct.
I'd rather not. I'm not even sure that I have all the prerequisites on hand.
> I'm not sure why they're blaming the DFU port documentation.
1) The documentation says that macOS cannot be updated on the DFU port.
2) Switching ports allowed my macOS update to succeed after repeated failures on one port.
3) The 14-inch MacBook Pro with M4 chip is documented as different from all other models, but strangely, not the 16-inch MacBook Pro with M4 chip.
You don't present any alternative theory for the behavior, just assert that I'm wrong.
Not the GP, but it is easy to refute your theory. Just do a DFU with the port indicated by Apple and it works per Apple instructions. I have personally tested this and can attest it works as intended.
I don't think one logically needs to be burdened to come up with an alternative theory for why your macOS update process to be able to conclusively refute your implication of Apple docs about which port is DFU being wrong.
I've dealt with this in the past two weeks, actually.
I had an M1 MBP that I needed to re-pave with Monterey. Yes, it's end-of-support, but it's also only 4 years old. And should run on that Mac.
So, first step, I make a USB installer, and run it. Great. Reboots, and says "FYI, this is an unsupported OS. You can install a newer OS instead, or run Monterey in "Reduced Security" mode." That was fine for me.
"Installation of Reduced Security mode failed." Nothing else. Eventually my understanding of this was because the machine had been upgraded previously all the way to Tahoe, that somewhere along the line some firmware or something in the EFI had been upgraded and was too new for Monterey.
So what then?
Hmm, more research. "Do an IPSW image restore via DFU", i.e. pave it with a largely installed image. Could work, might have the same issue, but I'm stuck right now, with a Mac I can't install anything on, a four year old $3,000 brick.
Alright, I have a Mac Studio. I get the IPSW image, and Apple Configurator. Connect the two as per Apple's instructions, and (different here to OP), the MBP does indeed show up in Configurator as being "not booted, DFU mode".
Apple's instructions, "Drag the IPSW image onto the DFU 'box' for the target Mac". No. It doesn't light up like it's accepting a drag and drop, and indeed it doesn't. Nor does it accept a "restore..." or similar from the Configurator menu options. There's nothing in Configurator that seems to allow you to image the MBP.
Off to ChatGPT, Reddit, etc., I go.
Much repeating of the same. However, ChatGPT pokes a little button. Near the very end of its answer, it says "Newer versions of macOS may have limitations on the age of the image they might restore. You may need a slightly older macOS to do this. Even an Intel MBP running Ventura could work."
As fortune has it, my fiance happens to still have her old i5 MBP with touchbar, and the latest version of Ventura...
Alright, I need Configurator on this laptop.
No, says the App Store, "You need macOS Sequoia to install Configurator".
I find someone who has helpfully zipped up an older version of Configurator that runs on Ventura, and in the end, it works.
But Apple's docs absolutely are incorrect/incomplete about Configurator, and DFU restores.
"You can use Restore... in the Configurator menu to select the software image". No, you can't, even leaving aside the "old/unsupported". It actually means restoring from a "backup" (presumably Time Machine, though it doesn't specify) and you can't select any file or image.
"Drag the image onto DFU". Doesn't work in that situation, no error, no "hey, you're doing the right thing but I can't do this", just acting like a fool trying to drag the image onto DFU only to have it bounce off.
Like I said, I didn't have the DFU port issues, but Apple's docs on how to make this happen were either non-existent, or incorrect about the process, or flat out told me I couldn't do it. But mostly non-existent and overly simplistic covering the most basic scenarios only - which I get for general support, but by the time you are "connect to a second mac in DFU mode and run Configurator" in their own words, we're way beyond simplistic "you can just install a newer macos" type "instructions".
No, it's not easy. I just said, in the comment you replied to, "I'm not even sure that I have all the prerequisites on hand."
> I have personally tested this
On my Mac model?
To be clear, I'm saying that the doc is wrong about my specific, relatively new Mac model, which I bought a year ago. I'm not claiming that the doc is wrong about other, older Mac models.
I have an M4 Pro, so you have not tested with my specific model.
> I am sure many other people would have noticed if the DFU port was marked incorrectly.
Why? Again, I'm not generalizing to many Mac models. Apple's doc specifies a very limited exception: 14-inch MacBook Pro with M4 or M5 chip.
And among users of the limited exceptions, who would notice except the few who need to DFU or the few who have macOS installed on an external disk? That doesn't sound like so many to me.
> a bug in macOS updater
So vague as to be an unhelpful handwave.
> Just as an example, I have a USB-C flash device that is so flaky that sometimes does not work with a port on one direction and connect/disconnect and flipping the direction works.
This example is not applicable to my case. The external drive otherwise works perfectly. It's not flakey at all. And in fact it boots into macOS Sequoia just fine, and software update on the volume works fine for non-macOS updates, such as Safari. So again, you've given me zero alternative theories.
Moreover, the symptoms that Michael Tsai described in his case of using the DFU port are exactly the same as the symptoms that I experienced.
[EDIT:] I looked around, but unfortunately I don't appear to have the proper cable to perform a DFU test. In fact I usually need to use some damn dongle just to connect to USB-C.
FYI, USB-3.0 C-to-A dongle + USB-3.0 A-to-C cable definitely works (haven't tested USB 2.0). The C side of the cable needs to be plugged in to the machine being DFU'd not the host machine where the dongle goes.