Hacking the Xyron Design Runner
Chapter 1: Homebrew USB Card Reader/Writer
This launches a series of articles on a truly neat device, the Xyron Design Runner. This device is a mini handheld printer, using a optical-mouse type motion detection and custom inkjet cartridge driver to print little designs and phrases on scrapbooks and such, just by sliding the device sideways across the page. Cool!
Fig 1 – The Xyron Design Runner
We’ve had one collecting dust in the “To-be-hacked” pile, and finally got around to actually getting something working. Truth be told, we put a bunch of effort into it a year ago and only got abysmal read/write speeds with lots of data errors. That crappy reader has been mothballed in favor of using a Teensy, and it works like a freakin charm!
Here’s our Teensy plug (and no, we don’t get free shit from them. Although we’d totally accept it!)
Teensy Rocks. You should get one
Hahaha. In all honesty, we respect the Arduino and all the awesome development that it has enabled. Like blinky LED’s. But for this project, you’ll really want the speed of USB comms. Not that our little reader firmware couldn’t be ported back to Arduino, just that it would be dog slow. Feel free to, if you like. This project could also be easily ported to any of the other USB AVR devices, and probably just recompiled for another ATMEGA board if it even requires a recompile at all. Might just run on a breakout board without any changes. But still, get a Teensy.
Back to the story of the XDR (Xyron Design Runner). Like early-generation ebooks, this device rose and fell due to overenthusiastic DRM. You can only print what’s on the little memory cards, and you can bet your ass that the retail value of fourty pieces of crappy clip art is exponentially inflated by putting it on said little card. Now a hundred bucks for a cool little printer is a price that is fair to both buyer and seller. But $49.99 for each card kills the buzz pretty quick. That cute little teddy bear just ain’t worth a whole dollar, no matter how many times you print him around the border of your memo. And with no way to send clip art from the PC to the little card you’re pretty much stuck with what Xyron gives you.
There is also a second category of memory card: Font Cards. With one of these, and another $100 device (The Xyron Disc Maker) you can generate your own phrases using a font of Xyron’s choosing. Assuming you shell out another $50 for a “Xyron Blank Disc” to write to. The concept is certainly cooler than clip art, but fonts get old quick as well. It’s like the 80′s – everyone wants to write one Christmas card using 6 different novelty fonts, but a month later you type everything in Arial because that’s the default and none of the others is interesting enough to reach up and click the selection box. Meh.
Now of course those cards LOOK tempting – just like SD cards – but like we, you, and every other joe that’s ever seen one knows: They can’t be read in a normal SD card reader. Wooo, mysterious! Untold goodies and technical intrigue (and clip art) that we can’t get our hands on – so frustrating!
Well you’re lucky you dropped by, as all mysteries will soon be revealed. But the XDR story continues..
The thing that is really interesting about all of this is that there seems to have been a little cross-pollination in a company called PrintDreams. Presently, they are developing hand-held printers that blow the doors off the Xyron – random swiping and all kinds of technical excellence. It appears they were the design team for the Design Runner, and later launched their own (non-Xyron) product called XDR PC-Link. This is a card reader and software package to write your own clip-art and phrases onto the Xyron Blank Cards to be used in the Design Runner. Neat. We hope they got blessing for this from Xyron, because launching an unlicensed product using the detailed technical information generated during a round of consulting is a giant flaming no-no.
As tells the rise and fall of the Design Runner. It’s almost impossible to find in brick-and-mortar stores nowadays, and will probably die out entirely soon as the print cartridges (also way overpriced, but the world tolerates ink that costs more than gold) are becoming harder and harder to find. The prices for the XDR have fallen to about $70 from Amazon.com or even cheaper from ebay. Not quite fire sale, but we can see the supply outweighing the demand. So get one now if you’re interested, they may not be around for long.
Now we know you’re not here for story-time. You want us to shut up and dump the technical details on the card, the schematic, the firmware, and the source. So you better browse over to page 2, dearies, and get cookin.
Continued on Next Page…
Jump to Page 2





