That should stop the cave object from automatically changing the frustum. Try adding the following line as well:
Code:
viz.MainWindow.ipdVector(None)
I noticed the IPD values changes drastically from trial to trial. Are you sure this isn't causing the problem?