|
|
(One intermediate revision by the same user not shown) |
Line 1: |
Line 1: |
| == Introduction: ==
| | {{Migrating|https://smartpossdk.gitbook.io/cloudpossdk/faq/usb-serial-port/serial-port-development}} |
| This guide provides a demonstration on how to develop an application that utilizes serial ports, using both Java and C APIs. Included are sources for a serial port test tool and downloadable demo applications.
| |
| == Demo and Tool Downloads: ==
| |
| # '''SerialPortDemo Application:'''
| |
| #* Download the [http://ftp.wizarpos.com/advanceSDK/SerialPortOpen.zip SerialPortDemo] for practical insights into application development.
| |
| # '''Serial Port Test Tool:'''
| |
| #* Download the [http://ftp.wizarpos.com/advanceSDK/SerialPortTest-1.6_230918.zip Source APP] and [http://ftp.wizarpos.com/advanceSDK/serialport_test_230918.apk APK] for a serial port testing tool.
| |
| == API Usage: ==
| |
| # '''Java API for Serial Port:'''
| |
| #* When opening a serial port using the Java API, set the logic ID of the serial port as a parameter.
| |
| #** SerialPortDevice.ID_USB_SLAVE_SERIAL : works for USB serial port in slave mode.
| |
| #** SerialPortDevice.ID_USB_HOST_SERIAL : works for USB serial port in master mode.
| |
| #** SerialPortDevice.ID_SERIAL_EXT : works for internal fiscal/ other serial port module.
| |
| #** SerialPortDevice.ID_USB_CDC: works for USB Communication Device Class.
| |
| #** SerialPortDevice.ID_USB_GPRINTER: works for USB GPRINTER.
| |
| #** SerialPortDevice.ID_USB_SLAVE_SERIAL_ACM: works for ACM without Qualcomm driver.
| |
| # '''C API for Serial Port:'''
| |
| #* When using the C API to open a serial port, the device name of the serial port must be specified as a parameter.
| |
| '''Device Name''':
| |
| {|class="wizarpostable"
| |
| |-
| |
| ! scope="row" colspan="2" | Parameters
| |
| |-
| |
| | device name|| The alias for serial port. Available values: DB9, GS0_01, WIZARHANDQ1, Q1_USB_SERIAL, USB_SERIAL, SERIAL_EXT, USB_SLAVE_SERIAL, USB_HOST_SERIAL<br>
| |
| * '''in W1/W1V2:'''
| |
| ** '''DB9''': works for DB9 port at the back side of the terminal.
| |
| ** '''GS0_Q1''': works for USB host port at the right side of terminal to connect with Q1 via USB cable in master mode.
| |
| * '''in Q1 3g:'''
| |
| ** '''WIZARHANDQ1''': works for USB serial port in slave mode.
| |
| ** '''Q1_USB_SERIAL''' or '''USB_SERIAL''': works for USB serial port in master mode.
| |
| ** '''SERIAL_EXT''': works for internal fiscal/other serial port module.
| |
| * '''in Q1 4g and Q2(K2, M2, M3, QD4/5), Q3 series and others:'''
| |
| ** '''USB_SLAVE_SERIAL''': works for USB serial port in slave mode. For example, terminal use USB OTG cable connect the PC directly.
| |
| ** '''USB_HOST_SERIAL''' or '''USB_SERIAL''': works for USB serial port in master mode. For example, terminal connect an USB2Serial convertor or use UU cable.
| |
| ** '''SERIAL_EXT''': works for internal fiscal/other serial port module.
| |
| ** '''USB_CDC''': works for USB Communication Device Class.
| |
| |}
| |
| == Cable Connection Guidelines: ==
| |
| '''For Model Q4:'''
| |
| * Refer to Picture 2 and Picture 3 for connecting using a USB to DB9 cable.
| |
| * Alternatively, refer to Picture 4 for connection using a UU cable.
| |
| * Please ensure all connections and API parameters are correctly set for successful communication with the serial port.
| |
| '''Cable pictures:'''
| |
| [[File:Otg_usb_1.jpg|frameless|left|thumb|OTG to USB Host TypeA Female]]
| |
| [[File:Usb_db9_1.jpg|frameless|left|thumb|USB to Serial port cable, USB TypeA Male to DB9 Female]]
| |
| [[File:Usb_db9_2.jpg|frameless|left|thumb|USB to Serial port cable, USB TypeA Male to DB9 Male]]
| |
| [[File:UUCable.jpg|frameless|left|thumb|caUU cable, 2 USB Serial port cable cross connected togetherption]]
| |