This module contains the implementations of abstract base class
Manuel F Martinez and others
Bashlinux and python-escpos
Copyright (c) 2012-2017 Bashlinux and python-escpos
- class escpos.printer.Usb(idVendor, idProduct, usb_args=None, timeout=0, in_ep=130, out_ep=1, *args, **kwargs)¶
This class describes a printer that natively speaks USB.
Search device on USB tree and set it as escpos device.
usb_args – USB arguments
Release USB interface
- class escpos.printer.Serial(devfile='/dev/ttyS0', baudrate=9600, bytesize=8, timeout=1, parity='N', stopbits=1, xonxoff=False, dsrdtr=True, *args, **kwargs)¶
This class describes a printer that is connected by serial interface.
Setup serial port and set is as escpos device
Close Serial interface
- class escpos.printer.Network(host, port=9100, timeout=60, *args, **kwargs)¶
This class is used to attach to a networked printer. You can also use this in order to attach to a printer that is forwarded with
If you have a local printer on parallel port
/dev/usb/lp0then you could start
socat -u TCP4-LISTEN:4242,reuseaddr,fork OPEN:/dev/usb/lp0
Then you should be able to attach to port
4242with this class. Otherwise the normal usecase would be to have a printer with ethernet interface. This type of printer should work the same with this class. For the address of the printer check its manuals.
Open TCP socket with
socket-library and set it as escpos device
Close TCP connection
- class escpos.printer.File(devfile='/dev/usb/lp0', auto_flush=True, *args, **kwargs)¶
Generic file printer
This class is used for parallel port printer or other printers that are directly attached to the filesystem. Note that you should stay away from using USB-to-Parallel-Adapter since they are unreliable and produce arbitrary errors.
Open system file
Flush printing content
Close system file
- class escpos.printer.Dummy(*args, **kwargs)¶
This class is used for saving commands to a variable, for use in situations where there is no need to send commands to an actual printer. This includes generating print jobs for later use, or testing output.
- property output¶
Get the data that was sent to this printer
Clear the buffer of the printer
This method can be called if you send the contents to a physical printer and want to use the Dummy printer for new output.