Description
On QTPy M0 boards running Arduino code, the onboard neopixel can show colors that are "red shifted" (actually, lacking in blue) from what they ought to be.
This appears to be because the neopixel on those boards is powered by a SAMD output pin, and by default that pin leaves the neopixel under-powered.
Workaround: add
PORT->Group[0].PINCFG[15].bit.DRVSTR = 1; // turn up neopixel power
to setup() in your sketch. (for QTPy)
The Feather M4 CAN board seems to have the same "powered by a pin" scheme, and so it probably has the same bug.
I have some concern that at maximum brightness levels, the power consumption of the neopixel may exceed even the "high current" drive of a SAMD output pin.
https://forums.adafruit.com/viewtopic.php?f=47&t=186027
(Hmm. This may also be a problem no the RP2040 boards with IO-powered neopixels; I think they have a similar "drive strength" setting.)