bella

module
v0.0.0-...-42d8158 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 24, 2020 License: MIT

README

Bella -- label printer software

bel   la

Bella renders text to graphics and prints it on a label maker using IPP/CUPS.

It was created for use with a Dymo LabelManager PnP, but other continuous-tape printers might work too. If you have a different brand/model printer, let us know how to get it working!

Current status: just getting started on the project.

bella-png >bella.png 'bel   la'
lp -d label -o landscape bella.png

Roadmap

  • command-line printing
  • web interface, especially for mobile client use
  • submit print jobs via IPP?
  • limit label maximum width (mm or inch), to e.g. fit on drawer front
  • maybe embed images?
  • maybe embed QR codes?

Supported outputs and tapes

We currently assume the output needs to be 64 pixels tall. This matches the printable area of a 1/2-inch Dymo D1 tape.

Dymo D1 tape widths
Tape size (inch) Tape size (mm, approx) Printable area (mm) Printable area (pixels)
1/2 12 9 64
3/8 9 ? ?
1/4 6 ? ?

Setting up CUPS for Dymo (on Debian/Ubuntu)

See https://www.baitando.com/it/2017/12/12/install-dymo-labelwriter-on-headless-linux

sudo apt-get install printer-driver-dymo

# for me, the above didn't include the PPD file for some reason; get it from the SDK
wget http://download.dymo.com/dymo/Software/Download%20Drivers/Linux/Download/dymo-cups-drivers-1.4.0.tar.gz
tar xzf dymo-cups-drivers-1.4.0.tar.gz
sudo cp dymo-cups-drivers-1.4.0.5/ppd/lmpnp.ppd /usr/share/cups/model/

# find your device serial number in lsusb, it's a 14-digit number
lsusb -d 0922:1002 -v
lpadmin -p label -v 'usb://DYMO/LabelManager%20PnP?serial=REPLACE_SERIAL_HERE' -P /usr/share/cups/model/lmpnp.ppd
cupsenable label

# test it
convert -size 300x64 canvas:white -font 'Times-Roman' -pointsize 64 -fill black -draw 'text 0,64 "label maker"' label.png
lp -d label -o landscape label.png

Open questions

How many levels of gray can a Dymo print?

We're currently using 8-bit grayscale. Is there any point in using 16-bit?

Automatic cutting

Do label printers with automatic cutting need something special? Right now we just print it out, cutting is end user problem (and the Dymo LabelManager PnP has a manual cutter); this means if you print multiple labels in a row, you lose the use of the built-in cutter and need scissors. You can configure the Dymo LabelManager PnP to pause after each label, to leave you time to cut, but I haven't tested if it actually waits for user action or not.

Anti-goals

  • Fixed size pre-cut labels. We'd rather get the continuous tape style labels working great, and that means letting the length of the printout be whatever it is.
  • Generating PDF. The printer driver will just rasterize it anyway, so we can simply submit a bitmap. The size isn't an issue here.

Alternatives

Resources

Directories

Path Synopsis
cmd
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL