Hey,
I just got a Marklife X2 thermal printer (also sold as the Ablemark M60 on amaz*n) and wanted to see if I could get it working. Thanks to the profile guide, I was able to find the BLE device and connect to it, but I haven't been able to actually print anything yet.
Here's the profile I'm using:
import type { DeviceProfile } from "../types.js";
export const m60Profile: DeviceProfile = {
modelId: "m60",
protocolId: "l11", // reuse existing protocol
serviceUuid: "0000ff00-0000-1000-8000-00805f9b34fb",
characteristics: {
tx: "0000ff02-0000-1000-8000-00805f9b34fb",
rx: "0000ff01-0000-1000-8000-00805f9b34fb",
cx: "0000ff03-0000-1000-8000-00805f9b34fb", // optional — omit if no flow control char
},
packetSize: 95, // BLE write chunk size in bytes
flowControl: {
starvationTimeoutMs: 1000,
packetDelayMs: 30,
},
defaults: { density: 2, paperType: "gap" }, // "gap" for label paper, "continuous" for receipt
namePrefixes: ["X2", "M60"], // BLE advertised name prefixes
};
thermoprint-debug-2026-04-30T19-45-37.zip
The reason I'm looking into this is that the printer is set up for sticky thermal labels, but I want to use standard 58mm thermal paper instead.
When I print on regular paper, I get small gaps between the printed images and text. Not sure if that's a hardware limitation or something configurable. I did notice some print settings in the reverse-engineered SDK that might help fix the gaps.
I'm happy to help with testing and adding support for this printer. If you're on Discord, we could probably figure this out pretty quickly.
Hey,
I just got a Marklife X2 thermal printer (also sold as the Ablemark M60 on amaz*n) and wanted to see if I could get it working. Thanks to the profile guide, I was able to find the BLE device and connect to it, but I haven't been able to actually print anything yet.
Here's the profile I'm using:
thermoprint-debug-2026-04-30T19-45-37.zip
The reason I'm looking into this is that the printer is set up for sticky thermal labels, but I want to use standard 58mm thermal paper instead.
When I print on regular paper, I get small gaps between the printed images and text. Not sure if that's a hardware limitation or something configurable. I did notice some print settings in the reverse-engineered SDK that might help fix the gaps.
I'm happy to help with testing and adding support for this printer. If you're on Discord, we could probably figure this out pretty quickly.