GuidesConnecting to a Virtual iOS Device with USBFlux

Connecting to a Virtual iOS Device with USBFlux

USBFlux allows you to connect virtual iOS devices to programs like Xcode using the USB protocol - just like plugging in physical devices.

The USBFlux app allows you to connect your virtual iOS devices to programs like Xcode using the USB protocol - just like plugging your physical device in with a USB cable. USBFlux is available for MacOS and Linux users.

How Does USBFlux Work?

Under the hood, the usbfluxd daemon redirects the standard usbmuxd socket to allow connections to local and remote usbmuxd instances so remote devices appear connected locally.

Getting Started for MacOS

  1. If you are using our cloud product, ensure that you are connected to the VPN. VPN profiles are per Project, so USBFlux will detect all devices within the Project that you are connected to.

  2. Head to your Device page and click the USBFlux button to download the USBFlux app.

  3. Then, run the installer and drag the USBFlux icon into your Applications folder.

  4. Next, launch USBFlux

    1. If you get a warning stating: " can't be opened because Apple cannot check it for malicious software.", click OK.

    2. Then, navigate to your machine's System Preferences > Security & Privacy and click Open Anyway.

    3. Then, click Open on the next warning.

  5. Now, that USBFlux has launched, click Start

    1. If you are using the on-site version, you will need to enter your domain and credentials.

  6. USBFlux will automatically detect the number of "On" devices in your project. "Off" devices are not detected.

Shut down and restart any programs like Xcode or Console where you want to connect your virtual devices. Be sure to fully shut down any running processes and restart the program to pick up the USBFlux changes. You must restart these programs every time you run USBFlux.

Linux and Windows

For Linux, you can download and install USBFlux from Currently, USBFlux is not available for Windows.


Note that latency can significantly impact USBFlux connection speed. Even under normal local speeds, whenever a new device is first connected to Xcode, a large dyld-shared-cache file must be synced, which can take an average of 15-20 minutes. Checking the box for "Connect via network" in Xcode -> Devices and Simulators -> Device View may optimize that speed. To optimize creating device caches for Xcode locally, check out this awesome tool.



Noah Eriksen