Een printer aansluiten

De printer installeren kan in een paar eenvoudige stappen. De printer kan worden gebruikt voor het afdrukken van bonnen, etiketten, bestellingen of zelfs rapporten vanuit de verschillende Odoo apps. Bovendien kunnen printeracties worden toegewezen als een actie op een trigger tijdens het productieproces, of worden toegevoegd aan een kwaliteitscontrolepunt of een kwaliteitscontrole.

Waarschuwing

The only way to connect a printer directly to an Odoo database is through the use of an IoT system. Without an IoT system, printing can still occur, but it is managed through the printer itself, which is not the recommended process.

Connectie

IoT systems support printers connected through USB, network connection, or Bluetooth. Supported printers are detected automatically, and appear in the Devices list of the IoT app.

De printer zoals hij zou verschijnen in de lijst met apparaten van de IoT-app.

Notitie

Printers can take up to two minutes to appear in the IoT app Devices list.

Printercache van apparaat wissen

Nadat een printer is gekoppeld om een rapport af te drukken, wordt de instelling opgeslagen in de cache van een browser. Dit betekent dat een gebruiker verschillende apparaten in zijn cache kan hebben voor verschillende rapporten, gebaseerd op het apparaat waarmee hij Odoo benadert. Het betekent ook dat verschillende gebruikers een rapport automatisch kunnen laten afdrukken vanaf verschillende printers, gebaseerd op hun voorkeuren.

To unlink a report from a printer, navigate to IoT ‣ Configuration ‣ Reset Linked Printers. This generates a list of reports that are linked to a printer on the current device. Click the Unlink button next to each report to remove the link.

Belangrijk

Deze stap voorkomt alleen dat het rapport automatisch wordt afgedrukt naar de vermelde printer vanuit de huidige browser. Het rapport is nog steeds gelinkt op het apparaat, onder het Printerrapporten tabblad.

Een lijst met rapporten die momenteel zijn gekoppeld aan een printer in de IoT app.

Potential issues

De printer is niet gedetecteerd

If a printer does not appear in the devices list, go to the IoT box’s or Windows virtual IoT’s homepage, click Show in the Devices section, and make sure the printer is listed.

If the printer does not appear on the IoT system’s homepage, click Printer Server, then Administration, and Add Printer. If the printer is not in the list, it is likely not connected properly.

De printer voert willekeurige tekst uit

Voor de meeste printers wordt het juiste stuurprogramma automatisch gedetecteerd en geselecteerd. In sommige gevallen is het automatische detectiemechanisme echter niet voldoende en als er geen stuurprogramma wordt gevonden, kan de printer willekeurige tekens afdrukken.

The solution is to manually select the corresponding driver. On the IoT system’s homepage, click Printer Server, then Printers, and select the printer in the list. In the Administration dropdown menu, click Modify Printer. Follow the steps and select the printer’s make and model.

Edit the printer connected to the IoT system.

Notitie

Epson receipt printers and Zebra label printers do not need a driver to work. Make sure that no driver is selected for those printers.

De printer is gedetecteerd maar wordt niet goed herkend

If Odoo and the IoT system do not recognize the printer correctly, go to IoT ‣ Devices, click the device’s card to access its form, and set the Subtype field to the appropriate option: Receipt Printer, Label Printer, or Office Printer.

Epson configuratie speciaal geval

Most Epson printers support printing receipts in Odoo Point of Sale using the GS v 0 command. However, the following Epson printer models do not support this command:

  • TM-U220

  • TM-U230

  • TM-P60

  • TMP-P60II

To bypass this issue, you can configure the printer to use the ESC * command.

First, review Epson’s website for compatibility for both the GS v 0 and ESC * commands.

