Closed crschardt closed 3 months ago
Ditto on this problem
Does this fix it? https://github.com/PhotonVision/photonvision/pull/1286
It looks promising. I've rebooted several times without any pipeline problems. I'll continue to test.
Closing as addressed
Describe the bug Frequently, all of the cameras will be set to DriverMode when photonvision starts. This has been observed on the OrangePi 5.
To Reproduce
Platform:
Root Cause Investigation: I ran the VSCode remote debugger on photonvision and found that there are two threads that are activated when the pipeline changes. To the best of my understanding, here's what is happening: 1) VisionRunner Thread:
VisionRunner.update()
is continuously polling the current pipeline viaPipelineManager.getCurrentPipeline()
PipelineManager.updatePipelineFromRequested()
updatePipelineFromRequested()
will update the value ofcurrentPipelineIndex
2) DataChangeEventDispatch Thread:DataChangeService
dispatches a"changePipeline"
event from the queueVisionModuleChangeSupplier
to callVisionModule.saveAndBroadcastAll()
ConfigManager
saving the camera configuration objectIf the camera configuration is saved by ConfigManager before the VisionRunner thread is able to update the pipeline, then it saves the old values rather than the updated value for the pipeline. It also causes the database to be out of sync with the current pipeline and UI.