This is the forum archive of Homey. For more information about Homey, visit the Official Homey website.

The Homey Community has been moved to https://community.athom.com.

This forum is now read-only for archive purposes.
Closed

Tips for voice recognition in flows

PeaoPeao Member
edited February 2016 in Archive
Hey, maybe some of you figured these out yet, but I think this could help those, who still have problems with voice-triggers.

1. Speek slow and with an deep (not plastic!) voice.

2. Try to speak in whole sentences. I dunno if its because of an algorithm or because pronouncing is easier this way, either way this works best for me.

3. Last and most important for me:
Don't use the "you said something [TEXT]" card as trigger. Instead you should use "You said anything" card in combination with the logic card "[Text] contains []" like shown here: 

This works for me 99,9% of the time and you can use the keywords within sentences, or trigger two flows with just one sentence. 
And this isn't affected by the bug that allows only having one flow triggered by voice command (which will be solved with the next update anyway).

Hope this helps :smile: 


Comments

  • Peao your doing a great job already for the community, good job! The way you say "Help me" sounds just like how @Emile talks in his video's. So your trying to say, we have to try talking/imitate just like Emile talks in all those other video's?  :#

  • Thanks! :smile: 

    That is one of Athoms official vids, so I guess its @Emile  talking :blush: 

    But with my voice it is working similar good :smile: 

  • Ahh that explains a lot, haha! Still your doing a good job, helping the community and Athom with your testings and instructions  :D
  • Reflow said:
    Ahh that explains a lot, haha! Still your doing a good job, helping the community and Athom with your testings and instructions  :D
    Thanks a lot! I think this is the best way for me to help Homey, its community and Athom to keep improving. I am not a good programmer, nor a great video/tutorial maker. I was very lucky to get a second hand Homey, so its a plesure to share these impressions, even if they're not arranged very good :wink: . I guess it's better than nothing.

    It's important for me to share these impressions and I will continue making "nooblike" videos at the weekend :smiley: 

    And of course I am still looking for cheap z-wave/Homey-compatible deals to share with you guys!

    <3

  • I decided the issues was less to do with my voice and more just bugs.. I had a spell when it almost always failed, then a day or two later when I moved it (power off/on) it pretty much worked flawlessly, recognised all my 'ok homey' and initial test flow command I did. Then that stopped and it was ignoring me again. Then when I was showing the missus it reacted to every 'ok homey' but not any further command. Now its ignoring me again.

    So I'm convinced this has less to do with how I pronounce things and more its busy or failing to complete its job and making us all look like idiots trying various ways of saying ok homey ;)

    fingers crossed for Fridays update :tired_face: 
  • Don't want to bugger but does this doesn't do the same but is a bit more efficiënt?

  • @PeterGroeneweg ;
    Maybe an idea to test both approaches?
    See how your example performs against "Peao/Emile" suggestion/example.
  • It's not that mine is not working, I just made it for this example. I'm just thinking of efficiënt programming as far as my knowledge goes. Therefor, to build my knowledge, I asked this question :)
  • Peao said:
    Hey, maybe some of you figured these out yet, but I think this could help those, who still have problems with voice-triggers.

    1. Speek slow and with an deep (not plastic!) voice.

    2. Try to speak in whole sentences. I dunno if its because of an algorithm or because pronouncing is easier this way, either way this works best for me.

    3. Last and most important for me:
    Don't use the "you said something [TEXT]" card as trigger. Instead you should use "You said anything" card in combination with the logic card "[Text] contains []" like shown here: 

    This works for me 99,9% of the time and you can use the keywords within sentences, or trigger two flows with just one sentence. 
    And this isn't affected by the bug that allows only having one flow triggered by voice command (which will be solved with the next update anyway).

    Hope this helps :smile: 


    I like this approach. I will try it. Thanks for the heads up.
  • It's not that mine is not working, I just made it for this example. I'm just thinking of efficiënt programming as far as my knowledge goes. Therefor, to build my knowledge, I asked this question :)
    Ah ok, i thought you were thinking in the forum context.

    Maybe you can help build the knowledge of the forum and (super) early birds so we don't have to try it all or reinvent the wheel :heart: 

  • Hahaha, I can imagine!
    Perhaps it would be useful to create a clear knowledgebase. The forum contains really much information which is really useful. But new users are searching till their weight is only half an ounce. Hey, this sounds like an online manual o:). I think it would be nice to have something but I can also that the guys from Athom are to busy for it. Maybe they can think about something to create that the community can fill with tutorials or information, nicely categorized and all.
  • When the new website goes online, there should be more info available there.
    But for specific problems, the forum will always stay the place to be (or search :) )
  • thanx!  <3
  • PeaoPeao Member
    edited February 2016
    Don't want to bugger but does this doesn't do the same but is a bit more efficiënt?

    I was using this method before, but there is a difference. Using this you have to say exactly the Phrase, and nothing more. And if you use the other method, shown in the vid, you are able to mix commands with each other or just use it within sentences.

    E.g.
    You have two or more flows using the "contains" method. One is listening for "iKettle" and "on", the other for "Toaster" and "on" (devices: ikettle and plug)
    So you could say now: "ok homey, i just woke up, could you please turn on the ikettle and the toaster for me?
    With the other approach you have had to use the exact phrase, and weren't able to combine flows.

    Last but not least this helps to make the voice recognition less vulnerable for missunderstandings.
  • @Peao I'm also a fan of the logic cards. But Emile stated on GitHub that the "you said something" card works the same as multiple contain logic cards. 

    I haven't really tested it yet though!
  • Peao said:

    So you could say now: "ok homey, i just woke up, could you please turn on the ikettle and the toaster for me?
    With the other approach you have had to use the exact phrase, and weren't able to combine flows.

    I wonder how it would respond to more complicated sentences like "ok homey, i just woke up, could you please turn the ikettle on and the bedroom heater off for me?" Is it able to correctly determine which "on/off" belongs to which noun?
  • So what you're saying is that you can make multiple flows with the 'You said anything'.  
    And when you combine words used in the 'contains field in 1 sentence, it will trigger all these flows?

    That is awesome!!  :D
  • Bumblez said:
    Peao said:

    So you could say now: "ok homey, i just woke up, could you please turn on the ikettle and the toaster for me?
    With the other approach you have had to use the exact phrase, and weren't able to combine flows.

    I wonder how it would respond to more complicated sentences like "ok homey, i just woke up, could you please turn the ikettle on and the bedroom heater off for me?" Is it able to correctly determine which "on/off" belongs to which noun?
    True Bumblez, every voordeel got its nadeel ;)
    But I think Peao's method is more flexible and is more forgiven to "misreads" in speech recognition..
  • @Peao: Thank for the explanation!
  • PeaoPeao Member
    edited February 2016
    Bumblez said:
    Peao said:

    So you could say now: "ok homey, i just woke up, could you please turn on the ikettle and the toaster for me?
    With the other approach you have had to use the exact phrase, and weren't able to combine flows.

    I wonder how it would respond to more complicated sentences like "ok homey, i just woke up, could you please turn the ikettle on and the bedroom heater off for me?" Is it able to correctly determine which "on/off" belongs to which noun?
    That is a very good question, and I guess I figured out the answer:
    To try this I just set up two ELRO plugs called TV and Radio.
    1.) [Status: TV on, Radio off] The voice command " Please turn off the TV and turn on the Radio" worked.
    2.) But [Status: TV off, Radio on] the voice command "Please turn on the TV and turn off the Radio" didn't work (seemed to do nothing)

    I figured out that the order you have created your "said anything" flows is important. I've got 4 flows in this order:
    Radio on -> Radio off -> Tv on -> Tv off

    My assumption:
    If you now use a combined command Homey searches the flows in their order you have had created them for the keywords and if it finds a flow that fits it "deletes" them out of the command and proceed to the next flow.
    Thats the reason why command 1.) did work: It went through all flows and found "Radio on" and only had following command left "Please turn off the TV and turn [] the []." So flow TV off triggered. 

    And in command 2.) it found "Radio on" (but Radio already was on, so I guess it sent the signal but nothing happened), that it had left the command "Please turn []the TV and turn off the []". So it sends the TV off signal but nothing happened again, because the TV was off.

    If I invert the setup, e.g. [Status: TV on, Radio off] and use command 2.) it works like assumed.

    I hope you understand my thesis :blush: 


     
  • Thanks for the test... and yeah, that makes perfect sense, and is definitely something to keep in mind.
This discussion has been closed.