yashsingh1/xdaforums huggingface dataset:
[Tasker Tips & Tricks] Humpie:
right, I move all hotword files that were once imported to that folder. That's how I can provide new users ith a couple of pre-made hotwords when they install the app for the first time. A file existing in that folder doesn't mean it's imported, there is a setting for that since I also need to save some other data around each hotword, plus a hotword can technically be imported multiple times in the app but with different settings.

Thanks for the other info
[Tasker Tips & Tricks] deechte:
I was checking out if turning on the background service from within Tasker would work, but it's not the case, as was to be expected in Android 11. So I'll have to keep using Tasker and AutoInput to open HWP and push the button to turn microphone access on.

However, I noticed HWP's toast telling me about this Android 11+ limitation. It says that turning it on via the notification should work too. Unfortunately it doesn't. Tapping the Start button in HWP's notification doesn't work either, and gives the same toast again.

Should that work or shouldn't it? In the latter case, maybe it's better te remove that tip from the toast.
[Tasker Tips & Tricks] Humpie:
Well, it should work, but it doesn't always work... Sometimes Android limits it and other times it doesn't. I'm not sure why. Tapping it in the app itself always works though.
[Tasker Tips & Tricks] deechte:
OK.

Wouldn't it help the case if your app would ask for and obtain the permission "draw over other apps"?
[Tasker Tips & Tricks] Humpie:
Unfortunately not https://developer.android.com/guide/components/foreground-services#restrictions-exemptions
[Tasker Tips & Tricks] deechte:
Haha I don't understand that.
[Tasker Tips & Tricks] Humpie:
Those are the exceptions. Starting from a notification should be one, but that doesn't always seem to work.

Otherwise, the only real options are making it a system app, which I tried and failed, but it may be possible in the future if I try it again.
[Tasker Tips & Tricks] deechte:
I got the impression that the draw over other apps permission might increase the likelihood of successful starting from a notification.
[Tasker Tips & Tricks] Humpie:
Well good news! I've graduated from my Master's degree in Computer Science and Engineering. This means I have a bit of time to update my apps again :). I've fixed the layout bug which plagued the beta version on older android phones, which means I can now release all the fixes on the stable channel!

4.0:

Rebuilt Tasker communication completely (you need to set up all your tasks again, unfortunately)

Android 12 ready

Material You support

New hotword training website linked

before: New Tasker action to change app settings!

Figured out on Android 11 the service can only be started from the app or notification :(
[Tasker Tips & Tricks] deechte:
Congratulations!
[Tasker Tips & Tricks] Humpie:
Oops, looks like the cases where you need to select hotwords from tasker seems to be broken. I'll fix it ASAP, stay on the beta if you can :)

Edit: fixed
[Tasker Tips & Tricks] User_zxz:
Hello. I am new to this forum. I wanted to know what is the difference between the paid and free version. in the free version 4.0.1 from the play market if I add my hot word downloaded from the application site "https://snowboy.jolanrensen.nl/" the application closes with an error.
[Tasker Tips & Tricks] deechte:
I'm wondering about versions. I have the 4.0-beta01 version from this thread installed. Your announcement here about stable releases triggered me, cause I never saw them coming by.

When I go to Hotword Plugin in my Play Store app, it says there that v4.0.1 from 24/12 is the latest version. There are no updates available for me.

Is it possible that the internal version number wasn't incremented between the v4* releases?
[Tasker Tips & Tricks] Humpie:
The free one has an ad, the paid one doesn't.

I can't seem to reproduce that error unfortunately. Does the app have all the permissions? Or do you take some extra steps?
[Tasker Tips & Tricks] Humpie:
Uhm, no. Both 4.0 and 4.0.1 are higher in version number than the beta one. The beta version should be surpassed by the stable one, definitely.

But the beta version from this thread you say? If I uploaded the APK here, it will probably have a different signature than in the play store. So that means you would need to uninstall the beta and install the play store version again
[Tasker Tips & Tricks] deechte:
Indeed, the beta version from this thread. I don't recall the Play Store offering this beta back then, hence I took it from this thread.

But the Play Store says that the free version is installed and has no newer updates. So it must have the same signature.
[Tasker Tips & Tricks] Humpie:
No, the play store always has a different signature than what I can post in this thread. Google signs the APK a second time. It recognizes you installed it cause the package name is the same.
[Tasker Tips & Tricks] deechte:
Ah I see. Thanks.
[Tasker Tips & Tricks] deechte:
Hi @Humpie I finally took the time to replace the 4.0-beta01 free version from this thread with the different signature with the non free full version from the Play Store.

I think there is a problem where hotword files get corrupted or something when doing such a user flow. The list of hotwords was there, but as soon as I tried changing one of them (I wanted to disable the beep sound) the app crashed. Upon reopening some of the hotwords had somehow changed names!

I finally did an erase all app data and did a fresh import of my hotwords. However, the app keeps crashing each time I try to disable the beep sound in a hotword and when I click OK to save that.
[Tasker Tips & Tricks] Humpie:
Is the service running when you change this setting or not? 🤔
[Tasker Tips & Tricks] deechte:
If you mean whether the top right slider is set to on or off, it doesn't matter. It crashes regardless of the position of the slider.
[Tasker Tips & Tricks] Humpie:
I think I've isolated your crash (if you've reported it 26 times using the free version of the app running android 12 that is XD). It seems to not be able to find the saved instance of the hotword by ID. Basically something went wrong when saving or your phone restored some old data from before you wiped the app data.

