Multi-IO HAT with Node-RED Tutorial for Raspberry Pi

Use FREE-SHIPPING discount code for all US orders over $15

Multi-IO 8-Layer Stackable HAT with Node-RED Tutorial for Raspberry Pi

Regular price $95.00


  • Multi-IO 8-Layer Stackable HAT with Node-RED Tutorial for Raspberry Pi
  • Two analog inputs configurable as 0-10V or 4-20mA
  • Two analog outputs configurable as 0-10V or 4-20mA
  • Two 4A/24V relays with normal-open contacts and status LEDs
  • Two 3-wire RTD ports with 24 bit delta-sigma A/D converters
  • One RS485/MODBUS serial port
  • One RS232 serial port
  • H-Bridge PWM Motor Driver
  • Four optically isolated contact closure inputs
  • On-board push-button
  • On-board hardware watchdog
  • Real Time Clock with battery backup
  • Six general purpose LEDs
  • Pluggable Connectors
  • 24V Power Supply
  • On-board 5V/2.5A step-down power supply for Raspberry Pi
  • Two servo control ports
  • Command Line Driver
  • Python Library
  • Node-Red nodes
The Multi-IO card has a rich set of inputs and outputs for industrial applications. Node-RED native nodes are provided. A full tutorial describes how to implement complex applications using Node-RED. From "Hello World" to PID loops, it is the ideal teaching platform for student, teacher or hobbyist. It brings to Raspberry Pi all the common interfaces needed to connect to the automation world.


Two analog inputs and two analog outputs can be individually configured to read or generate 0-10V or 4-20mA signals.

The MULTI-IO card uses an industrial-standard 24V1A power supply. A step-down 24V supply provides up to 2.5A for the Raspberry Pi and powers the other circuits of the board.

The card contains a standard RS485 transceiver which can be accessed by the local processor or by Raspberry Pi. The desired configuration is set from two bypass jumpers on the configuration connector J2. If jumpers are installed, Raspberry Pi can communicate with any device with an RS485 interface. In this configuration the card is a passive bridge which implements only the hardware levels required by the RS485 protocol. To use this configuration, you need to tell the local processor to release control of the RS485 bus:
~$ rtd [0]  rs485wr 0 0 0 0 0
If jumpers are removed, the card operates as MODBUS slave and implements the MODBUS RTU protocol. Any MODBUS master can access all the card's inputs, and set all the outputs using standard MODBUS commands. A detailed list of commands implemented and parameters addresses can be found on GitHub:
In both configurations the local processor needs to be programmed to release (jumpers installed) or control (jumpers removed) the RS485 signals. See the command line online help for further information.

A standard RS232 transceiver connected to one of the Raspberry Pi's serial ports is provided. When multiple MULTI-IO cards are stacked on the same Raspberry Pi, only one RS232 port can be enabled for the whole stack. A jumper is provided for this purpose.

Pluggable connectors ease connecting the card to external devices.  All the connector plugs are included in your kit.

Nine LEDs on the bottom edge of the card show you the status of the inputs and outputs. The leftmost LED shows when the power is connected to the board.
The two right-most LEDs show when the relay coils are activated.
The six middle LEDs are general purpose and can be programmed in software to show the status of any input or output. They can also be programmed to light at a certain input or output level. For example, you can turn on a LED when a temperature reaches a threshold. You can also blink a led slower when a temperature is relatively low, and faster as it approaches a preset limit.

Zero to 10V Input can be used to sense voltage levels from devices such as thermistors, humidity sensors, or photoresistors. Zero to 10V output can be used for actuating industry standard devices such as lighting controller.

Widely used industry standard 4-20mA current loops can be used to control remote devices over long distances with high noise immunity.

A pushbutton is provided to be able to add manual input to any system. The button can also be used by Node-RED or other Raspberry Pi programming in an arbitrary manner. The first Tutorial lesson gives some examples from saying "Hello World" to sending SMS or email messages.

The Motor port can drive a 5V/100mA DC Motor. You can learn how to control the speed and the direction of the motor from the command line, Python or Node-Red graphical user interface.

Since we ran out of processor resources, the servo ports are multiplexed with the analog output ports. The servo ports connectors consist of a 2x3 jumper where you can plug directly any of the readily available servos at Amazon or elsewhere.

Multi-IO HAT for Raspberry Pi




You can write your own application using the Command Line or Python Library provided. No programming is required if you use the Node-Red nodes we supply. You can drag-and-drop the functional blocks to design your application. 

Node-RED is a programming tool for wiring together hardware devices, APIs and online services in new and interesting ways. It provides a browser-based editor that makes it easy to design flows using nodes from a large library covering a wide range of automation tasks.
The Learning Kit native Node-RED nodes included in the repository make it easy to interface with the hardware.

The Tutorial will help you use the Learning Kit with Node-RED without writing a single line of code. It will show you how to use Node-RED to control each of the interfaces of the Learning Kit. It will start by building simple flows using the pushbuttons and the LEDs and advance to the point where you can control devices over the internet. 
You can start learning Node-RED today without waiting for the Learning Kit. You will start by sending "Hello World" greetings to your screen or your speakers, and advance to sending emails and SMS messages to your smart phone.


When you purchase the I/O Learning Kit you will receive the following items:
1. Multi-IO Card
Multi-IO HAT for Raspberry Pi

2. Mounting hardware
  • Four M2.5x18mm male-female brass standoffs
  • Four M2.5x5mm brass screws
  • Four M2.5 brass nuts
3. Two jumpers
4. Mating connector plugs
5. Self Test Cable


  1. Plug your Learning KIT card on top of your Raspberry Pi and power up the system.
  2. Enable I2C communication on Raspberry Pi using raspi-config.
  3. Install the card software from
  • ~$ git clone
  • ~$ cd /home/pi/multi-io-rpi
  • ~/lkit-rpi$ sudo make install
  • ~/lkit-rpi$ multi-io -h
    The program will respond with a list of available commands.