A Legoino scan that never locates its hub ends quietly - isConnecting() never goes true, so the old code left 'initialised' set and never touched retryAt. That hub then sat on a dead scan until the board was power cycled, which is why first connects needed several attempts. Adds scanExpiresAt per hub and restarts the scan after 12s. Also documents the startup order and the LED grounding in the header.