philpem / printer-driver-ptouch

P-Touch PT-series and QL-series printer driver for Linux (under CUPS)
GNU General Public License v2.0
96 stars 23 forks source link

Issues with PT-E550W #10

Closed HannahRy closed 2 years ago

HannahRy commented 3 years ago

I'm struggling to get my PT-E550W to print correctly. Installed on Manjaro via the AUR. This is likely user error, but I'm not sure what I'm doing wrong.

Trying to print from Inkscape the document is set to be 12mm tall, with a 12mm tape cartridge in the printer. With the "Only print on labels of matching size" option selected the printer displays "Tape Cassette Changed!" and doesn't print. Disabling that option results in the printer feeding out the leader, cutting it, and then stopping. lp -d PT-E550W test.pdf -o PageSize=tz-12 also exhibits the same behaviour.

I can get the label maker to print png files with lp -d PT-E550W 12mm-Standard-1.png -o PageSize=tz-12, however this always seems to make a label that is about 100mm long.

philpem commented 3 years ago

For the P-touch plastic tape printers (PT series), you need to set a custom page size in the printer settings.

If you look at the default page sizes for PT tapes, they're 100mm in one dimension, and the other dimension is the same as the tape width. You need to keep the tape width dimension the same, but change the other dimension -- the label length.

Your printer may have a minimum label length -- it's usually in the "Specifications" part of the manual. If I remember rightly, it's around 75mm for most of the P-Touch printers. It may be less if you're printing multiple labels or turn off auto-cut.

So in short - you need to tell the driver that you want a custom page size (not tz-12), and the page size you send to the driver needs to match that.

As for the Inkscape issue, it sounds like it's sending a page to the printer which isn't the same size as it's expecting. I'd suggest trying gLabels instead of Inkscape. If you continue to have issues, try rotating the label 90 degrees (either in gLabels or Inkscape), and set the page dimensions accordingly. The driver doesn't auto-rotate, and sometimes this causes issues.

Sadly CUPS isn't really designed for driving label printers, and a lot of these issues stem from that :(

HannahRy commented 3 years ago

Thanks so much for the information! I've managed to get it printing mostly reliably from inkscape and gwenview. The main problem I was having was I needed switch my width and heights, and it requires it to be at-least 25mm long.

I've noticed that if you attempt to send the printer a size it does not like, it will just cycle the cutter, or print some leader, eject it and then stop. If after this you send it a correctly sized label, it will not print, usually just printing some leader and ejecting it. If this happens you have to reboot the printer.

The last problem I'd really like to solve is being able to print from terminal, but I can't work out the magic command to get the printer to print a custom size label. Looking at the CUPS documentation it says to set a custom media size with:

lp -o media=Custom.WIDTHxLENGTH #pt
lp -o media=Custom.WIDTHxLENGTHmm 

I've tried all of the following combinations and more without success:

lp -d PT-E550W -o RequireMatchingLabelSize=False -o media=Custom.11.99x25mm
lp -d PT-E550W -o RequireMatchingLabelSize=False -o media=Custom.34x71
lp -d PT-E550W -o RequireMatchingLabelSize=False -o PageSize=Custom.11.99x25mm
lp -d PT-E550W -o RequireMatchingLabelSize=False -o PageSize=Custom.34x71
lp -d PT-E550W -o RequireMatchingLabelSize=False -o PageSize=Custom.11.99x25mm -o media=Custom.11.99x25mm
lp -d PT-E550W -o RequireMatchingLabelSize=False -o PageSize=Custom.34x71 -o media=Custom.34x71

RequireMatchingLabelSize=False appears to be required in all cases (including in GUI applications) else you get the "Tape Cassette Changed!" error.

philpem commented 2 years ago

Oh yes, the width and height will be swapped because of how the print head is positioned in the printers - the PT and QL machines are the same. Essentially the print data needs to be rotated 90 degrees compared to how the label is viewed.

The reboot issue is a weird one, sounds like a firmware bug - although the manuals do say that there's a minimum label length.