Frank
2934739ebf
HUB75 cleanup, double buffer improvement
...
* code cleanup, removing some unneeded sanity checks
* use dirty bits in double buffer mode, too -> only not-black pixels are drawn into the back-buffer (20%-30% faster)
2024-08-09 17:46:14 +02:00
Frank
56e72ef22d
HUB75 live preview
2024-08-08 20:57:15 +02:00
Frank
bad923570b
double buffer off (MatrixPortal S3)
...
`mxconfig.double_buff = true` should not be necessary any more.
2024-08-08 19:04:10 +02:00
Frank
1b098b9863
fixie
2024-08-08 19:00:19 +02:00
Frank
b5d97cca93
HUB75 leds buffer with dirty bit acceleration
...
Instead of using the memory-hungry driver double buffer, this implements a LEDS buffer inside the BusHub75Matrix class.
--> up to 50% faster
--> uses one "dirty" bit per pixel, to only re-transmit pixels that changed after the last "show"
2024-08-08 18:56:12 +02:00
Frank
5b7345ef39
HUB75 refactoring
...
* move HUB75 implementation into bus_manager.cpp
* add "override" keyword
* include FastLED.h if not included previously
* move RGB macros into bus_manager.h
2024-08-08 18:48:49 +02:00
Frank
fb2402fb97
HUB75 optimization (double buffer only)
...
In double duffer mode, the screen is blanked at each show(). So we can drop setPixelColor(BLACK) calls until we receive a pixel with different color.
2024-08-07 17:02:46 +02:00
Frank
7f9da309c9
const const const
...
adding hints for the compiler for optimization.
In case your custom build complains about "const", just remove the keyword. based on e82f38e277 , but going further :-)
* "const" class functions : function does not modify any class attributes ( --> "this" becomes const)
* __attribute__((pure)) : function return value depends only on the parameters and/or global variables. The function does not modify any global or static variables.
* __attribute__((const)) : function only examines arguments (no globals), and has no effects except the return value. This slightly more strict than "pure"
* hot: tells the compiler "this functions is called very often"
* cold: the opposite of hot
2024-08-07 14:58:38 +02:00
Frank
078bd70775
HUB75 speedups and minor improvements
...
* HUB75: allow to use native driver gamma correction - requires to undo WLED gamma
* added unGamma24() function
* HUB75: optimized setPixelColor()
* some experimental HUB75 stuff
2024-08-05 17:28:03 +02:00
Frank
6cfbc48ead
busmanger debug help
...
* avoid crash when HUB75 driver is not compiled into firmware
* minimal info about PWM and Network busses
* show SPI frequency for DotStar driver
2024-07-17 21:49:10 +02:00
Will Tatam
d1cf8a679f
Only enable double buffering for matrix portal due to memory issues on classic esp32
2024-07-17 10:23:50 +01:00
Will Tatam
584ca5e8ae
Double buffer needed to prevent flicker for effects like GEQ
2024-07-13 13:51:59 +01:00
Will Tatam
60fbf07bca
Fix mx_width and height for 4scan
2024-07-10 23:01:21 +01:00
Will Tatam
fb30f9c641
Add Hub75Matrix 64x32 (Outdoor 8S)
2024-07-09 21:35:53 +01:00
Will Tatam
5123128e9c
Limit hub75 chain length by height 64 not width to allow for 2 x 64x32
2024-07-09 18:39:58 +01:00
Frank
a0514bb7ee
fix compiler warning
2024-05-17 21:40:59 +02:00
Frank
0c7450407e
WLEDMM_TWOPATH - use I2S driver for second output
...
* TWOPATH is up to 20% faster in some situations.
* user_print for showing the driver unit (I2S#n, RMT#x) on serial
2024-05-17 21:24:10 +02:00
Frank
08d73646fd
adding compile-time messages when extra features are enabled
2024-05-01 02:11:28 +02:00
Frank
714d4850af
minor cleanup
...
* startup message from UM autoplaylist
* zeroCrossingCount added to sound simulation
* debug messages cleanup
2024-04-30 12:47:45 +02:00
Frank
bd8df5e5c8
WLEDMM specific adjustments
2024-04-27 19:23:24 +02:00
Blaz Kristan
0572d3bee9
Bugfix
...
- getPixelColor() for analog
- RMT channel (#3922 )
2024-04-27 19:16:43 +02:00
Frank
657259acc2
Optimization: stop to constantly search for the bus
...
Adding a caching mechanism to the Bus Manager - up to 30% faster especially when many led pins are used.
2024-04-20 21:57:04 +02:00
Will Tatam
f1a494f82d
Cleanup comments
2024-02-26 22:47:33 +00:00
Will Tatam
2f87b616cd
Default to mrfaptastic pinout
2024-02-26 21:27:27 +00:00
Will Tatam
bf1a91a501
Resolve validation error for length
2024-02-25 12:07:02 +00:00
Will Tatam
e3e9ff72fa
Force chain length to 1 for 64 panels
2024-02-25 11:24:12 +00:00
Will Tatam
e2aad4783d
Allow chain of 1-4 panels - subject to memory
2024-02-24 17:27:20 +00:00
Will Tatam
26de408626
Add 8S and 16S, 1/8 ad 1/16 support
2024-02-24 11:30:22 +00:00
Will Tatam
2065d9ca2e
Allocate pins using pinManager
2024-02-22 10:46:56 +00:00
Will Tatam
0c4d5ab0f3
Update comments
2024-02-10 14:05:37 +00:00
Will Tatam
bd228e3a1c
Merge branch 'mdev' into ESP32-HUB75-MatrixPanel-DMA
2024-02-10 13:44:01 +00:00
Will Tatam
b0a63c59e1
Fix RGB capability issue with HUB75 output
2024-02-10 13:20:34 +00:00
Will Tatam
7fa2fe3969
Panel size selection
2024-01-13 21:04:38 +00:00
Will Tatam
260159a6ca
Cleanup and rename to generic Hub75 rather than SmartMatrix
2024-01-13 20:57:45 +00:00
Will Tatam
31edc73380
Tweaks
2024-01-13 18:52:34 +00:00
Will Tatam
83e51b47cd
Tweaks
2024-01-13 16:39:08 +00:00
Will Tatam
308812875b
Start testing output on Adafruit Matrix Portal S3
2024-01-12 23:26:42 +00:00
Frank
ced03f1f08
code spell checking - part1 (core)
...
I've found a code spellchecker, so this is what can be corrected easily. Changes are only affecting comments, readme and a few user-visible strings. So no functional impact expected.
2023-12-14 22:05:55 +01:00
Blaz Kristan
68dc4d11a9
Autowhite cleanup
...
Fix for UCS8904 hasWhite().
2023-12-12 14:48:51 +01:00
Will Tatam
aae9b62a00
Define pins to match SmartMatrix esp32 formum layout
2023-10-25 01:26:21 +01:00
Will Tatam
3ba37e08bd
Swap to ESP32-HUB75-MatrixPanel-DMA
2023-10-25 00:54:45 +01:00
Will Tatam
e12e5ad033
Swap back to 32x32 for now
2023-10-24 23:07:30 +01:00
Will Tatam
b049845380
Drop brightness
2023-10-24 22:48:59 +01:00
Will Tatam
ca0eb5313b
Swap to 64x64
2023-10-24 22:48:59 +01:00
Will Tatam
565cfb4595
add ifdef for addBus
2023-10-24 09:36:17 +01:00
Will Tatam
cf2ff1e515
Working SmartMatrix outout
2023-10-23 22:22:12 +01:00
Will Tatam
744e89441c
Trying to get output working
2023-10-23 22:12:45 +01:00
Will Tatam
9f55d7dfd8
Trying to get output working
2023-10-23 22:09:07 +01:00
Will Tatam
e27ada3388
Fix ordering of Bus Type checking
2023-10-23 20:47:03 +01:00
Will Tatam
c693ee1536
Impliment BusSmartMatrix
2023-10-23 19:48:53 +01:00