node-rpi-rgb-led-matrix

0.1.5 • Public • Published

node-rpi-rgb-led-matrix

Pilot your rgb led matrix with Nodejs on Raspberry Pi ! Nodejs binding of rpi-rgb-led-matrix library https://github.com/hzeller/rpi-rgb-led-matrix

PROJECT NOT MAINTAINED ! :(

If you want to see a better and up to date project go to https://github.com/easybotics/node-rpi-rgb-led-matrix

Compatibility

NOTE: node-rpi-rgb-led-matrix should work across Node.js versions 0.8, 0.10, 0.12, 4 and 5 as it uses Native Abstractions. HOWEVER there is a problem with the Node.js version 0.10.29 packaged with Raspbian Jessie 2015-11-21 which breaks Native Abstractions. The easiest fix is to make a minor edit to your v8.js file; this and other solutions outlined on this Raspberry Pi Forum post.

Installation with npm

$ npm i node-rpi-rgb-led-matrix

Installation with git

$ git clone --recursive https://github.com/zeitungen/node-rpi-rgb-led-matrix.git
$ cd node-rpi-rgb-led-matrix
$ npm i

Get some Fun

var LedMatrix = require("node-rpi-rgb-led-matrix");
//or require('./index.js');
 
//init a 16 rows  by 16 cols led matrix 
//default hardware mapping is 'regular', could be 'adafruit-hat-pwm' ect 
var matrix = new LedMatrix(16, 16 );
matrix.fill(255, 50, 100);
matrix.setPixel(0, 0, 0, 50, 255);

LedMatrix API

  • Constructor: LedMatrix(rows, cols, chainedDisplays, parallelDisplays, hardware-mapping) default values are rows=32, cols=32, chainedDisplays=1, parallelDisplay=1, hardware-mapping=regular
  • 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:

...
  {
            "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_CHAIN

Look 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.

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 0.1.5
    5
    • latest

Version History

  • Version
    Downloads (Last 7 Days)
    • Published
  • 0.1.5
    5
  • 0.1.0
    1
  • 0.0.2
    0

Package Sidebar

Install

npm i node-rpi-rgb-led-matrix

Weekly Downloads

6

Version

0.1.5

License

WTFPL

Unpacked Size

14.1 MB

Total Files

176

Last publish

Collaborators

  • ryanmich251
  • hilo90mhz
  • keptan
  • zeitungen
  • csprinkels