You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi, I would like to use the I2S mode on the ESP32S2 variant, but the code currently doesn't compile. So far, two errors have occurred.
The ESP32S2 only has one I2S peripheral, so any references to &I2S1 are invalid and the code refuses to compile.
The i2s struct member clka_en doesn't exist anymore, and it's been replaced with clk_sel in ESP32S2's respective i2s_struct.h file due to a restructuring in the I2S_CLKM_CONF_REG register: I2S_CLKA_ENA bit is replaced with I2S_CLK_SEL bits on the ESP32S2, and can be set to 0 or 3 for no clock, 1 for the configurable analog PLL clock and 2 for the 160 MHz clock. Setting clk_sel = 2 should correspond to the previously used clka_en = 0 for the original ESP32 variant in order to use the 160 MHz clock instead of the analog PLL.
I have modified the code accordingly (which can be found here), and, although the blink example now compiles successfully, there is no LED output, but there are brief flashes on occasion. I am unable to probe the output with an oscilloscope currently, but might be able to in a few days.
The text was updated successfully, but these errors were encountered:
The missing LED output might be due to incorrect hardware spi implementation on the ESP32 chipset families. You can see if defining FASTLED_FORCE_SOFTWARE_SPI fixes the issue for you, like so:
@davorvr Thanks for the report (and the modified branch). Did you manage to get any further with it? I might try to update the I2S driver to use more portable APIs from the ESP-IDF.
Hi, I would like to use the I2S mode on the ESP32S2 variant, but the code currently doesn't compile. So far, two errors have occurred.
&I2S1
are invalid and the code refuses to compile.i2s
struct memberclka_en
doesn't exist anymore, and it's been replaced withclk_sel
in ESP32S2's respectivei2s_struct.h
file due to a restructuring in theI2S_CLKM_CONF_REG
register:I2S_CLKA_ENA
bit is replaced withI2S_CLK_SEL
bits on the ESP32S2, and can be set to0
or3
for no clock,1
for the configurable analog PLL clock and2
for the 160 MHz clock. Settingclk_sel = 2
should correspond to the previously usedclka_en = 0
for the original ESP32 variant in order to use the 160 MHz clock instead of the analog PLL.I have modified the code accordingly (which can be found here), and, although the blink example now compiles successfully, there is no LED output, but there are brief flashes on occasion. I am unable to probe the output with an oscilloscope currently, but might be able to in a few days.
The text was updated successfully, but these errors were encountered: