# node-red-contrib-modbus

### The all-in-one Modbus TCP and Serial contribution package for Node-RED

## International IIoT Website for Node-RED

For an international area, Iniationware has provided the PLUS for Node-RED International website.

## IIoT Webseite Deutschland für Node-RED

Für einen deutschsprachigen Bereich hat Iniationware die Webseite PLUS for Node-RED Germany bereitgestellt.

## Contribution Information

Node-RED contribution package for Modbus version overview:

Based on modbus-serial with TCP, C701, Telnet, Serial, RTU buffered, and ASCII

- stress tested with Node-RED v1.0.4 and Node.js LTS
- works with queueing per unit and round robin scheduling

Node-RED v3.x versions:

- Node.JS 18.x will be supported with v5.22+
- Node.JS 16.x will be supported with v5.22+

Node-RED v2.x versions:

- Node.JS 18.x will be supported with v5.22+
- Node.JS 16.x will be supported with v5.20+
- Node.JS 14.x is supported with v5.14+
- Node.JS 12.x is supported with v5.x

Node-RED v1.x versions:

- Node.JS 14.x is supported with v5.14.+
- Node.JS 12.x is supported with v5.x
- Node.JS 10.x is supported with v5.x

Node-RED v0.x versions:

- Node.JS 10.x is supported with v4.x
- Node.JS 8.x is supported with v3.x
- Node.JS 6.x is supported with v2.x
- Node.JS 4.x is supported with v1.x

If you like that contributor's package for Modbus, then please give us your star at GitHub !

## Install

Run the following command in the root directory of your Node-RED install

    npm install node-red-contrib-modbus

Run the following command for global install

    npm install -g node-red-contrib-modbus

try these options on npm install to build, if you have problems to install

    --unsafe-perm --build-from-source

### modbus-serial, serialport and jsmodbus

The serialport optional dependency is just to list all ports on your system in the client configuration. It is not the serialport version to work with Modbus at runtime. For that check the modbus-serial or jsmodbus package.json, please! The modbus-serial supports and works for TCP connections in that package, too. The jsmodbus package is just to provide a simple Modbus Server node. All Modbus commands running on modbus-serial.

### TCP or Serial testing

If you get in trouble with TCP connections, then check and test with just modbus-serial first, please!

If you get in trouble with Serial connections, then check with just serialport first, please!

## Update/Upgrade/Downgrade

To update the dependencies or the whole package, you have just to install again.

    npm show node-red-contrib-modbus@* version

To get a special version please set the version with @M.M.F:

    npm install node-red-contrib-modbus@3.6.1

or global by

    npm install -g node-red-contrib-modbus@3.6.1

## How to use

- see Wiki pages
- use the Flow example to see how it works ...
- see YouTube Playlist

## Errors

Since v5.22+ the package will catch network and other errors of the client and server node. That means, you have to handle the error status of the node and Node-RED should not crash in the handled cases.

## Debug

Debug will be activated by starting Node-RED with debug mode:

    DEBUG=contribModbus*,modbus-serial node-red -v

    or

    DEBUG=contribModbus:{option},contribModbus:{option},...

see Wiki pages to get more options in detail

## Contributing

Let's work together! Contributors are welcome. Please, fork the repo and send your pull requests from your repo to our develop branch or open issues while you're testing!

## For Developers

See the scripts of the package and the additional Shell scripts to clean, update, or upgrade this NPM package.

- dev-link (local testing with Node-RED)
- testing (unit, integration)
- coverage
- docs generation
- standard-version alpha, beta, release
- git-flow

## For Testers

Report issues, share your experiences, record tutorials, write Wiki articles and Blogs to share more about this package, please!

## Authors

since April 2016 by Klaus Landsdorf and Community Driven

### History

- contribution since 2016 by Contributors
- license changed in 2016 by Jason D. Harper
- started in early 2015 by Mika Karaila

## Contributors

### Code Contributors

This project exists thanks to all the people who contribute. [Contribute].

### Financial Contributors

Become a financial contributor and help us sustain our community. [Contribute]

#### Individuals

#### Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]

#### Search results