
ComPort for Android USB
Delphi and C++Builder serial communication library for USB-connected devices on Android.
- utilizes usb-serial-for-android library
- supports
FTDI: FT232R, FT232H, FT2232H, FT4232H, FT230X, FT231X, FT234XD
Prolific: PL2303
Silabs: CP2102, CP210*
Qinheng: CH340, CH341A, CH9102
CDC/ACM protocol (Arduino, Digispark, BBC micro:bit, ...)
GsmModem devices (Unisoc-based Fibocom GSM modems)
Chrome OS CCD (Closed Case Debugging) - no special root access privileges needed
- available for Delphi/C++Builder versions 10.4 - 12
- source code included in registered version
- royalty-free distribution in applications
Download and order
Order ComPort for Android USB license $120 USD (license for one developer)
Order ComPort for Android USB multi-license $360 USD (license for all developers in company)
Order ComPort for Android USB year upgrades $60 USD (registered users only)
Order ComPort for Android USB year upgrades multi-license $180 USD (registered multi-license users only)
FAQ
What files should be deployed to the Android device?
Add this file in the Delphi Deployment window:
Local Name: device_filter.xml
Remote Path: res\xml\
Add these lines to the AndroidManifest.template.xml file:
Use HWiNFO on a PC and the USB Library for Android demo example on an Android device.
How can I use a custom USB device?
Add this file in the Delphi Deployment window:
Local Name: device_filter.xml
Remote Path: res\xml\
Add these lines to the AndroidManifest.template.xml file:
<intent-filter> <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" /> </intent-filter> <meta-data android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" android:resource="@xml/device_filter" />How can I determine the chip used in a USB/RS232 adapter?
Use HWiNFO on a PC and the USB Library for Android demo example on an Android device.
How can I use a custom USB device?
const CustomDevice: TCustomDevice = (Driver: TDriver.CdcAcm; VendorID: 7438; ProductID: 41477); begin UsbSerial := TUsbSerial.Create; UsbSerial.CustomDevices := [CustomDevice]; ... end;