# Zebra Printer Configuration

<p class="callout info">The Zebra Printer Configuration allows administrators to set up and connect Zebra mobile printers to Android or iOS devices for use with the **OPSCOM Enforce** app. This integration streamlines parking operations by enabling the direct printing of violation tickets from handheld units.</p>

## Setup and Configuration

Configuring a Zebra printer requires a one-time setup involving the official Zebra utility and the Enforce application to ensure consistent communication between the hardware and software.

### Printer Discovery and Utility Setup

1. Power on the **Zebra printer**.
2. Uninstall and re-install the **OPSCOM Enforce** app on your handheld device to ensure a clean configuration environment.
3. Download and install the **Zebra Printer Setup Utility** from the app store.
4. Open the **Zebra Printer Setup Utility**.
5. Tap **Discover Printers**.
6. Tap and hold the **Feed** button on the physical printer until the **Bluetooth** symbol appears on the printer display, then release.
7. Tap the printer once it appears in the **Discovered** list.
8. Wait for the utility to retrieve settings; the printer is ready when the status displays **Ready** at the top of the screen.

### Connectivity and Media Settings

1. Tap **Connectivity Settings** then tap **Bluetooth**.
2. Confirm that the **Bluetooth** and **Discoverable** switches are enabled.
3. Verify the **Friendly Name** (defaults to the serial number) and tap **Next**.
4. Tap **Next** on the second screen to keep default settings, then tap **Apply**.
5. Tap **Media Settings** and tap **Media Settings** again on the following page.
6. Follow the prompts to set the correct paper size for your rolls and tap **Apply**.
7. Tap **Print a Test Label** from the main **Media Settings** page to verify the hardware configuration.

---

## Using this Feature

After the printer is configured in the Zebra utility, it must be linked to the Enforce app to be used for ticketing.

### Connecting in the Enforce App

1. Open the **OPSCOM Enforce** app and log in.
2. Tap the **Menu** icon at the top left and tap **App Settings**.
3. Scroll to the **Printer Settings** section.
4. Tap the **Printer Driver** drop-down menu and choose **Zebra**.
5. Tap **Saved Bluetooth Printer** to scan for the device.
6. Tap your printer name or serial number when it appears in the list.
7. Tap **Save** when prompted with **Save Printer?**.
8. Tap the **Menu** icon and tap **Home** to begin using the application.

---

## <span style="color: rgb(22, 145, 121);">Best Practices and Considerations</span>

- <span style="color: rgb(22, 145, 121);">**Clean Installation:** It is highly recommended to **uninstall and re-install the Enforce app** before setting up a new Zebra printer to prevent legacy configuration conflicts.</span>
- <span style="color: rgb(22, 145, 121);">**Bluetooth Visibility:** If the printer does not appear during discovery, ensure you **tap and hold the Feed button** until the Bluetooth icon is visible on the printer's LCD.</span>
- <span style="color: rgb(22, 145, 121);">**Naming Conventions:** Consider changing the **Friendly Name** in the Zebra utility to a unit number (e.g., "Enforcement Unit 01") to make it easier for officers to identify their specific printer in the app.</span>
- <span style="color: rgb(22, 145, 121);">**Media Calibration:** If the printer skips labels or alignment is off, return to **Media Settings** in the Zebra utility to re-run the calibration process.</span>
- <span style="color: rgb(22, 145, 121);">**Misprint Issue:** If the printer outputs code (such as ^XA, ^FO, etc.) instead of the rendered label, it means the printer is receiving raw ZPL (Zebra Programming Language) data and treating it as text. </span><span style="color: rgb(22, 145, 121);">Toggling the setting for "Line Mode" or setting another language (like EPL or XML) instead of ZPL should fix this issue.</span>

<p class="callout warning">Ensure the printer remains powered on and within close proximity to the handheld device during the "Applying Settings" phase to avoid corrupting the printer firmware.</p>