Wired FTDI USB-serial support for iOS apps?
Can an iOS app access a generic FTDI USB-serial device? (Works on Android, not on iPhone).
Hello,
I am developing a cross-platform mobile app that communicates with an external accessory over a serial (UART) link.
HARDWARE : The accessory is an optical reading probe that connects to the phone via USB. Inside the cable there is a standard FTDI USB-to-serial chip (similar to common FTDI/CP210x USB-serial adapters).
WHAT WORKS On Android, our app:
- Detects the USB device
- Opens the serial port
- Reads and writes raw bytes successfully
This wired FTDI path is fully implemented and working.
WHAT DOES NOT WORK On iPhone, using the same wired FTDI USB accessory:
- We connect via Lightning or USB-C adapter
- The app never sees the FTDI device
- We cannot find a public iOS API to open a generic USB-serial port
MY QUESTION :
Is there any supported way for a third-party iOS app to communicate with a generic FTDI USB-serial device over a wired USB connection?
Specifically, am I missing:
- A public Apple framework for USB serial?
- An Info.plist key or entitlement?
- A system driver on iOS similar to macOS AppleUSBFTDI (TN2315)?
Or is wired USB-serial on iPhone only possible with MFi-certified accessories (External Accessory framework) or another transport such as Bluetooth LE?
WHAT I HAVE ALREADY CHECKED
- External Accessory: seems to require MFi hardware and a registered protocol string. Our FTDI probe is not MFi.
- TN2315 (AppleUSBFTDI): appears to be macOS only, not iOS.
- Physical USB connection: cable fits, but no serial API is exposed to the app.
ENVIRONMENT
- Platform: iOS (iPhone)
- Language: C# / .NET-iOS
- Need: transparent byte-level serial read/write
SUMMARY:
Android USB-serial works with our FTDI wired accessory. iOS does not.
Am I missing something on iOS, or is generic FTDI USB-serial simply not supported for third-party iPhone apps?
Thank you for any guidance.
MacBook Pro 16″, macOS 26.5