<feed xmlns='http://www.w3.org/2005/Atom'>
<title>QtXpl2/mock-server/main.cpp, branch master</title>
<subtitle>High-level C++/QML library for Alchemie's Jetting Controller Protocol</subtitle>
<id>http://git.tvcloud.fr/cgit.cgi/QtXpl2/atom?h=master</id>
<link rel='self' href='http://git.tvcloud.fr/cgit.cgi/QtXpl2/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/cgit.cgi/QtXpl2/'/>
<updated>2026-03-23T15:48:32Z</updated>
<entry>
<title>Rename demo/ → jetting-interface/, mock-server/ → mock-jetting-controller/</title>
<updated>2026-03-23T15:48:32Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-03-23T15:48:32Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/cgit.cgi/QtXpl2/commit/?id=8bcf948b76c9564cb38d3611228ccaf73890a548'/>
<id>urn:sha1:8bcf948b76c9564cb38d3611228ccaf73890a548</id>
<content type='text'>
Executables: QtXpl2Demo → JettingInterfaceDemo, Xpl2MockServer → MockJettingController.
Dev log prefixes: "Demo" → "JI", "MockServer" → "MockJC". Window title → "Jetting Interface".
</content>
</entry>
<entry>
<title>Invert TCP connection model: client listens, server connects</title>
<updated>2026-03-23T15:39:33Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-03-23T15:39:33Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/cgit.cgi/QtXpl2/commit/?id=61debe99a269bf7e87f6ba2f8d2a376e619fcf12'/>
<id>urn:sha1:61debe99a269bf7e87f6ba2f8d2a376e619fcf12</id>
<content type='text'>
The XPL2 protocol specifies that the JI2 controller initiates connections
to the client, not the other way around. Xpl2Client now listens on 3 ports
via QTcpServer and accepts inbound connections; MockServer connects out
with auto-retry on the 1s KA_PING tick.

QML API: startListening/stopListening, listening+connected properties,
host property removed. Mock server gains --host CLI arg.
</content>
</entry>
<entry>
<title>Unified socket slots, --wire-debug CLI flag, fix mock TX and disconnect logging</title>
<updated>2026-03-13T17:20:35Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-03-13T17:20:35Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/cgit.cgi/QtXpl2/commit/?id=87169e10cb7ebe732ef388552bb0c057c09767ef'/>
<id>urn:sha1:87169e10cb7ebe732ef388552bb0c057c09767ef</id>
<content type='text'>
Collapse 12 per-socket slots into 4 sender()-based slots. Replace runtime
wireDebug QML property with static --wire-debug CLI flag on both demo and
mock server. Route MockServer::sendKaPing through sendReply so KA_PING TX
shows wire bytes. Simplify sendReply to deduce command token from wire data.
Fix Xpl2Client disconnect logging (logTag takes pointer, null-sender fallback).
</content>
</entry>
<entry>
<title>Coalesce mock server into single MockServer class</title>
<updated>2026-03-13T10:58:45Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-03-13T10:58:45Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/cgit.cgi/QtXpl2/commit/?id=02fe86ab2a04a02b114d7ca8ce4374a29a1d5f45'/>
<id>urn:sha1:02fe86ab2a04a02b114d7ca8ce4374a29a1d5f45</id>
<content type='text'>
Replace three independent EchoServer instances with one MockServer
that owns three QTcpServers, shares a single KA_PING timer, and
uses a flat client list with localPort() for port resolution.
</content>
</entry>
<entry>
<title>Refactor: three XPL2 ports, EchoServer class, dark debug console, qmllint clean</title>
<updated>2026-03-11T14:25:11Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-03-11T14:25:11Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/cgit.cgi/QtXpl2/commit/?id=094b8aa2bbb8b90dff9da199873cbc6b36549eb6'/>
<id>urn:sha1:094b8aa2bbb8b90dff9da199873cbc6b36549eb6</id>
<content type='text'>
- Xpl2Client: replace single port with commandPort/imagingPort/statusPort (9110/9111/9112)
- Mock server: extract EchoServer class from lambda-based listenOn()
- Demo: dark debug console matching BobinkQtOpcUa style, 2-column connection layout
- Fix qmlls module resolution via IMPORT_PATH in qt_add_qml_module()
- Add pragma ComponentBehavior: Bound, fix all qmllint warnings
</content>
</entry>
<entry>
<title>Add mock XPL2 server with echo on Command (9110), Imaging (9111), Status (9112) ports</title>
<updated>2026-03-11T10:31:25Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-03-11T10:31:25Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/cgit.cgi/QtXpl2/commit/?id=920a1adeadef58eb04f2bf83af8fb8bc6c01a986'/>
<id>urn:sha1:920a1adeadef58eb04f2bf83af8fb8bc6c01a986</id>
<content type='text'>
</content>
</entry>
</feed>
