Skip to content

Instantly share code, notes, and snippets.

@gangstead
Last active July 4, 2026 22:02
Show Gist options
  • Select an option

  • Save gangstead/7f4047145aee48957219cbb4c77c3489 to your computer and use it in GitHub Desktop.

Select an option

Save gangstead/7f4047145aee48957219cbb4c77c3489 to your computer and use it in GitHub Desktop.
Forscan on MacOS Montery with wine/wineskin

FORscan is windows only software. You want to run on a Mac. You can download a big windows VirtualBox image (20 GB), run Boot camp, or pay for something like Parallels ($80) or CrossOver ($60, built on Wine).

Instead you can pay with your time and try to get wine running. Problem: wine development for MacOS seems to have died with Catalina (10.15) dropped any support for 32 bit applications. Also every wine setup tutorial you find for a Mac is tightly coupled to the exact version of Mac/Wine/direction of the wind/ shoe size of the author on the day the tutorial was made and will not work for you. With that said here's what it took for me:

Wineskin. Kegworks Sikarugir

Edit 2/13/25 Wineskin appears to have been renamed to Kegworks

Edit 5/18/26 Kegworks is no more, the current successor is Sikarugir

For the 2026 update I am on a new computer with an Apple silicon chip so had to start from scratch. Imagine my surprise when there's yet another wine wrapper project. This worked for me as of 5/18/26

Download and Setup wrapper

  1. brew install --cask Sikarugir-App/sikarugir/sikarugir
  2. I'm on a Apple Silicon mac now so setup rosetta /usr/sbin/softwareupdate --install-rosetta --agree-to-license
  3. Open Sikarugir Creator app
  4. Download template (The version shown was 1.0.11).
  5. Choose engine: WS12WineSikarugir10.0_6
    • Engine names mean nothing to me, but Gemini said this is stable version that's not optimized for gaming.
    • It will need to download
  6. Give it a name like FORScan.app
  7. Download FORScan executable. Current latest version is v2.3.71

Install FORScan in wrapper

  1. After the wrapper is set up a little pop up window asks if you want to "Launch It"
  2. Install Software
  3. Choose Setup Executable
  4. Choose the FORScanSetup2.3.71.release.exe previously downloaded
  5. You might need to let the wrapper access your ~/Downloads folder if that's where you saved the exe
  6. Click Next x10 to finish FORScan install
  7. Once FORScan is running click the steering wheel looking thing to get your Hardware ID to get your trial extended license
  8. If you have to close and reopen the app you can change Windows app: to "C:\Program Files (x86)\FORScan\FORScan.exe" to have it launch right into FORScan when you open the app.

USB/Serial ODB setup

  1. Plug in your USB OBD reader
  2. ls /dev/tty.usb*, for me it was /dev/tty.usbserial-223010213255
  3. Make a symbolic link into your FORSCan.app:
    • I had to create the dosdevices directory first: mkdir ~/Applications/Sikarugir/FORScan.app/Contents/Resources/dosdevices/
    • Then make the link ln -s /dev/tty.usbserial-223010213255 ~/Applications/Sikarugir/FORScan.app/Contents/Resources/dosdevices/com1
    • Reg Edit:
      • open ~/Applications/Sikarugir/FORScan.app/Contents/
        • Long version: Go to your user's applications (~/Applications, not the system level /Applications you see when you open up Finder). Right click on FORScan -> Show Package Contents
      • In that folder open Configure app, Tools tab, Registry Editor tool
      • Navigate to HKEY_LOCAL_MACHINE\Software\Wine\Ports
      • Right click New... -> String Value, name it com1 and your device as the value /dev/tty.usbserial-223010213255
    • Close Reg Edit. Close the FORScan mac app and reopen it

Did it work?

  • Connect OBD to your mac, and your car, turn to ON (not Accessory) and it should auto detect
  • Congrats. Now enjoy all your GOAT modes, you earned them.

Did it not work?

  • Is the car in ON? Having the USB OBD dongle plugged into just the laptop wasn't enough, plugged into the car is not enough, it has to be ON. FORScan gave no indication it could find the device until it was connected to the car and the car was on
  • Do you have Demo mode checked when you click on the settings gear? Uncheck it.
  • Is your license activated/still active? You can connect and read DTC codes without a license, but you'll need the 2 month "trial" license to be able to make any code changes.
  • Under the settings gear, do you have Connection type: Auto or COM and the Auto-connect check box selected?

2023 and 2025 version (OLD INSTRUCTIONS)

brew install --cask --no-quarantine gcenx/wine/kegworks

Here are the old instructions:

