OK, I was wrong - I didn’t get to bed yet after all.
I had to try the different port numbers in the larger piece of code where I ran into this problem. Yay, it works with the pins from different ports. Had to back out all the debugging crud that got added before I realized that my code wasn’t causing the problem.
Dan, I tried 5 and 7 per your request - same problem as using 6 and 7.
And I tried 10 and 7 (swapping one wire around) - works OK like 6 and 10.
So the same vs different port hypothesis seems like a good one.
Now I really am going to bed. I’m happier with the PWM rate of the 2801s vs 1804’s.
One side note - it did turn out (early on in this thread) that I was using 5V power for 12V pixels. At least with just a few on at a time, it was working fine (other than this problem). Switching to the proper voltage didn’t change anything relevant to this thread so I didn’t mention it so as not to confuse things with a red herring.
But it tells me that these pixels can operate pretty well with long strings - running at 12V, even if the end of the string was down to 5v (a 7v resistive drop), it would be OK.
yay - my LDP8806 strip also finally started working when I split the pin between ports. So this may not be just a 2801 issue.
Weird - my lpd8806’s here work when I do runs on the same port - in fact that’s used to squeeze a bit of extra performance out of the bitbang’d spi output.
I may have to just disable that optimization for the time being, since now isn’t the best time for me to go digging into what’s making some environments unhappy with it.