Wiki - 1.9 Serial Communication



Since version 1.6.0, You can send and receive serial port data using the jSSC plugin.

Note: Serial support requires jssc.jar, which is bundled with both QZ Print and QZ Tray. Note: Some Linux versions require dialout group membership via sudo adduser $USER dialout. Reboot required.

  1. Discovering local ports

    // Alert COM ports that are available
    function qzDoneFindingPorts() {
      var ports = qz.getPorts().split(",");
      for (p in ports) {
  2. Opening a local COM port

    qz.openPort("COM1"); //e.g. /dev/ttyS0, /dev/ttyUSB0, depending on platform
    function qzDoneOpeningPort(port) {
      alert(port + " open");
  3. Sending data to an open COM port

    // Setup beginning and end patterns for a successful message
    qz.setSerialBegin("\x02");   // STX for Mettler Toledo Scale
    qz.setSerialEnd("\x0D");     // ETX for Mettler Toledo Scale
    // Baud rate, data bits, stop bits, parity, flow control
    qz.setSerialProperties("9600", "7", "1", "even", "none");
    // Send raw commands to the specified port.
    // W = weight on Mettler Toledo Scale
    qz.send("COM1", "\nW\n");
  4. Receiving the response

    // Retrieve serial response (automatically called)
    function qzSerialReturned(port, data) {
      alert(port + " returned:\n\t" + data);
  5. Closing the COM Port

    qz.closePort("COM1"); // e.g. /dev/ttyS0, /dev/ttyUSB0
    function qzDoneClosingPort(portName) {
      alert(port + " closed");
Edit this page