If the printer is incompatible with GS v 0 but supports ESC *, configure the IoT system to use the ESC * command as follows:

  1. Access the IoT box’s or Windows virtual IoT’s homepage.

  2. Click the Printer server button, then click Administration on the CUPS page.

  3. Click Add Printer in the Printers section, select the printer, and click Continue.

    Tip

    If the printer’s name is still uncertain, take the following steps:

    1. Take note of the listed printers on the CUPS page.

    2. Zet de printer uit en vernieuw de pagina.

    3. Compare the difference with the first list to see which printer disappeared.

    4. Zet de printer weer aan en vernieuw de pagina opnieuw.

    5. Controleer de lijst nogmaals om te zien of de printer weer verschijnt.

    6. The printer that disappeared and reappears again on the listed printers is the name of the printer in question. It can be Unknown under Local printers.

  4. On the Add Printer page, specify the printer’s Name using the following convention: <printer_name>__IMC_<param_1>_<param_2>_..._<param_n>__, where:

    • printer_name is the printer’s name. It can contain any character except _, /, #, or ` ` (space character).

    • IMC: Dit staat voor Image Mode Column (de vereenvoudigde naam voor ESC *).

    • param_1: Dit staat voor de specifieke parameter:

      • SCALE<X>: Scale of the picture (with the same aspect ratio). X should be an integer describing the scale percentage that should be used. For example, 100 is the original size, 50 is half the size, and 200 is twice the size.

      • LDV: Lage Dichtheid Verticaal (wordt ingesteld op Hoge Dichtheid Verticaal als dit niet wordt opgegeven).

      • LDH: Lage dichtheid horizontaal (wordt ingesteld op Hoge dichtheid horizontaal als dit niet wordt opgegeven).

      Notitie

      • Density parameters might need to be configured in a particular way, depending on the printer model.

      • Refer to Epson’s ESC * documentation to determine if the printer requires these parameters to be set.

    Example

    Hieronder staan voorbeelden van juiste en onjuiste naamopmaak:

    Eigennaamopmaak:

    • EPSONTM30II__IMC__

    • EPSON_TM_U220__IMC_LDV_LDH_SCALE80__

    Onjuiste naamopmaak (dit verhindert het afdrukken niet, maar het resultaat is mogelijk niet de verwachte afgedrukte uitvoer):

    • EPSON TMm 30II: The name cannot contain spaces.

    • EPSONTMm30II: The name itself is correct, but it will not use ESC *.

    • EPSONTMm30II__IMC: This name is missing the end __.

    • EPSONTMm30II__IMC_XDV__: The parameter XDV does not match any existing parameters.

    • EPSONTMm30II__IMC_SCALE__: The parameter SCALE is missing the scale value.

  5. Once the printer’s name has been defined using the appropriate naming convention, click Continue.

  6. Set the Make value to Raw and the Model value to Raw Queue (en).

  7. Click Add Printer. If everything was done correctly, the page should redirect to the Banners page.

  8. Wait a few minutes for the IoT system to detect the printer and sync to Odoo’s server.

  9. Access the POS settings and select your POS, or click the vertical ellipsis button () on a POS card and click Edit. Scroll down to the Connected Devices section, enable IoT Box, and select the printer in the Receipt Printer field. Click Save.

Notitie

If the printer was set up incorrectly (e.g., it continues to print random text, or the printed receipt is too large or too small), it cannot be modified via the printer’s name in CUPS. Instead, configure a new printer from scratch with modified parameters, following the steps above.

Hieronder volgt een voorbeeld van het probleemoplossingsproces voor een TM-U220B printermodel met behulp van de opdracht ESC *. De bon hieronder is een voorbeeld van een bon die correct wordt afgedrukt dankzij de juiste opmaak (in theorie):

Goed opgemaakte ontvangstfoto uit een demodatabase.

Printing this receipt immediately without proper formatting will not work, as the TM-U220B printer model does not support the GS v 0 command. Instead, random characters will be printed:

Printerpapier met schijnbaar willekeurige tekens.

