The worker thread was signaled to stop but never joined, causing bus collisions when the sweep thread started talking to instruments while the worker was still mid-query. Now: - worker.join(timeout=10) before sweep starts - 0.5s delay + clear supply error queue before first command - join sweep thread before restarting worker after sweep completes - Also join worker on disconnect Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>