aboutsummaryrefslogtreecommitdiffstats
path: root/src/Xpl2Client.h
diff options
context:
space:
mode:
authorThomas Vanbesien <tvanbesi@proton.me>2026-03-16 11:04:21 +0100
committerThomas Vanbesien <tvanbesi@proton.me>2026-03-16 11:04:21 +0100
commit9ac64169720fb2b9852589b74f7300bcfebcaf62 (patch)
tree693e6582542c0c420cf521f42084d35c72ceff8f /src/Xpl2Client.h
parent87169e10cb7ebe732ef388552bb0c057c09767ef (diff)
downloadQtXpl2-9ac64169720fb2b9852589b74f7300bcfebcaf62.tar.gz
QtXpl2-9ac64169720fb2b9852589b74f7300bcfebcaf62.zip
GS_PH_VERSION command, per-printhead demo UI with --printheads CLI arg
Add getPhVersion(printheadId) to Xpl2Client with phVersionReceived signal carrying all 8 response fields. Mock server echoes canned version data for any requested printhead ID. Demo app accepts --printheads N (default 10) to simulate N printheads. The UI shows a scrollable per-PH list with individual and bulk version query buttons, updating each row's version info on response.
Diffstat (limited to 'src/Xpl2Client.h')
-rw-r--r--src/Xpl2Client.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/Xpl2Client.h b/src/Xpl2Client.h
index 41729fd..95ae03e 100644
--- a/src/Xpl2Client.h
+++ b/src/Xpl2Client.h
@@ -43,6 +43,8 @@ public:
Q_INVOKABLE void connectToServer ();
Q_INVOKABLE void disconnectFromServer ();
Q_INVOKABLE void getJcVersion ();
+ /** Query the specified printhead's version info. */
+ Q_INVOKABLE void getPhVersion (int printheadId);
signals:
void hostChanged ();
@@ -50,6 +52,13 @@ signals:
void errorOccurred (const QString &error);
void statusMessage (const QString &message);
void jcVersionReceived ();
+ void phVersionReceived (int controllerId, int printheadId,
+ const QString &mcuFirmwareVersion,
+ const QString &mcuHardwareVersion,
+ const QString &mcuFirmwareVariant,
+ const QString &fpgaFirmwareVersion,
+ const QString &fpgaHardwareVersion,
+ const QString &bootloaderVersion);
private slots:
void onSocketConnected ();
@@ -65,6 +74,7 @@ private:
void dispatchStatusMessage (const Xpl2Protocol::ParsedMessage &msg);
void handleKaPing (QTcpSocket &socket);
void handleGsJcVersion (const QVariantList &params);
+ void handleGsPhVersion (const QVariantList &params);
void updateConnectedState ();
QString logTag (const QTcpSocket *socket) const;