Getting ready to have the main PCB built in China, I discovered some things that made me rethink… And make some pretty radical changes to the PCB… Enter v1.01!
Change 1: PWM for LEDs in high-res
The most major change “came to light” when I played with a prototype to control my new LED panel. Right now it uses PWM directly from the Arduino, so that is 256 steps (8 bit resolution).
But especially at lower light intensities I can see the LEDs take their steps. As I also have 16 channels controlled by a PCA9685 chip which is 12 bit resolution (so 4096 steps), I decided to use the PCA9685 outputs to run lighting. This in turn meant I needed to rethink which outputs work on 12V and which ones work on 24V. In the end I solved the puzzle and came up with a clean design:
Another addition: Sense 12V and 24V
As I was reworking the 12V and 24V layout anyway, I thought it might be a good idea to be able to sense 12V and 24V back into the logic. As logic and power circuits are completely separated by opto couplers, I added two single-channel opto couplers (TLP291) to sense both voltage lines. The Arduino will program pullups on its inputs, and the opto couplers will draw that to GND when power is applied, effectively allowing the Arduino to measure back whether 12V and 24V is actually present:
Getting ready to have this PCB actually created, stay tuned! Things will get much more exiting once I get the new hardware to play with 🙂
Pingback: Artemis hardware ordered! | P A L U W E B . N L