All Projects → ben-z → Free Sidecar

ben-z / Free Sidecar

Licence: gpl-3.0
Enable Sidecar on Unsupported iPads and Macs running iPadOS 13 and macOS Catalina

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Free Sidecar

Purge Wrangler
AMD & NVIDIA eGPUs for all Thunderbolt Macs.
Stars: ✭ 960 (-17.17%)
Mutual labels:  apple, patch
Mkringprogressview
⭕️ Ring progress view similar to Activity app on Apple Watch
Stars: ✭ 1,140 (-1.64%)
Mutual labels:  apple
Rxswift To Combine Cheatsheet
RxSwift to Apple’s Combine Cheat Sheet
Stars: ✭ 1,040 (-10.27%)
Mutual labels:  apple
Ios Developer Tools
Tools that every iOS developer should know.
Stars: ✭ 1,111 (-4.14%)
Mutual labels:  apple
Wwdc
The unofficial WWDC app for macOS
Stars: ✭ 8,137 (+602.07%)
Mutual labels:  apple
Nord Xcode
An arctic, north-bluish clean and elegant Xcode color theme.
Stars: ✭ 63 (-94.56%)
Mutual labels:  apple
Xiaomi Ruby 15.6 Uma Only
macOS Big Sur on XiaoMi Ruby 15.6 (Opencore)
Stars: ✭ 44 (-96.2%)
Mutual labels:  apple
Ioc2rpz
ioc2rpz is a place where threat intelligence meets DNS.
Stars: ✭ 67 (-94.22%)
Mutual labels:  blacklist
Python Patch
Library to parse and apply unified diffs
Stars: ✭ 65 (-94.39%)
Mutual labels:  patch
Contacttracing Framework Interface
Objective-C header and synthesized Swift interface for Apple & Google's Contact Tracing Framework
Stars: ✭ 59 (-94.91%)
Mutual labels:  apple
Syncthing Macos
Frugal and native macOS Syncthing application bundle
Stars: ✭ 1,096 (-5.44%)
Mutual labels:  apple
Yesterday I Learned
Brainfarts are caused by the rupturing of the cerebral sphincter.
Stars: ✭ 50 (-95.69%)
Mutual labels:  apple
Cluster
Easy Map Annotation Clustering 📍
Stars: ✭ 1,132 (-2.33%)
Mutual labels:  apple
Amazon Fresh Whole Foods Delivery Slot Finder
A Mac tool that finds available delivery slots for Amazon's Whole Foods delivery and Amazon Fresh services
Stars: ✭ 1,048 (-9.58%)
Mutual labels:  apple
Revokemsgpatcher
A hex editor for WeChat/QQ/TIM - PC版微信/QQ/TIM防撤回补丁(我已经看到了,撤回也没用了)
Stars: ✭ 12,482 (+976.96%)
Mutual labels:  patch
Tr2main
Tomb Raider II Injector Dynamic Library
Stars: ✭ 46 (-96.03%)
Mutual labels:  patch
Cordova Plugin Sign In With Apple
A native-implemented plugin of Sign in with Apple // Thanks to your contribution! // Cordova>=8 iOS>=13
Stars: ✭ 57 (-95.08%)
Mutual labels:  apple
Rad Studio Xe 10.3 Windows
RADStudio XE 10.3.3 Rio - Activation & Documentation
Stars: ✭ 63 (-94.56%)
Mutual labels:  patch
Youtube ads 4 pi Hole
YouTube script to add the new Ads list for Pi-hole
Stars: ✭ 1,151 (-0.69%)
Mutual labels:  blacklist
Gsxlib
A PHP library for communicating with Apple's GSX web service API
Stars: ✭ 66 (-94.31%)
Mutual labels:  apple

Free Sidecar

Unlocks Sidecar for older, unsupported iPads and Macs (supports all iPads running iPadOS and Macs running macOS Catalina).

Download the lastest version

Full list of supported iPads (running iPadOS): iPad Air 2, iPad Air (3rd generation), iPad (5th generation), iPad (6th generation), iPad (7th generation), iPad Mini 4, iPad Mini (5th generation), iPad Pro 9.7-inch, iPad Pro 10.5-inch, iPad Pro 11-inch, iPad Pro 12.9-inch (1st generation), iPad Pro 12.9-inch (2nd generation), iPad Pro 12.9-inch (3rd generation)

List of supported Macs (running macOS Catalina): iMac: Late 2012 or newer, iMac Pro, Mac Pro: Late 2013 or newer, Mac Mini: Late 2012 or newer, MacBook: Early 2015 or newer, MacBook Air: Mid 2012 or newer, MacBook Pro: Mid 2012 or newer

