Microprinter

Inspired by Tom Taylor’s microprinter project, I’ve bought a Citizen CBM-231 thermal reciept printer of my own. I picked it up for just £20 on eBay, including shipping. It’s great.

Tom uses his to print the weather, his diary, where his friends are (according to Dopplr) and more. As soon as I saw it, I wanted one of my own to hack with. Reciepts, printed on cheap and recyclable thermal paper, are perfect for directions, schedules, TODO lists and other impermanent bits and pieces you might want to carry while you’re offline. I also like the idea of it politely telling me what I’m up to as part of my morning waking-up ritual. I have a feeling that the soft sound printing and the ‘clunk’ of the auto-cutting blade will be a nice start to the day.

Citizen CBM-231 Citizen CBM-231 Arduino Hacked cable MAX3221 Barcodes!

(More photos)

A few hours of soldering and programming later, and I’m quite a happy hacker. I’ve put an Arduino sketch on github which shows how to easily print text and barcodes to the printer from an Arduino. It’s just a sketch at the moment, but I’ll turn it into a reusable library soon.  With a few utility methods and constants, a “hello world” with two barcodes ends up looking as simple as this…

println("Hello, World!");
feed();
setBarcodeTextPosition(barcodePrintBelow);
setBarcodeHeight(200);
setBarcodeWidth(barcodeWide);
printBarcode("123456789012");
feed();
setBarcodeHeight(50);
setBarcodeWidth(barcodeNarrow);
printBarcode("123456789012");
feed();
cut();

I think it can print bitmaps too. With a bit of work it should be able to print sparklines and QR Codes.

I know Tom has inspired a lot of people, and there are quite a few of these Citizen CBM-231 printers being repurposed at the moment. If you’re interested in building your own microprinter, you’ll hopefully find the wiki at microprinter.pbwiki.com useful.

Update: more microprinting fun including a book and sparklines.

23 replies on “Microprinter”

  1. It is certainly useful to be able to carry impermanent information with you but I prefer a high-tech solution! I find the information that I want on my iPod touch when in a wi-fi zone and take screen shots that get saved in the photos library. I can then view these when offline. It works well, particularly for maps.

  2. It’s nice to have information that requires no boot up time, that has no worries about battery life, that takes next to no room, that has a high contrast, sunlight readable surface.

  3. nice idea, though I’m still thinking about THE killer app for it …
    Btw. what’s the total cost of ownership? How much is a paperroll? How often do you have to replace other things?

    I’m currently thinking about printing QR codes and vouchers, fancy advertising … along these lines …

  4. Because the print head is thermal, there are no other consumables. Thermal till rolls are less than £1 each in bulk, and each one will last for a long time.

  5. I just connected my BPM205 printer (by unknown-to-me Italian company APS) to my Arduino board via a MAX232 chip. Works well with your “Hello world” sketch. I posted a link to the data sheet in the wiki. So far all non ASCII characters are printed out wrong, obviously the Arduino IDE is sending bytes > 0x79 in 2-byte Unicode, so there should be a conversion function somewhere.

    I’ll see what I can come up with. Is there talk about that somewhere else from the wiki and this comments?

  6. Layers of history here.

    Matt Webb, one of BERG’s principals, wrote about an idea for a social letterbox in 2006. We all swooned.

    Tom Taylor, inspired by the idea and inventive chap that he is, saw a cheap way to make it happen. During PaperCamp in January 2009, Tom showed off his Microprinter project and shared the source for his Arduino sketch.

    A couple of weeks later and I’d found and bought the exact same hardware, and soon shared my own code including a Ruby library.

    Tom’s project has inspired dozens of people to hack their own hardware, often using the same hardware. Many of them are listed on the microprinter wiki.

    One of the most impressive efforts comes from James Adam, who has been quietly beavering away on the Go Free Range Printer platform. It’s an impressive bit of work and definitely worth taking a look at.

    The good people at BERG obviously continued to think about doing the whole thing properly as a gorgeous bit of consumer electronics and, at the end of November 2011, announced their Little Printer.

    Frankly, I expect I will want a Little Printer and something I can hack with.

  7. I feel exactly the same way; I want something that’s stable and reliable (and somebody else’s responsibility), but I also want to be able to act on any inspiration that I get from it :)

Comments are closed.