Skip to content

Conversation

jasondaming
Copy link
Member

Summary

Documents the important limitation that roboRIO can only control one AddressableLED object at a time through its PWM ports, along with practical workarounds and voltage considerations.

Changes

  • Added important note at the top of the article explaining the single AddressableLED limitation
  • Documents workarounds:
    • Daisy-chaining multiple strips as a single long strip with buffer views
    • Using PWM Y-cables for identical patterns on multiple strips
  • Added voltage consideration note (6V roboRIO output vs 5V LED design)
  • Added seealso link to Adafruit NeoPixel guide for powering/best practices

Fixes #2322

Adds important note that roboRIO can only control one AddressableLED object at a time, with solutions for controlling multiple strips (daisy-chaining, Y-cables) and voltage considerations for WS2812B LEDs.

Fixes wpilibsuite#2322

- **Daisy-chain strips in series**: Connect multiple LED strips end-to-end as a single long strip, then use :ref:`buffer views <docs/software/hardware-apis/misc/addressable-leds:Controlling Sections of an LED Strip>` to control different sections independently
- **Use PWM Y-cables**: If you need identical patterns on multiple strips, use PWM Y-cables to send the same signal to multiple strips simultaneously
- **Voltage considerations**: WS2812B LEDs are designed for 5V, but roboRIO PWM/Servo ports output 6V. While the LEDs will function, this may reduce their lifespan. Consider using a voltage regulator or level shifter if longevity is a concern.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't this a general concern, not related to running multiple strips?

@PeterJohnson
Copy link
Member

Note that this is only a RoboRIO limitation. SystemCore does not have this limitation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Addressable LED Cleanup

3 participants