user81920: I'm trying to run the "DemoReel 100" code from FastLED.
Out of the box, it can be verified.  But when I switch from #define LED_TYPE    WS2811 to #define LED_TYPE    WS2801, I get the error:

error: static assertion failed: Invalid pin specified
static_assert(validpin(), "Invalid pin specified");

the line this error originates from is:
FastLED.addLeds<LED_TYPE,DATA_PIN,COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);

I can't think of any reason that the LED_TYPE argument should change whether or not a data-pin is valid.  What's going on?

user81920: I figured it out.  There's two lines for FastLED.addLeds, and one needed to be commented out and the other enabled in order have a clock pin work.
//  FastLED.addLeds<LED_TYPE,DATA_PIN,COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
FastLED.addLeds<LED_TYPE,DATA_PIN,CLK_PIN,COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);


81920: <p>I'm trying to run the &quot;DemoReel 100&quot; code from FastLED.</p>
<p>Out of the box, it can be verified.  But when I switch from <code>#define LED_TYPE    WS2811</code> to <code>#define LED_TYPE    WS2801</code>, I get the error:</p>
<blockquote>
<p>error: static assertion failed: Invalid pin specified
static_assert(validpin(), &quot;Invalid pin specified&quot;);</p>
</blockquote>
<p>the line this error originates from is:</p>
<pre><code>FastLED.addLeds&lt;LED_TYPE,DATA_PIN,COLOR_ORDER&gt;(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
</code></pre>
<p>I can't think of any reason that the LED_TYPE argument should change whether or not a data-pin is valid.  What's going on?</p>
 81920: <p>I figured it out.  There's two lines for <code>FastLED.addLeds</code>, and one needed to be commented out and the other enabled in order have a clock pin work.</p>
<pre><code>//  FastLED.addLeds&lt;LED_TYPE,DATA_PIN,COLOR_ORDER&gt;(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
FastLED.addLeds&lt;LED_TYPE,DATA_PIN,CLK_PIN,COLOR_ORDER&gt;(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
</code></pre>
