I made a Mycroft binding. It’s the opposite of the Mycroft skill that some of you may know : this binding allows OpenHAB to control Mycroft and react to event from it.
UPDATE january, 11th, 2022 : The binding has been merged and is available with openHAB 3.3.
UPDATE august, 19, 2026 : thanks to @vanja testing it, the binding seems to also work with OVOS
You can find a snapshot bundle to install, with the latest code, by clicking here.
Yes.
The pull request is done and waiting for approval (the wait list is consequent though).
If you have feature request or remark, feel free to post it here.
Thank you. I have had the Mark1 since the beginning and have no desire to purchase a Mark 3. But I love my Mark 1. Its cute! If Openhab can’t connect on port 8181 to Mycroft, is there another configuration I don’t see?
Disclaimer : I don’t have a Mark I, when developping the binding I used the “Mycroft for Linux” installation method. I think you are the first one to use it with a Mark I. So, thanks for your test
My guess is that Mycroft has a built-in firewall. A quick search on internet seems to support that. I found a home-assitant thread that discuss this. Apparently from Mycroft version 18.8.1 the firewall prevents other computer from connecting to the Mycroft Bus.
But you can disable the firewall on the message bus port by issuing this command on the Mark I : sudo ufw allow 8181/tcp
Be aware that it opens the message bus to all computers on your network. It should not be a big securiy issue, but still. You could also customize this command to only allow the computer running openHAB to mitigate the risk (see ufw man page)
Hope this helps. Let me know if it works, and I will add this information in the documentation.
Thanks !
Is it possible to use mycroft as an voice assistant? So that I can send a comand to an item?
I have tried to evaluate the utterance, but I can’t get it to work.
if is it not possible @dalgwen maybe you can add this feature
thanks in advance
The Mycroft binding discussed in this thread, is for openHAB to control Mycroft.
For the reverse (Mycroft as a voice assistant to control openHAB) you have the openHAB skill that you install on Mycroft.
(For the sake of completeness, it is possible to control openHAB with Mycroft and the binding discussed here, because with the binding you can react to (nearly) everything happening on the Mycroft side (including any utterance, etc). But it is complicated and should be reserved for advanced scenario)
The binding works by using the MessageBus web socket interface, not the command line.
Sorry, I don’t know if OVOS still use it, and I don’t know if it is compatible. Giving the global A.I. assistant development pace, I would be surprised if so.
I don’t use Mycroft (or derivative) anymore, so I’m not able to maintain it, nor giving it an update/upgrade to OVOS.
In fact, with the Mycroft demise and my inability to follow successors, I’m wondering if I should ask takedown/EOL for this binding.
(But I never did, in case there is someone still using it out there ?)
Hi, wait dont take it down yet, i managed to connect. Mycroft still uses same port but was listening on 127.0.0.1 only
EDIT: this works beautifully. I use it to send some random statements that he is supposed to speak around the house, like hello goodbye good morning, AC cannot run with opened balcony and whatnot.
I had some ugly scripts for each of those, but now all is one simple switch rule with case 1,2,3…thanks to your binding.
The thing is I moved to docker so i lost exec binding, and now I’m working my way through “naturalizing” those shell scripts.
So I sure hope your binding exists for OH5 because OH upgrade is the next step
With your report here, there is absolutely no reason to take it down.
On the contrary, it means we should do something to update its visibility with the new information you just brought. I see several possibilities:
at least mentioning OVOS in the documentation (Maybe, even in the title ?)
or renaming the binding to OVOS (but for this, we should verify that all advertised channels works. Your help here is welcome !).
I also suppose, as a third way, that the binding may remain technically named “Mycroft” and everywhere in the UI it could be named “OVOS”.
I don’t know if there is precedence for this in the openHAB project ?
If some maintainers see this, I would appreciate your insights.
And the cherry on the cake would be to have someone wanting to update documentation, code, etc. I see that OVOS is using mdns, so it’s a good candidate for openHAB autodiscovery.
Honestly man, I am confused as you are believe me. The way opensource can pivot, fork and change is crazy.
I have no idea how you call him nowadays. As I understand the assistant is still called Mycroft, it still responds to “Hey Mycroft” and OVOS is a platform (Open Voice Operating System) which provides maybe some of the engines, like Dinkum and whatnot.
I moved to it simply because my Picroft (this was mycroft image for RPI) died when they killed of the servers. So at that moment (of mycroft demise) i found raspi-ovos image and just burned it to the sdcard and gave it a spin, and realized its the same old mycroft
I got used to it because it has OH skill and it can controll all openhab items…
you can have a look at this discussion, I posted the info about it, there is another Mycroft fork called Neon AI, for sure it also works with your binding, as we all know who is inside of it