Freenove / Freenove_Development_Kit_for_ESP32_S3

Apply to FNK0086
Other
17 stars 7 forks source link

Incorrect I2S Pins on Silkscreen #5

Open VestasSystem opened 5 months ago

VestasSystem commented 5 months ago

The silkscreen on the Dev Board both physically and in the Tutorial PDF have the I2S pins for BCK and LCK reversed. GPIO14 is listed as IIS-BCK and GPIO42 is listed as IIS-LCK. This is reverse of what is in the Sketch file and code descriptions in the Tutorial PDF (BCK is GPIO42 and LCK is GPIO14). The silkscreen is wrong, because attempting to use it as the silkscreen says fails. Using it as the Sketch file says works.

This was discovered when attempting to get ESPHome integration working. For reference, below is the config.yaml I am using:

external_components:
  - source:
      type: git
      url: https://github.com/MichaKersloot/esphome_custom_components
    components: [ esp32_camera ]
  #https://github.com/esphome/esphome/pull/6454 fixes an issue with pausing the stream in I2S audio outputs
  - source:
      type: git
      url: https://github.com/esphome/esphome
      ref: dev
    components: [ i2s_audio ]

esphome:
  name: freenove_esp32_s3_dev
  friendly_name: Freenove ESP32-S3 Development Kit
  platformio_options:
    build_flags: "-DBOARD_HAS_PSRAM"
    board_build.arduino.memory_type: qio_opi

esp32:
  board: esp32-s3-devkitc-1
  variant: esp32s3
  flash_size: 8MB
  framework:
    type: arduino

# Enable logging
logger:

psram:
  mode: octal
  speed: 80MHz

color:
  - id: test_red
    red: 100%
    green: 3%
    blue: 5%
  - id: test_blue
    red: 3%
    green: 5%
    blue: 100%

font:
  - file: "fonts/OpenSans-Regular.ttf"
    id: opensans
    size: 16

spi:
#SD Card support isn't in ESPHome, defined for reference
  - id: spi_bus_sd
    clk_pin: GPIO39
    mosi_pin: GPIO38
    miso_pin: GPIO40
    interface: hardware
  - id: spi_bus_tft
    clk_pin: GPIO21
    mosi_pin: GPIO20
    interface: any

display:
  - platform: ili9xxx
    model: ST7789V
    spi_id: spi_bus_tft
    dc_pin: GPIO00
    cs_pin: GPIO47
    lambda: |-
      it.rectangle(0,  0, it.get_width(), it.get_height(), id(test_blue));
      it.print(5, 10, id(opensans), test_red, "Hello World!");

esp32_camera:
  name: esp32_cam
  external_clock:
    pin: GPIO15
    frequency: 20MHz
  i2c_pins:
    sda: GPIO4
    scl: GPIO5
  data_pins: [GPIO11, GPIO9, GPIO8, GPIO10, GPIO12, GPIO18, GPIO17, GPIO16]
  vsync_pin: GPIO6
  href_pin: GPIO7
  pixel_clock_pin: GPIO13

#These are mislabelled on the silkscreen  
i2s_audio:
  i2s_lrclk_pin: GPIO14
  i2s_bclk_pin: GPIO42

media_player:
  - platform: i2s_audio
    dac_type: external
    i2s_dout_pin: GPIO41
    mode: stereo
    name: speakers

light:
  - platform: esp32_rmt_led_strip
    chipset: WS2812
    pin: GPIO48
    num_leds: 1
    rgb_order: GRB
    rmt_channel: 0
    name: "WS2812 Light"