SSH into RPi3 - MALOS Unavailable


#1

Hello, I’ve successfully ssh’d into my raspberry pi via wifi. When i run NODE_ENV=rc node index.js, this is my output:

Not using device data from db, using MATRIX_DEVICE_ID and MATRIX_DEVICE_SECRET instead!
Starting as device: d5a6c98fe8e7
Installed Apps:
Local Apps:
Local / Installed Δ 0
MXSS Connected: https://mxss.admobilize.com
MALOS Unavailable
=<[^\/^]>= [d5a6c98fe8e7] ready
[59de90059b18f50100e58120]

The MALOS Unavailable line is what I’m confused about. Also, when I try to deploy code to the board, nothing updates and I believe this line is the reason why. Does anyone have any feedback?


#2

The same here: When executing the install.sh on a RPi 3 with Raspian, i get these errors:

The following information may help to resolve the situation:

The following packages have unmet dependencies:
 matrix-creator-malos : Depends: libzmq3 (>= 3.2.3+dfsg) but it is not installable
 matrix-creator-openocd : Depends: libjim0.75 (>= 0.73) but it is not installable
E: Unable to correct problems, you have held broken packages.

I think this why i get the “MALOS unavailabe” message (which i get too) when issuing “node index.js”?

kind regards,

Christoph


#3

I’ve digged a little bit deeper in this:

On my Raspian Stretch system only the packages “libjim0.76” and “libzmq3-dev” are available and both installed, but don’t meet the requirements of matrix-creator-malos and matrix-creator-openocd packages… maybe the matrix-* packages need a rebuild? Or am i missing another repository configuration in /etc/apt/sources.list?


#4

Ok, i managed to get the installation to work, by manually installing these packages before starting install.sh:

https://packages.debian.org/jessie/armhf/libjim0.75/download
https://packages.debian.org/wheezy-backports/armhf/libzmq3/download
https://packages.debian.org/wheezy/armhf/libpgm-5.1-0/download

Download all three packages from the links on the related pages and install them by issuing:

dpkg -i libjim0.75_0.75-1_armhf.deb libpgm-5.1-0_5.1.118-1~dfsg-0.1_armhf.deb libzmq3_3.2.3+dfsg-2~bpo70+1_armhf.deb

When these packages are installed the installation script should work…


Starting node process with systemd
#5

Hi @happenpappen and @beeze, we are in process of migration of our packages so we can give full support for raspbian Stretch and Jessie. If malos wasn’t installed you can install manually following these instructions https://github.com/matrix-io/matrix-creator-malos
But if you have unmet deppendencies related you can try to manually install the packages like @happenpappen has done. Which raspbian are you using?


Everloop and mic array do not work
#6

I experienced the same problem situation:
Installing matrix-os on a Raspbian Stretch Lite installation seemed to work, but malos never launched on reboot. The service always needed manual starting. After manual starting matrix-os does actually work.

matrixio-malos status yields the following:

sudo systemctl status matrixio-malos

● matrixio-malos.service - Matrix Abstraction Layer for OS
   Loaded: loaded (/lib/systemd/system/matrixio-malos.service; enabled; vendor preset: enabled)
   Active: failed (Result: signal) since Sat 2018-01-27 22:17:03 UTC; 17h ago
  Process: 412 ExecStart=/usr/bin/malos (code=killed, signal=FPE)
 Main PID: 412 (code=killed, signal=FPE)

Jan 27 22:17:03 pixie malos[412]: **************
Jan 27 22:17:03 pixie malos[412]: You can query specific driver info using port 20012.
Jan 27 22:17:03 pixie malos[412]: Registered driver IMU with port 20013.
Jan 27 22:17:03 pixie malos[412]: Registered driver Humidity with port 20017.
Jan 27 22:17:03 pixie malos[412]: Registered driver Everloop with port 20021.
Jan 27 22:17:03 pixie malos[412]: Registered driver Pressure with port 20025.
Jan 27 22:17:03 pixie malos[412]: Registered driver UV with port 20029.
Jan 27 22:17:03 pixie systemd[1]: matrixio-malos.service: Main process exited, code=killed, status=8/FPE
Jan 27 22:17:03 pixie systemd[1]: matrixio-malos.service: Unit entered failed state.
Jan 27 22:17:03 pixie systemd[1]: matrixio-malos.service: Failed with result 'signal'.

So I took a look at /matrixio-malos.service, which contains a dependency on a different service:

sudo nano /lib/systemd/system/matrixio-malos.service

[Unit]
Description=Matrix Abstraction Layer for OS
After=matrixio-creator-firmware.service

