Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including node-red-contrib-rcswitch2 with all npm packages installed. Try it out:

node-red-contrib-rcswitch2 lists no main file and has no index.js, so it can't be directly required. If this is a mistake, please let us know. It may however contain internal files that you can require manually:

// require("node-red-contrib-rcswitch2/[??]")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

node-red-contrib-rcswitch2 v0.1.1

Another rcswitch node for node-red

node-rcswitch2

NPM version

The node-red node node-rcswitch2 allows to control 315/433Mhz devices via the rcswitch library. This is an extented version of tlindener/node-red-contrib-rcswitch with support of different switch types, tristate and binary strings.

The implementation based on https://github.com/marvinroger/node-rcswitch. The supported switch types are described there.

Node bindings for the rcswitch RaspberryPi port (pin).

It should be compatible with all versions of Node.js starting from 0.10.x.

Requirements

  • Like the C++ version of rcswitch, WiringPi must be installed in order to compile the used packages.
  • Both the data and the power Pins of the 315/433Mhz emitter must be connected to the RPi. Note the number of the WiringPi data Pin. (see http://wiringpi.com/pins/)
  • The node command must be run with root access

Usage

The attributs PIN and Mode must be set in the node properties (edit dialog). The other configuration can either be done in the node properties or in the incoming message object.

  • PIN - (Number) data Pin to use following the WiringPi schema
  • Mode - selects the operation mode of the node to support different manufacturers

This node supports the following modes:

  • group code + Device - For devices without family code.

The group code is either an binary string with length 5 or a numeric value (1-4) and could be set in field Group or msg.group. The switch/device could be set in field Device or msg.device (value [ABCD] (in this case Field Device must be set to "msg.device"). The Switchposition could be set in field Switch Position or in msg.payload. In this case the value 0 means off and the value 1 means on.

  • Family + Group code + Device -For devices with family code.

The Family code must be one of the chars [abcdef] and could be set in field Family or msg.family. The group code is numeric and must be one of the values [1234] and could be set in field Group or msg.group. The switch/device could be set in field Device or msg.device (value [ABCD] (in this case Field Device must be set to "msg.device"). The Switchposition could be set in field Switch Position or in msg.payload. In this case the value 0 means off and the value 1 means on.

  • Channel + Device (Tristate) For devices with tristate code like micro-electric AS 73 witch is also sold as REV Telecontrol in Germany (Version with house code with 6 DIP switches).

The Channel code must be a binary string with 0=off and 1=on and could be set in field Channel or msg.channel (in this case Field Channel must be empty). The switch/device could be set in field Device or msg.device (value [ABCD] (in this case Field Device must be set to "msg.device"). The Switchposition could be set in field Switch Position or in msg.payload. In this case the value 0 means off and the value 1 means on.

  • Tristate String Send a tristate string.

The String could be set in field systemcode or msg.payload. Only the chars 0,1,F and S without any blanks are alowed.

  • Binary String Send a binary string.

The String could be set in field systemcode or msg.payload. Only the chars 0 and 1 without any blanks are alowed.

An description of the types is on https://github.com/marvinroger/node-rcswitch".

Metadata

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free