Electronics > Projects, Designs, and Technical Stuff

Small and inexpensive direct thermal printer to print labels

<< < (3/3)

tooki:

--- Quote from: Perkele on April 26, 2024, 06:43:36 pm ---These guys had reasonably priced printers when I was using them:
https://www.custom.biz/en_GB/product/hardware/printers/kiosk-receipt-printers/kpm180h

--- End quote ---
Out of curiosity: what are their ordering requirements like? (Generally speaking, when I see a website that doesn’t list any prices, nor even a network of distributors, I tend to assume they want nothing to do with you if you’re not going to buy hundreds of units or more.)


--- Quote from: Perkele on April 26, 2024, 06:43:36 pm ---Most of them use ESC/POS or some kind of "binary" comms protocols.
ESC/POS is supported on multiple platforms, would not be surprised if someone also did an Arduino library for it.

--- End quote ---
There are several.

ajb:

--- Quote from: tooki on April 26, 2024, 01:09:44 pm ---
--- Quote from: artag on April 26, 2024, 11:40:02 am ---I believe the brother label printers (usually USB, thermal, a wide variety of cheap clone labels available) are supported by drivers within the CUPS printer control system in Linux.

--- End quote ---
They probably are, but for inventory labels like this, where it’s likely that bar codes are involved, you don’t want to print using regular OS print drivers, you instead want to use the printer’s own command language to ensure that bar codes are printed perfectly sharp.
--- End quote ---

Well, you *can* do decent barcodes via OS print drivers, but it requires some careful management of the print data to get good results.  Any raster content sent to the printer, especially barcodes, should exactly match the printer's native resolution, and should be uncompressed 1-bit monochrome.  Whether it's worth dealing with that versus dealing with ZPL or whatever will depend on the application. 

Source: I got fed up with Brady's shitty label printing software and stupidly limited printer command languages, so I built my own HTML template -> raster image -> Windows print API pipeline.  I had to jump through a couple hoops to correctly scale the template content to match the print resolution, and manually collapse the color space to 1-bit to eliminate any image compression artifacts, but everything comes out nice and crisp, even with relatively tight linear barcodes.  (Modern camera-based barcode scanners also help, since the image processing has to correct for a lot of other confounding factors anyway.)

tooki:

--- Quote from: ajb on April 26, 2024, 07:37:18 pm ---
--- Quote from: tooki on April 26, 2024, 01:09:44 pm ---
--- Quote from: artag on April 26, 2024, 11:40:02 am ---I believe the brother label printers (usually USB, thermal, a wide variety of cheap clone labels available) are supported by drivers within the CUPS printer control system in Linux.

--- End quote ---
They probably are, but for inventory labels like this, where it’s likely that bar codes are involved, you don’t want to print using regular OS print drivers, you instead want to use the printer’s own command language to ensure that bar codes are printed perfectly sharp.
--- End quote ---

Well, you *can* do decent barcodes via OS print drivers, but it requires some careful management of the print data to get good results.  Any raster content sent to the printer, especially barcodes, should exactly match the printer's native resolution, and should be uncompressed 1-bit monochrome.  Whether it's worth dealing with that versus dealing with ZPL or whatever will depend on the application. 

Source: I got fed up with Brady's shitty label printing software and stupidly limited printer command languages, so I built my own HTML template -> raster image -> Windows print API pipeline.  I had to jump through a couple hoops to correctly scale the template content to match the print resolution, and manually collapse the color space to 1-bit to eliminate any image compression artifacts, but everything comes out nice and crisp, even with relatively tight linear barcodes.  (Modern camera-based barcode scanners also help, since the image processing has to correct for a lot of other confounding factors anyway.)

--- End quote ---
Exactly. That effort is precisely why I said you don’t want to use the OS printing (not that it’s categorically impossible to get good results using it*). Using printer commands (ZPL, ESC/POS, etc) ensures you get clean results.

You’re definitely right about camera-based scanning. Even blurry bar codes seem to scan well. Heck, I find it almost annoying (on principle alone, as a perfectionist) that my bank’s 2D bar code scanning (for 2-factor authentication, and for scanning bills) recognizes codes before the camera has even finished focusing on it! I’ve also had no trouble scanning bar codes in PDFs where the bar code is stupidly saved as a bitmap image, which a lot of software will then apply an interpolation filter to when scaling for printing, resulting in blur. (It’s definitely better to have it as a vector “font” or vector graphics, so that it always prints sharp.)

*I worked at the Apple Store many years ago, and their receipt printers use OS printing so that it can print in the corporate font instead of the printer’s ROM fonts. They had clearly worked out how to get clean bar codes, of course. But the text is actually not great, you can tell the font is not optimized for low resolution. As far as I can tell, their POS system still works that way to this day.

Navigation

[0] Message Index

[*] Previous page

There was an error while thanking
Thanking...
Go to full version
Powered by SMFPacks Advanced Attachments Uploader Mod