Printing labels with the DYMO LabelWriter Wireless (and LabelWriter 5xx) on Debian Linux
In 2020 my company bought a DYMO LabelWriter Wireless. It is an awesome little device for thermal printing a wide variety of labels. The labels are easily available both from DYMO and from third parties so the pricing is quite acceptable.
Unfortunately DYMO supplies their DYMO Connect Software only for Microsoft Windows and MacOSX. A mobile app of the same name for Android and Apple iOS devices is available in the app stores.
There is a SDK for Linux and there are drivers published for Linux but the LabelWriter Wireless was not supported on Linux when I tried to get it running for Debian in 2020.
This year I have had a new look at the situation as we still use the LabelWriter Wireless printers a lot and the company runs fully on Linux. So it is always a chore to run a Windows VM just to run DYMO Connect.
There is a very nice set of tools by Manuel Heiß called "dymon" which contain a command line tool, dymon_pbm
and a Web-based print server dymon_srv
to drive the DYMO LabelWriter Wireless and LabelWriter 450. The tools are built from partially reverse engineering the wire protocol and sending wrapped up NetPBM images to the thermal printers. This works reasonably well and does not need the DYMO SDK or any other third party software. The repo is worth looking at for the description of the wire protocol and Manuel also has created a very useful page with all label names and their physical dimensions: https://github.com/minlux/dymon/blob/master/doc/paper_size.md. A good cheat sheet for ordering labels.
But the reverse engineering has only been conducted enough to get things working 90%, so I was looking for what's possible with CUPS again...
DYMO actually supports the LabelWriter Wireless under Linux since 2021 but this seems to have gone unnoticed in the Debian printer driver for DYMOs.
The upstream code from DYMO has been published as a mess of .zips and random directories. Matthias Bock has arranged that "code dump" into a buildable repository at https://github.com/matthiasbock/dymo-cups-drivers/. I suggested to use this work to update the Debian printer drivers for DYMO in Debian BTS bug #1094727.
For CUPS you basically need a filter
to convert the printable image of each page (i.e. label) to a data stream the printer understands and a PPD
(PostScript Printer Description) file which contains the metadata describing the printer.
The filter goes into /usr/lib/cups/filter/
and is an executable named raster2dymolw_v2
for the DYMO LabelWriter Wireless and the DYMO LabelWriter 5xx products.
The PPD goes into /usr/share/ppd/cupsfilters/
and is named lww.ppd
for the DYMO LabelWriter Wireless.
Once you have these in place you can tell CUPS to find a new printer, either via DNS-based auto-discovery (Avahi) or by entering the LabelWriter Wireless' IP Address as a "AppSocket/HP JetDirect" printer (TCP port 9100) on the CUPS local web interface http://localhost:631/admin/.
lpadmin -p DYMO-LabelWriter-Wireless -E -v socket://192.168.1.242 -m lsb/usr/cupsfilters/lww.ppd
will also work. Of course, adjust the IP address to match your printer.
I have compiled the CUPS filter raster2dymolw_v2
for the current Debian stable release 12 aka Bookworm. The .tar.gz
below contains the .ppd
files for:
lmmls.ppd DYMO MobileLabeler lw550.ppd DYMO LabelWriter 550 lw550p.ppd DYMO LabelWriter 550 Pro lw550t.ppd DYMO LabelWriter 550 Turbo lw550tp.ppd DYMO LabelWriter 550 Twin Pro lw5xl.ppd DYMO LabelWriter 5XL lw5xlp.ppd DYMO LabelWriter 5XL Pro lww.ppd DYMO LabelWriter Wireless
File | sha256 |
---|---|
Dymo_LabelWriter_Wireless_and_5xx_driver_1.5.0_Linux_Debian_bookworm.tar.gz | 208e734afd29c2daf4271c68a9eb03a796afaf105a941dfa77045fc356a0dbe6 |
Please note you will need CUPS installed and configured and do apt install libcupsimage2
as that is required for the filter to work.
Check running
If all is well it will output:
If the printer-driver-dymo
package has not been updated until Debian 13 Trixie is released, I'll create another ghetto-style .tar.gz with the raster2dymolw_v2
filter linked against the newer libraries versions in that distribution. The .ppd
files could use some love, too, the physical dimensions of the labels are not all up-to-date with the products available from DYMO and the third-party retailers. But they are just text files so they are stable across releases.
Comments
Display comments as Linear | Threaded