I see you've hard-coded the device search to GT01, with my cat printer the device name is GB02.
I bought my cat printer from Wish.com, it's a "Wirelessly BT 203dpi Mini Thermal Printer Photo Label Memo Wrong Question Printing with USB Cable imprimante portable".
After some searching around and looking at other cat printer_-related_ projects, there are a few variations: GB01, GB02, GT01
Visually the device looks identical to yours. It uses the same iPrint software from the Google Play Store.
Changing the hard-coded GT01 to GB02 in ble.py seems to make the script work with my cat printer.
(venv) max@mbp catprinter % python print.py ~/Desktop/cool.png
⏳ Applying Floyd-Steinberg dithering to image...
✅ Done.
✅ Read image: (384, 384) (h, w) pixels
✅ Generated BLE commands: 19009 bytes
⏳ Looking for a BLE device named GB02...
✅ Got it. Address: EF9E8FA3-81D1-4426-9451-38AA6EB13B71: GB02
⏳ Connecting to EF9E8FA3-81D1-4426-9451-38AA6EB13B71: GB02...
✅ Connected: True; MTU: 248
⏳ Sending 19009 bytes of data in chunks of 245 bytes...
✅ Done.
(venv) max@mbp catprinter %

I see you've hard-coded the device search to
GT01, with my cat printer the device name isGB02.I bought my cat printer from Wish.com, it's a "Wirelessly BT 203dpi Mini Thermal Printer Photo Label Memo Wrong Question Printing with USB Cable imprimante portable".
After some searching around and looking at other cat printer_-related_ projects, there are a few variations: GB01, GB02, GT01
Visually the device looks identical to yours. It uses the same iPrint software from the Google Play Store.
Changing the hard-coded
GT01toGB02in ble.py seems to make the script work with my cat printer.