mirror of
https://github.com/hyperion-project/hyperion.ng.git
synced 2023-10-10 13:36:59 +02:00
Extend logging and error reporting (#1149)
- ProviderRs232: Be more verbose about correct device in error case Rearrange Debug Information and additionalclean-ups - Webconfig: better error description, if Kodi is not found
This commit is contained in:
parent
2b66754997
commit
74a6795991
@ -869,7 +869,7 @@
|
||||
"wiz_cc_chooseid": "Wähle einen Namen für dieses Farb-Profil.",
|
||||
"wiz_cc_intro1": "Der Assistent wird dich durch die Kalibrierung deiner LEDs leiten. Sofern du Kodi nutzt, können die Bilder und Testvideos direkt an Kodi geschickt werden. Andernfalls musst du das Material selbst herunterladen und anwenden.",
|
||||
"wiz_cc_kodicon": "Kodi Webserver gefunden, fahre mit Kodi-Unterstützung fort.",
|
||||
"wiz_cc_kodidiscon": "Kodi Webserver nicht gefunden, fahre ohne Kodi-Unterstützung fort.",
|
||||
"wiz_cc_kodidiscon": "Kodi Webserver nicht gefunden, fahre ohne Kodi-Unterstützung fort (prüfe, ob Fernsteuerung durch Programme auf anderen Rechnern erlaubt ist).",
|
||||
"wiz_cc_kodidisconlink": "Download Link Bilder:",
|
||||
"wiz_cc_kodimsg_start": "Test bestanden - Zeit zu beginnen",
|
||||
"wiz_cc_kodishould": "Kodi sollte jetzt folgendes Bild anzeigen: $1",
|
||||
|
@ -871,7 +871,7 @@
|
||||
"wiz_cc_chooseid": "Define a name for this color profile.",
|
||||
"wiz_cc_intro1": "This wizard will guide you through your led calibration. If you are using Kodi, the calibration pictures and videos can be sent directly to it. Prerequisite: You need to enable \"Allow remote control from applications on other systems\" in Kodi.<br />Alternatively, you might want downloading these files yourself and display them when the wizard asks you to adjust the setting.",
|
||||
"wiz_cc_kodicon": "Kodi found, proceed with Kodi support.",
|
||||
"wiz_cc_kodidiscon": "Kodi not found, proceed without Kodi support.",
|
||||
"wiz_cc_kodidiscon": "Kodi not found, proceed without Kodi support (please check, if remote control by other systems is activated).",
|
||||
"wiz_cc_kodidisconlink": "Download link pictures:",
|
||||
"wiz_cc_kodimsg_start": "Test success - time to proceed!",
|
||||
"wiz_cc_kodishould": "Kodi should show the following picture: $1",
|
||||
|
@ -43,7 +43,9 @@ bool ProviderRs232::init(const QJsonObject &deviceConfig)
|
||||
|
||||
// If device name was given as unix /dev/ system-location, get port name
|
||||
if ( _deviceName.startsWith(QLatin1String("/dev/")) )
|
||||
{
|
||||
_deviceName = _deviceName.mid(5);
|
||||
}
|
||||
|
||||
_isAutoDeviceName = _deviceName.toLower() == "auto";
|
||||
_baudRate_Hz = deviceConfig["rate"].toInt();
|
||||
@ -141,18 +143,16 @@ bool ProviderRs232::tryOpen(int delayAfterConnect_ms)
|
||||
Debug(_log, "_rs232Port.open(QIODevice::ReadWrite): %s, Baud rate [%d]bps", QSTRING_CSTR(_deviceName), _baudRate_Hz);
|
||||
|
||||
QSerialPortInfo serialPortInfo(_deviceName);
|
||||
|
||||
QJsonObject portInfo;
|
||||
Debug(_log, "portName: %s", QSTRING_CSTR(serialPortInfo.portName()));
|
||||
Debug(_log, "systemLocation: %s", QSTRING_CSTR(serialPortInfo.systemLocation()));
|
||||
Debug(_log, "description: %s", QSTRING_CSTR(serialPortInfo.description()));
|
||||
Debug(_log, "manufacturer: %s", QSTRING_CSTR(serialPortInfo.manufacturer()));
|
||||
Debug(_log, "productIdentifier: %s", QSTRING_CSTR(QString("0x%1").arg(serialPortInfo.productIdentifier(), 0, 16)));
|
||||
Debug(_log, "vendorIdentifier: %s", QSTRING_CSTR(QString("0x%1").arg(serialPortInfo.vendorIdentifier(), 0, 16)));
|
||||
Debug(_log, "serialNumber: %s", QSTRING_CSTR(serialPortInfo.serialNumber()));
|
||||
|
||||
if (!serialPortInfo.isNull() )
|
||||
{
|
||||
Debug(_log, "portName: %s", QSTRING_CSTR(serialPortInfo.portName()));
|
||||
Debug(_log, "systemLocation: %s", QSTRING_CSTR(serialPortInfo.systemLocation()));
|
||||
Debug(_log, "description: %s", QSTRING_CSTR(serialPortInfo.description()));
|
||||
Debug(_log, "manufacturer: %s", QSTRING_CSTR(serialPortInfo.manufacturer()));
|
||||
Debug(_log, "vendorIdentifier: %s", QSTRING_CSTR(QString("0x%1").arg(serialPortInfo.vendorIdentifier(), 0, 16)));
|
||||
Debug(_log, "productIdentifier: %s", QSTRING_CSTR(QString("0x%1").arg(serialPortInfo.productIdentifier(), 0, 16)));
|
||||
Debug(_log, "serialNumber: %s", QSTRING_CSTR(serialPortInfo.serialNumber()));
|
||||
|
||||
if ( !_rs232Port.open(QIODevice::ReadWrite) )
|
||||
{
|
||||
this->setInError(_rs232Port.errorString());
|
||||
@ -163,6 +163,18 @@ bool ProviderRs232::tryOpen(int delayAfterConnect_ms)
|
||||
{
|
||||
QString errortext = QString("Invalid serial device name: [%1]!").arg(_deviceName);
|
||||
this->setInError( errortext );
|
||||
|
||||
// List available device
|
||||
for (auto &port : QSerialPortInfo::availablePorts() ) {
|
||||
Debug(_log, "Avail. serial device: [%s]-(%s|%s), Manufacturer: %s, Description: %s",
|
||||
QSTRING_CSTR(port.portName()),
|
||||
QSTRING_CSTR(QString("0x%1").arg(port.vendorIdentifier(), 0, 16)),
|
||||
QSTRING_CSTR(QString("0x%1").arg(port.productIdentifier(), 0, 16)),
|
||||
QSTRING_CSTR(port.manufacturer()),
|
||||
QSTRING_CSTR(port.description())
|
||||
);
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@ -215,7 +227,7 @@ int ProviderRs232::writeBytes(const qint64 size, const uint8_t *data)
|
||||
{
|
||||
if ( _rs232Port.error() == QSerialPort::TimeoutError )
|
||||
{
|
||||
Debug(_log, "Timeout after %dms: %d frames already dropped", WRITE_TIMEOUT, _frameDropCounter);
|
||||
Debug(_log, "Timeout after %dms: %d frames already dropped", WRITE_TIMEOUT.count(), _frameDropCounter);
|
||||
|
||||
++_frameDropCounter;
|
||||
|
||||
@ -245,7 +257,7 @@ int ProviderRs232::writeBytes(const qint64 size, const uint8_t *data)
|
||||
QString ProviderRs232::discoverFirst()
|
||||
{
|
||||
// take first available USB serial port - currently no probing!
|
||||
for (auto const & port : QSerialPortInfo::availablePorts())
|
||||
for (auto & port : QSerialPortInfo::availablePorts())
|
||||
{
|
||||
if (!port.isNull() && !port.isBusy())
|
||||
{
|
||||
@ -266,7 +278,7 @@ QJsonObject ProviderRs232::discover(const QJsonObject& /*params*/)
|
||||
// Discover serial Devices
|
||||
for (auto &port : QSerialPortInfo::availablePorts() )
|
||||
{
|
||||
if ( !port.isNull() )
|
||||
if ( !port.isNull() && !port.portName().startsWith("ttyS"))
|
||||
{
|
||||
QJsonObject portInfo;
|
||||
portInfo.insert("description", port.description());
|
||||
|
Loading…
Reference in New Issue
Block a user