Printer Controller

The Printer Controller is a compact Windows server designed to manage all printers and print jobs seamlessly. It enables one-click printing from any device—computer, tablet, or smartphone—across Android, iOS, Windows, Mac, or Linux platforms. No need to install printer drivers on individual devices; the printer controller handles everything.

Important

Printer controllers are provided by Gem Logic. Upon request, we will configure the device for your specific setup and ship it directly to you ready to use. Contact Gem Logic support to order a printer controller.

How It Works

The printer controller continuously monitors your Gem Logic instance for incoming print jobs:

  1. A user clicks a print button in Gem Logic (e.g., print receipt, print product label)

  2. A print job is created and stored in the system with status Pending

  3. The printer controller polls for pending print jobs every few seconds

  4. When a job is retrieved, the controller routes it to the configured printer

  5. The job status changes to Completed

The connection status indicator shows whether the printer controller is actively connected (polling within the last 15 seconds).

Setup

To set up the printer controller:

  1. Connect the printer controller to your network via Ethernet cable

  2. Power on the device

  3. The controller automatically connects to your Gem Logic instance

For printers:

  • Network printers: The controller automatically detects printers on the same network

  • USB printers: Connect directly to the printer controller via USB

Configuration

To configure printers, go to Configuration ‣ Printers. Each marketplace can have its own printer configuration.

General Settings

  • Name: A friendly name for this printer configuration

  • Marketplace: The marketplace this configuration applies to

  • Active: Enable or disable this printer configuration

Document/A4 Printer

For printing standard documents like invoices, quotes, and order forms.

  • Document printer name: The exact name of the printer as it appears in Windows (e.g., HP LaserJet Pro)

Certificate Printer

For printing certificates and documents that may require special handling.

  • Certificate printer name: The printer name for certificate printing

  • Certificate landscape: Enable to print certificates in landscape orientation

  • Certificate ZC300 printer: Enable if using a Zebra ZC300 card printer for certificates (prints as BMP image)

Product Label Printer

For printing product labels, typically on Zebra label printers using ZPL (Zebra Programming Language).

  • Product label printer name: The printer name for labels

  • Product label width: Label width in dots (default: 448 dots = ~56mm at 203 DPI)

  • Product label length: Label length in dots (default: 104 dots = ~13mm at 203 DPI)

  • Product label Zebra printer: Enable for Zebra ZPL-compatible printers

Custom ZPL Label Design

You can customize the label layout using ZPL commands in the Custom Zebra product label design field. Available variables:

Variable

Description

{brand}

Product brand name

{item_sku}

Product SKU code

{ean_code}

EAN/barcode for QR code

{price}

Product price

{currency}

Currency symbol

{material_1} to {material_5} | Material descriptions

{supplier_product_reference}

Supplier’s product reference

{supplier_reference}

Supplier reference code

{label_length}

Label length (auto-filled from settings)

{weight}, {size}

Product dimensions

{serial_number}

Product serial number

{year_of_manufacture}

Year of manufacture

A preview image is automatically generated when you save the design.

Repair Label Printer

For printing repair job labels.

  • Repair label printer name: The printer name for repair labels

  • Repair label small: Enable for smaller label format

  • Repair label height: Custom label height (optional)

Receipt Printer

For printing receipts on thermal printers (e.g., Epson TM-T20III).

  • Receipt printer name: The printer name for receipts

  • Receipt header: Custom text printed at the top of receipts

  • Receipt footer: Custom text printed at the bottom (e.g., business details, return policy)

  • Receipt width: Number of characters per line (default: 48)

  • Receipt logo BMP file: Upload a monochrome BMP file for the receipt logo

  • Receipt printer IN EP: Input endpoint for USB communication (advanced)

  • Receipt printer OUT EP: Output endpoint for USB communication (advanced)

Note

The IN/OUT endpoints are for direct USB communication with Epson ESC/POS printers. Only configure these if you’re using USB connection and need raw printing.

Managing Print Jobs

View all print jobs at Configuration ‣ Print Jobs. Each job shows:

  • Status (Pending, Completed, Error)

  • Printer name

  • Creation time

  • Associated printer configuration

Debugging

Tip

First steps when experiencing printer issues:

  1. Go to Configuration ‣ Printers

  2. Click Reset Print Queue to clear any stuck jobs

  3. If the issue persists, click Reset Printer Controller to restart the service

These two actions resolve most printer controller issues.

Basic Printer Checks

Before troubleshooting, verify the following on each printer:

  • Printer is powered on and not showing any error lights (red or orange)

  • Paper or label rolls are not empty and are properly loaded

  • Printer cover is fully closed - many printers won’t print if the cover is open or not latched correctly

  • No paper jams - check for stuck paper or labels inside the printer

  • Printer is online - not in pause or offline mode

Tip

Most printer issues are caused by empty paper, open covers, or the printer being in an error state. Always check these first!

Connection Issues

Printer controller not connected:

  1. Check that the printer controller is powered on and connected to the network

  2. Verify the controller can reach your Gem Logic instance (no firewall blocks)

  3. The connection indicator turns green when the controller polls successfully (within 15 seconds)

Print jobs stuck in Pending:

  1. Check if the printer controller is connected (green indicator)

  2. Use the Reset Print Queue button to clear stuck jobs

  3. Verify the printer name matches exactly what Windows shows

Printer Name Issues

The printer name in Gem Logic must exactly match the printer name as shown in Windows:

  1. On the printer controller PC, open Settings ‣ Devices ‣ Printers & Scanners

  2. Copy the exact printer name including any model numbers or network suffixes

  3. Paste this name in the corresponding field in Gem Logic

Warning

Printer names are case-sensitive. HP LaserJet is different from HP Laserjet.

Reset Options

Two reset options are available in printer settings:

  • Reset Print Queue: Clears all pending print jobs for configured printers. Use when jobs are stuck.

  • Reset Printer Controller: Restarts the printer controller service. Use when the controller is unresponsive.

Receipt Printer Issues

Logo not printing:

  • Ensure the logo is a monochrome BMP file (1-bit color depth)

  • Recommended size: 384 pixels wide for 58mm thermal printers

Characters garbled or wrong encoding:

  • The system uses ISO-8859-15 encoding which supports Euro symbols

  • Ensure the receipt printer supports ESC/POS commands

Cash drawer not opening:

  • Verify the cash drawer is connected to the receipt printer’s kick-out port

  • The receipt printer must support cash drawer commands

Label Printer Issues

Labels not printing correctly:

  • Verify label dimensions match physical labels (width and length in dots)

  • At 203 DPI: 1 inch = 203 dots, 1 mm ≈ 8 dots

  • Use the ZPL preview to verify label design before printing

QR codes not scanning:

  • Ensure sufficient quiet zone around the QR code

  • Increase QR code size in the ZPL design if needed

  • Verify the {ean_code} variable contains valid data