To properly configure formatting for the Epson TM-U220B printer model, follow these steps:

  1. After checking Epson’s website for compatibility with both the GS v 0 and ESC * commands, the TM-U220B printer is indeed incompatible with GS v 0 but supports ESC *.

    Compatibiliteitsevaluatie van Epson op de website van Epson.
  2. When adding the printer, CUPS displays the list of available printers:

    Menu Beheer, printerselectie toevoegen.

    In this case, the printer is connected via USB, so it is not part of the Discovered Network Printers. Instead, it is likely part of the Unknown selection under Local Printers. By unplugging the printer’s USB cable from the IoT system and refreshing the page, the Unknown printer disappears. By plugging it back in, the printer reappears.

  3. For the naming convention, since the printer must print using the ESC * command, it is imperative to add __IMC.

    Epson TM-U220 specificaties op de website van de fabrikant.

    For this particular model (TM-U220) m should be equal to 0 or 1. While referencing the Description table on Epson’s ESC * website, the m values could be 0, 1, 32, or 33. So, in this case, the m value cannot be 32 or 33 (otherwise, random characters will be printed).

    The table includes the numeric values 32 and 33; they both occur if the Number of bits for vertical data is set to 24, i.e. it has a High Vertical Density. In the case of configuring the Epson TM-U220, the Low Vertical Density will need to be forced, as this printer model does not support High Vertical Density for this command ESC *.

    Om een Lage Verticale Dichtheid toe te voegen, voeg je de LDV parameter toe aan de naamgevingsconventie.

    Voeg een *Lage verticale dichtheid* (de `LDV` parameter) toe aan de naamgevingsconventie.
  4. Click Continue to proceed. Next, set the Make value to Raw and the Model value to Raw Queue (en).

    Epson TM-U220 specificaties op de website van de fabrikant.

    However, when trying to print with the naming convention EpsonTMU220B__IMC_LDV__, the receipt is printed, but it is too large and outside the margin. To resolve this, add a new printer (and naming convention) with the SCALE<X> parameter to adapt to the receipt’s size.

    Hier zijn enkele voorbeelden:

    Conventie voor printernamen

    EpsonTMU220B__IMC_LDV__

    EpsonTMU220B__IMC_LDV_SCALE75__

    EpsonTMU220B__IMC_LDV_LDH__

    EpsonTMU220B__IMC_LDV_LDH_SCALE35__

    Ontvangstbewijs voorbeeld formaat. Ontvangstbevestiging met naamgevingsconventie: EpsonTMU220B__IMC_LDV__. Ontvangstbevestiging met naamgevingsconventie: EpsonTMU220B__IMC_LDV_SCALE75__. Ontvangstbevestiging met naamgevingsconventie: EpsonTMU220B__IMC_LDV_LDH__. Ontvangstbevestiging met naamgevingsconventie: EpsonTMU220B__IMC_LDV_LDH_SCALE35__.

DYMO LabelWriter afdrukprobleem

The DYMO LabelWriter has a known issue in printing with IoT systems. The OpenPrinting CUPS server installs the printer using Local RAW Printer drivers. In order to print anything, the correct Make and Model needs to be set to reference the correct driver when using the device.

Additionally, a new printer needs to be added to reduce the print delay that occurs after updating the driver.

Belangrijk

The DYMO LabelWriter 450 DUO printer is the recommended DYMO printer for use with Odoo and IoT systems. This device combines two printers: a label printer and a tape printer. When configuring the following processes, it is essential to select the correct model (either DYMO LabelWriter 450 DUO Label (en) or DYMO LabelWriter 450 DUO Tape (en)). For consistency, the following processes outline configuration steps for the DYMO LabelWriter 450 DUO Label (en) model. Adjust the model selections as needed.

DYMO LabelWriter drukt niet af

