We have some simple drivetrain code that we’re trying to run, just 4 Spark’s connected to CIM’s. We have ensured that our code is correct, and that we have the correct ports on the RoboRIO.
We have also imaged and updated our RoboRIO to 2024 version.
However, whenever we try to connect to the robot, and enable: after a few seconds of slow driving, DriverStation just randomly disconnects, we don’t know why this is.
After a a couple minutes, it will come back online, only for us to enable and encounter the exact same issue again.
here is our RIOLog:
Info roboRIO: Game data update "" received by Robot
Internal issue with print and error tags
Warning 44007 <secondsSinceReboot> 815.196
FRC: Time since robot boot.Internal issue with print and error tags
Internal issue with print and error tags
Internal issue with print and error tags
Internal issue with print and error tags
Internal issue with print and error tags
Internal issue with print and error tags
Internal issue with print and error tags
Our battery is perfectly healthy, and we have tested with multiple computers, disabled Windows Defender / Firewall
We have never experienced this issue with last years tools.
See the known issues page linked below. In particular, take a look at the Timing window of the DS, it’s likely something on your computer is causing the DS timing to trip the disable threshold. The “print and error tags” error is the DS trying to report this is happening, but a bug is preventing the correct message from coming through. How old are your computers and what other software is running on them (including background updaters and the like)?
Hmmm… this is quite odd, our main laptop is a couple years old, has an updated version of Windows 10, there is not much other software other than the stuff it came with: Lenovo ThinkPad applications, Minecraft Java, SMART software (Smart boards), Java update checker, and some vendor applications like Tuner X (CTRE software)
I thought that it could be the SMART Inc. software suite because it regularly checks for updates, so I uninstalled that, however the issue still persists.
Our secondary laptop is brand new, fresh install of Windows 11, all firewall / defender restrictions disabled, up-to-date drivers, and no other software whatsoever other than WPILib and FRC Game Tools.
I have checked task manager, and looked for naughty programs that could be interfering, but I haven’t noticed anything.
I’m stumped. We haven’t installed any new software since last year (except for an update for Tuner X, which i did last week)
Could you take some screenshots of the DS timing window? I wonder if power savings modes on the laptop (eg dynamic frequency scaling, or network adapter power optimization) is causing occasional large delays?
Hi, I just read your reply, unfortunately we can’t get screenshots of the timing window right now, we had to disassemble the robot to fix something unrelated,
However I will mention that I performed a re-install of Windows on one of our laptops, downloaded / installed WPILib and NI Game Tools, disabled defender / firewall. etc. Yet, we still encounter this issue.
Then I decided to replace the radio and the RoboRIO for spares that we had, but regardless of these changes, we keep getting the same error.
To be clear, there are two separate things going on:
There are new timing constraints that were intentionally added this year to improve robot safety (a reaction to a number of reports last year regarding unsafe operation). These can result in disabling the robot if violated.
There’s a bug in the DS that results in most DS-side messages printing the “Internal issue with print and error tags” message instead of the actual message. Not all of these messages are timing related–you can get the “internal issue” message due to non-disabling events.
Unfortunately, when item 1 (disable) happens, item 2 (non-useful messages) makes it near-impossible to diagnose what new timeout is actually being tripped. However, just seeing item 2 (a non-useful message) does not mean you’re getting disabled.
Given the lack of information, if you’re getting disabled, the timing window in the DS is about the best data we can get to see how much timing jitter you’re actually getting that might be causing a disable.
There are many potential causes for high timing jitter (if that’s what you’re seeing in the timing window and getting disabled). We don’t know what all those causes are–applications such as Discord and the Autodesk background updater might be the cause, or aggressive power saving measures (either in CPU or network) could cause it too.
Downgrading the DS version to 2023 will keep it from disabling when the new safety thresholds are tripped. But it isn’t a fix because it isn’t legal to use the 2023 Driver Station in competition, so you’d just be delaying finding the root cause until you’re stressed at competition and have to install the 2024 DS again.
What of the troubleshooting steps listed in the linked article have you tried?
OK, so after a while of troubleshooting and trial and error: I have come up with a way to (sort of) get rid of this error.
Possible problems and their solutions
Error can be caused by other software on the system that try to connect to the internet, causing communication mishaps when connected to the robot
Most common offenders are update checkers, and other software that require constant internet connection
You can try disabling the applications, killing them in task manager, or just uninstalling them.
Bad battery, battery on a low charge
If you have a defective / bad battery, or its running out of juice, you can get disabled and disconnected when you enable
for example: you have a battery that is running pretty low, you decide to enable and try to drive the robot, the brownout protection trips, disconnecting you and disabling the robot, also giving this error
I think this is caused by new brownout protection features with this year’s game tools, but I’m not 100% sure, all I know is that swapping the battery out can sometimes fix this issue
Windows itself, Windows settings
sometimes Windows Defender and Firewall can get in the way, just disable them and see if that works