304 Commits
Author SHA1 Message Date
Michael Miller a561a8294e v2.6.9 (#522) 2.6.9 2021-10-12 13:20:24 -07:00
Michael Miller b1fac57687 Esp32 i2s cleanup (#521)
* ESP32 I2s deallocation

* NULL pointers
2021-10-12 13:17:09 -07:00
Michael Miller 9496b0ef15 inc version (#518) 2.6.8 2021-10-10 17:50:02 -07:00
Michael Miller 2040a4837d Ucs890x (#517) 2021-10-10 17:45:48 -07:00
Michael Miller 0913134003 reduce (#512) 2021-08-07 17:19:29 -07:00
Michael Miller 7ddd954973 Correct State Clearing (#511) 2021-08-07 17:05:33 -07:00
Michael Miller fbe11816da inc version (#509) 2.6.7 2021-08-03 12:47:56 -07:00
Drzony 35fafdc18e Fix initialization of RMT config (#508) 2021-08-03 12:44:43 -07:00
Christian Schwinne 7f1611d683 Restored compatibility with ESP8266 Arduino Core < 3.0.1 (#500) 2021-07-23 11:26:37 -07:00
Michael Miller 5aaa17f78a Reset Pin Matrix on destruction (#504) 2021-07-11 18:17:30 -07:00
Michael Miller bcac838a99 RingTopo (#502) 2021-07-11 10:26:20 -07:00
Michael Miller c626e9af4f v2.6.6 (#498) 2.6.6 2021-07-07 11:11:30 -07:00
Michael Miller 7c2f233820 Esp32 c3 (#495)
* NeoBusChannel update

* Fix copy error

* ESP32C3 only has two TX RMT channels
2021-07-05 14:36:42 -07:00
Christian Schwinne 4438ba517c Add NeoBusChannel constructor to NeoPixelBrightnessBus (#491) 2021-07-02 09:21:53 -07:00
Michael Miller 2f74118bb3 Increment Version for release (#490) 2.6.5 2021-07-01 09:39:20 -07:00
Stefan Agner 6112e23e94 Fix missing clang-tidy missing IRAM_ATTR (#487)
It seems that IRAM_ATTR is not defined when clang-tidy checks leading to
errors like the following:

```
Error: /__w/esphome/esphome/.pio/libdeps/livingroom8266/NeoPixelBus/src/internal/NeoEsp8266DmaMethod.h:244:17: error: variable has incomplete type 'void' [clang-diagnostic-error]
    static void IRAM_ATTR i2s_slc_isr(void)
                ^
```

Include Arduino.h in global context just like in other header files
makes sure that IRAM_ATTR is defined in all cases.
2021-06-16 08:42:43 -07:00
Michael Miller 36b44f6b73 i2s.h conflict change (#486)
ESP8266 Arduino v3.1 will remove the i2s.h due to name conflict when used on case insensitive file systems.
2021-06-14 10:22:05 -07:00
Michael Miller d60d38185d version numbers (#483) 2.6.4 2021-06-13 11:06:40 -07:00
Michael Miller 2ff885c702 Workaround (#482) 2021-06-11 16:02:06 -07:00
s-hadingerandStephan Hadinger eb0b476410 Change to SP2_HOST for esp32c3 and avoid duplicate in Tasmota (#481)
Co-authored-by: Stephan Hadinger <stephan.hadinger@gmail.com>
2021-06-10 10:55:07 -07:00
Michael Miller 79b10f6347 Tm1914 (#480)
* Create NeoTm1914ColorFeatures.h

* GRB
2021-06-10 09:55:30 -07:00
Michael Miller fc7765bbd9 Esp32 c3 (#479)
* No VSPI

* I2s not default for S2 or C3

* include fixes

* remove ESP32C3 I2s support

* sdkconfig.h

* No Bitbang
2021-06-09 08:34:57 -07:00
Michael Miller cf720f8b07 v2.6.3 (#473) 2.6.3 2021-05-24 20:56:32 -07:00
Michael Miller 0362fcda31 Esp8266 v3 updates (#472)
Fix to use standard IRAM_ATTR now supported between Esp8266 and ESP32
2021-05-24 20:53:54 -07:00
Stefan Agner b6626fd758 Fix clang-tidy pointer cast error (#471)
* Fix clang-tidy pointer cast error

clang-tidy reports:

./src/internal/NeoEsp8266DmaMethod.h:317:46: error: cast from pointer to smaller type 'uint32_t' (aka 'unsigned int') loses information [clang-diagnostic-error]
            _i2sBufDesc[indexDesc].buf_ptr = reinterpret_cast<uint32_t>(is2Buffer);
                                             ^
./src/internal/NeoEsp8266DmaMethod.h:492:58: error: cast from pointer to smaller type 'uint32_t' (aka 'unsigned int') loses information [clang-diagnostic-error]
                    (finished_item + 1)->next_link_ptr = reinterpret_cast<uint32_t>(finished_item);

Use pointers instead of integers for pointers. This makes quite some
casts unnecessary.

* Use struct slc_queue_item* as datatype for next pointer
2021-05-24 09:08:49 -07:00
programminghoch10 8fd2c9fd30 Fixed typo in ReadMe.md (#468) 2021-04-21 09:49:30 -07:00
Michael Miller 41d3906cdf Esp32S2 Defaults not set (#465) 2021-04-16 17:49:00 -07:00
Michael Miller 5e492ea925 Modern cast cleanup (#462)
* static_cast

* cleanup and building
2021-04-13 10:45:35 -07:00
Michael Miller 2480634ca7 Minor Style updates (#461) 2021-04-12 15:17:40 -07:00
Louis BeaudoinandLouis Beaudoin b90992fdc2 ESP32 Hardware SPI Improvements - Options for using both SPI peripherals, and DMA (#441)
* Fix header file comment

* Add TwoWireHspiImpl and Example

* Add start of TwoWireEsp32DmaSpiImple (Currently just able to use HSPI and VSPI in parallel, no DMA)

* Update names for TwoWireEsp32DmaSpi and set set spi_bus using template not constructor

* Update example with new functionality and bugfixes

* DotStarEsp32DmaSpiMethod -

* Add 5MHz option to all SPI-based classes

* DotStarGenericMethod - Give option to use Vspi alias of Spi class if wanting to specify which SPI peripheral is used on the ESP32
- Add missing DotStarHspiHzMethod

* TwoWireHspiImple - bring up to date with applySettings() method

* DotStarTest_Esp32Advanced example - update to show how to change clock speed at runtime
- Remove commented out pins cluttering up example

* DotStarTest_Esp32DmaSpi example -

Co-authored-by: Louis Beaudoin <louis@embedded-creations.com>
2021-04-12 14:59:09 -07:00
Juerd Waalboer cc17ec6fa1 ESP32 i2s: instead of runtime exception, silently upgrade pixelCount (#459)
Fixes #457

This workaround, compared to the old implementation of throwing an exception,
is simpler, makes the compiled program 260 smaller, and unbreaks existing code
that uses a pixel count of 1 that used to work prior to 2cce77e9 (v2.6.2).

This fix basically does the same thing as the recommended fix on the caller
side, except without bothering the caller. It does make `.GetPixelCount()`
return 2 instead of the provided number of pixels, but the resulting program is
arguably less broken than it is with the failing check at construction, and not
likely to really be much of an issue anyway.
2021-04-05 16:05:46 -07:00
Michael Miller a6da4b728b Expose uint16 for direct access (#454) 2021-03-23 14:26:33 -07:00
Drzony 7dbb95401e Fix for compiler warnings with -Wextra (#447) 2021-03-21 16:22:17 -07:00
Michael Miller 7b9f315acc Update Version Info (#452) 2.6.2 2021-03-21 14:48:56 -07:00
s-hadingerandStephan Hadinger f16a39f7af ESP32 force bitbang in IRAM (#446)
* ESP32 force bitbang in IRAM

* Split send_pixels into inverted and non-inverted

Co-authored-by: Stephan Hadinger <stephan.hadinger@gmail.com>
2021-03-13 15:42:01 -08:00
Michael Miller dccf8d5709 Better String Convert (#448) 2021-03-13 15:23:20 -08:00
Michael Miller e54a06736e Neo segment working (#443)
Finally have some to test with
2021-03-03 16:42:12 -08:00
Michael Miller 1b56c2e7f7 builds (#440) 2021-02-18 14:36:17 -08:00
Mike Dunston bf41c61398 Add support for Tx1812 LED (#435) 2021-02-16 16:41:16 -08:00
h3ndrikandMichael Miller edecdcef01 add TM1829 support (#378)
Co-authored-by: Michael Miller <Makuna@hotmail.com>
2021-02-16 13:23:24 -08:00
Michael Miller 1a0bf55363 Spi dynamic speed (#434) 2021-02-16 10:46:20 -08:00
Michael Miller 816de24962 Spi dynamic speed (#432) 2021-02-16 10:23:02 -08:00
Michael Miller b76a42bb5a Default Back to i2s method (#431) 2021-02-14 17:16:06 -08:00
Michael Miller 8161894491 i2s MALLOC_CAP_DMA (#430) 2021-02-14 16:42:59 -08:00
Michael Miller 13b7d2e377 Esp32 i2s (#427)
* dynamic i2s bus numbers

* stabile and consistent shows

* faster to start send
2021-02-11 17:22:10 -08:00
Michael Miller 7a73ffc7b4 Clear Buffer (#426) 2021-02-10 20:25:47 -08:00
Michael Miller 663c6492f4 Color and Init (#425) 2021-02-10 17:33:24 -08:00
Michael Miller d07f7aa0ab More Speeds and Color Order (#423) 2021-02-10 13:36:05 -08:00
Michael Miller 923b0e2312 IncrementVersion (#416) 2.6.1 2021-01-31 13:54:55 -08:00
Michael Miller 0846cfbc93 explicit constructor (#415) 2021-01-26 23:28:12 -08:00