From ab9a2fe30ec5eae3305cf3910d179d988dbc4303 Mon Sep 17 00:00:00 2001 From: Sebastian Lindholm Date: Fri, 3 Oct 2025 09:22:58 +0200 Subject: [PATCH 1/4] Updated according to comments. --- demoIsoObject.cpp | 2 +- iso22133 | 2 +- src/iso22133object.cpp | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/demoIsoObject.cpp b/demoIsoObject.cpp index 2cb9c45..0f3e299 100644 --- a/demoIsoObject.cpp +++ b/demoIsoObject.cpp @@ -93,7 +93,7 @@ class myObject : public ISO22133::TestObject { ISO22133::TestObject(ip), dummyMember(0) { ObjectSettingsType osem; - osem.testMode = TEST_MODE_UNAVAILABLE; + osem.testMode = TEST_MODE_PREPLANNED; setMonr(1, 2, 3, 0.4, 5, 6); setObjectSettings(osem); } diff --git a/iso22133 b/iso22133 index 6bbcee7..a122d02 160000 --- a/iso22133 +++ b/iso22133 @@ -1 +1 @@ -Subproject commit 6bbcee765aa503c8b6349ffb25b0f3c3253e1db8 +Subproject commit a122d026525fcd2dc19b2f9231be92a5c84f782b diff --git a/src/iso22133object.cpp b/src/iso22133object.cpp index 2a0dafb..234b6f2 100644 --- a/src/iso22133object.cpp +++ b/src/iso22133object.cpp @@ -54,7 +54,7 @@ void TestObject::initialize() { initSpd.isLongitudinalValid = false; initAcc.isLateralValid = false; initAcc.isLongitudinalValid = false; - initTm = TEST_MODE_UNAVAILABLE; + initTm = TEST_MODE_PREPLANNED; this->setPosition(initPos); this->setSpeed(initSpd); this->setAcceleration(initAcc); @@ -332,7 +332,7 @@ int TestObject::handleMessage(std::vector& dataBuffer) { expectedMessageCounter = msgHeader.messageCounter + 1; switch (msgHeader.messageID) { case MESSAGE_ID_TRAJ: - bytesHandled = this->trajDecoder.DecodeTRAJ(dataBuffer, false); + bytesHandled = this->trajDecoder.DecodeTRAJ(dataBuffer, debug); if (bytesHandled < 0) { throw std::invalid_argument("Error decoding TRAJ"); } From 42cd6b0c294b638050ccf884c49709d42848a81b Mon Sep 17 00:00:00 2001 From: Sebastian Lindholm Date: Fri, 3 Oct 2025 09:29:44 +0200 Subject: [PATCH 2/4] Fixed test error. --- tests/isoObject.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/isoObject.cpp b/tests/isoObject.cpp index 2fdb99b..3708a88 100644 --- a/tests/isoObject.cpp +++ b/tests/isoObject.cpp @@ -105,8 +105,8 @@ class ControlCenterEmulator { TimeSetToCurrentSystemTime(&objSettings.currentTime); - objSettings.heabTimeout.tv_usec = 20000; - objSettings.heabTimeout.tv_sec = 0; + objSettings.communicationTimeout.tv_usec = 20000; + objSettings.communicationTimeout.tv_sec = 0; objSettings.rate.heab = 10; objSettings.rate.monr = 100; From 407d03872c2a18387c977988b9cbd3c042269bb4 Mon Sep 17 00:00:00 2001 From: Sebastian Lindholm Date: Mon, 6 Oct 2025 07:52:51 +0200 Subject: [PATCH 3/4] Updated submodule --- iso22133 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/iso22133 b/iso22133 index a122d02..a90d630 160000 --- a/iso22133 +++ b/iso22133 @@ -1 +1 @@ -Subproject commit a122d026525fcd2dc19b2f9231be92a5c84f782b +Subproject commit a90d6300f84d7103e78cd8f106152b68b3a8fa89 From 682a475fd9926304db2d6698c59178de285007d9 Mon Sep 17 00:00:00 2001 From: Sebastian Lindholm Date: Tue, 7 Oct 2025 08:19:31 +0200 Subject: [PATCH 4/4] Commented code in when decoding OSEM, to get test working. --- iso22133 | 2 +- src/iso22133state.cpp | 10 +++++----- src/trajDecoder.cpp | 2 +- tests/isoObject.cpp | 4 ++-- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/iso22133 b/iso22133 index a90d630..bf8347b 160000 --- a/iso22133 +++ b/iso22133 @@ -1 +1 @@ -Subproject commit a90d6300f84d7103e78cd8f106152b68b3a8fa89 +Subproject commit bf8347b8fcbd67d121081e33bbb5829e9282c3e3 diff --git a/src/iso22133state.cpp b/src/iso22133state.cpp index 7bbe5a4..a07ce76 100644 --- a/src/iso22133state.cpp +++ b/src/iso22133state.cpp @@ -114,11 +114,11 @@ void ISO22133::State::handleOSEM(TestObject& obj, ObjectSettingsType& osem) { msg << "Got OSEM - set transmitter ID to " << obj.transmitterID << std::endl; std::cout << msg.str(); - obj.expectedHeartbeatPeriod = std::chrono::milliseconds(1000 / (uint)osem.rate.heab); - msg.str(std::string()); - msg << "Setting HEAB period to " << obj.expectedHeartbeatPeriod.count() << " ms. (" - << 1000 / obj.expectedHeartbeatPeriod.count() << " Hz) " << std::endl; - std::cout << msg.str(); + //obj.expectedHeartbeatPeriod = std::chrono::milliseconds((uint32_t)(osem.rate.communicationTimeout * 1000)); + //msg.str(std::string()); + //msg << "Setting HEAB period to " << obj.expectedHeartbeatPeriod.count() << " ms. (" + // << 1000 / obj.expectedHeartbeatPeriod.count() << " Hz) " << std::endl; + //std::cout << msg.str(); obj.heartbeatTimeout = 10 * obj.expectedHeartbeatPeriod; msg.str(std::string()); diff --git a/src/trajDecoder.cpp b/src/trajDecoder.cpp index 6cbcb12..21cd478 100644 --- a/src/trajDecoder.cpp +++ b/src/trajDecoder.cpp @@ -27,7 +27,7 @@ ssize_t TrajDecoder::DecodeTRAJ(std::vector& dataBuffer, bool debug) { } // Decode TRAJ waypoints - int const tmpSize{trajecoryHeader.nWaypoints - nPointsHandled}; + uint32_t const tmpSize{trajecoryHeader.nWaypoints - nPointsHandled}; TrajectoryWaypointType waypoint; for (int i = 0; i < tmpSize; i++) { diff --git a/tests/isoObject.cpp b/tests/isoObject.cpp index 3708a88..74446b3 100644 --- a/tests/isoObject.cpp +++ b/tests/isoObject.cpp @@ -108,7 +108,7 @@ class ControlCenterEmulator { objSettings.communicationTimeout.tv_usec = 20000; objSettings.communicationTimeout.tv_sec = 0; - objSettings.rate.heab = 10; + objSettings.rate.heabTimeout = 10; objSettings.rate.monr = 100; objSettings.rate.monr2 = 1; @@ -131,7 +131,7 @@ class ControlCenterEmulator { header.messageCounter = this->messageCounter; header.transmitterID = this->transmitterID; auto nBytesWritten = - encodeOSEMMessage(&header, &objSettings, transmitBuffer.data(), transmitBuffer.size(), false); + encodeOSEMMessage(&header, &objSettings, transmitBuffer.data(), transmitBuffer.size(), true); transmitBuffer.resize(nBytesWritten); sendTCP(transmitBuffer); }