Skip to content

Commit 811181e

Browse files
committed
mention DMA memory
1 parent 8900a24 commit 811181e

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

SOFTWARE.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,3 +73,15 @@ New with SmartMatrix Library 3.0, you can chain several panels together to creat
7373
* Panel Order - By default, the first panel of each row starts on the same side, so you need a long ribbon cable to go from the last panel of the previous row to the first panel of the next row. `SMARTMATRIX_OPTIONS_C_SHAPE_STACKING` inverts the panel on each row to minimize the length of the cable going from the last panel of each row the first panel of the other row.
7474
* Panel Direction - By default the first panel is on the top row. To stack panels the other way, use `SMARTMATRIX_OPTIONS_BOTTOM_TO_TOP_STACKING`.
7575
* To set multiple options, use the bitwise-OR operator e.g. C-shape Bottom-to-top stacking: `const uint8_t kMatrixOptions = (SMARTMATRIX_OPTIONS_C_SHAPE_STACKING | SMARTMATRIX_OPTIONS_BOTTOM_TO_TOP_STACKING);`
76+
77+
## DMA-capable memory
78+
The number of pixels you can drive is limited primarily by the amount of DMA-capable memory on your ESP32. This affects the size of your display(s) you can drive effectively, their color palette, how long animations can be, etc. There does not appear to be an exact science to this, or I would offer an easy formula for you.
79+
80+
Note: Wifi also uses some amount of DMA-capable memory.
81+
82+
At any time in your program, you can check how much DMA-capable memory is free using this code snippet:
83+
84+
````
85+
Serial.print("8-bit/DMA Memory Available: ");
86+
Serial.println(heap_caps_get_free_size(MALLOC_CAP_DMA));
87+
````

0 commit comments

Comments
 (0)