Apple Silicon to Apple Silicon VDM tool
This tool lets you get a serial console on an Apple Silicon device and reboot it remotely, using only another Apple Silicon device running macOS and a standard Type C cable.
I have no idea what I'm doing with IOKit and CoreFoundation -marcan
This is based on portions of ThunderboltPatcher and licensed under Apache-2.0.
- Copyright (C) 2019 osy86. All rights reserved.
- Copyright (C) 2021 The Asahi Linux Contributors
Thanks to t8012.dev and mrarm for assistance with the VDM and Ace2 host interface commands.
Install the XCode commandline tools and type
Connect the two devices via their DFU ports. That's the rear port on MacBooks and the port nearest to the power plug on Mac Minis.
You need to use a USB 3.0 compatible (SuperSpeed) Type C cable. USB 2.0-only cables, including most cables meant for charging, will not work, as they do not have the required pins. Thunderbolt cables work too.
Run it as root (
Usage: ./macvdmtool <command> Commands: serial - enter serial mode on both ends reboot - reboot the target reboot serial - reboot the target and enter serial mode dfu - put the target into DFU mode nop - do nothing
/dev/cu.debug_console on the local machine as your serial device. To use it with m1n1,
For typical development, the command you want to use is
macvdmtool reboot serial. This will reboot the target, and immediately put it back into serial mode, with the right timing to make it work.