Open
Description
This would make it possible to run more than 2 channels using the built-in GPIOs. It requires two things:
- An implementation of PWM-backed DMA in SwiftyGPIO (this can be done in my fork)
- A driver that uses this implementation in the PWM module of RPiLight (the easy part)
As a proof of concept, let's aim for this using GPIO 22, 23, 24 & 25. This gives us a respectable 4 channels to start with.
Hurdles
The main issue here is that the dimming resolution is limited. With it being about 1 microsecond, we get about 960Hz with 10 bits of dimming, roughly. Usable, but with he Adafruit add on board doing better, mucking with DMA is somewhat low priority.