OpenVoiceOS - A bare minimal (production type of) OS based on Buildroot

New rolling development release available for people to give a try. If you do, please report back what you think of it and / or running into.

https://drive.google.com/file/d/1kfAl3yKyV9ND-Kp3X7NQwaJLB9H9Oz0W/view?usp=sharing

Little changelog (most likely far from complete thought);

  • ovos-core 0.0.4+
  • Wifi / Network can now be setup using both the GUI and / or on your other (mobile) device.
  • Precise-lite as Wake word
  • Color schemes
  • Updated some more basic skills to use the color schemes (timer, alarm, date, time)

And to showcase some of it, below some quick videos of it

3 Likes

Some screenshots of the new GUI goodies.

3 Likes

And, the full local route.

  • No backend
  • No pairing
  • On device STT with Vosk
  • On device TTS using either Mimic 1 (male) or Pico (female)

4 Likes

Nice work! :grinning: I need to try it out …

Please let us know what you think of it so far when you do.

1 Like

What’s the purpose of this project? Is it just a hobby or does it provide desirable extra/different functionality to Mycroft it’s based on? What are the main benefits?
Is there a README/doc or video that summarizes this? Also, does Mimic3 work with it yet?

Hi there Brad,

It started as a hobby project but ended up being a community driven project with multiple developers working on it from a varity of different sponsors/companies. Currently on board;
@Aix - GUI developer - KDE - Blue Systems
@JarbasAl - Python developer - NeonGecko
DanielMcKnight - Python developer - NeonGecko
@ChanceNCounter - Python developer / Lingua Franca Language framework
@strongthany - Community Manager - Documentation
@j1nx - Buildroot OS release image developer

We know and understand the documentaion bit is falling behind, therefor @strongthany joined us recently to pick up those tasks. Please bare with us as he is still finding his way around but eventually will play the catch up game.

More information can be found at the following channels;
Main website (Work in progress) - https://openvoiceos.com
Main github space - OpenVoiceOS · GitHub
Discussion Board - Discussions · OpenVoiceOS/OpenVoiceOS · GitHub
Matrix Chat Rooms - You're invited to talk on Matrix

To answer your question; “What’s the purpose of this project?” This will obviously be the first question on our FAQ that is in progress of being created, however…

OpenVoiceOS is a minimalistic linux OS (created with Buildroot) bringing the open source voice assistant Mycroft A.I. to embbeded, low-spec headless and/or small (touch)screen devices. It consists of the following “bricks”;

  • Buildroot (LTS 2022.02.x): minimalistic OS fully build from source code utilizing the linux 5.15 LTS kernel, busybox rootfs / libraries, latest QT 5.15.8, Mesa3d libraries and KDE Framework 5.91
  • ovos-core: A fork of mycroft-core including a lot of additional packages and code together with most if not all waiting PR’s such as full XDG support as playground for fixes, refactors and features awaiting the release of the Mark2 devkit.
  • ovos-shell: A minimalistic accelerated shell to run the mycroft-gui without the overhead of all different aspects of a full window manager and its dependencies.
  • A variety of soft forks of included mycroft dependencies to support all extra benefits such as multi resolution and orientation of the GUI and the use of open linux standards as DBUS, MPRIS audio control, etc.
  • Our own onboarding first boot system that allows users to setup the device like they want, from truly the same as mycroft itself paired with their servers to fully local including STT and TTS without the need of any online servers and/or pairing.

For videos and showcases of all the extra’s I would recommend to scroll back up within this thread as most teaser type of updates are posted within this thread.

3 Likes

I’d just add to @j1nx answer that OpenVoiceOS provides a lot of companion software for mycroft itself, almost everything can be used with “regular mycroft”

for most standalone repos ovos-core and mycroft-core and interchangeable as “core backends”, for example our media player OCP can be used in mycroft-core since its packaged as a audio backend plugin, our hardware abstraction layer PHAL can also be run side by side with mycroft-core and so on.

other things may require ovos-core instead of mycroft, either because they are changes to core (eg, multiple wakewords) or because they are plugins not used at all in mycroft-core (eg, VAD plugins)

OpenVoiceOS now supports 6 Languages with full GUI UI translation for the full drop down menu, we are now looking for help from the translation community and translators across the mycroft project to come help us and fully get integrated with their translations, if your willing to lend your time to a truly open voice and GUI experience come join us on our matrix channel and help us translate into your language: https://matrix.to/#/#openvoiceos-development:matrix.org


2 Likes

Hi everyone! I just got OpenVoiceOS working on my RPi4 last night, and I love it. I have it working in “online” mode, but will try it again with the “no backend” setup later. I also got the microphone to work via a Adafruit Voice Bonnet but can’t get the audio outputs to work. (if anyone can help me on this I would appreciate it).

