espressif / ESP8266_RTOS_SDK

Latest ESP8266 SDK based on FreeRTOS, esp-idf style.
http://bbs.espressif.com
Apache License 2.0
3.27k stars 1.56k forks source link

I2S example does not work (GIT8266O-639) #1061

Open k-a-z-u opened 3 years ago

k-a-z-u commented 3 years ago

Environment

Problem Description

The provided I2S example does not seem to work. i2s_write(..) always blocks for the whole ticks_to_wait and i2s_bytes_write is 0 hereafter.

Expected Behavior

working example, i2s_bytes_write > 0

Actual Behavior

not working example, i2s_bytes_write = 0

Steps to repropduce

Download Toolchain
    wget https://dl.espressif.com/dl/xtensa-lx106-elf-gcc8_4_0-esp-2020r3-linux-amd64.tar.gz

Download SDK
    Tried both:
    git clone https://github.com/espressif/ESP8266_RTOS_SDK.git
    and
    git clone --branch "release/v3.4" https://github.com/espressif/ESP8266_RTOS_SDK.git

cd into ESP8266_RTOS_SDK/examples/peripherals/i2s/

In main/i2s_example_main.c, add one line below line 69:
    printf("%d\n", i2s_bytes_write);

make flash

Also

The source code and documentation are unclear whether i2s_pin_config_t just enables/disables the pins, or assigns actual pin numbers, like within the ESP-IDF

mutje commented 3 years ago

I have a same problem. Tried on Wemos D1 mini. Also tried on Ai-thinker ESP-01 module. I also measured U0RXD pin (should be I2SO_DATA) with Saleae Logic analyzer, it's always LOW (0 V). I would be pleased if there was at least a workaround.

tipeter commented 2 years ago

Same problem. I tried to use uart_enable_swap() to swap the alternative UART0 pin configuration, but it didn't help.

kangear commented 1 year ago

same problem(ESP-12S)