<feed xmlns='http://www.w3.org/2005/Atom'>
<title>QtXpl2/CMakeLists.txt, 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-24T16:29:52Z</updated>
<entry>
<title>Add JettingProxy relay, convert Xpl2Client to active connection model</title>
<updated>2026-03-24T16:29:52Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-03-24T16:25:03Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/cgit.cgi/QtXpl2/commit/?id=e9d8a8b052150f42ea00da2c07e3f78a9b7d2061'/>
<id>urn:sha1:e9d8a8b052150f42ea00da2c07e3f78a9b7d2061</id>
<content type='text'>
Insert a transparent TCP proxy between the controller and N clients:
- JettingProxy listens on 9110-9112 (controller) and 9210-9212 (clients)
- Broadcasts controller frames to all clients, forwards client→controller
- Independent KA_PING handling on both sides

Convert Xpl2Client from passive QTcpServer listener to active QTcpSocket
outbound connections with auto-retry. New QML API: host/commandPort
properties, connectToProxy()/disconnectFromProxy() replacing
startListening()/stopListening().
</content>
</entry>
<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>Guard top-level-only CMake settings behind PROJECT_IS_TOP_LEVEL</title>
<updated>2026-03-17T09:57:26Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-03-17T09:57:26Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/cgit.cgi/QtXpl2/commit/?id=46e96b3318900b561928be304f4a9e252f2785a4'/>
<id>urn:sha1:46e96b3318900b561928be304f4a9e252f2785a4</id>
<content type='text'>
Allow QtXpl2 to be consumed as a submodule via add_subdirectory()
without conflicting with the parent project's C++ standard,
qt_standard_project_setup(), QML tooling, or RPATH settings.
</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>
<entry>
<title>Initial project setup: Qt 6.10.2 TCP client library for Alchemie XPL2 protocol</title>
<updated>2026-03-11T10:09:40Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-03-11T10:02:24Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/cgit.cgi/QtXpl2/commit/?id=35309337aacac2eac7d7215e526bddcf7647b8cf'/>
<id>urn:sha1:35309337aacac2eac7d7215e526bddcf7647b8cf</id>
<content type='text'>
- Static library (src/) with QML singleton Xpl2Client for TCP communication
- Qt Quick demo app (demo/) with connection UI, command input, and response log
</content>
</entry>
</feed>