https://github.com/Gcenx/WineskinServer
Follow the official instructions which use [homebrew](https://brew.sh)

```
brew install --no-quarantine gcenx/wine/unofficial-wineskin
```

Wineskin bundles wine + other libraries together into one app that then has one windows executable installed on it. The best info is on their [wiki](https://github.com/Gcenx/WineskinServer/wiki)

Create a wineskin

https://www.youtube.com/watch?v=vkQj0lZFz6I

  • Open Kegworks Winery
  • Install engine (must be WS11WineCX64Bit) for 64 bit only Mac (> Catalina)
  • Create New Blank Wrapper, I called it FORScan

Install FORscan

  • Open up the new wrapper and Install Software
  • Choose Setup Executable and select FORscan setup exe FORScanSetup2.3.45.release.exe
  • Click Next many times
  • Choose Executable and find FORScan.exe
  • You can now run your FORScan wrapper and FORScan will start in a window, but it can't find the USB OBD dongle yet!

USB/Serial port setup

https://www.youtube.com/watch?v=41enNl9Vsig This video shows how do it for Wine, but we are doing WineSkin which bundles everything together into an app. Ignore the part about installing xquartz.

  • Link the usb serial device to a COM port in wine
    • The instructions online show doing a symbolic link to ~/.wine/dosdevices
    • But we don't have a ~/.wine/dosdevices it's in the bundled app
    • Find your USB device in ls /dev/tty.usb*, for me it was /dev/tty.usbserial-223010213255
    • Instead of ~/.wine/dosdevices it's going to be ~/Applications/Wineskin/Forscan.app/Contents/Resources/dosdevices/
    • ln -s /dev/tty.usbserial-223010213255 ~/Applications/Wineskin/Forscan.app/Contents/Resources/dosdevices/com1
  • Edit the wine registry to tell it about the new COM port
    • Again the instructions tell you to modify ~/.wine/system.reg but we don't have that in our Wineskin wrapper
    • Get to the Wineskin Advanced menu again: right click on your FORScan bundle and Show Package Contents
    • Inside there's another app called Wineskin, open it
    • Advanced -> Tools -> Registry Editor (regedit)
    • Inside the registry editor:
    • HKEY_LOCAL_MACHINE/Software/Wine/Ports make a new String called COM1 with value of your USB serial port (for me /dev/tty.usbserial-223010213255)
  • Close and go back to your FORScan bundled app again and launch FORScan
  • Now when you go to settings, connection there is a COM1 in there!
@xturgorex

Copy link
Copy Markdown

Thank you for this write up. This worked for me with one caveat. The dosdevices folder has moved! it is now located at ~/Applications/Wineskin/ForScan.app/Contents/SharedSupport/prefix I placed COM1 in that folder and it works all the same.

@gangstead

Copy link
Copy Markdown
Author

Of course it has!

@mseverini

Copy link
Copy Markdown

This tutorial helped me a lot. It got me up and running with FORscan and doing most things. That being said, as of quite recently, vmware fusion is now free. That is a much more stable option than wine, and should probably be prefered going forward. Just leaving this here for anyone that finds this post in the future.

On apple silicon you will need to install some drivers as explained here, but the setup worked better for me as I could never get PATS programming to function under WINE.

@adam-weber

Copy link
Copy Markdown

Thank you for this write up. This worked for me with one caveat. The dosdevices folder has moved! it is now located at ~/Applications/Wineskin/ForScan.app/Contents/SharedSupport/prefix I placed COM1 in that folder and it works all the same.

+1 To this. Still working in Dec. 2024. Only change was using a newer engine WS11WineCX.

@DanCarlyon

Copy link
Copy Markdown

Thank you for this write up. This worked for me with one caveat. The dosdevices folder has moved! it is now located at ~/Applications/Wineskin/ForScan.app/Contents/SharedSupport/prefix I placed COM1 in that folder and it works all the same.

Thank you for this, I was searching the folders for ages trying to find where the dosdevices was hiding!

@gangstead

Copy link
Copy Markdown
Author

Update: wineskin appears to be called kegworks now so the install command is:

brew install --cask --no-quarantine gcenx/wine/kegworks

@parrotmac

Copy link
Copy Markdown

kegworks appears to have been replaced with sikarugir

brew install --cask Sikarugir-App/sikarugir/sikarugir

https://www.reddit.com/r/macgaming/comments/1mmmw80/error_installing_kegworks_sikarugir/

@Austin1

Austin1 commented Mar 25, 2026

Copy link
Copy Markdown

Ok this worked, pretty much same instructions as above. I'm using OBDLinkMX bluetooth adapter. I used this command to symlink

ln -s tty.OBDLinkMX13291 /Users/austin/Applications/Sikarugir/Forscan.app/Contents/SharedSupport/prefix/com1is where i had to link my OBDLinkMX13291 into Forscan using Skarugir instead of kegworks/wineskin.

and I had to do this to make it recognize the truck, not sure why. https://forscan.org/forum/viewtopic.php?f=5&t=25727

@gangstead

Copy link
Copy Markdown
Author

Hello FORScanners. I updated the instructions for sikaurgir. These wrapper names are devolving and getting worse every year.

@cabatchi

cabatchi commented Jul 4, 2026

Copy link
Copy Markdown

Hello, I followed the instructions to a T but FORScan does not detect my ELM adapter (USB). I tried it with my Windows laptop and it works fine, but with this, it doesn't. I'm using a USB Hub, so maybe that has something to do with it? The adapter does have its own unique ID (it's 12345678, which seems wrong) and I did all the steps using that USB ID, but it doesn't get detected. Thanks in advance.

Edit: I noticed that when connecting via my Windows laptop, there was something in the logs about connecting via COM4. I'll try later with COM4 instead of COM1.

Edit #2: didn't work

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment