DYMO – Raspberry Pi

We will setup our printer server software CUPS on the Pi. A computer (Raspberry Pi) running CUPS is able to accept jobs from client devices, process them and pass it on to the appropriate printer to print.

Example connecting Dymo LabelWriter 450 (dmesg):

Part 1: Install and configure CUPS

This is relatively easy and only requires a few steps.

1. Ensure your package repository information is up to date, then download and install cups:

We need to make some changes to the configuration file of CUPs. The config file can be edited using:

sudo nano /etc/cups/cupsd.conf 

Change/add the following lines to the configuration file. These changes will allow us to interact with CUPS panels.

update the <Location> configurations to allow local user access:

Next we add the Pi user to the lpadmin group. This gives the Raspberry Pi the ability to perform administrative functions of CUPS without necessarily being a super user.

sudo usermod -a -G lpadmin pi

We need to ensure that CUPS is accessible across entire network.

sudo cupsctl --remote-any 

Finally, restart CUPS to effect changes

sudo /etc/init.d/cups restart 

or

sudo service cups restart 

Part 2: Install Dymo Printer Drivers

Install the printer-drivers-dymo package:

sudo apt-get install printer-driver-dymo 

part 3: Adding Printer to CUPS

This is the last and most easiest step to do. From your PC, connect to the same network as your Pi. Open a web browser and go to the CUPS homepage by entering your Pi’s IP address followed by “:631” which is port address on which CUPS is communicating. It may be different in case you changed the port. The browser may show a warning “Connection not secure”, click “Proceed Anyway”.

To know your Pi’s IP address, you can run the command hostname -I from your Pi. In my case, the web address is:

https://localhost:631/admin 

or from an other computer (example):

https://192.168.2.X:631/admin 

Go to Administration page and click Add Printer. Make sure that your printer is switch on and connected to your Pi via USB. Follow the prompts and setup the printer. Before the final step, ensure that you check the “share this printer” checkbox. Finally, you can print a test page on Printers page to verify if everything works.

Select the DYMO printer:

Lastly, and optionally, set some default print settings and wrap up the setup by clicking Set Default Options:

The printer should be set and ready to go, and visible from the CUPS admin page:

PS: After adding a printer, there was a problem occurred. For some reason, the printer would only print first few X jobs, and ignore the remaining jobs. To continue printing, I had to either restart my Pi, or restart my printer. The following command fixed my problem:

Python3 CUPS example

source(s):
https://johnathan.org/configure-a-raspberry-pi-as-a-print-server-for-dymo-label-printers/
https://medium.com/@anirudhgupta281998/setup-a-print-server-using-raspberry-pi-cups-part-2-2d6d48ccdc32
https://python-forum.io/thread-15230.html