Not sure how many people would be interested in mycroft on an armbian OS without desktop - I find armbian works well and you can get very really powerful pi devices that blow rpi3 out of the water on specs for 1/2 the price
I installed in on quadcore orange pi running armbian… the hardest thing was getting the audio to work as you have to use Pulse Audio. ( you can get pulse audio installed easier if you like just run armbian-config while login as your user and install minimal desktop) but this is for a very minimal install
first off you need to enable your orange Pi mic which is relatively simple - alsamixer basically tab over to capture on mic1 and hit the space bar to enable it …
- optional – install mpv it just installs pretty much all the audio prerequisites files you can also install vlc if you like
apt-get install mpv vlc
download a small test wav file to the device for testing
ie mvp test.wav
when playing the file it will tell you it is playing with alsa engine
installing pulse audio in a base server CLi enviroment
apt-get install pulseaudio pulseaudio-utils
next you need to give it permission to the user ie root or your user
usermod -a -G pulse root
usermod -a -G pulse-access root
usermod -a -G pulse ai
usermod -a -G pulse-access ai
logout or reboot
once done that you can run pulseaudio --system or pulseaudio -D ( depending if you are runnng as root or User )
if everything is setup right now when you play an audio file with mpv it will say using pulse audio engine
now you can proceed with the mycroft install - preferably as a user
cd ~/
git clone https://github.com/MycroftAI/mycroft-core.git
cd mycroft-core
bash dev_setup.sh
once done run
./start-mycroft.sh unittest
hopefully it will be error free it might display error as audio files did not finish downloading as that can take a while after it finished installing the core…
next test your audio with mycroft
./start-mycroft.sh audiotest
if all worked out well mycroft will now be able to hear you and speak to you.
next just run
./start-mycroft.sh all or debug
to register and get it up and running .
it will give you a pairing key and a way you go… pair it on their website
the Mic sensitivity is so on the orange pi – you can use a usb mic or add in a much higher sensitivity Mic – I used fairly high sensitivity mic commonly mic found in most arduino kits CZN-15E . did not even have to remove the existing mic just soldered it to the mic pins on the back of the orange pi… now you can speak normally even at slight whisper and it will work well. and normal voice work with in a 10- 15 foot radius
to get pulse audio to run in server Cli mode best way is to create a script
then just add these lines to /etc/rc.local ( assuming you called your user ai)
sudo nano /etc/rc.local
this line executes the file as the ai user
sudo -H -u ai /home/ai/./startup
create the startup
nano startup
add these lines - optional mpv /home/ai/intro.wave plays an startup sound file
pulseaudio -D
sleep 5
#mpv /home/ai/intro.wave
cd /home/ai/mycroft-core
./start-mycroft.sh all
by default zram-config is installed on a armbian os it compresses your ram so you have more memory by about 50% more if not run
sudo apt install zram-config
``
to enable simply reboot
if using smaller memory device ie <1gig use a high quality class 10 SD
sudo swapon --show
to display available swap
sudo fallocate -l 1G /swapfile
will create a 1gig swap file
sudo chmod 600 /swapfile
to set it at the correct permission
sudo mkswap /swapfile
sets the file as a swap device
sudo swapon /swapfile
turns on the swap file
to make run at boot edit fstab
sudo nano /etc/fstab
add this
/swapfile swap swap defaults 0 0
you can edit your swappiness so it only writes as little as possible to the swapfile 10 or lower
sudo sysctl vm.swappiness=10
i find even if you have 1 gig of memory it is advantageous to have a swap file it used rarely - but mycroft tends to use more memory than it has when doing updates and other functions in the background if you find mycroft stuttering from time to time adding a swap file normally corrects that issue
oh well good luck have fun