mailto: blog -at- heyrick -dot- eu
Tassimo T-Disc hacking
A couple of weeks ago, a local supermarket was selling off Tassimo SUNY coffee makers for €30. I looked at Tassimo's website, they wanted a hundred for the machine. Amazon wanted fifty eight, and it seemed that "around sixty" was a usual list price. I then looked at the Suchard hot chocolate dosettes (about four twenty) and worked out that 30+(4,20×2) comes to €38,40 including the machine, which for 16 drinks per pack is 32 in total or €1,20 per hot chocolate. Even if I buy nothing more than the machine and the two chocolates, it will ultimately work out cheaper than if I got one out and about. You see, the French hot chocolate mix isn't terribly good as it is intended to be made with milk - which is a lot of hassle. Sure, it's a better drink, but if you want a quick hot choc fix, you want a kettle and a mug and some magic powder. Anything else is annoying.
Well, the Tassimo brings this to "a dose, a machine, and a mug". Hell, I don't even need to actually do much. Insert a disc, ensure there's water in the little tank, and put a cup under the nozzle. It really could only be simpler if I had a drinks dispenser like the ones you see in railway stations. But that's a bit ridiculous...
Here's one of the official publicity shots from tassimo.fr:
The chocolate was okay. I would have appreciated a larger cup because, well, I'm a gannet. I tried a coffee but it was lethal. Seriously, I made the coffee and tipped three quarters in the sink. The rest was topped up wih milk, about five sugars, and then put in the microwave. Then it was drinkable.
The Maxwell House latte (should be lattè!) was amusing. I put the white disc in and made it up. It wasn't bad, needed some sugar, but it didn't really sell it's coffeeness to me. Turns out that I was only drinking the lattè part. The coffee is a separate disc! The milky stuff was an odd but rather pleasant taste. For my final two tries, I made it correctly. A big amount of milky stuff, with an espresso dose into that. The final one was made up in a big plastic beer glass so I could marvel at the three layers of the beverage. That was actually pretty impressive. After adding sugar and mixing it all together, it was perfectly drinkable - for Maxwell House is a much milder and smoother coffee. It's the sort of coffee that you can enjoy, not the sort that punches you in the face to make sure you're fully awake.
Then I discovered English breakfast.
Let's just come right out and be honest. French black tea is shit. Some teas are drinkable, everybody's favourite Lipton Yellow Label is surely the stuff that was rejected for Happy Shopper tea bags. It is the most miserable sorry excuse for tea I've ever had the misfortune to drink. And while you can find some astonishing posh-as-hell Earl Grey blends with rose and lavender (!), there's nothing that will match the simple understated joy of a cup of Tetley. And by Tetley I mean the type you get in Britain, not the export versions sold here (which are barely better than Yellow Label). For an ardent drinker of black tea, it is painfully clear that the French really don't get black tea. The usual comment from people I've shared teabags with is "wow, what a taste" followed by "gave me heartburn for weeks". Funny, that's pretty much my opinion of most French coffee!
Enter Tassimo English breakfast. Made in Germany or somesuch, it is a proper solid pleasing large cup of tea. This is a tea for people who drink tea. Amazon is listing 80 dosettes (5×16) for about €26, which is a heck of a lot more than my Tetley but at ~32 centimes a cup it would be marginally more expensive than a lot of French tea (which tends to be in the order of 10-20 cents per bag) but cheaper than that posh-as-hell tea that was... don't ask. Really, don't.
Now the thing that bugged me about coffee machines in the affordable end of the market was that they seemed to be fairly single-purpose devices. The one we have at work (some sort of nespresso, I think) has the benefit that you can get blank cartridges online for putting in your own favourite coffee, but the disadvantage that it is a rather stupid machine - there's a half cup button and a full cup button. That's it.
The Tassimo, on the other hand, has unique cartridges that carry a barcode. And what's impressive about this isn't the implied DRM (any blanks you'll find on-line are recycled cartridges) or region coding (American and European cartridges apparently won't work in the opposite machines), but the fact that the barcode is not a drink identifier. It is a coded set of instructions telling the machine how to prepare the drink.
The code for my particular machine is the one on the side, not the one closest to the tab. It is interleaved two of five (ITF) format, with a check digit. According to US patent 7,231,869 B2, the bit assignment of the barcode is as follows:
Bit Parameter Description
0 & 1 Water temperature 00 = cold
01 = warm
10 = 83°C.
11 = 93°C.
2 & 3 Cartridge charge 00 = fast charge with soak
01 = fast charge without soak
10 = slow charge with soak
11 = slow charge without soak
4, 5, 6 & 7 Beverage volume 0000 = 50 ml
0001 = 60 ml
0010 = 70 ml
0011 = 80 ml
0100 = 90 ml
0101 = 100 ml
0110 = 110 ml
0111 = 130 ml
1000 = 150 ml
1001 = 170 ml
1010 = 190 ml
1011 = 210 ml
1100 = 230 ml
1101 = 250 ml
1110 = 275 ml
1111 = 300 ml
8, 9 & 10 Flow rate 000 = 30%
001 = 40%
010 = 50%
011 = 60%
100 = 70%
101 = 80%
110 = 90%
111 = 100%
11 & 12 Purge 00 = slow flow/short period
01 = slow flow/long period
10 = fast flow/short period
11 = fast flow/long period
The code on or in the cartridge 1 will normally comprises one or more extra data bits for error checking. In one example a 16 bit code is provided. For example, using the variables listed in Table 3, a cartridge 1 bearing the code "
1000100011110" would have the following operational parameters:
10 Water temperature of 83°C.
00 Fast charge with soak
1000 Dispensed drink volume of 150 ml
111 Flow rate equals 100%
10 Fast air flow purge/short period.
Armed with this information, I used an online barcode generator to create a 300dpi barcode for the value
%00 011 1101 01 11 (or
00983 in decimal), which means 93°C, fast charge/no presoak, 250ml, 60% flow rate, short purge.
The barcode was printed using OvationPro to get it to the correct size (24mm by 10mm), and using the laser printer so a splash or two won't wreck it.
The barcode was recognised by the coffee machine, which proceeded to spew out warm water rapidly. Well, okay, I'm halfway there, I guess...
Here are the T-Discs that I currently have, and how they break down (the dashes to expand the binary to four nibbles; the bracketed number is the check digit):
|Vanilla Latte (coffee)
|Pretty small, espresso|
|Vanilla Latte (milk)
|Largish (together with espresso = XL size)|
|L size (pack says 195ml)|
|L size (how does this differ?)|
|L'Or Petit Dejeuner
|L size, but why the longer weird code?|
If we take a look, the espresso part of the lattè is small, while the milk part is large. The codes, split as indicated in the patent, are:
Coffee 11 000 0010 00 10
Milk 11 001 0010 01 11
As both claim to be
0010 size (70ml) and this is clearly not the case, the encoding here is obviously different to that given. The cynical part of me wonders if this is to stop European discs being used in American machines, and vice versa.
Let's try it backwards:
Coffee 11 00 0001 000 10
Milk 11 00 1001 001 11
Well, that would give us 170ml of milk and 50ml of coffee. That could be the case, although the pack indicates a full drink is 280ml. It would imply maximum temperature, but then it would also suggest fast charge with soak which I don't think is true for the coffee part?
We can test this... Hot, fast charge with no soak, 50ml dose, 50% flow rate, short purge. If we run it all backwards it is
%11 01 0000 010 11 which is
Oh! So near, yet so far. The water came out slower, and I guess it ended up dosing about 80ml in total. The problem? Stone cold!
I think I'm going to have to do it the happy hacker way - print up a bunch of barcodes, each toggling a single bit, to observe how the machine behaves each time... Just not today.
PS: I'm not the only one to have walked into this issue, so before you post a link below, please ensure:
- It's applicable to European models (if the page mentions Starbucks dosettes, it's American)
- It's not just copying from the patent
- It's not involving cutting out existing codes and gluing them on (that's Blue Peter, not hacking!)
- It's not talking about the other barcode (the UPC_E one, that's for a different machine).
Please note that while I check this page every so often, I am not able to control what users write; therefore I disclaim all liability for unpleasant and/or infringing and/or defamatory material. Undesired content will be removed as soon as it is noticed. By leaving a comment, you agree not to post material that is illegal or in bad taste, and you should be aware that the time and your IP address are both recorded, should it be necessary to find out who you are. Oh, and don't bother trying to inline HTML. I'm not that stupid! ☺
You can now follow comment additions with the comment RSS feed. This is distinct from the b.log RSS feed, so you can subscribe to one or both as you wish.
List all b.log entries
Return to the site index
PS: Don't try to be clever.
It's a simple substring match.
Last read at 01:20 on 2020/07/06.
© 2018 Rick Murray
This web page is licenced for your personal, private, non-commercial use only. No automated processing by advertising systems is permitted.
RIPA notice: No consent is given for interception of page transmission.