I think another wipe of the app data (so not a reinstall, since then the phone might restore some data) should do the trick.
[Tasker Tips & Tricks] deechte:
Thanks. But that wasn't me. I'm on Android 11 and didn't send anything. How does one send logs?

[edit] I erased all data once again. Then imported my 4 hotwords again. The app crashed when I added my fourth hotword called OK-Google-Wouter.pmdl. But it was there when I restarted HWP.

I then started removing the beep sound in my hotwords. The first two went fine. But when doing that with the 3rd (called OK_Google.pmdl) HWP crashed again. Subsequently that hotword received the same name as the fourth hotword (OK-Google-Wouter.pmdl) which is now two times in the list.
[Tasker Tips & Tricks] Humpie:
Whenever the app crashes you should see a popup to report the crash to me. It's weird, so it only starts crashing when adding that particular hotword? Maybe try renaming it before adding it to the app?
[Tasker Tips & Tricks] Humpie:
Oh now I see that the app is broken for me too :( when I have time I'll try to fix it, but with a full time job that might not be very soon...
[Tasker Tips & Tricks] deechte:
There's no pop-up on crashing. HWP just disappears from the foreground. It's that 1 hotword when adding, or when editing.

After removing and reimporting the problematic hotwords a couple of times (not as new from my backup, but as Already Imported from the app folder) it all started working and I can change hotword properties.
[Tasker Tips & Tricks] Humpie:
Could you share the hotword in question?
[Tasker Tips & Tricks] deechte:
You have mail...
[Tasker Tips & Tricks] Humpie:
There is something fishy going on with that file indeed. I've now solved the switches controlling the other switches as well, but somehow your hotwords still manage to make them both toggle. Are they the same file, just renamed?
[Tasker Tips & Tricks] deechte:
Hi, no they're not the same. They're both versions of OK Google, but the one with the short name has been on my device for a long time, but it hardly ever triggers. I think it was one of the defaults with the app long ago. The other one with my first name in the file name has been made recently with the snowboy tool on your site. It works better.
[Tasker Tips & Tricks] Humpie:
Alright, so I rewrote the entire HotwordsAdapter (The thing that provides the logic how the list of hotwords should behave). So no more switches reacting to other switches and generally cleaned up behavior.

(Viewholders are a tricky concept to get right)

It's version 4.0.2 and currently in review by Google. Let me know what that does for you :)
[Tasker Tips & Tricks] deechte:
4.0.2 works fine for me, but then again my problems after the shift back to paid version were already solved. Thanks for the good work Humpie!
[Tasker Tips & Tricks] bettuccio:
Why does not activate any action with tasker? I insert the plugin in the profile, I create a simple action as a test but it does not activate anything. Even a simple flash is not recognized. Please explain to me why
[Tasker Tips & Tricks] Humpie:
Answered also in the review. I think you need to reset hotword plugin and set up the tasks again. Especially if you recently updated the app. I had to rewrite the entire communication with Tasker and while most of the time the old communication works and is transfered, this doesn't always work I see.
[Tasker Tips & Tricks] bettuccio:
I had an old version and I did not delete the data. Now with this new "clean" version it is working. Now I want to try if the activation of hey Google also works but as you said you too cannot work together because only one can access to the microphone
[Tasker Tips & Tricks] bettuccio:
have you ever thought about developing a version of wear OS? There are many users who don't think about battery life, that would be nice for us.
[Tasker Tips & Tricks] Humpie:
I haven't thought about that, but I think everyone would care about battery life if it could drain the watch in an hour or two 😅. I mean, if it already impacts a phone as much as it does, imagine a device with only a sixth of the battery size.

Plus, running Tasker on a watch is not ideal at all so it would require complicated communication with Tasker on a connected phone. Watches also have a very strict policy on killing running services.

It would be possible I suppose, but I don't think that spending my time in such a thing would be worth it honestly. I personally don't use hotword plugin anymore for anything, so any time I put into it is for the community (not for the money, cause I make nearly nothing) and most people will probably only ever use the phone app.

But in theory you could sideload the phone app and tasker on the watch. Using adb you can sideload it and change the dpi so that enough becomes visible. Using scrcpy you could then control the watch on your PC and set up everything. That would probably be easier than me having to build what's essentially a new app from the ground up that I'm never gonna use myself. If you ever attempt something like that, let me know how it goes :)
[Tasker Tips & Tricks] bettuccio:
I agree with you that the battery would last very short but I would have preferred to give it a try. No, I'm not an engineer like you unfortunately. I have only known android for many years but I cannot build an apk from 0 except only via tasker. For now I have created a profile in tasker with your plugin that intercepts the personalized keyword from the mobile and sends the command to AutoWear (plugin) which communicates with the watch and sends the action (open Assistant). It works fine even with the screen off. Let's see over time if the service doesn't kill
[Tasker Tips & Tricks] bettuccio:
I was also able to install your plugin on my watch with adb but the action to perform was not working. Probably your plugin was old and incompatible but the only versions (2.2 and 2.3) that can be installed from adb. The new ones cannot be installed perhaps because they are designed for a newer arm architecture. I don't know if I'm talking nonsense ..
[Tasker Tips & Tricks] Humpie:
I did not update the arm version (always arm64-v8a and armeabi-v7a), but it might be that Google has tightened everything a bit in the last couple of years making wear os too different from android...

