Little Printers, a friendly new messaging app and cloud platform.

Bringing an IoT classic back to life
(and a few new features thrown in!)

Self directed: 1 month

UX, interaction design, iOS app build, IoT cloud platform


Little Printer was a little internet-connected thermal printer and creative content platform - the brainchild of interaction design studio Berg back in 2012.

This cute little device printed your favourite articles, puzzles and social content on thermal paper, like a miniature newspaper or personal fax machine!

Why? It’s surprisingly fun and delightful. It also serves as an experimental provocation for how the physical and digital converge, and the new social experiences and relationships this might enable.

But when Berg shut up shop and the servers turned off, the web app for Little Printers went with it.


Little Printers is a new iOS and IoT cloud platform designed to bring your Little Printer back to life.

We’ve built on the open source ”Sirius” server, adding a new sharing model, creating a fun new app and some cool new features.

Why? We were sad when our Little Printers stopped working so took it upon ourselves to resurrect them. This also served as a research project to experiment with new approaches, permissions models, applications for how we might develop IoT / connected products in future.


A new app

We created a new app, for the Little Printer experience we always wanted.

Now you can print from a handy little app in your pocket, 1 tap away.

For us, messaging was the core of the Little Printer experience. It’s socially novel, and very rewarding. Like postcards, great when you’re travelling, for leaving little notes for people, or inside jokes!

Rebuilding the classics

Poster Font

From the original Little Printer: a classic. We loved the way the graphic lettering scales edge-to-edge to fill the width. It was painstaking work to replicate the original, but a lot of fun. Now with the added benefit of emoji 😄👍


Print out your photos in delicious 1-bit! Because the Little Printer can only print two colors - black and white, we implemented our favourite dither - 'Atkinson Dither' - from the original Macintosh.

Plus a few new ones…


Doodle freehand to send your silliest scribbles in seconds!

Works with Share sheet

Print from any app across iOS via the share sheet. Print photos, notes, screengrabs…

Has its own API

Hook up services like IFTTT to link up anything with RSS - comics, a reddit feed, puzzles, whatever you like!

Look and feel

The team at Berg invested a lot of time developing the visual language and aesthetics of Little Printer, across the physical device and their web service.

It’s a style we love and we’ve done our best to reflect and refresh this in the UI of the app - to be an honest evolution of the original web service.

A new sharing model

No account

We think anyone should be able to easily message a Little Printer, without needing to set up an account or sign-in. Just download the Little Printers app and choose a username so your friends know who it is.

Device Keys

When you set up your Little Printer, you can make a ‘device key’ - a unique URL that grants access to message a specific printer. They're sharable, decentralised, and easy to use. Paste the device key into our app to add a printer.

Sharable with friends

When you share a device key, you're giving permission to print, but also to share that key with other people – just like a phone number.
But unlike a phone number, you can make as many as you like. And if a key gets shared too widely, they can be revoked at any time.

If you can see it, you can use it

We like the idea of using existing social contracts as permission models for using connected devices. Print out a device key and stick it to your printer so friends, family and visitors to your home can join in the fun.


How it works

At the core of the system is Sirius, the open source backend for Little Printer, started by Matt Webb and developed by the open source community.
To support the app, we added device keys and their API.

Device keys

Device keys are how the app talks to the printer, and are the underlying tech behind our sharing model. Because they're just URLs they're decentralised, like an email address. But unlike an email address they can be revoked at any time if they get into the wrong hands. New keys can be minted and revoked from Sirius.

Webhook integrations

These device keys also work as an API, so they can be easily hooked up to services like IFTTT or Zapier, or even used in your own scripts.
Printing is as easy as:
curl \
-H 'Content-type: text/plain' \
-d 'hello'

You can also send messages in HTML, image, and JSON formats. This makes it really simple to plug them into IFTTT, using the Maker action!

Living on

Open source everything

Our changes to the Sirius backend (like device keys) are open source on Github. We're also open-sourcing the app. After all, we'd like the work we've done to revive Little Printer to live on, even if we stop working on it. Open source is the best way to do that.

Resilient Products

Little Printer is not the only connected product to have the servers go out. With more connected products out there than ever, how can we design them to be more resilient? Do we need legislation to protect consumers? Check out the blog post →

Have a Little Printer and want to get it working?

Flash the bridge

You need to point your Berg Cloud ‘Bridge’ to the new server. There’s a rough guide here, or some people on GitHub are offering this as a service.

Claim your Little Printer

Go to sign in with Twitter and claim your printer. You’ll probably have to reset your printer before hand (button behind receipt roll).

Get the app

Download the iOS app. Add your printer using the device key you made on the management server - send this to friends so they can message your printer.

Finally, thanks to:
Everyone at Berg who originally designed and produced Little Printer

Matt Webb, Tom Hunger, Quentin Dufour who built the open source sirius server

And the open source community who figured out how to flash the Berg Cloud bridge!