In the ideal smart home, the explosion of low-cost WiFi and Bluetooth chips has allowed hundreds of small wireless devices to control switches, lights, and everything else you need for a “smart home” at a relatively low cost. But what if you don’t want hundreds of Internet-connected devices in your home polluting the wireless spectrum and allowing potential security holes in your network? If you are like [Lucas Teske]you can get something wired and use the cheap and (currently) available Raspberry Pi Picos to build a PicoHome.
A unique twist on the PicoHome is that it uses the CAN bus for communication. One [Lucas’] The goal was to make the boards easily interchangeable when the hardware failed. This meant that board-to-board communication and protocols like I2C were subject to noise (every time a relay was triggered, the bus would be blocked for a short time). The CAN bus is designed to operate in an electrically noisy environment.
There are two parts to the system: a pico-relay and a pico-input. The first connects to the 16 relay board and can control 16 different 24v relays. The second has 16 optocouplers to read 12v-24v switches and various buttons throughout the house. They can be placed in a giant metal box in a central wiring location and not have to worry about it.
The firmware and board files are released under the Apache 2.0 license, but the CAN2040 library on which this project is based is under the GPL. We covered the CAN2040 library when it was first released, and it’s nice to see it being used for something completely unexpected.