control led matrix with nodejs on raspberry pi. Nodejs binding of https://github.com/hzeller/rpi-rgb-led-matrix
npm install node-rpi-rgb-led-matrix-adafruit
$ npm i node-rpi-rgb-led-matrix
`$3
`
$ git clone --recursive https://github.com/zeitungen/node-rpi-rgb-led-matrix.git
$ cd node-rpi-rgb-led-matrix
$ npm i
`Get some Fun
`js
var LedMatrix = require("node-rpi-rgb-led-matrix");var matrix = new LedMatrix(16);
matrix.fill(255, 50, 100);
matrix.setPixel(0, 0, 0, 50, 255);
`LedMatrix API
* Constructor: LedMatrix(rows, chainedDisplays, parallelDisplays)
default values are
rows=32, chainedDisplays=1, parallelDisplay=1
* getWidth() return current led matrix width
* getHeight() return current led matrix height
* fill(red, green, blue) fill the led matrix with color specified
by red, green and blue. red, green and blue must be between 0 and 255
* setPixel(x, y, red, green, blue) set the color pixel at the position x,y
with color specified by red, green and blue. red, green and blue must be
between 0 and 255. x must be between 0 and getWidth(). y must be between
0and getGeight()
* clear() reset the led matrix display (shut down all leds)
Add specific defines for rpi-rgb-led-matrix
You can add specific defines for the rpi-rgb-led-matrix compilation.
You have to modify the
binding.gyp file. In the rpi-rgb-led-matrix target add definesarray like this:
`json
...
{
"target_name": "rpi-rgb-led-matrix",
"type": "static_library",
"sources": ["external/matrix/lib/bdf-font.cc",
"external/matrix/lib/framebuffer.cc", "external/matrix/lib/gpio.cc",
"external/matrix/lib/graphics.cc", "external/matrix/lib/led-matrix.cc",
"external/matrix/lib/thread.cc"],
"libraries": ["-lrt", "-lm", "-lpthread"],
"defines": ["RGB_CLASSIC_PINOUT", "ONLY_SINGLE_CHAIN"],
"include_dirs": [ "external/matrix/include" ],
"direct_dependent_settings": {
"include_dirs": [ "external/matrix/include" ]
}
}
...
`You have this defines possibility:
*
INVERSE_RGB_DISPLAY_COLORS
* SHOW_REFRESH_RATE
* RGB_SLOWDOWN_GPIO=1 or RGB_SLOWDOWN_GPIO=2
* ADAFRUIT_RGBMATRIX_HAT
* ADAFRUIT_RGBMATRIX_HAT_PWM
* RGB_CLASSIC_PINOUT
* ONLY_SINGLE_CHAINLook at rpi-rgb-led-matrix Makefile
for more details of this defines.
Don't forget to recompile:
`
$ cd /path/to/node-rpi-rgb-led-matrix
$ node-gyp build
`
or run npm i`.