Introducing the New Raspberry Pi I2C Switch

We have a new entry in our line-up of Raspberry Pi development boards, the I2C Switch.
I2C is a widely used communication standard for electronics devices. It allows you to connect multiple devices on a single I2C bus and communicate with them using a 7 or 8 bit address. While the I2C bus is very versatile and is used on many of our development boards like the ADC Pi, or IO Pi Plus, it does have one problem. If two or more devices share the same I2C address they can not be used on the same bus. This is where the I2C Switch from AB Electronics UK comes into play.
What is the I2C Switch?
Our new I2C Switch is a 4-channel I2C switch is designed for the Raspberry Pi and other similar small board computers. It splits the Raspberry Pi I2C bus into four separate buses allowing you to connect devices that share the same I2C address onto the Raspberry Pi. Each bus supports multiple I2C devices and if necessary the I2C switch can be daisy-chained allowing you to increase the number of I2C buses available.
The I2C Switch is based on a PCA9546A controller from NXP. The PCA9546A provides quad bi-directional communication between the I2C port on the Raspberry Pi and any attached I2C devices. Each channel can be individually enabled or disabled.
Power is provided through the host Raspberry Pi using the GPIO port and extended pins on the GPIO connector allowing you to stack the I2C Switch with other Raspberry Pi Hats and development boards.
The four I2C channels contain 6 pin headers that match the first six pins on the Raspberry Pi GPIO header with 3.3V, 5V and ground provided alongside the I2C SDA and SCL pins making it easy to connect to external Raspberry Pi Hats and development boards using six-pin IDC ribbon cables.
Each channel can operate at 2.7V, 3.3V or 5V, allowing you to mix different voltage I2C devices on your Raspberry Pi.
Key Features
- Four Independent I2C Buses: The I2C Switch features four separate I2C buses, each of which can be individually selected and controlled. This allows for easy management of multiple devices.
- Ease of Use: The I2C Switch is designed to be user-friendly, with straightforward commands to select the desired I2C bus.
- Code Libraries: We have programming libraries available in a range of languages including Python, C, C++ and Node JS.
- Compatibility: It is compatible with a wide array of microcontrollers and single-board computers, including the popular Raspberry Pi, Asus Tinker Board and Odroid computers.
Practical Applications
Our popular IO Pi Plus is a GPIO expander that adds 32 digital I/O channels to the Raspberry Pi. You can normally stack up to four IO Pi Plus boards on the Raspberry Pi giving you a maximum of 128 I/O channels. With the I2C Switch, you can stack four IO Pi Plus boards on each of the four channels giving you 16 boards in total and 512 digital I/O pins.
Combine the I2C Switch with 16 of our ADC Pi analogue to digital converters to give you 128 analogue inputs on your Raspberry Pi.
The I2C Switch is available to buy now in the AB Electronics UK Online Shop.