update TTS state when necessary