Skip to content

Protocol

戴梓恆 (TAI TZU-HENG) edited this page Aug 31, 2026 · 3 revisions

MAPPDK protocol

中文版

What strings Python sends the controller, checked against the KAREL source in driver/. Split into the following, by topic:

Document Content
Wire format Sent/received string format, motion-command field widths, version detection
Upstream commands The command table compatible with the fanucpy upstream driver
Extended commands Commands this project adds, per-command details, and real-hardware verification status
Debugging notes Debugging history from developing the extended commands (alarm history, getjpreg hanging)
Error messages Which exception class each driver error string maps to
Driver limits Limits hardcoded in KAREL that can't be worked around (DIN is read-only, an out-of-range RDO aborts the server)
Two connections What S8 (main connection) and S7 (logger) each do
Reserved resources Registers and UFRAME/UTOOL numbers the driver uses
Extending the driver Read this before adding a new command, or when weighing a deferred item

For the controller-side environment setup (ROBOGUIDE, TP operation), see Controller setup.

Caution

Everything below is a plain-text protocol over a plain TCP socket, with no authentication and no encryption at any layer. Never expose ports 18735/18736 to a network you don't fully trust; see the project README's security note.


Last updated: 2026-08-31

Clone this wiki locally