How to Develop Serial Port for Terminals

From wizarPOS
Revision as of 08:48, 31 January 2024 by Mahong (talk | contribs)

Introduction:

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:

  1. SerialPortDemo Application:
    • Download the SerialPortDemo for practical insights into application development.
  2. Serial Port Test Tool:

API Usage:

  1. 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.
  2. 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:

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
  • 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:

OTG to USB Host TypeA Female
USB to Serial port cable, USB TypeA Male to DB9 Female
USB to Serial port cable, USB TypeA Male to DB9 Male
caUU cable, 2 USB Serial port cable cross connected togetherption