Title: Return to the Matrix Date: 20190425 Tags: computers ======================================== The 'dot matrix', that is. For a long while, I've had a multi-function HP printer that I got free or for $100 with a laptop or something. It's pretty typical as modern ink jet printers go. Crappy proprietary utilities, binary drivers that mostly only support Windows (and Mac in this case) and no care given towards *nix support. It's fine as a cheap option. But it's been getting on my nerves the last few years as every time I go to use it, the ink will have dried up. It's been costing me at least $100 a year to keep it fed. Sometimes more. It's usually just so I can print a couple pages. It's main use is to print my tax forms so once again, I recently had to buy ink for it. Another $100+ dollars and when I got home and opened the boxes, I only then realized I bought the wrong color cartridge. Of course HP makes the cartridge boxes all identical except for the number. I had an off by one error :( That was the last time. No more money for HP. I started looking for a printer that I could rely on. Three things came together in my head. Commercial/ industrial environments, old school tech, and retro computing. What's wrong with a dot matrix printer? Why don't we have those anymore? A recent post in the Altair community was about someone looking for an Altair 8800 compatible printer and mentioning Oki Data (or just Oki). I knew of Oki as being a supported printer back in the Altair 8800, through C64 days. After that everything seemed to move to bubble/ink jet and beyond. I looked and found Oki still selling dot matrix printers. They market them to industry which is appealing to me because industrial buyers care about how equipment actually works, unlike products for the consumer market where they only care about how long the list of "features" is, how big a number some irrelevant metric has, how cheap it is, or maybe the artwork on the box. The Oki website for their dot matrix printers lists things like life expectancy in Mean Time Before Failure, and functionality using real numbers and measurements and units of actual time. The printer doesn't just come with a 1..2..3.. quick start guide and a registration card to harvest your information to sell to advertisers, but includes a 180 page reference document for the supported control command sets and even snippets of BASIC code to show how to program the printer yourself. No drivers needed, you can write your own. One of the big things I wanted was support from OpenBSD. There's some gotchas there, mostly because I know squat about printing for *nix and don't want to have to use CUPS. You can, however, simply copy or cat a file to the device and the printer has it's own fonts and can print away without any configuration at all. Doesn't get any easier than that. You can cat standard-in to the device and use it like a typewriter. Basic usage like that works easily with lpd. For more advanced usage, there are tools to translate files to PostScript then to a supported command set with a PPD and foomatic-rip. I haven't gotten it to a point of smooth functionality for any arbitrary file, yet. There is also support in Ghostscript. I'm not sure, yet, which is the better option or if it matters. Or if I should just break down and install CUPS to integrate everything. Sure it has some caveats: It's only black and white. While you can get a single sheet paper feeder, without it, you need pin feed paper (aka continuous feed), or to hand feed sheets in one at a time. It's slower than ink jet at high quality and way slower than laser. But it does what it does damn well, the sound is nostalgic, and replacement ink ribbons are just $12.