Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

So, if I plug a USB printer into a computer, and ls > /dev/usbXXX, will it print today? Does that still "just work"?

For those who want to look into the horse's mouth, USB printing device class:

https://www.usb.org/sites/default/files/usbprint11a021811.pd...

"Printers have two different types of commands: those that transfer data, and those that control the USB interface or printer interface. The host prints something on a printer by delivering data on the Bulk OUT endpoint. This data may take the form of PostScript, HP PCL, or any other PDL. This data may also be encapsulated in a PCP, such as IEEE 1284.1, or something that is vendor-specific. In addition, the data may also be simple text, or it may be a proprietary PDL."

The rest of the spec makes it very clear that this is intended to work exactly like a standard parallel port at the "application layer". Use the bulk OUT endpoint to write data to the printer, and the bulk IN to read data from it. There is a status request that returns the same signals (out of paper, etc.) that a parallel port has.

If I do that with an EPSON and send it EPSON MX-80 escape codes -- does it still work?

ESC/P and ESC/P2 which followed are backwards-compatible and based on the MX, so likely yes.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: