8x32 neopixels ws2812 scrolling issues orientation

hi all
i need help on the 8x32 matrix do i need a driver or can i just connect it to a pin on the arduino uno ???
i have connected it to pin 6 and uploaded code but it scrolling the wrong way
it is scrolling vertical not horizontal
as vid - YouTube

thanks

Neo pixel scrolling.txt (2.02 KB)

Swap x,y?

Your constructor line is:

// Matrix setup params
Adafruit_NeoMatrix matrix = Adafruit_NeoMatrix(24, 8, DATA_PIN,
NEO_MATRIX_TOP    + NEO_MATRIX_RIGHT +
NEO_MATRIX_COLUMNS + NEO_MATRIX_PROGRESSIVE + NEO_MATRIX_ZIGZAG,
NEO_GRB            + NEO_KHZ800);

But NEO_MATRIX_PROGRESSIVE and NEO_MATRIX_ZIGZAG seem contradictory.

See below, in red:

MATRIX DECLARATION:

  • Parameter 1 = width of EACH NEOPIXEL MATRIX (not total display)

  • Parameter 2 = height of each matrix

  • Parameter 3 = number of matrices arranged horizontally

  • Parameter 4 = number of matrices arranged vertically

  • Parameter 5 = pin number (most are valid)

  • Parameter 6 = matrix layout flags, add together as needed:

  • NEO_MATRIX_TOP, NEO_MATRIX_BOTTOM, NEO_MATRIX_LEFT, NEO_MATRIX_RIGHT: Position of the FIRST LED in the FIRST MATRIX; pick two, e.g. NEO_MATRIX_TOP + NEO_MATRIX_LEFT for the top-left corner.

  • NEO_MATRIX_ROWS, NEO_MATRIX_COLUMNS: LEDs WITHIN EACH MATRIX are arranged in horizontal rows or in vertical columns, respectively; pick one or the other.

  • NEO_MATRIX_PROGRESSIVE, NEO_MATRIX_ZIGZAG: all rows/columns WITHIN EACH MATRIX proceed in the same order, or alternate lines reverse direction; pick one.

  • NEO_TILE_TOP, NEO_TILE_BOTTOM, NEO_TILE_LEFT, NEO_TILE_RIGHT: Position of the FIRST MATRIX (tile) in the OVERALL DISPLAY; pick two, e.g. NEO_TILE_TOP + NEO_TILE_LEFT for the top-left corner.

  • NEO_TILE_ROWS, NEO_TILE_COLUMNS: the matrices in the OVERALL DISPLAY are arranged in horizontal rows or in vertical columns, respectively; pick one or the other.

  • NEO_TILE_PROGRESSIVE, NEO_TILE_ZIGZAG: the ROWS/COLUMS OF MATRICES (tiles) in the OVERALL DISPLAY proceed in the same order for every line, or alternate lines reverse direction; pick one. When using zig-zag order, the orientation of the matrices in alternate rows will be rotated 180 degrees (this is normal -- simplifies wiring).

  • Parameter 7 = pixel type flags, add together as needed:

  • NEO_RGB Pixels are wired for RGB bitstream (v1 pixels)

  • NEO_GRB Pixels are wired for GRB bitstream (v2 pixels)

  • NEO_KHZ400 400 KHz bitstream (e.g. FLORA v1 pixels)

  • NEO_KHZ800 800 KHz bitstream (e.g. High Density LED strip)

Your problem may also come from the choice of NEO_MATRIX_COLUMNS (see text in blue up there): maybe you should try NEO_MATRIX_ROWS

solved thanks every one for your help

Adafruit_NeoMatrix matrix = Adafruit_NeoMatrix(32, 8, PIN,
NEO_MATRIX_TOP + NEO_MATRIX_LEFT +
NEO_MATRIX_ROWS + NEO_MATRIX_ZIGZAG,
NEO_GRB + NEO_KHZ800);