diff --git a/publish.gradle b/publish.gradle index 0485877..ec8e163 100644 --- a/publish.gradle +++ b/publish.gradle @@ -2,7 +2,7 @@ apply plugin: 'maven-publish' ext.licenseFile = files("$rootDir/LICENSE.txt") -def pubVersion = '2.1.0' +def pubVersion = '2.2.0' def outputsFolder = file("$buildDir/allOutputs") diff --git a/src/main/native/cpp/Drivers/CandleWinUSB/CandleWinUSBDevice.cpp b/src/main/native/cpp/Drivers/CandleWinUSB/CandleWinUSBDevice.cpp index 1db983a..ef53acb 100644 --- a/src/main/native/cpp/Drivers/CandleWinUSB/CandleWinUSBDevice.cpp +++ b/src/main/native/cpp/Drivers/CandleWinUSB/CandleWinUSBDevice.cpp @@ -137,7 +137,11 @@ CANStatus CandleWinUSBDevice::ReceiveCANMessage(std::shared_ptr& msg m_thread.ReceiveMessage(messages); std::shared_ptr mostRecent; for (auto& m : messages) { - if (CANBridge_ProcessMask({m.second->GetMessageId(), 0}, m.first) && CANBridge_ProcessMask({messageID, messageMask}, m.first)) { + if ( + CANBridge_ProcessMask({m.second->GetMessageId(), 0}, m.first) + && CANBridge_ProcessMask({messageID, messageMask}, m.first) + && (!mostRecent || m.second->GetTimestampUs() > mostRecent->GetTimestampUs()) + ) { mostRecent = m.second; status = CANStatus::kOk; } diff --git a/src/main/native/cpp/Drivers/Serial/SerialDevice.cpp b/src/main/native/cpp/Drivers/Serial/SerialDevice.cpp index e63507b..c227b07 100644 --- a/src/main/native/cpp/Drivers/Serial/SerialDevice.cpp +++ b/src/main/native/cpp/Drivers/Serial/SerialDevice.cpp @@ -91,7 +91,11 @@ CANStatus SerialDevice::ReceiveCANMessage(std::shared_ptr& msg, uint m_thread.ReceiveMessage(messages); std::shared_ptr mostRecent; for (auto& m : messages) { - if (CANBridge_ProcessMask({m.second->GetMessageId(), 0}, m.first) && CANBridge_ProcessMask({messageID, messageMask}, m.first)) { + if ( + CANBridge_ProcessMask({m.second->GetMessageId(), 0}, m.first) + && CANBridge_ProcessMask({messageID, messageMask}, m.first) + && (!mostRecent || m.second->GetTimestampUs() > mostRecent->GetTimestampUs()) + ) { mostRecent = m.second; status = CANStatus::kOk; } diff --git a/vendordeps/CANBridge.json b/vendordeps/CANBridge.json index 08ac69f..dc5d6b0 100644 --- a/vendordeps/CANBridge.json +++ b/vendordeps/CANBridge.json @@ -1,7 +1,7 @@ { "fileName": "CANBridge.json", "name": "CANBridge", - "version": "2.1.0", + "version": "2.2.0", "uuid": "34b37c7c-8acc-405f-9631-d21f20dc59d8", "mavenUrls": [ "http://www.revrobotics.com/content/sw/max/sdk/maven/"