I spent a few hours today looking into the image format.. I cheated to discover the message, its in plain text at the end of the file. I assume the letters are mapped to the corresponding letter in the font which would explain why it was readable.
I couldnt quite figure out the FAT table, but I found two that look quite similar. One at the very beginning, starting after the first 4 bytes. (set your hex editor to show 14 bytes across and you’ll see the pattern). Then, after the initial bunch of FFs and 00s, you’ll see a bunch more series of bytes with a repeating 20 FF, then the chars “SAVE”. I believe this marks the end of the FAT.
Beginning immediately afterwards is some bitmap data. I couldnt quite figure out the stride.
I did discover the preview images, which are stored with 13 leading and trailing FFs, in a 104 x 31 PBM-type format (1 bit per pixel, left to right, top to bottom).
Before the preview image is what the message looks like in the keyboard tool, like “54. abcdefghijkl”.
I assume the actual bitmap begins immediately after the preview image, but again, I was not able to figure out the interleave or stride.
-David
Hey, very nice work! We also spent some time working out the FAT (XAT?) table, the results are posted on the main page. And we agree, the actual bitmap data must be interleaved somehow. Our best guess so far is that it’s a variable number of columns, to make the data transfer between the card and printer driver easy – as you know, it prints from side to side so physically it seems as if it’s just dumping vertical print data to the print head as the X-axis is incremented
The secret messages are
“xxx xxxx xxxxxxx xxx xxxxxx xx xx” and
“xxxxx xxx xxxxxx”
Top work, David! The real prize is rendering these messages as a bitmap. It looks like it will be a race between us!
Also, using “strings” on the executable for the xdr program reveals an embedded copy of ImageMagick (hmm I don’t see the required copyright notice….).. I’d be willing to be their image format is one of those supported by IM.
The actual bitmap that is printed seems to be interleaved is my best guess. Try as I might to figure out the stride I can’t get anything sensible; but it’s clearly a regular pattern.
I note also that IM does have an interleave command, which would be convenient.
[...] (6) Site Sponsors Recent Commentsopenschemes on Hacking the Xyron Design Runner Chapter 1: Homebrew USB Card Reader/WriterDavid M. on Hacking the Xyron Design Runner Chapter 1: Homebrew USB Card Reader/WriterDavid M. on [...]
Anyone noticed the free xyron programming software from printdreams.com?
It’s mentioned in the article. XDR PC-Link. BTW, it saves as bitmap images and does not interleave the data until (presumably) it xfer’s to their reader. So it’s no help in decoding the image format, but is a nice target for what a good open source project should be able to do.
As the owner of a XDR and noticing that they are appearing to discontinue the item in the stores (no ink cartridges, clearances on the discs, etc), I would really appreciate any more information on the aforementioned “reader” for the PC link software… as in how to avoid having to buy one! Also, if there is an ink jet cartridge out there that is compatible to the one the XDR uses. I’ve read this thread and the one on “space” and will continue to check in to see if you brilliant minds have made more progress! Thanks!
Well we sure hope to give you what you want to know. Our reader is based on Teensy, but is probably compatible with any Atmega Arduino clone. As for the inkjet cart – you’ve got the right idea.. It costs an arm and a leg and will certainly kill this device if it’s completely discontinued.
What we do know is that the inkjet hardware in the XDR is made by Lexmark. So we are hoping that it’s some sort of standard Lex cartridge.. But short of buying every one we can find and looking at them, we’ve got no ideas on how to determine if a suitable replacement exists..
hhmmm.. I have a lexmark printer… I’ll check to see if that cartridge fits and let you know. Thanks for that information!
Did the lexmark ink cart fit?
pls i”ll like to know how i can get this product for buying . i based in nigeria. and i have a demand for an orget installation,thanks
The printer? Amazon. Teensy? PJRC.com
How is the crafts industry in Nigeria, anyway? All I ever hear is that it’s filled with rich princes who simply can’t get their money out.