UBC-Thunderbots / Software

Robot Soccer Playing AI
http://www.ubcthunderbots.ca
GNU Lesser General Public License v3.0
55 stars 101 forks source link

Create structure to store RefBox data #43

Closed MathewMacDougall closed 5 years ago

MathewMacDougall commented 6 years ago

In addition to SSL vision data that gives us the state of the world (robot positions, etc.) we also need to listen for commands from the Referee Box.

We should create a simple datastructure to store the refbox data (so we can abstract away how we get the information), and this structure should be set up to be passed down to components that will use the information.

The refbox from previous years can be found here: https://github.com/RoboCup-SSL/ssl-refbox There had been talk about re-writing it for RoboCup 2019. The new repository can be found here: https://github.com/RoboCup-SSL/ssl-game-controller

The datastructure would likely be similar to the structure of the protobuf messages. Ideally it would require as little work from us to update as possible whenever the refbox protocol changes.

Note: This ticket is only for the datastructure that stores the refbox data, and passing the information down to modules that need it. It is not for how we actually read/receive this data.

Edit: The new refbox system sounds like it is going to add features to communicate with teams directly, for example to ask for team name, and the teams can request goalie changes. Although this can still be done manually and therefore doesn't need immediate support, we should consider these use cases when designing our datastructures.

garethellis0 commented 5 years ago

We're T-10 days to the end of September, so just doing a quick run-through to see if there's anything we can afford to push to an October sprint.

Obviously we can't play without this, but maybe we could take it out of scope for the MVP if it's not reasonable to get it done in next 10 days?

MathewMacDougall commented 5 years ago

Agreed, not essential for September MVP. Bumping for now, and if someone has extra bandwidth it can be started early.

MathewMacDougall commented 5 years ago

We're T-7 days to the end of October, so just doing a quick run-through to see if there's anything we can afford to push to an November sprint.

Ideally we should have this done for October, since it's a pretty direct feature of this Milestone's goal of a connected system. @jordanzliu seemed like you were close on this. ETA on a PR?

jordanzliu commented 5 years ago

PR for this one should be up by end of Saturday, should have enough time to put up a PR for #72 by the 31st