I wanted a set of nanoleaf panels, but they were way too expensive for me. I decided to create my own set of open source modular light panels. The communication is done over CAN using a set of MCP2551 and MCP2515s which communicate with an ATMega328 over I2C. The ATMEGA328 then controls a set of transistors in series with an RGBW LED strip.
I just finished creating a set of custom PCBs, next is assembling and debugging the PCBs, and finally doing the mechanical work.
I've seen some knockoffs of these panels, but haven't really liked the way that they seem to give up a lot of the modularity of the original project. I wanted to see if I could find a way to reduce the cost of the nanoleaf panels by 50% and keep the slick and easy to use features that I liked.
Using a tear down of the nanoleaf aurora from the EEVBlog forums was helpful, and helped to inform the shape of the PCBs. The commercially available panels use a proprietary communication protocol. I don't want to reinvent the wheel, so I looked for a way to communicate over relatively long distances with relative ease. I landed on using a CAN network.
To make this network work, I needed to implement a pair MCP2551 and MCP2515 chips on the board. These communicate with the ATMega over SPI and encode/decode the data on the CAN bus.