Would there be any possibility of a Flotilla Rainbow with APA102 LEDs rather than 5050?
There would be no point, since the board requires a microcontroller or i2c device in order to communicate with Flotilla. The cost of 5 APA102s and a microcontroller to translate from i2c->SPI would be pretty prohibitive for the form factor. Why do you ask?
Yep, all understood. Question based on my misunderstanding of the flotilla structure, I think; so the dock handles all the timing requirements of the Rainbow? (I was thinking that APA102 requirements would be simpler to handle).
I’m wanting to drive Flotilla from another programming language, so I guess the info I’ll need can be gleaned from https://legacy.gitbook.com/book/gadgetoid/flotilla-protocol/details and the Python API source…
The Flotilla rainbow is actually just an, if I remember correctly, sn3218 driver IC.
All of the communication between modules and host is done over i2c, which is why things like the slider and dial have a (albeit hidden) micro-controller on them.
In most cases the implementation of our custom modules - the ones that use a PIC micro-controller - is not well documented, but it’s easy enough to figure out from prodding the registers and I can delve into the source again if you need a hand.
For Matrix an Number it’s an IS31FL3730 doing the heavy lifting- the same chip as Scroll pHAT.
For motor, it’s a DRV8830 (if I remember correctly) motor driver IC. Motion is an LMS303D. Touch is a CAP1166. Light is a TSL2581. Weather is a BMP280. Colour is a TCS34725FN.
In all cases they require +5v and GND over i2c and will regulate that to 3.3v onboard if needed. The i2c bus is run at 3v3 over the not-actually-USB D+ and D- lines (although in many cases is fine at 5v).
But for the most part, unless you plan to connect the modules directly to your Pi or reprogram the Dock itself, the Dock will do all the heavy lifting for you and you just have to worry about the protocol details you linked.
Thanks for the info, super helpful. I’ll start off with Rainbow and Touch, as a gentle introduction…