Notes

  1. Apple uses a simple "blacklist" on macOS to disable iPadOS 13/macOS Catalina devices from using Sidecar. To work around this, we simply need to edit the blacklist in /System/Library/PrivateFrameworks/SidecarCore.framework/Versions/A/SidecarCore (can be done with any hex editor of your choice).
  2. This app is a UI for editing SidecarCore.
  3. This app is sandboxed and does NOT need root access. I've left everything that needs root access for you to execute in the Terminal.
  4. This app works on all versions of iPadOS and macOS Catalina, including upcoming releases (assuming Apple doesn't change how they blacklist devices—in which case this app will be a no-op).
  5. macOS Catalina 10.15.4 introduced a change that broke self-signed frameworks, which we are using. If you are on 10.15.4+, you need to go through one extra step (added as a substep under step 8 below).
  6. The entire process includes 2 restarts into the recovery partition and should take around 5-15 minutes.
  7. Wireless mode may not work for all older devices.

Getting Started

  1. Make a backup of SidecarCore (run this in Terminal):
cp /System/Library/PrivateFrameworks/SidecarCore.framework/Versions/A/SidecarCore ~/Downloads/SidecarCore.bak
  1. Copy SidecarCore from the System folder (run this in Terminal)
cp /System/Library/PrivateFrameworks/SidecarCore.framework/Versions/A/SidecarCore ~/Downloads
  1. Open Free Sidecar (note that macOS may prevent you from running the app. In that case, open System Preferences - Security & Privacy - General and select Open Anyway) and choose the location of the SidecarCore file to be patched (~/Downloads/SidecarCore from step 2).

Free Sidecar

  1. Click Enable to enable sidecar for the corresponding device. This will modify the SidecarCore that you've selected in step 3 (you will be replacing the system SidecarCore with this file in step 7):

    • Run sysctl hw.model in Terminal to find out your mac model. For iPad model, go here. Click Enable
  2. Disable System Integrity Protection. This will allow us to mount / as read-write and modify SidecarCore under the /System directory.

    1. Reboot into recovery mode (Press cmd-R when booting)
    2. Execute in Terminal in recovery mode:
    csrutil disable
    
    1. Reboot into macOS
  3. Mount system volume as read-write (in Terminal):

sudo mount -uw /
  1. Copy the patched SidecarCore back into SidecarCore.framework (in Terminal):
sudo cp ~/Downloads/SidecarCore /System/Library/PrivateFrameworks/SidecarCore.framework/Versions/A/SidecarCore
  1. Sign the patched SidecarCore (in Terminal):
    • If you see an error in this step, make sure you have xcode command-line tools installed (xcode-select --install, see #3) or updated (through App Store, see #2).
    • Don't restart your computer until you complete this step properly (or revert the backup file)! Many people have run into issues with this (#28, #22).
    • macOS Catalina 10.15.4+ users: Run sudo nvram boot-args="amfi_get_out_of_my_way=0x1", then skip step 9.
sudo codesign -f -s - /System/Library/PrivateFrameworks/SidecarCore.framework/Versions/A/SidecarCore
  1. (Optional, but recommended (but not recommended for macOS Catalina 10.15.4+)) Reboot Into Recovery, re-enable System Integrity Protection:
csrutil enable
  1. Reboot Into macOS, the patched devices should now work in wired mode.

Troubleshooting

  1. "The iPad picture quality is sub-optimal!"

    Try using wired connection. For older Macs without hardware HEVC encoder/decoders, it may need extra bandwidth to transmit the screen.

  2. "Error 32002"

    This happens on wireless connection for some models. Try using a wire instead and confirm your device appears listed on Finder and it's trusted. If it does not appear, try a different lightning cable (Some people have reported that wired isn't working either on some older models e.g. MacbookPro 2012)

  3. "None of my apps open anymore, They keep crashing!"

    You probably forgot to do step 8. If you can use the Terminal, do steps 5,6 and 8 again. If you can't use the Terminal (it keeps crashing), boot into single user mode and do steps 6 and 8 after doing step 5 in Recovery Mode.

  4. "In the code-signing step, I'm getting the codesign_allocate helper tool cannot be found or used."

    Make sure you have the latest Xcode comandline tools! See issues #2 and #3.

  5. On Macs without touch bar, the Use F1, F2, etc. keys as standard function keys preference may be replaced. See #61 and #56 for solutions.

  6. General questions to consider before opening an issue:

    1. Did you try wired mode?
    2. Does your device show up in Finder's sidebar?
    3. Did you click "trust" in Finder under the device tab?
    4. Did you try unlocking your iPad before connecting?
    5. Did you try restarting both devices and connecting again?
    6. Try these
  7. "My question isn't listed"

    Search in issues or open a new one! Note that I can only fix things that are specific to Free Sidecar (enable/disable sidecar for certain devices). Most usability issues with Sidecar can only be addressed by Apple.

  8. "I want to revert to the original SidecarCore"

    Hope you still have the backup file from step 1! (~/Downloads/SidecarCore.bak). Disable System Integrity Protection (step 5), mount the system volume as read-write (step 6) and run the following command in Terminal:

    sudo cp ~/Downloads/SidecarCore.bak /System/Library/PrivateFrameworks/SidecarCore.framework/Versions/A/SidecarCore
    
    • macOS 10.15.4+: Run sudo nvram -d boot-args
    • Earlier macOS 10.15 versions: re-enable System Integrity Protection (step 9).

    Your system should be in the same state as before you applied the patch!

Contributing

Submit PRs and open issues!

Inspirations

SidecarPatcher - This replaces a hex string that only exists in beta versions (and apparently some official releases?) (thus does not work for me in the final release). (Update: SidecarPatcher has updated its patch method to be the same as Free Sidecar. Now the two projects can be used interchangeably 🎉). Free Sidecar uses partial device model string matching (details here) and should work for future versions of macOS as well.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].