Merge pull request #909 from anegrin/timestamp-issue
FIX Issues 878 and 834 - usec overflow (using system clock)
This commit is contained in:
@@ -222,7 +222,7 @@ bool CANConManager::sendFrame(const CANFrame& pFrame)
|
|||||||
workingFrame.isReceived = false;
|
workingFrame.isReceived = false;
|
||||||
if (useSystemTime)
|
if (useSystemTime)
|
||||||
{
|
{
|
||||||
workingFrame.setTimeStamp(QCanBusFrame::TimeStamp(0,QDateTime::currentMSecsSinceEpoch() * 1000));
|
workingFrame.setTimeStamp(QCanBusFrame::TimeStamp::fromMicroSeconds(QDateTime::currentMSecsSinceEpoch() * 1000ul));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -214,7 +214,7 @@ void CANserver::readNetworkData()
|
|||||||
frame_p->setFrameType(QCanBusFrame::DataFrame);
|
frame_p->setFrameType(QCanBusFrame::DataFrame);
|
||||||
frame_p->isReceived = true;
|
frame_p->isReceived = true;
|
||||||
|
|
||||||
frame_p->setTimeStamp(QCanBusFrame::TimeStamp(0, QDateTime::currentMSecsSinceEpoch() * 1000ul));
|
frame_p->setTimeStamp(QCanBusFrame::TimeStamp::fromMicroSeconds(QDateTime::currentMSecsSinceEpoch() * 1000ul));
|
||||||
|
|
||||||
frame_p->setPayload(datagram.mid(dataByteLocation, length));
|
frame_p->setPayload(datagram.mid(dataByteLocation, length));
|
||||||
|
|
||||||
|
|||||||
@@ -685,9 +685,10 @@ void GVRetSerial::procRXChar(unsigned char c)
|
|||||||
buildTimestamp += timeBasis;
|
buildTimestamp += timeBasis;
|
||||||
if (useSystemTime)
|
if (useSystemTime)
|
||||||
{
|
{
|
||||||
buildTimestamp = QDateTime::currentMSecsSinceEpoch() * 1000l;
|
buildFrame.setTimeStamp(QCanBusFrame::TimeStamp::fromMicroSeconds(QDateTime::currentMSecsSinceEpoch() * 1000ul));
|
||||||
|
} else {
|
||||||
|
buildFrame.setTimeStamp(QCanBusFrame::TimeStamp(0, buildTimestamp));
|
||||||
}
|
}
|
||||||
buildFrame.setTimeStamp(QCanBusFrame::TimeStamp(0, buildTimestamp));
|
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
buildId = c;
|
buildId = c;
|
||||||
@@ -770,9 +771,10 @@ void GVRetSerial::procRXChar(unsigned char c)
|
|||||||
buildTimestamp += timeBasis;
|
buildTimestamp += timeBasis;
|
||||||
if (useSystemTime)
|
if (useSystemTime)
|
||||||
{
|
{
|
||||||
buildTimestamp = QDateTime::currentMSecsSinceEpoch() * 1000l;
|
buildFrame.setTimeStamp(QCanBusFrame::TimeStamp::fromMicroSeconds(QDateTime::currentMSecsSinceEpoch() * 1000ul));
|
||||||
|
} else {
|
||||||
|
buildFrame.setTimeStamp(QCanBusFrame::TimeStamp(0, buildTimestamp));
|
||||||
}
|
}
|
||||||
buildFrame.setTimeStamp(QCanBusFrame::TimeStamp(0, buildTimestamp));
|
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
buildId = c;
|
buildId = c;
|
||||||
|
|||||||
@@ -493,7 +493,7 @@ void LAWICELSerial::readSerialData()
|
|||||||
|
|
||||||
if (useSystemTime)
|
if (useSystemTime)
|
||||||
{
|
{
|
||||||
buildTimestamp = QDateTime::currentMSecsSinceEpoch() * 1000l;
|
buildFrame.setTimeStamp(QCanBusFrame::TimeStamp::fromMicroSeconds(QDateTime::currentMSecsSinceEpoch() * 1000ul));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -502,14 +502,14 @@ void LAWICELSerial::readSerialData()
|
|||||||
{
|
{
|
||||||
//Four bytes after the end of the data bytes.
|
//Four bytes after the end of the data bytes.
|
||||||
buildTimestamp = mBuildLine.mid(5 + mBuildLine.mid(4, 1).toInt() * 2, 4).toInt(nullptr, 16) * 1000l;
|
buildTimestamp = mBuildLine.mid(5 + mBuildLine.mid(4, 1).toInt() * 2, 4).toInt(nullptr, 16) * 1000l;
|
||||||
|
buildFrame.setTimeStamp(QCanBusFrame::TimeStamp(0, buildTimestamp));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
//Default to system time if timestamps are disabled.
|
//Default to system time if timestamps are disabled.
|
||||||
buildTimestamp = QDateTime::currentMSecsSinceEpoch() * 1000l;
|
buildFrame.setTimeStamp(QCanBusFrame::TimeStamp::fromMicroSeconds(QDateTime::currentMSecsSinceEpoch() * 1000ul));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
buildFrame.setTimeStamp(QCanBusFrame::TimeStamp(0, buildTimestamp));
|
|
||||||
|
|
||||||
switch (mBuildLine[0].toLatin1())
|
switch (mBuildLine[0].toLatin1())
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -302,7 +302,7 @@ void MQTT_BUS::clientMessageReceived(const QMQTT::Message& message)
|
|||||||
frame_p->isReceived = true;
|
frame_p->isReceived = true;
|
||||||
if (useSystemTime)
|
if (useSystemTime)
|
||||||
{
|
{
|
||||||
frame_p->setTimeStamp(QCanBusFrame::TimeStamp(0, QDateTime::currentMSecsSinceEpoch() * 1000ul));
|
frame_p->setTimeStamp(QCanBusFrame::TimeStamp::fromMicroSeconds(QDateTime::currentMSecsSinceEpoch() * 1000ul));
|
||||||
}
|
}
|
||||||
else frame_p->setTimeStamp(QCanBusFrame::TimeStamp(0, timeStamp));
|
else frame_p->setTimeStamp(QCanBusFrame::TimeStamp(0, timeStamp));
|
||||||
|
|
||||||
|
|||||||
@@ -211,7 +211,7 @@ void SerialBusConnection::framesReceived()
|
|||||||
frame_p->isReceived = !recFrame.hasLocalEcho();
|
frame_p->isReceived = !recFrame.hasLocalEcho();
|
||||||
|
|
||||||
if (useSystemTime) {
|
if (useSystemTime) {
|
||||||
frame_p->setTimeStamp(QCanBusFrame::TimeStamp(0, QDateTime::currentMSecsSinceEpoch() * 1000ul));
|
frame_p->setTimeStamp(QCanBusFrame::TimeStamp::fromMicroSeconds(QDateTime::currentMSecsSinceEpoch() * 1000ul));
|
||||||
}
|
}
|
||||||
else frame_p->setTimeStamp(QCanBusFrame::TimeStamp(0, (recFrame.timeStamp().seconds() * 1000000ul + recFrame.timeStamp().microSeconds()) - timeBasis));
|
else frame_p->setTimeStamp(QCanBusFrame::TimeStamp(0, (recFrame.timeStamp().seconds() * 1000000ul + recFrame.timeStamp().microSeconds()) - timeBasis));
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user