Here are some notes that I jotted down while I was testing it.

  1. Can’t get skills to install directly by talking. Had to use “msm install” from the command line. (see pic for error message)

  2. Raspi-Config will not load. Error reads (sudo: raspi-config: command not found)

  3. I noticed that a lot of the files and folders I normally see in a Mycroft setup (Skills and such) are not in the Mycroft directory. I am assuming that they are hidden?

That’s it for now. Keep up the good work. Can’t wait for the Alpha Release!


  1. skills are not hidden they are located in: “/home/mycroft/.local/share/mycroft/skills”, OpenVoiceOS follows full xdg compliance so all files that were first in opt are now in the proper xdg compliant locations

  2. There is no raspi-config on the buildroot image, if you need to edit the raspberry pi hardware boot config, it needs to be edited manually in /boot/config.txt while your image is running, followed by a reboot for changes to take place

  3. For audio output you will need to check if your pulseaudio sink is configured correctly, you can try that with “pactl list” and check which is the default sink, if your device is not the default sink you can try setting that as the default with “pactl set-default-sink sink_name”

Quick question. Is there a way to change the background at all?

Yes, swipe right to left on the homescreen to change the background, you can also add your own images

New updated arch based development images are available for Respeaker (2 Mic Array) and Mycroft Mark-2 DevKit for testing.

– What’s not working in this version and arch based images:

  • Balena Wifi-Connect (on-mobile wifi setup), so select on screen setup only to setup wifi !
1 Like

Announcing the Release OVOS 0.0.4

(that's 0.0.1 more than 0.0.3)

Here are some highlights from the release notes

Now you're speaking my language

users can now override default resource files, this means you can add language support to skills locally or personalize the spoken dialog files locally - #131

The rich(skills) get richer(again, skills)

audio files can now be queued together with TTS, this means you no longer need to manage the playback and can be sure they wont play over mycroft speech but after it, allowing for richer skills with sound effects - #180

Update to common query

common query functionality has been made into a first class intent stage, in mycroft-core it is a fallback skill with special treatment, this means the skill can get out of sync with core or incompatible between branches such as dev and mark2, skill-ovos-common-query is now deprecated - #127

Free as in free speech & freedom of choice

the utterance examples based intent parser in mycroft is padatious, however this requires libfann2 which makes things a bit troublesome to package, it is also copyleft which makes it incompatible with our universal donor policy, as such this release allows you to replace padatious with padacioso, a more deterministic and regex based alternative with similar performance - #183

Can you hear the difference?

OCP(OVOS Common Play) is now natively supported by core, it remains as a plugin for compatibility with mycroft-core but is now the default playback manager and can not be disabled in ovos-core. automated unittests have been added to OCP both for mycroft-core and ovos-core - #154

Configuration update improvements

Configuration handling has been refactored, a new filewatch utility was introduced that makes config changes be picked up instantaneously, many thanks to @forslund for all the help and feedback - #105

More uptime

Skill settings changes on disk will now be picked up by core without needing a restart - #139

Full list of changes can be found below

Changes

Implemented enhancements:

Fixed bugs:

Closed issues:

  • Failure when no fallback stt set #84
  • Unsupported LF language prevents intent handling #123
  • port - resource file handling utils #41

As always we welcome you to check out our Github page and get involved. We would also love to have you in our matrix chat. Come on in and say hi!

3 Likes

OVOS Local Backend version 0.1.4 released

We skipped over 0.1.3 because we felt like it and also because of an automation bug. But you're not here to read automation, you're here to read what's new! So what is new?

Welcome to the family

The release introduces an unofficial python api for interaction with mycroft's api. Github page for the project found here: https://github.com/OpenVoiceOS/selene_api. Additionally, this includes a simple web UI for personal backend, powered by PyWebIO. More here: https://github.com/OpenVoiceOS/ovos-personal-backend-ui

What else?

Here are some other release notes and bug fixes:

Fixed bugs:

  • explicitly use https for wolfram alpha api #28 (JarbasAl)
  • Check for outdated config file and insert new keys #7

Call to action

Want to get involved? Check out our [website](openvoiceos.com/). Find links to our Matrix chat and other information about our work!
5 Likes

Is there an image for installing this easily? I’m very interested in trying it out and would love to get my Mark I running it.

At the moment we are working on the final bits and pieces for the RPI4 based image which can be flashed onto RPI4 based devices, being it the Mark2 Dev-Kit or any other own created system.

Hopefully end of this week, beginning of next that would be available for download.

After that we recompile to codebase for RPI3 based devices which should be able to be flashed onto your Mark-1 kit. To be honest, we started the work on our Platform/Hardware Abstraction Layer plugin for the Mark-1 but that is not yet finished. This will mean you most likely will not get all the screen and rotation knob goodies straight out of the box.

Ha!! I see you are starting to use Platform/Hardware instead of Plugin/Hardware…Much better

1 Like