MATRIX Ecosystem Overview
Objective: Hardware shouldn't be hardThe MATRIX Ecosystem was created to make powerful hardware projects very approachable for software developers. The pillars of MATRIX, computer vision, hardware interfaces, distributed internet communication, and data-driven end-user clients, are all programming disciplines which require years for an individual to master, or for a team to build a solution around.
The MATRIX platform adds powerful capabilities to your Raspberry Pi, depending on your background and the kind of application you want to write, you may need to decide on which layer best fits your need. The documentation is organized according to these layers:
A straightforward library that's aimed at users of all skill levels. This layer is an abstraction around MATRIX HAL and allows you to program your MATRIX Device with as little as one line of code.
Keep in mind this library is new & in development. There are no known bugs at this time, but feel free to report any you encounter here.
Interacts with the kernel modules by using C++ drivers, enabling it to access available sensors and components on your device.
Abstraction layer for MATRIX HAL. Hosts a ZeroMQ + Protobuf communication layer which makes device information accessible via high-level interfaces. Supports 40+ different languages through Protocol Buffers: C++, Python, Ruby, PHP, Java, etc.
Each programming layer in the MATRIX platform is compatible with each MATRIX product, excluding specific components on the boards.
A fully-featured development board for the Raspberry Pi with various sensors and communication protocols such as a 3D Gyroscope, Accelerometer, an 8 Microphone Array, zigbee, Z-Wave, and more!
A voice and audio focused development board with an 8 microphone array that enables you to create your own audio driven applications or use voice assistants such as Amazon Alexa, Google Assistant, PocketSphinx, etc.