i have a teensy 3.5 and octows2811 adapter driving a 30x24 matrix.

i have a teensy 3.5 and octows2811 adapter driving a 30x24 matrix. thats 3 rows of 30 leds, 90 total, per out of the octows2811 board. im running into issues with the fact that the groups are ran in a serpentine set up and the code is producing noticeable patterns from the alternating rows running in different directions. the code im running comes from

i cant figure out how to go about reversing every other row so that they all run in the same direction, any ideas would be greatly appreciated. not sure if the few changes i made matter or not as they were only set up changes but i can post it if needed, thanks

@Walter_Szarek can you post your code on gist ? What you want is usually achieve by alterning the pixenumber calculation
It would look something like this
For every odd row
Pixelnumber=i
For every even row
Pixelnumber=line_witdh-i
And the rest would if if(row%2)

i tried working what you said into the code, but its not originally for a 2d matrix set up and no matter where i try adding another for loop for the other axis, it never worked.

@Walter_Szarek I can see that in your code
Let me think a bit about it.
Each pin represent 3 rows right ?

Yes, each pin is 3 rows, starting at top left, the size is 30x24

@Walter_Szarek
begin add
#define LED_WITH 30

Instead of line 83
if( (int)(i/LED_WIDTH)%2 ==0)
{

pixelnumber = (numleds-1) - pixelnumber;

}
else
{
pixelnumber=numleds-(2*(int)(i/LED_WIDTH)+1)*LED_WIDTH+pixelnumber;
}
let me know how it goes i am not sure yet about the ‘return’ algorithm

would that be line 83 after adding the #define LED_WIDTH 30? or before?

@Walter_Szarek the define goes at the beginning like between 8 and 9

i tried both, i guess it was after adding the #define, replace line 83 and move line 84 to 91, just so the solution is out there for anyone else looking, thanks, i never would have gotten that one on my own.

@Walter_Szarek is it working like you want

yes it is, been trying to get patterns playing from a sd card now. Trying to combine your suggestion with an example for reading pixel info from a card, it works, kind of…

@Walter_Szarek great let me know if I can be of further help

any ideas? i’m not really sure what the plan was here but i really have no idea how to go about reversing the lines like the other code. everything displays correctly when streaming it from glediator but the settings don’t seem to apply to the recorded output file.
heres what i have right now,

or would it be easier to write something that takes the file and reverses every so many bytes. it would be every 90 bytes correct? (matrix is 30 leds wide, 3 bytes for rgb data)

@Walter_Szarek yes every 90bytes