Commit graph

62 commits

Author SHA1 Message Date
mrfaptastic
62deac6c48 New Year Updates
Move ISR I2S device check to a compile time option.
2022-01-03 18:43:52 +00:00
mrfaptastic
3bd87dcfd6 Update ESP32-HUB75-MatrixPanel-I2S-DMA.h 2021-12-21 22:21:06 +00:00
mrfaptastic
4f5fcf0399 Christmas DMA core tweaks
Bring back support to change the I2S_NUM_X as a define.

Attempt to reduce buffer swap flicker with some additional checks.
2021-12-21 22:19:59 +00:00
mrfaptastic
534a264075 Merge branch 'master' of https://github.com/mrfaptastic/ESP32-HUB75-MatrixPanel-I2S-DMA 2021-11-22 07:43:11 +00:00
mrfaptastic
b810dca9d1 1/8 Scan Panel Example
#154 #204

Also supports chaining.
2021-11-22 07:43:07 +00:00
mrfaptastic
14c3052b60
Update ESP32-HUB75-MatrixPanel-I2S-DMA.h 2021-11-12 15:52:07 +00:00
Mike Causer
7ed06c1217 Fix some typos 2021-10-17 01:00:43 +11:00
mrfaptastic
dd05550cc5 Remove ESP32C3 experimental stuff.
ESP32-C3 doesn't actually support 'lcd mode' aka. parallel DMA, so it'll never be of use with this library and a HUB75 panel.
2021-09-29 23:20:16 +01:00
mrfaptastic
f2b77d95b1 Update ESP32-HUB75-MatrixPanel-I2S-DMA.h 2021-09-19 22:46:25 +01:00
mrfaptastic
6f8d9c0fa2 Initial Commit
Support for S and C (tbc)
2021-09-13 06:57:45 +01:00
mrfaptastic
f5681b2983 Backport tx fifo byte ordering fix for ESP32-WROOM-32 2021-09-06 16:29:38 +01:00
mrfaptastic
849bc84129 Update ESP32-HUB75-MatrixPanel-I2S-DMA.h 2021-08-19 20:47:36 +01:00
mrfaptastic
a2d3efc0f3 Update ESP32-HUB75-MatrixPanel-I2S-DMA.h 2021-08-19 20:44:07 +01:00
mrfaptastic
055ff08fe5 Double buffer function reduction
Can't get rid of the wait while statement though...
2021-08-19 19:34:40 +01:00
mrfaptastic
d9e2f85f98 Revert "Merge branch 'master' of https://github.com/mrfaptastic/ESP32-HUB75-MatrixPanel-I2S-DMA"
This reverts commit b6cbfce5dd, reversing
changes made to c5227fd15e.
2021-08-19 19:22:29 +01:00
Emil Muratov
03d6594a1c Double buff w/o delay
- removed delay() from buffer swap
 - add new method to check if back buffer is safe to write to
 - obsolete showDMABuffer()
2021-08-19 19:43:39 +03:00
mrfaptastic
e12eaf15b5 Revert "Attempted clearScreen() syncronisation fix"
This reverts commit f6584dd321.
2021-08-18 16:33:59 +01:00
mrfaptastic
3b13645e7f Revert attempt to remove legacy begin 2021-08-18 15:28:56 +01:00
mrfaptastic
54ca0c4b2b Revert default latblank change
Causes noise on ICS panels if not '1'. Needs further investigation.
2021-08-18 15:20:43 +01:00
mrfaptastic
f6584dd321 Attempted clearScreen() syncronisation fix
No idea if this will work.
2021-08-18 14:32:51 +01:00
mrfaptastic
ab641b9642 Update ESP32-HUB75-MatrixPanel-I2S-DMA.h 2021-08-18 14:19:08 +01:00
mrfaptastic
6975f5f8a2 Update ESP32-HUB75-MatrixPanel-I2S-DMA.h 2021-08-18 13:01:05 +01:00
mrfaptastic
c050d541f3
Update ESP32-HUB75-MatrixPanel-I2S-DMA.h
Reset initialized to false on delete.
2021-08-17 10:51:24 +01:00
mrfaptastic
00917150ff
Merge pull request #168 from mrfaptastic/SM5266P
Implement

    Sm5266 panels
    Increase default latch blanking
    Get rid of the legacy begin() usage of the library.
    Fix a minor bug with the DMA v and h line draw with out-of-bounds x/y/length params.
