Add parsing masterboard data#492
Merged
Merged
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #492 +/- ##
==========================================
+ Coverage 76.40% 76.70% +0.29%
==========================================
Files 113 115 +2
Lines 6603 6147 -456
Branches 2696 2673 -23
==========================================
- Hits 5045 4715 -330
+ Misses 1209 1088 -121
+ Partials 349 344 -5
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
urrsk
approved these changes
Apr 29, 2026
urrsk
requested changes
Apr 29, 2026
urrsk
left a comment
Member
There was a problem hiding this comment.
Please add unit test covering immi data as well
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default mode and found 1 potential issue.
Reviewed by Cursor Bugbot for commit 6f0a3a7. Configure here.
Currently, there's no use-case. Adding a getter for a RobotStateMessage seems not the right way to go.
urrsk
approved these changes
May 6, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Extends the primary parser with MasterBoard data as documented in https://docs.universal-robots.com/tutorials/communication-protocol-tutorials/primary-secondary-guide.html#masterboard-data-sub-package-of-robot-state-message
Note
Medium Risk
Adds a new
MasterboardDatarobot-state type and extends the primary consumer interface with a new pure-virtualconsume(MasterboardData&), which can break downstream consumers until updated. Parsing is binary-protocol sensitive, so field/endianness mismatches could surface at runtime despite added tests.Overview
Adds parsing and representation of the primary
MASTERBOARD_DATArobot-state sub-package. This introduces a newMasterboardDataRobotStatewith full binary parsing (including optional IMMI fields) and atoString()implementation, and wires it intoPrimaryParser’sstateFromType().Extends the visitor/consumer API by adding
consume(MasterboardData&)toAbstractPrimaryConsumerand a no-op implementation inPrimaryConsumer, and updates build/test plumbing (CMakeLists.txt,test_primary_parser.cpp) with new unit tests covering masterboard parsing with/without IMMI plus minor test refactors.Reviewed by Cursor Bugbot for commit ce695b8. Bugbot is set up for automated code reviews on this repo. Configure here.