You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Namely:
* `AppleSerialShim` must be disabled not just for Monterey but any older
macOS version; emphasize that point,
* SIP must be disabled; while the user is there, you might as well have
them run through the startup security downgrade steps while they are
there,
* the list of "except" ports on https://support.apple.com/en-us/111336
seems to be a hint to which are the DFU ports, add the link for
reference in case this is true,
* `cu` on macOS doesn't work well for the debug console port; this
slightly adjusted `picocom` invocation found from the IRC archives
works much better.
The commit also makes some other light wording tweaks. This doc could be
further improved still, but it's a start.
Signed-off-by: 3405691582 <dsk@google.com>
Copy file name to clipboardExpand all lines: README.md
+16-14Lines changed: 16 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,29 +15,29 @@ This is based on portions of [ThunderboltPatcher](https://github.com/osy/Thunder
15
15
16
16
Thanks to t8012.dev and mrarm for assistance with the VDM and Ace2 host interface commands.
17
17
18
-
## Note about macOS 12
18
+
## Note about macOS versions 12 and up
19
19
20
-
To have access to the serial console device on macOS Monterey (12), you need to disable the `AppleSerialShim` extension.
20
+
To have access to the serial console device on macOS Monterey (12) or any later version, you need to disable the `AppleSerialShim` kernel extension.
21
21
22
22
**Note:** This requires downgrading the system security and may cause problems with upgrades. Use it at your own risk!
23
23
24
-
Start by generating a new kernel cache, without the `AppleSerialShim` extension:
24
+
Start by booting into 1TR:
25
+
26
+
1. Power off your Mac
27
+
2. Press and hold the Power button until the boot menu appears
28
+
3. Select “Options”, then (if necessary) select your macOS volume and enter your administrative password.
29
+
30
+
Disable System Integrity Protection (SIP). Select Utilities > Terminal and run `csrutil disable`. While you are here, select Utilities > Startup security and switch the macOS installation to reduced security.
31
+
32
+
Back in macOS, generate a new kernel cache without the `AppleSerialShim` extension:
Replace `<soc>` with `t8101` on M1 Macs and `t6000` on M1 Pro/Max Macs. If you’re unsure, `uname -v` and look at the end of the version string (`RELEASE_ARM64_<soc>`).
31
39
32
-
Then, enter 1TR:
33
-
34
-
1. Power off your Mac
35
-
2. Press and hold the Power button until the boot menu appears
36
-
3. Select “Options”, then (if necessary) select your macOS volume and enter your administrative password.
37
-
38
-
Select Utilities>Startup security and switch the macOS installation to reduced security. Exit Startup security.
39
-
40
-
Select Utilities>Terminal and install your custom kernel:
40
+
Go back to 1TR, select Utilities>Terminal and install your custom kernel:
@@ -47,7 +47,7 @@ Replace `<volume>` with the name of your boot volume.
47
47
48
48
You can now reboot: macOS should start as normal, and the serial device `/dev/cu.debug-console` should be available.
49
49
50
-
To revert back to the default kernel, enter 1TR again, access Utilities>Startup security and switch to full or reduced security.
50
+
To revert back to the default kernel, enter 1TR again, access Utilities>Startup security and switch to full or reduced security, as well as reenabling SIP with `csrutil enable`.
51
51
52
52
## Building
53
53
@@ -60,6 +60,8 @@ Connect the two devices via their DFU ports. That's:
60
60
- the port next to the MagSafe connector on the 14" and 16" MacBook Pro
61
61
- the port nearest to the power plug on Mac Mini
62
62
63
+
([This list of ports](https://support.apple.com/en-us/111336#connect) might also be useful for other hardware not listed here.)
64
+
63
65
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.
64
66
65
67
Run it as root (`sudo ./macvdmtool`).
@@ -74,6 +76,6 @@ Commands:
74
76
nop - do nothing
75
77
```
76
78
77
-
Use `/dev/cu.debug_console` on the local machine as your serial device. To use it with m1n1, `export M1N1DEVICE=/dev/cu.debug-console`.
79
+
Use `/dev/cu.debug_console` on the local machine as your serial device. To use it with m1n1, `export M1N1DEVICE=/dev/cu.debug-console`.`picocom` generally works better than `cu` for this; use something like `sudo picocom -q --omap crlf --imap lfcrlf -b 115200 /dev/cu.debug-console`.
78
80
79
81
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.
0 commit comments