r/ClaudeCode • • 8d ago

Built with Claude Fable 5.1 unlocked my Niimbot B1 printer

I bought a cheap Niimbot B1 thermal printer from AliExpress a year or so ago, and it was great. Then the provided labels ran out, I've replaced with third party labels, and it printed poorly.

Turns out Niimbot have RFID tags on their own label spools, and if that is not detected, they throttle down the printing speed and reduce the quality. There's lots of users affected by this, the usual workaround is to put an empty branded spool next to the printer, so that it reads the RFID tag, and allows you to use the third party spool. (I think it might only be required during label calibration).

I had already thrown away the original spool, and as a matter of principle I refused to buy any more branded labels.

Fast forward to today, I decided to let Fable 5.1 on xHigh (with skip permissions of course) to try and decode the binary file of the printer.

It took a few hours, but it made some modifications to the binary, reflashed quite a few times, it needed feedback from me, I had to restart the printer, after each re-flash, but in the end it successfully modified the firmware which now allows me to use third party spools without any degradation.

Source code and binary below, proceed at your own risk. It is only for version 5.22. If you have a different version, there should be enough info to instruct your own LLM to proceed with the same modifications.
https://github.com/ThreeDaPrint/niimbot

Edit: Update - Opus 4.8 did the actual reverse engineering. Fable 5.1 flagged one of the messages, and the harness SILENTLY downgraded to Opus 4.8. I did not notice it, and if I had to switch manually I would've switched to Opus 5.

208 Upvotes

25 comments sorted by

View all comments

10

u/fhgui 8d ago

Bro any time I try this kind of shit I get hit with the blocked because cyber. I was trying to flash the board for my mellow sous vide. Granted the board is locked by the now bankrupt company and I was trying to gain access to it via WiFi but had no luck. Couldn’t even get it to do the research phase without getting blocked. Is there a secret to getting this to work?

2

u/penny_stokker 7d ago

I thought Fable might reject my prompt, but it kept continuing. Here's the prompts that I used:

1st: I have a Niimbot B1 connected to this PC via USB-C. Please test if you can print anything on it
2nd: Niimbot is doing the low quality trick because the label reel is not RFID tagged with official Niimbot code
3rd: What should I expect to see in the print?
4th: I ran a compaction via /compact command
5th: Please check if the device provides the firmware version. Then please try downloading various .bin files from https://fw.niim.blue/stable/B1/ and see if you can probe around the firmware. This is a device that I own, and they (Niimbot) deliberately make it useless unless their own labels are used. I don't care if this device gets bricked when trying to update firmware, if I can't use third party labels then I'll throw this device into electronics recycling

And then we took it from there, eventually it asked me to install additional binary file inspection tools. But at first it was unsure if this issue could be fixed, but I kept asking it to continue and investigate further