[Service]
Type=simple
ExecStart=/usr/bin/malos

[Install]
WantedBy=multi-user.target

Examenig /lib/systemd/system/matrixio-creator-firmware.service I found that this service does not exist.
But there is a /lib/systemd/system/matrixio-devices-firmware.service.

So I changed matrix-malos.service to the follwoing:

[Unit]
Description=Matrix Abstraction Layer for OS
# After=matrixio-creator-firmware.service

After=matrixio-devices-firmware.service

[Service]
Type=simple
ExecStart=/usr/bin/malos

[Install]
WantedBy=multi-user.target

After a reboot, checking th status of matrix-malos now yields:

● matrixio-malos.service - Matrix Abstraction Layer for OS
   Loaded: loaded (/lib/systemd/system/matrixio-malos.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2018-01-28 16:08:15 UTC; 16s ago
 Main PID: 733 (malos)
   CGroup: /system.slice/matrixio-malos.service
           └─733 /usr/bin/malos

Jan 28 16:08:15 pixie malos[733]: **************
Jan 28 16:08:15 pixie malos[733]: You can query specific driver info using port 20012.
Jan 28 16:08:15 pixie malos[733]: Registered driver IMU with port 20013.
Jan 28 16:08:15 pixie malos[733]: Registered driver Humidity with port 20017.
Jan 28 16:08:15 pixie malos[733]: Registered driver Everloop with port 20021.
Jan 28 16:08:15 pixie malos[733]: Registered driver Pressure with port 20025.
Jan 28 16:08:15 pixie malos[733]: Registered driver UV with port 20029.
Jan 28 16:08:15 pixie malos[733]: Registered driver MicArray_Alsa with port 20037.
Jan 28 16:08:15 pixie malos[733]: Registered driver Servo with port 20045.
Jan 28 16:08:15 pixie malos[733]: Registered driver Gpio with port 20049.

Tada, this looks much better.

Actually it seems, there are quite some integration bugs from Matrix Creator and Voice.

Hope this helps somebody.


#7

Hello @Nils,

Thank You forshare your findings in the community. Could you tell us which version of the MALOS do you have installed?

Could you run: sudo dpkg -l | grep matrixio and show us the result.

Also, I’m looking into the code and it seems that this issue is resolved now: https://github.com/matrix-io/matrix-creator-malos/blob/master/matrixio-malos.service.

I’m looking for your answer.

Regards,

Kevin Patino


#8

My pleasure, that is what communities are for, right?

sudo dpkg -l | grep matrixio

ii  libmatrixio-creator-hal:armhf         0.1.4                                armhf        Hardware Abstraction Layer for MATRIX.
ii  libmatrixio-creator-hal-dev           0.1.4                                armhf        Hardware Abstraction Layer for MATRIX (headers)
ii  libmatrixio-malos:armhf               0.1.2                                armhf        Libraries of MATRIX abstraction layer for MOS
ii  libmatrixio-malos-dev                 0.1.2                                armhf        Libraries of MATRIX abstraction layer for MOS
ii  libmatrixio-protos:armhf              0.1.1                                armhf        Protocolbuffers for MATRIX abstraction layer
ii  libmatrixio-protos-dev                0.1.1                                armhf        Protocolbuffers headers for MATRIX abstraction layer
ii  matrixio-creator-init                 0.4.0                                armhf        Install scripts that can program the MATRIX Creator FPGA and SAM3 IMU.
ii  matrixio-malos                        0.2.2                                armhf        Allows queries to MATRIX Creator hardware via ZMQ.
ii  matrixio-malos-wakeword               0.1.4                                armhf        Voice commands for MATRIX Creator hardware via ZMQ callback.
ii  matrixio-openocd                      1.0.1                                armhf        Open on-chip JTAG debug solution for ARM and MIPS systems
ii  matrixio-pocketsphinx                 0.1.0                                armhf        This is PocketSphinx, one of Carnegie Mellon University's open source large
ii  matrixio-protobuf                     3.4.0                                armhf        Protocol Buffers - Google's data interchange format. (From GRPC 3.4.0)
ii  matrixio-sphinxbase                   0.1.0                                armhf        This is PocketSphinx, one of Carnegie Mellon University's open source large
ii  matrixio-xc3sprog                     1.1.1                                armhf        Spartan3, XCF and CPLD JTAG programmer and other utilities.

This seems to be the result of invoking
sudo apt-get install matrixio-malos

at some point of my adventure trying to get AlexaPi or alexa-avs-sample-app, which does currently not work for different reasons, but I am quite happy that I got matrix-malos-wakeword running with custom wakewords.