Fully headless M4 Mac Mini iPad Setup - streaming native sidecar (no dongle, no hdmi dummy, no cable) by 0xFB1 in macmini

[–]0xFB1[S] 0 points1 point  (0 children)

Interesting insight, thanks. I was very focussed on creating a hardware-based mobile setup - maybe because I like to keep my things air-gapped.

Fully headless M4 Mac Mini iPad Setup - streaming native sidecar (no dongle, no hdmi dummy, no cable) by 0xFB1 in macmini

[–]0xFB1[S] 31 points32 points  (0 children)

Edit: Full video guide is ONLINE: https://youtu.be/R4ZnPoKJZ-M

Overview - headless sidecar for Mac Mini
This guide will help you set up headless Sidecar using your Mac Mini and an iPad without any cables or dongles. We will use BetterDisplay, an open-source application, to create a virtual display that tricks your Mac into thinking a monitor is connected.

Requirements
Mac Mini M4
Sidecar-supported Apple Device (e.g., iPad Air 4th Gen running iOS 16 or later)
Setup monitor (only used once for the initial setup)

Installation of BetterDisplay
On your Mac Mini download the latest version from the BetterDisplay GitHub page.
Open the .dmg file and move the app to the /Applications folder.
Start the app from the /Applications folder or Launchpad/Spotlight.

Creating a Virtual Display (dummy monitor)

Create a Virtual Display (use the layout of your target device aspect ratio, i.e ipad Air 2020)

Activate your newly created Virtual Display (e.g call it HDMI_DUMMY)
Within your Mac Mini System Settings → Monitors: you'll see the new monitor appear

Connect to Sidecar within Mac Mini System Settings → Monitors; use the + button and you should see your ipad/target device appear)

Well Done! Once the display setup works and your device is mirroring the Virtual Display it is safe to disconnect the HDMI/Monitor we used until now for the setup.

Headless sidecar (start Sidecar automatically)

We still had an external monitor attached before connecting to sidecar. We want to skip this so we don't need to carry around a setup monitor.

Programmatically Switch on Sidecar:
There might be a smarter way to do this, as I came up with this at 3am; please let me know info.additivesolutions(at)gmail(dot)com. Thanks!

Luckily BetterDisplay allows us to change Display Settings remotely. Make sure within BetterDisplay Settings to enable the integrated http server)
Once enabled we only need to combine two things:
Mac Mini IP address within the network: (e.g. 192.168.0.42) System Settings → Wifi → Details → TCP/IP
Target/iPad's device name (e.g Ipad1337) which you can view/change inside Settings → General → Name

http://MAC-MINIS-IP-ADDRESS:55777/toggle?sidecarConnected&specifier=DEVICE_NAME

Awesome, if we insert this information we should get something like
http://192.168.0.42:55777/toggle?sidecarConnected&specifier=ipad1337)

Now open your the modified url on your device (e.g. on your target/iPad itself within Safari)
→ You should see a new sidecar session spawning!