frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Apple's MacBook Pro DFU port documentation is wrong

https://lapcatsoftware.com/articles/2026/2/1.html
53•zdw•3h ago

Comments

vlovich123•1h ago
I’m curious if anyone knows the reason it’s so strict about the port? It’s a weird thing. My best theory is maybe in DFU mode it skips HAL enumeration and just has a hardcoded link between that single port and the microcontroller that does DFU? It’s a stretch but that’s the main theory I have and would explain why they also sometimes had weird capability mismatches between ports on different sides.

Edit: according to ChatGPT that is basically the reason. That one port is connected to the SoC’s building PHY that’s guaranteed to be on without needing any firmware. Other ports are routed through other controllers and whatnot and those may require firmware. Also the DFU port is guaranteed to not need PD negotiation to turn on.

DFU could opportunistically try to load firmware and start those devices but it’s risky since the firmware may be what’s bricked and might itself break DFU so for simplicity it’s in an absolutely barebones mode that the CPU supports and is wired for directly.

comex•35m ago
ChatGPT is wrong. The DFU port does go through a USB controller with firmware. [1]

[1] https://asahilinux.org/docs/hw/soc/usb-pd/

AceJohnny2•1h ago
The author did not test the DFU flow, so I'm not sure why they're blaming the DFU port documentation.

Certainly there is a bug in the external disk upgrade sequence if switching the disk to a different (also non-DFU? They didn't specify) port solved their problem. But that's not necessarily related to which port is the DFU port.

To be clear, DFU (Device Firmware Upgrade) is a standard USB protocol (from 2004!), for a device to receive upgrades from a host. It is a specific port on the mac because that's all the boot-rom can support. This system does not come into play when booting from or upgrading an external disk, as the author was struggling with, because the external disk cannot be a USB Host to drive the DFU.

And I'm guessing that the reason macOS doesn't give more details is because macOS is likely not involved in the step that fails (maybe iBoot is?), and they didn't develop a way for the failing step to communicate failure data back to macOS. Yet another UX failure.

numpad0•23m ago

  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.
AceJohnny2•9m ago

          - 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.

js2•1m ago
[delayed]

Defeating a 40-year-old copy protection dongle

https://dmitrybrant.com/2026/02/01/defeating-a-40-year-old-copy-protection-dongle
418•zdw•9h ago•123 comments

Apple's MacBook Pro DFU port documentation is wrong

https://lapcatsoftware.com/articles/2026/2/1.html
53•zdw•3h ago•5 comments

Show HN: NanoClaw – “Clawdbot” in 500 lines of TS with Apple container isolation

https://github.com/gavrielc/nanoclaw
316•jimminyx•8h ago•91 comments

Notepad++ hijacked by state-sponsored actors

https://notepad-plus-plus.org/news/hijacked-incident-info-update/
566•mysterydip•5h ago•302 comments

Actors: A Model of Concurrent Computation [pdf] (1985)

https://apps.dtic.mil/sti/tr/pdf/ADA157917.pdf
52•kioku•5h ago•20 comments

My thousand dollar iPhone can't do math

https://journal.rafaelcosta.me/my-thousand-dollar-iphone-cant-do-math/
237•rafaelcosta•10h ago•114 comments

Apple I Advertisement (1976)

http://apple1.chez.com/Apple1project/Gallery/Gallery.htm
216•janandonly•13h ago•125 comments

Show HN: Wikipedia as a doomscrollable social media feed

https://xikipedia.org
107•rebane2001•6h ago•47 comments

Contracts in Nix

https://sraka.xyz/posts/contracts.html
29•todsacerdoti•22h ago•6 comments

Adventure Game Studio: OSS software for creating adventure games

https://www.adventuregamestudio.co.uk/
301•doener•17h ago•54 comments

Time Machine-style Backups with rsync (2018)

https://samuelhewitt.com/blog/2018-06-05-time-machine-style-backups-with-rsync
61•accrual•7h ago•23 comments

Treasures found on HS2 route stored in secret warehouse

https://www.bbc.com/news/articles/c93v21q5xdvo
47•breve•8h ago•16 comments

Leaked Chats Expose the Daily Life of a Scam Compound's Enslaved Workforce

https://www.wired.com/story/the-red-bull-leaks/
35•smurda•1h ago•1 comments

Ian's Shoelace Site

https://www.fieggen.com/shoelace/
99•righthand•12h ago•16 comments

Two kinds of AI users are emerging

https://martinalderson.com/posts/two-kinds-of-ai-users-are-emerging/
125•martinald•7h ago•114 comments

Efficient String Compression for Modern Database Systems

https://cedardb.com/blog/string_compression/
110•jandrewrogers•2d ago•27 comments

Founding is a snowball

https://blog.bawolf.com/p/founding-is-a-snowball
65•bryantwolf•3d ago•25 comments

Building Your Own Efficient uint128 in C++

https://solidean.com/blog/2026/building-your-own-u128/
55•PaulHoule•10h ago•24 comments

MicroPythonOS graphical operating system delivers Android-like user experience

https://www.cnx-software.com/2026/01/29/micropythonos-graphical-operating-system-delivers-android...
200•mikece•3d ago•61 comments

Building a Telegram Bot with Cloudflare Workers, Durable Objects and Grammy

https://flashblaze.xyz/posts/cloudflare-workers-durable-objects-telegram-bot/
13•flashblaze•4h ago•1 comments

A Crisis comes to Wordle: Reusing old words

https://forkingmad.blog/wordle-crisis/
76•cyanbane•13h ago•86 comments

In the Lab – Soldering Prototypes with Enamel Magnet Wire

https://tomverbeure.github.io/2020/02/22/In-The-Lab-Magnet-Wire-Soldering.html
16•hasheddan•2d ago•16 comments

Towards a science of scaling agent systems: When and why agent systems work

https://research.google/blog/towards-a-science-of-scaling-agent-systems-when-and-why-agent-system...
73•gmays•13h ago•25 comments

Netbird – Open Source Zero Trust Networking

https://netbird.io/
668•l1am0•21h ago•252 comments

FOSDEM 2026 – Open-Source Conference in Brussels – Day#1 Recap

https://gyptazy.com/blog/fosdem-2026-opensource-conference-brussels/
209•yannick2k•20h ago•116 comments

Amiga Unix (Amix)

https://www.amigaunix.com/doku.php/home
117•donatj•20h ago•50 comments

Show HN: Sandbox Agent SDK – unified API for automating coding agents

https://github.com/rivet-dev/sandbox-agent
35•NathanFlurry•4d ago•2 comments

Teaching my neighbor to keep the volume down

https://idiallo.com/blog/teaching-my-neighbor-to-keep-the-volume-down
649•firefoxd•12h ago•317 comments

Clearspace (YC W23) Is Hiring an Applied Researcher (ML)

https://www.ycombinator.com/companies/clearspace/jobs/GOWiDwp-research-engineer-at-clearspace
1•anteloper•12h ago

Troublemaker: The fierce, unruly life of Jessica Mitford

https://www.lrb.co.uk/the-paper/v48/n02/rosemary-hill/one-of-the-worst-things
20•against•4d ago•1 comments