Commit Graph

63 Commits

Author SHA1 Message Date
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
Will Tatam
47349599e0 Register SmartMatrix 2023-10-23 18:33:40 +01:00
Will Tatam
228c090185 Start adding SmartMatrix code 2023-10-23 18:27:02 +01:00
Frank
553ac7bd82 remove some over-optimizations (FASTPATH) 2023-07-28 20:37:37 +02:00
Frank
3cc1d30090 optimization for ABL hotfix
* adding an optional parameter to setBrightness(). ApplyPostAdjustments() will only be called if `immediate=true`. Only ABL will use immediate=true, to ensure electrical safety of equipment.

This allows some optimizations of performance, as ApplyPostAdjustments() is time consuming.

* busses.setBrightness(bri) --> applied to all future pixels (fast, lossless)
* busses.setBrightness(bri, true) --> applied directly to all previously set pixels (slower, lossy)
2023-07-01 20:23:39 +02:00
Frank
3127c60b41 Merge branch 'mdev' into audio_fastpath 2023-06-15 20:54:57 +02:00
Frank
579dcf0835 align with upstream buildenv and librararies
* esp8266 core 4.1.0
* esp32 "V4" core 5.2.0
* neopixelbus 2.7.5
* use NeoPixelBusLg
* Make SPI bus speed user configurable

* adjust MM buildEnv to match upstream

https://github.com/Aircoookie/WLED/pull/3144

https://github.com/Aircoookie/WLED/pull/3173
2023-06-06 12:58:24 +02:00