I am however able to boot the app on the emulator :) so maybe try the latest version again?
[Tasker Tips & Tricks] bettuccio:
no, I have already tried to install version 4.2 even the older ones but they do not install. But I must admit that I used adb from a "bugjaegern" application, not from a PC with manual adb commands.
[Tasker Tips & Tricks] bettuccio:
only versions 2.2 and 2.3 are installed.
[Tasker Tips & Tricks] deechte:
Hi @Humpie, have you tested with Android 13 yet? In my case the good news is that the method that worked to enable HWP before Android 11 works again. So Tasker can easily turn HWP on again in the background and the slider in HWP correctly mimics that. Maybe Google loosened things a bit there, because Android 13 now shows a small green dot in the status bar warning the user something is recording?

The bad news though is that although HWP is set to listen to hotwords, it never gets triggered, unless HWP is on the foreground. In any other situation it's always Google's own voicematch that's responding with the Google Assistant.
[Tasker Tips & Tricks] Humpie:
Didn't test it yet, unfortunately I don't have much time anymore to work on my Android apps due to my personal life and my job at Jetbrains :/.

I don't think Google loosened the enabling of the microphone from the background though. They were very clear that that was a privacy concern. So what could be the case is that it now no longer throws an exception but just pretends it's working while no sound gets to my app. You'd still be better off enabling it manually in the app.
[Tasker Tips & Tricks] deechte:
You're probably right. When enabled through HWP's interface it picks up indeed. But just sometimes. Sometimes it responds, sometimes Google's voicematch responds. It seems random.
[Tasker Tips & Tricks] Fallbringer3:
Hello, is it possible to change the ding sound to something else? I wanted the hotword to directly produce an answer from Google Assistant, but it would also work if I change the ding sound it makes when it recognizes a sound. I'll be checking how to change it.
[Tasker Tips & Tricks] Humpie:
I've answered this many times already :) you can turn it off and let Tasker play any sound you like. The ding sound is just for quick tests
[Tasker Tips & Tricks] Humpie:
Google being google, they put me in a bit of a stalemate. If I want to update the app, I need to publish a version of the app targeting Android 13+, which requires MANAGE_EXTERNAL_STORAGE to be able to access .pmdl files from storage. This permission is only granted to file managers, so it's not granted to Hotwordplugin (I tried). It might be possible to work around this somehow, but that would require a lot of time I currently simply don't have.