2021-08-17 10:45:20 +01:00
mrfaptastic
bbb23c789d Default latch blanking to longer 2021-08-17 10:17:12 +01:00
Emil Muratov
32a02a5f0f Add proper destructor to the class
Closes #165
2021-08-17 00:39:19 +03:00
mrfaptastic
1fa0b42480 Fix #163
Array out of bounds DMA change.
2021-08-16 14:18:36 +01:00
mrfaptastic
fd7629e52c Update 2021-08-16 13:29:44 +01:00
mrfaptastic
1d32228a5b Change DMA to I2S0
For ESP32-S2 compatability.
2021-08-16 12:18:14 +01:00
mrfaptastic
11eaf34d91 Update to include SM5266P
Attempt to resolve #164
2021-08-16 11:01:26 +01:00
mrfaptastic
e8f1c94ac6 Update ESP32-HUB75-MatrixPanel-I2S-DMA.h 2021-06-24 20:05:34 +01:00
mrfaptastic
8d8b1fb215 Various fixes
* Default to inverted clock phase because it's the second time this has happened, and it doesn't impact older panels.

* Fix an issue with the Virtual Display Class
2021-06-10 20:49:28 +01:00
mrfaptastic
8b36964e68 Define mask offset at c++ compile time 2021-06-10 18:41:02 +01:00
Emil Muratov
8ebc5e933a clearScreen() now wipes only color data for current buffer
Signed-off-by: Emil Muratov <gpm@hotplug.ru>
2021-05-22 01:57:54 +03:00
mrfaptastic
4af72ab98d Update VirtualMatrixPanel class 2021-03-31 18:29:03 +01:00
mrfaptastic
5062df590e Enabled FastLED CRGB Support 2021-03-28 17:34:20 +01:00
mrfaptastic
51345ec0ac Implement FastLED CRGB support
Remove legacy RGB24 struct, and overide drawPixel to support CRGB 24bit struct value passed as a colour. FastLED library required to be installed when FASTLED_CRGB_SUPPORT enabled.
2021-03-28 15:35:11 +01:00
Emil Muratov
3c8443eeb8 Fix compiler yells about reordering
Signed-off-by: Emil Muratov <gpm@hotplug.ru>
2021-02-28 22:11:27 +03:00
mrfaptastic
f279d49103 move min_refresh_rate to core config
Can only be setup on initisation of the library. Moving to a start-up configuration variable like the others.
2021-02-22 12:13:31 +00:00
mrfaptastic
a3068c8934
Merge pull request #88 from mrfaptastic/clkphase
Clock phase toggling option + DMA stop function
2021-02-22 09:23:56 +00:00
mrfaptastic
f7aaad842b Add stopDMAtransfer function 2021-02-20 22:29:22 +00:00
Emil Muratov
e04c30c8ae Build-time flag to disable CIE1931 color correction
Signed-off-by: Emil Muratov <gpm@hotplug.ru>
2021-02-20 18:26:20 +03:00
Emil Muratov
6cab840dfc Moved driver-specific code to a separate file
Signed-off-by: Emil Muratov <gpm@hotplug.ru>
2021-02-19 17:30:09 +03:00
Emil Muratov
15eaa3e9d3 Clock phase toggling option, required to support MBI5124 chips
Closes #75

Signed-off-by: Emil Muratov <gpm@hotplug.ru>
2021-02-19 17:29:41 +03:00
mrfaptastic
895bb80b43 Rewrite DMA driver setup code.
Evolutionary, not revolutionary. Vast improvement in double buffer swap speeds.
2021-02-17 01:00:59 +00:00
mrfaptastic
cf8cb970e9 Minor changes 2021-02-16 20:20:09 +00:00
mrfaptastic
9dc00e35f1 Revert "Minor changes"
This reverts commit 3214cd643d.
2021-02-16 20:15:29 +00:00
mrfaptastic
3214cd643d Minor changes
* Fix double buffer example
* Remove the I2S user clock config for simplicity - ESP32 turns out to be massively limited anyway to 20Mhz...
2021-02-15 15:36:20 +00:00
mrfaptastic
58abc5f2fb Update ESP32-HUB75-MatrixPanel-I2S-DMA.h
Crash fix. Shouldn't actually be less than two.
2021-02-14 16:35:22 +00:00
mrfaptastic
889ed51fe1 Improve colour performance if compile-time PIXEL_COLOR_DEPTH_BITS is less than 8
Refer to the code.
2021-02-14 14:12:45 +00:00