Pi Switcher Plus
Overview
A while ago, we had a project that required switching high voltage based on an input signal. There are plenty of expansion board models for Raspberry Pi with relays that allow you to switch high voltage/current. They are very simple, but none of them have an ADC module. These boards require programming and use of Raspberry Pi GPIO pins. We needed those pins for something else, so using UART or I2C interfaces was preferable. So we designed and built our own expansion board for Raspberry Pi which we gladly share with the Open Source community. We hope that the FibStack PiSwitcher Plus board will help you in your next automation project. The design files are available on GitHub under CERN-OHL-P and MIT license. We may have some boards available here. The PiSwitcher Plus board has four relays allowing it to switch high voltage and currents. Controlling a steam iron or an oven is not the right task for the board, but it will handle most home appliances below 1200W. Each relay has an LED indicator showing when the relay’s coil is energized. The board has four 12-bit ADC channels that can convert electric signals up to 5 volts. The converted value allows more flexibility in the automation decision logic. The FibStack Dashboard UI tool allows testing things on the fly without writing any code. Alternatively, you can control the board using the CLI tool or programmatically using FibStack programming API.
The Getting Started Guide contains more information on how to install and set up the board, and you also can find code examples there. Explore Dashboard and FibStack CLI sections on how to use these tools.
All project design files, including schematics and source code, are available here.
Features
- Supports Raspberry Pi series boards with standard 40 pin GPIO extension header (A+/B+/2B/3B/3B+/4B).
- Four relay switches. Max switching depends on the relay model.
- Three contacts for each relay (COM, NC, and NO)
- Screw Terminal Blocks, pitch 3.5mm
- LED indicator next to each relay, LED is on when the relay coil is energized, meaning the NO (normal open) contact is connected to COM (common)
- Four 12-bit ADC channels, signal level 0 - 5V
- Raspberry Pi communicates with the board through the I2C interface. Use the rest of the GPIO pins for other applications
- Change the I2C address through the software interface to avoid address duplication. Use a wide range of I2C address values
- The software package includes a Dashboard, CLI tool, and programming libraries to control the board
- Supported programming languages: C and Python 3.7+
IMPORTANT: Currently, the Fibstack Software package supports only Raspberry Pi OS.
Because of the height of the relay components, an extra extension header is required to connect additional boards. When stacking multiple boards together, make sure that the power supply provides enough current to power all the boards.