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


#1

A small teaser type of annoucement was already made in my “Journey” topic elsewhere on these forums.

However as I am getting close to something that will be downloadable and to be flashed onto a SD card, I would like to open this second topic dedicated to the MycroftOS project that I am running on my blog/website.

What is MycroftOS
MycroftOS is a bare minimal OS based on Buildroot to run the Mycroft A.I. software stack on embedded devices such as the Raspberry Pi’s, chinese Android boxes, Asus Tinker board, etc.

Perhaps in the future an alternative for Picroft and/or the Mark-1 device. However only if you just want to use Mycroft as end consumer type of device.

What MycroftOS is NOT
MycroftOS is NOT suitable as a development platform. Development requires you to installl development headers/libraries/dependencies which all are not included within MycroftOS nor easily be installed. MycroftOS should be considered a production type of release for end consumers.

Sourcecode
The sourcecode is released on Github.

Latest development
The latest update on the development status has just been pushed to my website.

Please let me know your thoughts, ideas, comments, etc. I am Dutch so can handle “direct” responses, so any feedback, both positive as negative are more than welcome. I hope to learn a lot from this and know for sure, I can learn a ton from you guys.


#2

Can use some help from the experts / guru’s. Running into some monkey business and just don’t see it anymore ?!

Running the services does not adhere the population of “~/” for the location of the configuration file within the users it home directory. It is most likely not a Mycroft issues, more like a busybox init issue, but who knows you guys see it. (getting a bit blind for that stuff atm)


#3

A first (very) early alpha release is ready. Still a lot of things to fix/change/create/etc however it looks like I have all Mycroft stuff working one way or the other. I could use some feedback, both positive as negative.

So if you have some free/spare time and a spare SD card, please give it a go and let me know your thoughts. However please have a look at the information section as this is like I said a very early release and still have some quircks.

MycroftOS_0.1_rpi3_alpha2

You can download the image in 7z archive which is about 180 MB in size here;
https://j1nx.stackstorage.com/s/diuT4DeeB0UBR9L

In case you can’t handle the 7z archive, an uncrompressed IMG file which can be written to SD card straight away here (however this file takes a bit longer to download with it’s size of 1 GB);
https://j1nx.stackstorage.com/s/Uaaigj4a0iNH9WE

If you are interested in the development, or want to check or build it yourself. All sources are available on github;

Information

  • Linux kernel 4.14 (LT)
  • Buildroot 2018.11.x
  • Mycroft 18.08.11
  • Raspberry Pi 3B

I have a Raspberry Pi 3B, but I believe it should also boot and work on the normal RPi3 and RPi3B+. If you have one of those, please by all means give it a go and report back to me.

Quircks

The system has the LAN configured for DHCP. Wifi has not yet been covered. So first boot with a LAN cable connected.

Find the IP of the device by any method you like. You can SSH into the box. The default credentials are;

  • user: root
  • passwd: mycroft

Change the password by the normal linux command; “passwd” !!!

If you rather want to use the wifi, you need to manually edit the wpa_supplicant.conf file. In the next version, this will be handled by advertising the device as a hotspot;

The filesystem is 1GB in size and the plan is to have this to be auto-expanded at first boot. However, that part is still one of the quircks. However you can run the script manually and then it works ?!? SSH into the device and run the command;

  • /etc/init.d/S00resize_sdcard start

This should expand the filesystem over the whole size of the SD card.

This image also has the drivers for the ReSpeaker HAT, so if you have one of those, again by all means give it a go and let me know the outcome. HOWEVER;

I have no clue if standard USB microphones are working and that is where “you” come in. I will have a look to buy some of the mostly used mic’s but until then, you can see if you a) they work out of the box, or b) configure them manually over SSH and let me know the steps.

Bare in mind that at the very first boot, Mycroft does start but also is downloading all the default skills. So first boot takes a bit longer. The default 3.5 jack of the RPi is configured as default and Mimic is available locally, so at some point you will hear the famous robotic words; I need to be activated, blah blah.

One other quirck that is still there is the issue with ncurses. The Mycroft CLI does not look good, however it does work. Pure cosmetics…

The standard scripts to start/stop Mycroft are available so you clould easily SSH into the box and run the ;

  • start-mycroft all
  • start-mycroft debug
  • start-mycroft cli
  • stop-mycroft all
  • etc

Please feel free to report any issues here or even better on the issue tracking of Github. Puul Requests are welcome as I am the only developer at the moment.

Enjoy!


#4

@gez-mycroft I wasn’t aware of the “modding” section on the forums. I believe that is a better section for this topic to be placed. (I am developing on the RPi atm, but has nothing todo with picroft other then that)

Is it possible this topic get’s moved over there?