We’re having trouble with values on the SmartDashboard freezing after a few minutes of runtime. Only one value (set to update every 5 thousandths of a second from the robot code), freezes, and the others stay working.
After a few Google searches, I can’t seem to find anything useful in alleviating the situation.
One theory I have is that I’m trying to update too quickly, and I should write the value to a local in periodic tasks, and then have a separate loop to push it to the dashboard at 30fps or something more reasonable.
The other would be I need to allocate this specific value it’s own prefix.
I’ll try to fix those tomorrow if I don’t find any other potential answers than those, because I really have no concrete answer of what is wrong with it.
It is worth trying what you describe, but those shouldn’t be issues.
One thing to check is to see if both sides are updating the variable. By design, the server/robot wins the tie, so if the variable is changing on the client and occasionally written by the robot, the robot may be stomping the other value updates.
Another thing that is worth mentioning is that the values for client and DS are only replicated at 100ms periods unless you give them different timeouts. Another option is to call the Flush command if you want the updates to be sent immediately. Again the changes will propagate to local machine copies almost immediately, but if you are setting it that quickly, you may want to change the communication rate between machines.