While working on the next release of PixelMaestro, I came across a significant problem: I had a system in place for storing configurations as byte arrays, and I had a system in place for reading in and executing these arrays. This was perfectly fine on a computer, since I could save these arrays to a file. But on an Arduino (where files aren’t a thing), where and how was I supposed to store a series of bytes that would persist across reboots? Enter EEPROM.
On today’s episode of “Adventures in C++”: sending commands between two Arduinos running the same software. Not just data, but also instructions on how to process and execute that data. Even more, these commands have to be small enough for each Arduino to package, send, receive, unpack, and execute in less than 1/10th of a second.
This is the first public release of PixelMaestro, a C++ library for generating 2D animations!