esphome / issues

Issue Tracker for ESPHome
https://esphome.io/
290 stars 36 forks source link

GPIO0 is not working as GPIO LEDC or outputs with Ethernet enabled on ESP32 #3391

Open meijie-jesse opened 2 years ago

meijie-jesse commented 2 years ago

The problem

GPIO0 is not working as GPIO LEDC or outputs with Ethernet enabled on ESP32.

I use ESP32 and connected Ethernet with LAN8720

I didn't configured GPIO0 as the clk_mode in or out, but GPIO0 still did not work.

The reason I'm sure problem is caused by Ethernet is because GPIO0 works fine if use WIFI.

I understand that gpio0 is not recommended to use, However, I DIY a light controller needs many GPIO ports, so GPIO0 must be used.

Which version of ESPHome has the issue?

2022.6.1

What type of installation are you using?

Home Assistant Add-on

Which version of Home Assistant has the issue?

No response

What platform are you using?

ESP32

Board

No response

Component causing the issue

No response

Example YAML snippet

esphome:
  name: lightning-esp32-ethernet

esp32:
  board: esp32dev
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "XXXXXXX"

ota:
  password: "XXXXX"

ethernet:
  type: LAN8720
  mdc_pin: GPIO23
  mdio_pin: GPIO18
  clk_mode: GPIO17_OUT
  phy_addr: 0

web_server:
  port: 80

output:
  - platform: ledc
    pin: GPIO0
    id: output_ch1
    frequency: 1220Hz    

light:
  - platform: monochromatic
    name: "MONO1"
    output: output_ch1

Anything in the logs that might be useful for us?

There is no error prompt in the log. The log prompt light has been turned on normally, but actually GPIO0 is not working.

Additional information

No response

github-actions[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

danipin commented 1 year ago

Hi, I have the same problem on a D1 Mini 32 board, the GPIO0 doesn't work anymore, I use it as binary_sensor