However, the old version of the app used QUERY_ALL_PACKAGES permissions, which is not allowed by Google as well (and frankly not needed in the app). So now they've removed the app from the play store.

I'll attach a beta version of the (full) app here which targets Android 14 with MANAGE_EXTERNAL_STORAGE permission and without QUERY_ALL_PACKAGES. So while I sort this out, you can still use the newest version.
[Tasker Tips & Tricks] doni49:
I have Tasker and Hotword Plugin installed on several Android Phones & Tablets.

The only time I've been able to get the Hotword profile to trigger is if I open Tasker, open the Hotword Profile, tap configure. Then Hotword plugin shows that it's "started listening". Then I can say "hey Jarvis" and the profile triggers fine.

But if I'm not in Tasker or Hotword as the focused app, it won't trigger the profile.

Ideas?

EDIT TO ADD: it doesn't seem to matter if the phone is an inch or a foot away from my mouth.
[Tasker Tips & Tricks] doni49:
It is still listed in the play store (at least the free version is).
[Tasker Tips & Tricks] Humpie:
Yes... For now 😅
[Tasker Tips & Tricks] Humpie:
You can try to look at the battery saving options of either of the apps in the Android settings. Setting those to unrestricted might help.
[Tasker Tips & Tricks] doni49:
Thanks but I just checked one of them and neither HA nor HWP are set to be optimized (Android 12). It still acts the same.

I'll check the others later.
[Tasker Tips & Tricks] Humpie:
Well, it took some time, reworking some parts of the apps, and uploading a beta version to production, but the app is live on the Google Play store again :).

Some bugs were fixed (and hopefully none were created), but if you find anything, let me know!

Paid version

Free version
[Tasker Tips & Tricks] saintchelo:
The site https://snowboy.kitt.ai does not exist ?

I trien with all browsers but the site does not exist.

How can I create a new hotword ?
[Tasker Tips & Tricks] Humpie:
Yes, the site has unfortunately been taken down by Snowboy :(. But I put up little helper site where you can train new hotwords yourself. It's not as good as snowboys pretrained ones, but it's the best we can get atm.

Check https://snowboy.jolanrensen.nl/ or hit the download button in Hotword Plugin
[Tasker Tips & Tricks] alain.braylyn:
Could you kindly share the intent/action that can be used to start and stop the service.

I know there is a action available in tasker, but i want to test something out using autoshare. Thanks
[Tasker Tips & Tricks] Humpie:
Hi, sure!

It should be something like <FULL APP PACKAGE>.receiver.StartStopReceiver.START or .STOP (replacing the package with the version you installed of course)
[Tasker Tips & Tricks] endlesvyd:
If you were inclined, you could add openwakeword as an alternative to snowboy. Wakewords are trainable by AI tts, no manual training necessary, and an unofficial repository of very accurate ones already exists.

home-assistant-wakewords-collection/en at main · fwartner/home-assistant-wakewords-collection

Community Collection of Wake-Words for Home Assistant - fwartner/home-assistant-wakewords-collection

github.com

I've been using your app for months as a hotword for my home assistant server. It's been amazing, I did a how-to and tried to funnel people toward the paid version of your app, hopefully I sent a few coffees your way!
[Tasker Tips & Tricks] Humpie:
Thanks :D I'll keep it in mind! Though I think implementing it in the app might still take a lot of work. Switching to something like https://github.com/Thalhammer/snowman could be easier, as it has the same architecture, but I'm not sure how active that is atm.
[Tasker Tips & Tricks] Dovidhalevi:
Great if you have it. I doubt my Xiami Redmi 4 does.
[Tasker Tips & Tricks] Beilstwh:
This might be a silly question but if your app locks up the microphone how can I talk on the phone if someone calls me?
[Tasker Tips & Tricks] Humpie:
That's a good question, haven't thought of that XD What you can do is quickly disable the listening using the notification I provide you.
[Tasker Tips & Tricks] Humpie:
Update time!

v1.4

- Even better sensitivity tweaking

- Added audio gain slider so you can increase or decrease the volume of your microphone

- Fixed bug that could fill up your sdcard when running for a long time

- Fixed bug so example models get placed on sdcard at first boot

So for those suffering from microphone problems, please try and lower the audio gain to below 10 and tell me if it worked for you :)
[Tasker Tips & Tricks] alienyd:
create a new profile based on event picking up calls, make it switch off service.

