lvds-embedded-hmi-qt5-7.ino
Initializes a Qt5 GUI optimized for the card's native LVDS output, suitable for interactive kiosks.
This example requires libqt5-dev on Ubuntu 24.04. The BIWCL-PAT card handles LVDS output via its dedicated header (flat cable not included). The code uses QWidget to minimize GPU load on the Wildcat Lake SoC. Compile with qmake or CMake. Direct execution via ./hmi_app displays the interface in fullscreen without a heavy window manager, ideal for edge computing. Verify that the Linux kernel detects the LVDS output (fbcon or DRM).
lvds-embedded-hmi-qt5-7.ino
#include <QApplication>
#include <QMainWindow>
#include <QLabel>
#include <QVBoxLayout>
#include <QFont>
#include <QPalette>
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
// Forcer la résolution LVDS native si détectée
QScreen *screen = QApplication::primaryScreen();
QRect screenGeometry = screen->geometry();
qDebug() << "LVDS Resolution:" << screenGeometry.size();
QMainWindow window;
window.setWindowTitle("BIWCL-PAT Industrial HMI");
window.setStyleSheet("background-color: #1e1e1e; color: #00ff00;");
QWidget *centralWidget = new QWidget();
QVBoxLayout *layout = new QVBoxLayout(centralWidget);
QLabel *statusLabel = new QLabel("SYSTEM: ONLINE\\nTEMP: 45°C\\nNET: OK");
statusLabel->setFont(QFont("Monospace", 24));
statusLabel->setAlignment(Qt::AlignCenter);
layout->addWidget(statusLabel);
window.setCentralWidget(centralWidget);
// Masquer la barre de titre pour un mode plein écran industriel
window.setWindowFlags(Qt::FramelessWindowHint);
window.showFullScreen();
return app.exec();
}