




Plasma 2040 [Discontinued]
Swathe everything in rainbows with this all-in-one, USB-C powered controller for WS2812/Neopixel and APA102/Dotstar addressable LED strips.
Plasma 2040 is an RP2040-based driver board for addressable LED strips (also known as magical rainbows by the metre). It's designed to make rigging up bits ofĀ custom, programmable lightingĀ as straightforward as possible - perfect for whipping up some quick under-cupboard illumination, dramatically underlighting your sofa or providing some atmospheric mood-lighting for your workspace, PC or vivarium.
Plasma 2040 isĀ powered and programmable by USB-CĀ and, because USB-C is capable of drawing up to 3A of power, that's enough to power a healthy chunk of LEDs. There's threeĀ useful buttonsĀ that you could use for turning the lights on and off or to switch between colours or effects, plus a reset button and an eternally popularĀ onboard RGB LED.
We've also popped aĀ QW/ST connectorĀ on there, to make it super easy to plug inĀ QwiicĀ orĀ STEMMA QTĀ breakouts - how about hooking up anĀ RGB potentiometerĀ to adjust the speed or hue of your lights, anĀ air quality sensorĀ to make your desk lighting into a giant thermometer or tell you when you should crack a window or aĀ light sensorĀ to turn them on automatically when it gets dark?
Features
- Powered by RP2040 (Dual Arm Cortex M0+ running at up to 133Mhz with 264kB of SRAM)
- 2MB of QSPI flash supporting XiP
- Compatible with 5V WS2812/Neopixel/SK6812 and APA102/Dotstar/SK9822 LEDs
- Screw terminals for attaching your LED strip.
- USB-C connector for power and programming (3A max)
- Qw/ST (Qwiic/STEMMA QT) connector
- Low side current sensing (accessible via ADC3)
- Reset, BOOT and two user buttons (the BOOT button can also be used as a user button)
- RGB LED
- Fully assembled (no soldering required)
- Measurements: approx 50 x 28 x 12mm (L x W x H, including connectors)
- C++/MicroPython libraries
- Schematic
LED strip and connectors are sold separately, check out the extras tab for some options!
Getting Started
Plasma 2040 is firmware agnostic! You can program it with C/C++ or MicroPython in the same way as you would a Raspberry Pi Pico. You can find (lots) more information on how to do that (as well as download links for the firmware/SDK) on theĀ RP2040 landing page. You can find documentation for our MicroPython Plasma moduleĀ here.
You can also use CircuitPython on your Plasma 2040! CircuitPython is an easy to use, well-established ecosystem with lots of example code and drivers for interfacing with different kinds of hardware.Ā Click hereĀ to download the CircuitPython firmware for Plasma 2040 andĀ click hereĀ for a getting started guide.
ClickĀ hereĀ for a beginner friendly tutorial that covers how to hook up different kinds of LEDs to Plasma 2040 and how to use it to build a simple busy light. It includes both MicroPython and CircuitPython code!
Connecting Breakouts
If your breakout has a QW/ST connector on board, you can plug it straight in with aĀ JST-SH to JST-SH cable, or you can easily connect any of our I2C breakouts with aĀ JST-SH to JST-SH cableĀ coupled with aĀ Qw/ST to Breakout Garden adaptor.
You can find a list of which breakouts are currently compatible with our C++/MicroPython buildĀ here.
We've also broken out a set of I2C pins, analog pins and debug pins so you can solder things like breakouts or analog potentiometers directly to them (or solder on a strip of header and plug the whole shebang into a breadboard).
Notes
- Our C++/MicroPython software uses the RP2040's PIO state machines to drive each strip separately - this board only has one set of LED strip connectors, but if you're up for some inventive wiring it's possible to drive multiple strips simultaneously, even if they're of different types!
- If you're curious about how much current your LEDs are consuming, we've incorporated some current sensing circuitry onto this board, which you can measure by reading ADC3. You could use this in your code to do things like adjusting the brightness of your LEDs based on available power!
Original: $19.20
-70%$19.20
$5.76Product Information
Product Information
Shipping & Returns
Shipping & Returns
Description
Swathe everything in rainbows with this all-in-one, USB-C powered controller for WS2812/Neopixel and APA102/Dotstar addressable LED strips.
Plasma 2040 is an RP2040-based driver board for addressable LED strips (also known as magical rainbows by the metre). It's designed to make rigging up bits ofĀ custom, programmable lightingĀ as straightforward as possible - perfect for whipping up some quick under-cupboard illumination, dramatically underlighting your sofa or providing some atmospheric mood-lighting for your workspace, PC or vivarium.
Plasma 2040 isĀ powered and programmable by USB-CĀ and, because USB-C is capable of drawing up to 3A of power, that's enough to power a healthy chunk of LEDs. There's threeĀ useful buttonsĀ that you could use for turning the lights on and off or to switch between colours or effects, plus a reset button and an eternally popularĀ onboard RGB LED.
We've also popped aĀ QW/ST connectorĀ on there, to make it super easy to plug inĀ QwiicĀ orĀ STEMMA QTĀ breakouts - how about hooking up anĀ RGB potentiometerĀ to adjust the speed or hue of your lights, anĀ air quality sensorĀ to make your desk lighting into a giant thermometer or tell you when you should crack a window or aĀ light sensorĀ to turn them on automatically when it gets dark?
Features
- Powered by RP2040 (Dual Arm Cortex M0+ running at up to 133Mhz with 264kB of SRAM)
- 2MB of QSPI flash supporting XiP
- Compatible with 5V WS2812/Neopixel/SK6812 and APA102/Dotstar/SK9822 LEDs
- Screw terminals for attaching your LED strip.
- USB-C connector for power and programming (3A max)
- Qw/ST (Qwiic/STEMMA QT) connector
- Low side current sensing (accessible via ADC3)
- Reset, BOOT and two user buttons (the BOOT button can also be used as a user button)
- RGB LED
- Fully assembled (no soldering required)
- Measurements: approx 50 x 28 x 12mm (L x W x H, including connectors)
- C++/MicroPython libraries
- Schematic
LED strip and connectors are sold separately, check out the extras tab for some options!
Getting Started
Plasma 2040 is firmware agnostic! You can program it with C/C++ or MicroPython in the same way as you would a Raspberry Pi Pico. You can find (lots) more information on how to do that (as well as download links for the firmware/SDK) on theĀ RP2040 landing page. You can find documentation for our MicroPython Plasma moduleĀ here.
You can also use CircuitPython on your Plasma 2040! CircuitPython is an easy to use, well-established ecosystem with lots of example code and drivers for interfacing with different kinds of hardware.Ā Click hereĀ to download the CircuitPython firmware for Plasma 2040 andĀ click hereĀ for a getting started guide.
ClickĀ hereĀ for a beginner friendly tutorial that covers how to hook up different kinds of LEDs to Plasma 2040 and how to use it to build a simple busy light. It includes both MicroPython and CircuitPython code!
Connecting Breakouts
If your breakout has a QW/ST connector on board, you can plug it straight in with aĀ JST-SH to JST-SH cable, or you can easily connect any of our I2C breakouts with aĀ JST-SH to JST-SH cableĀ coupled with aĀ Qw/ST to Breakout Garden adaptor.
You can find a list of which breakouts are currently compatible with our C++/MicroPython buildĀ here.
We've also broken out a set of I2C pins, analog pins and debug pins so you can solder things like breakouts or analog potentiometers directly to them (or solder on a strip of header and plug the whole shebang into a breadboard).
Notes
- Our C++/MicroPython software uses the RP2040's PIO state machines to drive each strip separately - this board only has one set of LED strip connectors, but if you're up for some inventive wiring it's possible to drive multiple strips simultaneously, even if they're of different types!
- If you're curious about how much current your LEDs are consuming, we've incorporated some current sensing circuitry onto this board, which you can measure by reading ADC3. You could use this in your code to do things like adjusting the brightness of your LEDs based on available power!





















