The headline feature of the Bob dishwasher is the Bob Cassette is that it is an all-in-one detergent cartridge. The washing machine is an IoT device and will order new cartridges when they are needed. In order to make this financially viable, they have DRM on the detergent! The detergents are very expensive.
The cartridges had a chip in them they did not allow them to be refilled. After a specific amount of uses, they stopped working. This is truly annoying and needs to be worked around! Time to bypass DRM :)
The PCB was a simple 24C02 EEPROM with I2C lines. This chip only holds 256 bytes of data. It seemed that a special connector was needed, but after rummaging around the parts bin for a while a USB-A female socket connector fit perfectly. The author then had to insulate the metal case so it would not short on the PCB contacts, which is probably would have forgotten to do.
Dumping the chip had very little on it and made no sense. After doing another wash and dumping it again, a single byte had changed! This change had to be the amount of washes still left. After changing this value, a VERY large amount of washes came on screen. It turned out that the amount of washes left was stored as the value XOR with 0x50.
The author of the article now had the ability to add washes to their own cartridge. But what good does this do? Need to find a substitute for the liquids! In the end, a 98% price decrease was found solely based upon the price of the detergent.
To remove the DRM, the author made they own PCB that simply resets the counter when a button is pressed. You can even buy one yourself! This is a fun project with practical impacts that I enjoyed reading about.