After some brief testing of the StatusLogger in REVLib 2027.0.0-alpha-7, there seem to be a number of major issues with the current version on Systemcore. Several of these are likely unrelated to each other (and a couple are preexisting), though my impression is just that this hasn't been well tested on Systemcore yet. This is an important feature to get right, especially if it's intended to act as the default logger for the A301 eventually (AFAIK it doesn't support the A301 yet).
Here's my initial set of observations from testing with several Spark Max devices on our alpha Systemcore (REVLib 2027.0.0-alpha-7):
- There does not appear to be any way to explicitly set the logging directory, and the logger always saves to the internal Systemcore storage even if a USB drive is connected.
- The default logging path is missing a path separator, so it saves to e.g.
/home/systemcore/logsREV_XXX.revlog instead of /home/systemcore/logs/REV_XXX.revlog
- The time base of the decoded log files is not correct, possibly related to WPILib's transition from microseconds in nanoseconds? My best guess is that it's off by a factor of
1e6 but I'm not certain.
- The logs don't include any information about the robot's enabled state or mode, which means that AdvantageScope can't synchronize REVLOG files with other data sources. It also makes data analysis more difficult in general since the robot state is a useful way of navigating a long log file.
- The sizes of the log files appear to be orders of magnitude larger than I would expect given the amount of data they contain. A log of 8 Spark Maxes running for ~30 seconds (not sure the exact duration because of the timestamp issue) was 283MB. That log appears to contain a huge number of duplicated records, which also means that it compresses down to a 1.7 MB zip. I've attached the relevant log below.
logsREV_20260926_201136.revlog.zip
After some brief testing of the StatusLogger in REVLib
2027.0.0-alpha-7, there seem to be a number of major issues with the current version on Systemcore. Several of these are likely unrelated to each other (and a couple are preexisting), though my impression is just that this hasn't been well tested on Systemcore yet. This is an important feature to get right, especially if it's intended to act as the default logger for the A301 eventually (AFAIK it doesn't support the A301 yet).Here's my initial set of observations from testing with several Spark Max devices on our alpha Systemcore (REVLib
2027.0.0-alpha-7):/home/systemcore/logsREV_XXX.revloginstead of/home/systemcore/logs/REV_XXX.revlog1e6but I'm not certain.logsREV_20260926_201136.revlog.zip