Skip to content

Connection Modes

Specchio supports two ways to connect to your iPhone: USB and WiFi. Each has different advantages.

Table of Contents

  1. USB Connection
  2. WiFi Connection
  3. Comparison
  4. Switching Between Modes

USB Connection

USB is the recommended connection method for most users.

Advantages

BenefitDescription
🚀 Lowest LatencyDirect USB connection for instant response
🔒 Most ReliableNo network interference or drops
🔋 Powers DeviceYour iPhone charges while connected
💰 Free TierWorks with the free Specchio license
🎯 Best QualitySupports all display modes including USB Video

How it Works

Specchio uses a USB tunnel to communicate with your iPhone:

  1. Your iPhone is detected via libimobiledevice
  2. iproxy creates a local tunnel from localhost:8100 to your iPhone's port 8100
  3. All communication goes through this USB tunnel
  4. No WiFi or network involved

Requirements

  • Lightning or USB-C cable (data-capable, not charge-only)
  • iPhone unlocked and trusted
  • Developer Mode enabled (see Device Setup)

When to Use USB

  • ✅ Best performance and quality
  • ✅ Stable, uninterrupted use
  • ✅ Gaming or real-time interaction
  • ✅ Free tier users

WiFi Connection

WiFi connection gives you wireless freedom at the cost of some performance.

Advantages

BenefitDescription
📶 Wireless FreedomMove around without cables
🔌 No Cable NeededConnect from anywhere in range
💻 Multiple DevicesConnect multiple Macs to one iPhone

How it Works

WiFi connection uses your local network:

  1. Your iPhone and Mac must be on the same WiFi network
  2. WiFi debugging must be enabled (via Xcode)
  3. Specchio connects directly to your iPhone's IP address on port 8100
  4. No USB tunneling involved

Requirements

  • Both devices on same WiFi network
  • WiFi debugging enabled in Xcode
  • iPhone in Developer Mode
  • Premium license required

Limitations

LimitationImpact
⏱️ Higher Latency10-50ms delay depending on network
📉 Lower FPSReduced frame rate compared to USB
📶 Network DependentAffected by WiFi congestion and distance
💎 Premium OnlyRequires paid license
🚫 USB Video ModeHighest-quality display mode unavailable

When to Use WiFi

  • ✅ Need wireless freedom
  • ✅ Casual use (not gaming or precision work)
  • ✅ Have a strong, reliable WiFi network
  • ✅ Premium subscriber

Comparison

FeatureUSBWiFi
Latency~1-5ms10-50ms
Max FPS60 (USB Video)30
Reliability⭐⭐⭐⭐⭐⭐⭐⭐
Setup ComplexitySimpleModerate
License RequiredFreePremium
Display ModesAll availableScreenshot, Lite only
Charges Device✅ Yes❌ No
Network RequirementNoneSame WiFi network

Switching Between Modes

From USB to WiFi

  1. Ensure WiFi debugging is enabled (see Device Setup)
  2. Disconnect USB (or keep it connected — Specchio will use WiFi if available)
  3. In Specchio, click the connection mode indicator
  4. Select "WiFi" from the dropdown
  5. Your iPhone will appear with a WiFi icon
  6. Click to connect

From WiFi to USB

  1. Plug in your iPhone via USB
  2. In Specchio, the device will show as available via USB
  3. Click to connect
  4. USB is automatically prioritized when available

Auto-Connect Behavior

Specchio's Connect button automatically:

  1. Tries USB first (if device connected via USB)
  2. Falls back to WiFi (if USB unavailable and WiFi is set up)
  3. Shows connection status in the device list

Connection Status Indicators

IconStatusMeaning
🔌USB ConnectedConnected via USB cable
📶WiFi ConnectedConnected via WiFi network
⚠️UnstableConnection has issues
DisconnectedNo active connection

Best Practices

For Best Performance

  1. Use USB whenever possible
  2. Use a quality USB cable (some cheap cables are slow)
  3. Keep your iPhone unlocked while connected
  4. Close unnecessary apps on both devices

For WiFi Connection

  1. Use 5GHz WiFi if available (lower latency than 2.4GHz)
  2. Stay close to your router (<10 meters)
  3. Avoid congested networks (lots of devices)
  4. Consider a dedicated WiFi network for development

For Reliability

  1. Prefer USB for important work
  2. Have a backup cable handy
  3. Keep your iPhone charged (WiFi drains battery)
  4. Restart Specchio if connection becomes unstable

Troubleshooting Connection Issues

USB Connection Issues

Problem: Device not detected via USB.

Diagnostic commands:

bash
# Check if device is detected by system
xcrun devicectl list devices

# Check if iproxy can connect
iproxy -l 8100

# Manually try iproxy
iproxy 8100 8100

Solutions:

  • Try a different USB cable
  • Try a different USB port
  • Restart both devices
  • Re-trust the computer on your iPhone

WiFi Connection Issues

Problem: Device not found via WiFi.

Diagnostic commands:

bash
# Check if device is visible on network
dns-sd -B _apple-mobdev2._tcp local.

# Try to ping device (find IP first)
xcrun devicectl list devices
ping <device-ip>

Solutions:

  • Ensure both devices on same network
  • Re-enable WiFi debugging in Xcode
  • Move closer to WiFi router
  • Try a different WiFi network

For more help, see Troubleshooting.

Released under the MIT License.