- Status
- Offline
- Joined
- Mar 3, 2026
- Messages
- 421
- Reaction score
- 7
If you're digging into the Makcu hardware and hit a wall with the documentation, you're not alone. The manufacturer basically tells you it's a Kmbox B Pro clone and leaves you to figure out the rest. Since these devices are standard for DMA and hardware-assisted HID setups, the protocol is predictable but often poorly documented outside of private circles.
Technical Reality
The Makcu/Kmbox B Pro operates over a standard Serial (COM) interface. Most implementations use a baud rate of 115200. Instead of raw hex packets found in some older Net versions, the B Pro typically listens for string-based commands sent directly to the serial buffer.
Core Command Structure
Based on the standard B Pro libraries, here are the primary commands you'll be using for mouse and keyboard simulation:
Implementation Tips
If you are writing your own wrapper in C++ or Python:
— Ensure you're opening the correct COM port. Check Device Manager for Silicon Labs CP210x or similar bridge drivers.
— Most clones require a specific termination character (usually \r\n) to process the command buffer.
— If your movement feels 'choppy', it's likely your serial write frequency desyncing with the game's polling rate. You might need to implement a micro-sleep in your loop.
Who here has the full list of raw hex codes for the keyboard side of the B Pro protocol?
Technical Reality
The Makcu/Kmbox B Pro operates over a standard Serial (COM) interface. Most implementations use a baud rate of 115200. Instead of raw hex packets found in some older Net versions, the B Pro typically listens for string-based commands sent directly to the serial buffer.
Core Command Structure
Based on the standard B Pro libraries, here are the primary commands you'll be using for mouse and keyboard simulation:
- km.move(x, y) — Sends relative movement coordinates. If you're doing aim smoothing, this is where your delta logic lives.
- km.left(state) — Mouse button 1 control (1 = down, 0 = up).
- km.right(state) — Mouse button 2 control.
- km.click(button, state) — General button state handler.
- km.delay(ms) — Instructs the hardware to pause execution.
Implementation Tips
If you are writing your own wrapper in C++ or Python:
— Ensure you're opening the correct COM port. Check Device Manager for Silicon Labs CP210x or similar bridge drivers.
— Most clones require a specific termination character (usually \r\n) to process the command buffer.
— If your movement feels 'choppy', it's likely your serial write frequency desyncing with the game's polling rate. You might need to implement a micro-sleep in your loop.
If the standard commands aren't giving you the results you want, I recommend using a serial sniffer like Device Monitoring Studio or even a cheap logic analyzer on the TX/RX lines. This is the only way to see if your specific firmware build has custom 'masking' features for more 'human-like' movement.
Who here has the full list of raw hex codes for the keyboard side of the B Pro protocol?