Thermal_Printer icon indicating copy to clipboard operation
Thermal_Printer copied to clipboard

Does it work with MXW01?

Open eerimoq opened this issue 10 months ago • 5 comments

Hello!

I've implemented support for thermal printers in my project Moblin. It works well, but a new printer model MXW01 does not work. I don't have an Arduino available, so figured I'll just ask here if someone knows how to communicate with an MXW01 printer?

eerimoq avatar Feb 08 '25 17:02 eerimoq

You might take a look at this repository......https://github.com/barzamin/miniprint

It has your model shown as being supported. Don't know if you can poke around and figure out how to use your printer

MYCAMEL222 avatar Feb 08 '25 17:02 MYCAMEL222

Doesn't seem to work unfortunately. My MX10 works though, so I'm doing something right =)

eerimoq avatar Feb 08 '25 18:02 eerimoq

It works now! MXW01 uses a totally different protocol compared to MX10. It's not pretty, but here is the code in case you want to implement it in this project as well:

https://github.com/eerimoq/moblin/blob/main/Moblin/Integrations/CatPrinter/CatPrinter.swift https://github.com/eerimoq/moblin/blob/main/Moblin/Integrations/CatPrinter/CatPrinterCommandsMxw01.swift

eerimoq avatar Feb 12 '25 04:02 eerimoq

It seems to overheat a lot. Not sure how to make it more reliable :(

eerimoq avatar Feb 13 '25 06:02 eerimoq

I also have this MXW01, the main characteristic is that the commands start with 0x22 0x21 instead of all other printers starting with 0x51 0x78. Unluckily enough, the app that came with mine has the other printers as compatible too, so i tried decompiling it to extract the commands for ours, but no luck: while the v5g printers have their commands hardcoded, this one fetches them from an API or something, i could find a lot of dynamic calls to getData() but no hard coded command like the DataBeans or similar. I also used wireshark to intercept the BLE packets and i can confirm that they start with 0x22 0x21, but other than identifying the one for print quality (in percentage 0 to 100) i didn't manage to pin down the basics for printing.

In the next days i will try to convert that Swift one, let's see. If anyone has any input please let me know, this is my first attempt at something like this

Paffo avatar Feb 20 '25 23:02 Paffo

Do u have answers now? I have a connection but it doesnt print at all :(

tytytytyy avatar May 04 '25 12:05 tytytytyy

Do u have answers now? I have a connection but it doesnt print at all :(

Found the awesome work of MaikelChan, tested and working. All credits go to them:

https://github.com/MaikelChan/CatPrinterBLE

Paffo avatar May 06 '25 14:05 Paffo