There has been some discussion on whether it is best to run the lights from 3.3Vdc or 5.0Vdc logic. If you look at the data sheets from most of the pixel types the inputs are CMOS. This means that the low input voltage should be less than 30% of power and the high should be greater than 70% of power. At 3.3Vdc power this ends up being 1.0/2.3 Vdc, which will work with most TTL devices. However at 5.0Vdc these voltages go to 1.5/3.5 Vdc. The normally TTL levels are 0.8/2.0 Vdc. Since the high input is greater than the supply voltage for a 3.3Vdc device this is not a good idea.
The pixels that have CMOS input levels are listed below:
- WS2801, WS2811, WS2812
- TM1803, TM1804, TM1809, TM1829
The data sheets for TLS3001 and TLS3005 do not specify their input voltage levels. However, the TLS3001 indicates that the maximum input voltage is 3.3Vdc. Also, the TLS3005 says that the output voltage is 3.3Vdc. So it appears that these devices should be driven at 3.3V.
When you drive the logic it is best to use the lowest bandwidth part, which would be the HCT logic type. The further you drive the lines the more current you want, so the next best would be the ACT family.
Some of the controllers drive RS-485 using these logic parts. Since you need 40mA into a 120 ohm load, this is not recommended. Since there are few to none parts that can do this properly, it is best to use the real RS-485 drivers.