toverainc/willow

Show more information while recognizing

skorokithakis opened this issue ยท 9 comments

Currently, the Willow only shows "say command" until the response is back. It would be better to show something like "processing...", as my setup might take a few seconds to respond, and showing "say command" during a time when the device isn't listening is confusing UX.

How do you feel about displaying "Processing..." on the same line as "Say command..." after speech ends and when the command is sent to the command endpoint?

You mean instead of "say command..."? Yes, that was what I meant, though on second thought "processing" might be a bit too jargony. Depending on your intended audience, maybe "thinking" is more understandable?

BTW sorry for the slow response on this. I've been sick and @stintel is on vacation.

Flow like this:

Wake
"Say command..."
Finish talking
"Say command..." gets replaced with "Processing..."
Do what we do now

Good point on "Thinking..." that is probably more understandable!

Hey, don't apologize, I expect exactly nothing for the amount of money I'm paying for all this code.

Yep, that sounds great! It would also help me understand when Willow has stopped listening, as right now I keep talking and it interrupts me with a (partial, wrong) result.

Thanks for understanding, glad to hear you won't be asking for your money back ;).

I'm actually embarrassed we didn't think of this before - you're absolutely correct in that it's good to get some definitive feedback on when voice has ended, something is happening, and the user just needs to wait. Of course in my testing with Home Assistant and a local RTX 3090 "Thinking..." basically flashes on the display for a couple hundred ms but it's still good to know.

Your ChatGPT + Willow Twitter video is really cool but sitting there at "Say command..." is pretty cringe to me and this is an easy change that makes a huge difference in user experience.

If I push this change to a branch do you have a build/dev environment setup to test? I've already put it through our automated testing for 2,000 successive runs but it would be good to test with your configuration as well.

I can test it, yep! I'll need to make some changes to the code to make the Box speak the result, and flashing my changes has been a bit finicky, but I should be able to test, yes.

@kristiankielhofner do you have a branch for this, perhaps?

I'll try this, thanks!

Oof, amazing ๐Ÿ˜— ๐Ÿ‘Œ.