create another one with state phone idle, make it turning service back on, or maybe combining by using its exit task to turn off service.

I would prefer 2 different profiles for the sake of stability, but try each it first and decide for yourself:)
[Tasker Tips & Tricks] tokenbest:
Hi guys, i am not that good with tasker (did not play with it much) so can anyone just guide me to get me started say for example on the OK Google part.

Now that i am using the hotword plugin, how do i get to activate OK google again using the hotword plugin (hey google / jarvis etc) and tag it to an action that i want to occur?

Maybe can just start me off by how to get my ok google working again?
[Tasker Tips & Tricks] amogus:
I follow your exact setup here but whenever I'm done using Google assistant, the hotword won't record my command even though the app says it started recording again. It will only start recording again if I remove the hotword app from recent app and it starts recording automatically again. Any workaround? I also tried to add wait time to 30 sec but it doesn't change anything
[Tasker Tips & Tricks] Humpie:
So you have to open the app again and then close it from the recents to get it to work again?
[Tasker Tips & Tricks] amogus:
Yes...

If I don't close it from recent apps, it won't record sound...

It seems like the Google assistant keeps recording until I do that. Changing the record mode off and on again directly from the hotword app doesn't change anything until I close it from recent apps. This problem only happen after I use Google assistant. Other tasks work flawlessly
[Tasker Tips & Tricks] Humpie:
Thanks, I think I'm able to reproduce the problem, will check the logs and see if there's something I can do about it

Edit: lol, just when I'm recording the logs, it just works fine. Can you send a log of when the problem occurs? If you don't know how, try logcat extreme and filter for hotword, that should do it
[Tasker Tips & Tricks] amogus:
Here you go... I just ask Google assistant the weather and let it finish talking, then go back to home screen. hotword says it start recording again,

But it doesn't actually record anything
[Tasker Tips & Tricks] levi781:
trouble

when i press a + button or download button (on main screen), application freeze... how to fix this ?

p.s. also when i run app i can't se list of examples

on sdcard /hotwordPluginFree i see examples files

[IMG="bug"]https://myxas.tk/ima/21.jpg[/IMG]
[Tasker Tips & Tricks] Humpie:
I'm afraid I don't know actually... The logs don't give a clear reason why it stopped recording (or didn't start)... It may be something outside the app that's blocking it. If it's not too much too ask, could you send the logs again (in verbose mode if the option is there) without filtering it?
[Tasker Tips & Tricks] Humpie:
It looks like a relatively old android version you're running (judging by the button layout), which version is it? That might have something to do with it freezing. The list of examples is there when the + button is pressed XD, that's why you don't see them
[Tasker Tips & Tricks] levi781:
android 4.4.2

how i can send logcat? (xda forum needs 10 posts for post external links)
[Tasker Tips & Tricks] Humpie:
You can add it as an attachment right? Otherwise you can but it between

code tags

and just post it here if you like or send me a pm
[Tasker Tips & Tricks] levi781:
ok. sended pm

p.s. on another device also android 4.4.2 it's working, but i need it on another device ;)

p.p.s

just added by hand info to sqlite db file, and it works (but need to add files by hand :)
[Tasker Tips & Tricks] crispyduck:
Hi, i like the Idea of the app, and for testing it works on my smartphone.

It seems that it does not work on an old Android 4.1.1 Tablet which I use as disply for my homeautomation.

It says listening, but does actually not listen and also the mic is not blocked for other apps.

Will it be possible to get this working on such old Android versions?

Thanks,

Andi
[Tasker Tips & Tricks] Humpie:
I think due to android limitations the minimum is around 4.4. At least that's what I experienced during coding, and as almost everyone is above 5.0 nowadays I don't think it would be viable to check even older versions. I don't have a <4.4 device myself anymore actually to test on