RoadTest: Matrix Creator for the Raspberry Pi
Author: ljakes
Creation date:
Evaluation Type: Development Boards & Tools
Did you receive all parts the manufacturer stated would be included in the package?: True
What other parts do you consider comparable to this product?: null
What were the biggest problems encountered?: Getting the MATRIX Creator to work with the published installation script for the MATRIX Core software on the Raspberry Pi
Detailed Review:
Introduction:
Thanks to Element 14 for the opportunity to thoroughly test this product to the best of my capability with the support test equipment and test aids that I have at hand. For this roadtest I will document the installation and operation of a Weather Monitor and Alert System using the Dark Sky API Solution. Also I will run the available demo software to exercise the MATRIX Creator Hat Sensors and Indicators on the Raspberry Pi.
The MATRIX Creator is a wonderful device as it is packed with these features:
Hardware /Software:
These are the products I received:
Element 14 provided me with the MATRIX Creator Hat and a Raspberry PI Model 3B as shown above.
These are items used that I had on hand:
Micro SD Flash Memory Card.
Logitech K400r keyboard.
5 volt 3 Amp ac to dc power adapter.
A 25 kHz ultrasonic transmitter.
Discussion:
To begin with the MATRIX Creator Hat is attached to the Raspberry Pi GPIO Header as below:
I followed the instructions at this link https://www.element14.com/community/community/raspberry-pi/blog/2017/08/21/matrix-creator-weather-app.
Installation requires the use of a client computer and the host Raspberry Pi with the MATRIX Creator attached with different software installed on each.
For the client computer I used my I7 Windows 7 Desktop with the following software in sequence installed:
1. node.js from this website https://nodejs.org/en/download/
2. git from this website https://git-scm.com/downloads
3. MATRIX CLI by opening a command terminal with administrative permissions and entering "npm install -g matrix-cli":
4. Acquire a MATRIX Labs MATRIX account and login by entering "matrix register" at the command prompt and follow the instructions.
5. Register the MATRIX Creator device by entering "matrix register device" at the command prompt and annotate the matrix id number and the matrix secret number.
6. Creates a folder with a base matrix app template by entering "matrix create MATRIX-Weather-App" at the command prompt and cd into that directory
7. Clone the MATRIX-Weather-App directory from the repository by entering "git clone https://github.com/matrix-io/MATRIX-Weather-App" at the command prompt:
8. Using a web browser go to https://darksky.net/dev and acquire a login to the Dark Sky API and annotate the SECRET KEY given.
9. Edit the app.js file in the MATRIX-Weather-App directory and enter your SECRET KEY in the //Configure forecast options section.
That concludes the installation on the PC which went very well unlike the Raspberry Pi installation that gave me much trouble as I explain below.
The installation on the Raspberry Pi goes as follows:
1. Install the latest version of Raspbian Stretch Lite from https://www.raspberrypi.org/downloads/raspbian/ .
2. Perform an update and upgrade and verify that the wifi or lan is communicating with your router.
3. Create a file called .bash_profile with these two lines (include the id numbers previously annotated above when performing the matrix register device):
export MATRIX_DEVICE_ID=.............
export MATRIX_DEVICE_SECRET=.........
4. Reboot the Raspberry Pi.
The next step is where I ran into much trouble. The instructions say to run the installation script , "curl
https://raw.githubusercontent.com/matrix-io/matrix-creator-quickstart/master/install.sh
| sh".
This is supposed to properly install the matrix-os and all dependencies. However, i ended up with a system that appeared to work in that there was indeed communication between the client and host but the sensors and indicator LEDS of the MATRIX Creator would not respond to any commands. I spent many days reinstalling using older variations of the Raspbian operating systems to no avail.
Finally after manually installing every dependency separately, I discovered that there where mistakes in sequencing and some missing system update commands that prevented some pre-requisites from getting installed. I rewrote the installation script to correct these errors and also include the latest versions of the dependencies and got it working. Attached is the script I wrote (inst.sh).
5. Run the installation script, "inst.sh" twice. It must be run TWICE in order update everything properly.
Now that everything is working, the following steps will demonstrate the running of the MATRIX-Weather-App:
1. On the host (Raspberry Pi) cd into the "matrix-os" directory and enter node index.js and the result is:
The LED response from the MATRIX Creator is:
2. On the client system (PC) deploy and run the MATRIX-Weather-App with the following response on the host Raspberry Pi:
The various LED responses from the MATRIX Creator based on the current weather conditions are:
Clear Day
Clear Night
Cloudy
Foggy
Partly Cloudy Day
Partly Cloudy Night
Rain
Sleet
Snow
Windy
Hazzard
That concludes the MATRIX-Weather-App demo.
Other available demo apps that I have deployed and ran are:
Life
Clock
Sensortest
The MATRIX Creator can also be accessed and controlled directly through the Raspberry Pi only without having to establish communication from a client device. This is done by installing the MATRIX HAL software which is the lowest-level abstraction for the MATRIX Creator drivers. I followed the installation instructions found here https://github.com/matrix-io/matrix-creator-hal .
The following are some demos that are included with this software:
ARC Demo
Sensors Demo
Sensors Status
Everloop Demo
Compass Demo LEDs
Compass Demo Display
In the next two demos I used a 25kHz "Dog Repeller" as a sound source to activate the microphone array. Interesting to see that the microphones indeed "Hear" ultrasonic frequencies.
Microphone Array Demo
Microphone Array Energy Demo
CONCLUSION:
The MATRIX Creator is a great device packed with many sensors and LED indicators. It performed flawlessly once the software issues were addressed. This device obviously is not ready for prime-time yet but does show tremendous promise. Also, one small annoying fault was that the Raspberry Pi won't shut down with the MATRIX Creator connected and power. It seems that the MATRIX Creator just wants to continually reboot the Raspberry Pi.
Top Comments
Nice road test report.
Are you going to do any sensitivity tests on the microphones?
I am curious as to how sensitive they are and how well they can establish the direction of sound.
DAB
Leonard,
Nice roadtest. I agree with DAB that it would be very interesting to test the sensitivity and directionality of the microphone array. This was the most interesting aspect of this product to me…
Thanks. In general, the microphone array seems quite sensitive and accurate in direction finding. I placed the unit on my desk about 1.5 feet in front of a pair of stereo speakers and they seem to react…