The ImageWriter II is a great printer, but it has no network port. Printing to one usually means keeping an old Mac around, or a modern computer with an old Ghostscript driver. I wanted to print to mine straight from my phone, so I made a dongle that does all the work itself.
It's an ESP32-S3 on a custom board with two mini-DIN ports, one for the printer and one for LocalTalk. When you hit Print, AirWriter takes the job over Wi-Fi, dithers it with Atkinson dithering (the same one the original Mac used), converts it to the ImageWriter's graphics mode and sends it down the serial cable. It uses the same Apple cable that connects the printer to a Mac, so you probably already have one.
If the printer runs out of paper or someone presses SELECT, your phone gets an alert, and the page carries on once you fix it.
The front is a second PCB with no parts on it, just artwork. Its grid of dots is made from bare FR4, soldermask and gold, and 37 RGB LEDs behind it show what the printer is up to. A little print head runs across the dots while it prints, they turn amber when it needs paper, and they glow like embers when the printer is switched off.
Printing from iPhone and Mac works right now, along with paper-out alerts, cancelling, setup over its own Wi-Fi network, OTA updates and the LED panel. Home Assistant's printer integration even picks it up. Next up is LocalTalk. The board can already hear a vintage Mac's Chooser through the LocalTalk port, and the goal is to show up there as a printer, so an old Mac and an iPhone can share the same ImageWriter.
The LocalTalk side runs on TashTalk by lampmerchant, and its wiring comes straight from FeralFirmware's TashTalkUSB. polpo's ImageScribbler is what I'll be leaning on for the AppleTalk part. Thank you all!
AirWriter will be available at shop.wells.ee. Hardware and firmware are both open source.
AirPrint, LocalTalk and ImageWriter are trademarks of Apple. AirWriter isn't affiliated with Apple.
Wells Workshop