If the DYMO LabelWriter fails to print, install a new driver:

  1. Access the IoT system’s homepage and click Printer server to open the OpenPrinting CUPS console.

  2. Click Printers in the top menu, then click the printer in the list.

  3. Select Maintenance in the first dropdown menu.

  4. Select Modify Printer in the second dropdown menu.

    Modify the make and model of the DYMO LabelWriter. Maintenance and Modify dropdown menus highlighted.
  5. Select the specific network connection/printer on which the modification should be made and click Continue.

  6. On the next page, click Continue, then select DYMO from the Make dropdown list.

  7. Click on Continue and set the Model to DYMO LabelWriter 450 DUO Label (en) (or whichever DYMO printer model is being used).

  8. Click Modify Printer to set the new driver; a confirmation page appears.

  9. Click Printers in the top menu; all printers installed on the OpenPrinting CUPS server appear, including the newly updated DYMO LabelWriter 450 DUO Label (or whichever DYMO printer model is being used).

  10. Click the newly updated printer, then click the Maintenance dropdown menu and select Print Test Page to print a test label. The test label is printed after a few seconds if the driver update was successful.

To reduce this delay, add a new printer using the steps below.

DYMO LabelWriter afdrukvertraging

Tip

If the DYMO LabelWriter 450 DUO printer is not printing at all, or is not recognized (i.e., it has a RAW driver type), then update the drivers on the device.

To resolve the delay issue after modifying the driver, reinstall the printer:

  1. Access the IoT system’s homepage and click Printer server to open the OpenPrinting CUPS console.

  2. Click Administration in the top menu, then click Add a Printer.

  3. On the next page, in the Local Printers section, select DYMO LabelWriter 450 DUO Label (DYMO LabelWriter 450 DUO Label) (or whichever DYMO printer model is being used) pre-installed printer. Click Continue.

    Add a printer screen on OpenPrinting CUPS with DYMO LabelWriter 450 DUO Label highlighted.
  4. On the following screen, update the Name to something easily identifiable, as the original printer will remain in the list. Then, click Continue.

    Hernoem de printerpagina in de stroom 'Een printer toevoegen', met het naamveld gemarkeerd.
  5. Set the Model field to DYMO LabelWriter 450 DUO Label (en) (or whichever DYMO printer model is being used), then click Add Printer to complete the installation.

    Kies model scherm op de OpenPrinting CUPS console met model en voeg een printer toe gemarkeerd.
  6. Click Printers in the top menu and click the newly installed printer DYMO LabelWriter 450 DUO Label (or whichever DYMO printer model is being used) from in the list.

    Printerpagina met nieuw geïnstalleerde printer gemarkeerd.
  7. Click the Maintenance dropdown list and select Print Test Page to print a test label. The test label should print out immediately, or after one or two seconds.

De Zebra printer drukt niets af

Zebra printers are quite sensitive to the format of the printed Zebra Programming Language (ZPL) code. If nothing comes out of the printer or blank labels are printed, try changing the format of the report sent to the printer. To do so, activate the developer mode, go to Settings ‣ Technical ‣ User Interface ‣ Views, and search for the corresponding template.

Barcode scanner issues

De door de barcodescanner gelezen tekens komen niet overeen met de barcode

By default, most barcode scanners are configured in the US QWERTY format. If the barcode scanner uses a different layout, go to IoT ‣ Devices and click the barcode device’s card. Then, select the correct language in the Keyboard Layout field.

Notitie

The Keyboard Layout is language-specific, with available options varying based on the device and the language of the database (e.g., English (UK), English (US), etc.).

Er gebeurt niets wanneer een barcode wordt gescand

Make sure the correct device is selected in the Point of Sale settings (when applicable) and the barcode is configured to send an ENTER character (keycode 28) at the end of every barcode.

De barcodescanner wordt gedetecteerd als een toetsenbord

Belangrijk

Some barcode scanners are identified as USB keyboards rather than barcode scanners and are not recognized by IoT systems.

To change the device type manually, go to IoT ‣ Devices and click the barcode device’s card. Then, enable Is scanner.

The barcode scanner processes barcode characters individually

When accessing the mobile version of Odoo from a mobile device or tablet paired with a barcode scanner via the IoT system, the scanner might interpret each character in a barcode as a separate scan. To resolve this, go to IoT ‣ Devices and click the barcode device’s card. Then, select the correct language in the Keyboard Layout field.

Notitie

The Keyboard Layout is language-specific, with available options varying based on the device and the language of the database (e.g., English (UK), English (US), etc.).