Прошу помощи esp32 и lan8720

Тема в разделе "ESP8266, ESP32", создана пользователем Artyomka71, 9 июн 2021.

  1. Artyomka71

    Artyomka71 Нуб

    Приветствую!

    Требуется помощь в подключении LAN8720AI-CP-TR к ESP32 .
    Построил схему, где требуется LAN8720, за основу взял решение Olimex ESP32-POE и читал информацию в Datasheet к LAN8720. Итоговая схема получилась в приложении. Заказал плату, все спаяли сразу на jlcpcb, прошил ESPhome, но Ethernet так и не заработал. Думаю. что где-то ошибка в схеме у меня, но я ее в упор не вижу. Помогите найти ошибку в схеме. Даже лампочки не хотят гореть на коннекторе

    Настройки ESPHome следующие:
    Код (C++):

    esphome:
      name: arthome_module_lan
      platform: ESP32
      board: esp-wrover-kit

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

      # Optional manual IP
      manual_ip:
        static_ip: 192.168.1.52
        gateway: 192.168.1.1
        subnet: 255.255.255.0

    # Enable logging
    logger:

    # Enable Home Assistant API
    api:

    ota:

    web_server:
      port: 80
     
    Но тут у меня сомнений нет

    Olimex ESP32-POE https://github.com/OLIMEX/ESP32-POE...2-PoE-hardware-revision-E/ESP32-PoE_Rev_E.pdf
    Datasheet LAN8720 https://datasheet.lcsc.com/lcsc/1809291909_Microchip-Tech-LAN8720AI-CP-TR_C17146.pdf

    ДОПОЛНЕНИЕ показывает Serial Port:
    Код (C++):

    Using 'COM4' as serial port.
    Showing logs:
    [11:46:56][W][ethernet:043]: Connecting via ethernet failed! Re-connecting...
    [11:46:57][D][esp-idf:000]: E (16098) emac: Timed out waiting for PHY register 0x2 to have value 0x0007(mask 0xffff). Current value 0xffff
    [11:46:57]
    [11:46:58][D][esp-idf:000]: E (17099) emac: Timed out waiting for PHY register 0x3 to have value 0xc0f0(mask 0xfff0). Current value 0xffff
    [11:46:58]
    [11:46:58][D][esp-idf:000]: E (17101) emac: Initialise PHY device Timeout
    [11:46:58]
    [11:46:58][E][ethernet:127]: ETH enable error: -1
    [11:46:58][E][component:092]: Component was marked as failed.
    [11:47:35]
     

    Вложения:

    Последнее редактирование: 9 июн 2021
  2. b707

    b707 Гуру

    зачем плате с WiFi проводной инет??
     
  3. Artyomka71

    Artyomka71 Нуб

    Вопрос не по теме, но отвечу. Много причин.
    1) Не везде есть WI-FI, например у меня он плохо ловит в котельной. Ставить туда точку доступа не хочется
    2) WI-FI менее стабильный
     
  4. b707

    b707 Гуру

    тогда возникает обратный вопрос - нафига брать ЕСП, если вай-фай не нужен?

    Если же вы хотите использовать готовый софт (espHome я так понял) - то для начала надо быть уверенным, что он поддерживает проводной инет. Посмотрев сходу описание ESPHome - я никаких указаний на это не нашел.

    Вообще, чтобы проверить свою схему - попробуйте прошить в Есп не готовую прошивку EspHome, а какой-нить простенький пример использования именно этого модуля
     
    Последнее редактирование: 9 июн 2021
  5. Artyomka71

    Artyomka71 Нуб

    Чтобы использовать в связке с проектом ESPHome и без проблем все залетало в Home Assistant.
    ESPHome, чтобы было легко программировать контроллер.
    Там в пару строк можно настраивать интеграции и поднимать MQTT.
    Ответы нужны по теме.
     
  6. b707

    b707 Гуру

    а есть уверенность, что EspHome поддерживает этот Lan8720 ? Его испоользование должно быть прописано в прошивке, иначе ничего не заработает.
     
  7. b707

    b707 Гуру

    вопросы на самом деле вполне по теме.
    Использование LAN на плате с WiFi - это довольно оригинальный путь разработки. Сомневаюсь, что этот вопрос хорошо проработан в EspHome
    А чтобы сделать такое, не имея готовых примеров в проекте - нужно обладать очень хорошими навыками в программировании, которых, как мне кажется, у вас нет... иначе вы бы этот вопрос не задали
     
    ИгорьК нравится это.
  8. ИгорьК

    ИгорьК Гуру

    У ESP32 в SDK заложена поддержка lan, однако она там постоянно лагает (мой скромный опыт).
    Добавить правильно сказанное @b707, что ESPHome сосредоточен на wifi части ESP32 - получается у вас не слишком правильный выбор.
    Здесь ESPHome никто не применяет, так что лучше поискать ответ на других форумах, сэкономите время.
     
  9. Artyomka71

    Artyomka71 Нуб

    Последнее редактирование: 9 июн 2021
  10. Artyomka71

    Artyomka71 Нуб

    Вам может многое казаться, вопрос я задавал по схеме, а не по программированию.
     
  11. Artyomka71

    Artyomka71 Нуб

    Мне надо совет по схеме, а не по ESPHome. Ошибка именно в схеме. ESPHome c китайскими модулями lan8720 работает нормально https://aliexpress.ru/item/32485939...earchweb0_0,searchweb201602_,searchweb201603_
     
  12. parovoZZ

    parovoZZ Гуру

    В режиме дебага убедиться в том, что PHY интерфейс отвечает на запросы: читаются и записываются регистры, управляются GPIO. Если связь не идёт, то внимательно снять карту напряжений, прозвонить сигнальные/питающие линии. Снять датаграммы логическим анализатором Стандартный путь пусконаладчика.
    Осваивать новые платформы надо с рабочих отладочных плат, чтобы точно знать, что программа отлажена и работоспособна.
     
    Feofan нравится это.
  13. volaltd

    volaltd Нуб

    На схеме 25(EP) пин в воздухе, у LAN8720 это подложка и через нее подается GND.