Esp32 en usb

Bonjour,

Après une longue période d’absence, je reviens un petit peu…
J’aimerais savoir si certains d’entre vous utilisent le shield USR-ES1 (Usb) pour relier leur esp32 en ethernet ?
J’ai horreur du wifi (pas fiable partout, trop d’onde etc.)mais j’ai pris des esp32 car je n’arrive pas à coder les arduino et que avec esphome c’est ultra facile.
Savez-vous me dire si c’est fiable, si ça s’intègre bien dans esphome (j’ai cru voir que c’était possible).
Y a t’il possibilité de désactiver le wifi de l’esp32?
D’avance je vous remercie

Salut

Autant pour les ondes c’est discutable mais la fiabilité c’est une légende urbaine. WiFi et ethernet utilisent les même protocoles (tcp/ip, udp…) et donc assurent le même niveau de service.

Mouais… Aussi une légende urbaine ?

Disons que trouver un switch ethernet qui foire c’est dur, autant en utilisant le wifi erratique de nos fameuses box et en étant un peu limite en couverture, ça peut foirer. Mais, sinon, avec du « bon » wifi, je suis 100% d’accord…

Salut,
Pour ma part j’utilise une carte lilygo, depuis plus d’un an maintenant, pour activer une pompe de relevage de mon sous sol et j’en suis très content.
Auparavant j’avais une esp32 wifi, mais j’avais des déconnections régulières (il faut dire qu’e,n plus la réception wifi n’était pas excellente) et c’est ce qui m’a fait passer au RJ45.
Aujourd’hui esphome est beaucoup plus fiable et mes autres esp ont presque plus de déconnections, alors le changement pour du Rj45 ne se justifie que si tu as un câblage réseau et que ton wifi n’est pas top.


juste pour info voici le yaml esphome, il n’est pas très propre mais fonctionne très bien:


esphome:
  name: lilygo
  platform: ESP32
  board: esp32dev

#wifi:
  #ssid: !secret wifi_ssid
  #password: !secret wifi_password


ethernet:
  type: LAN8720
  mdc_pin: GPIO23
  mdio_pin: GPIO18
  #clk_mode: GPIO0_OUT
  phy_addr: 0
  clk_mode: GPIO17_OUT
  power_pin: GPIO17
  manual_ip:
    static_ip: 192.168.1.100
    gateway: 192.168.1.1
    subnet: 255.255.255.0

logger:

api:

ota:

web_server:
  port: 80

esp32_ble_tracker:

uart:
  - id: ubus1
    tx_pin: GPIO1
    rx_pin: GPIO3
    baud_rate: 9600
    stop_bits: 1
  

time:
  - platform: homeassistant
    id: homeassistant_time  
    
    on_time:
      - seconds: 55
        minutes: 59
        hours: 23
        then:  
          - sensor.template.publish:
              id: template_lilygo_veille
              state: !lambda return id(lilygo_puissance_du_jour).state;
              
      - seconds: /10
        then:
          - sensor.template.publish:
              id: template_lilygo_veille
              state: !lambda return id(template_lilygo_veille).state;
  
sensor:

#  - platform: ultrasonic
#    id: ultrasonic_sensor_lilygo
#    trigger_pin: GPIO16
#    echo_pin: GPIO4
#    name: "Niveau de l'eau en cm"
#    pulse_time: 15us
#    unit_of_measurement : "cm"
#    timeout: 4m
#    update_interval: 1s
#    filters:
#    - lambda: return x*100;
#    - filter_out: nan
# voir ligne 205 ajout flotteur_2 à la place

    

  - platform: xiaomi_lywsd03mmc # ou xiaomi_lywsdcgq gros rond ou Xiaomi_LYWSD02 capteur rectangulaire de température et d'humidité ou  Xiaomi_CGG1 un rond (écran e-ink) de ClearGrass
    mac_address: A4:C1:38:28:31:D5
    bindkey: "5d7825fc88b3e2d9b6807c1e1d391980"
    temperature:
      name: "LilyGo_Xiaomi_1 Temperature"
    humidity:
      name: "LilyGo_Xiaomi_1 Humidité"
    battery_level:
      name: "LilyGo_Xiaomi_1 Niveau Batterie"
      
  - platform: xiaomi_lywsd03mmc
    mac_address: A4:C1:38:1B:19:3D
    bindkey: "a4bc78d2a90e648f1e178855be1e6cde"
    temperature:
      name: "LilyGo_Xiaomi_2 Temperature"
    humidity:
      name: "LilyGo_Xiaomi_2 Humidité"
    battery_level:
      name: "LilyGo_Xiaomi_2 Niveau Batterie"

    
  - platform: pzemac
    address: 1
    current:
      name: "lilygo_courant"
      accuracy_decimals: 1
    voltage:
      name: "lilygo_tension"
      accuracy_decimals: 1
    power:
      name: "lilygo_puissance"
      unit_of_measurement: W
      accuracy_decimals: 1
      id: lilygo_puissance
    frequency:
      name: "lilygo_frequence"
      unit_of_measurement: Hz
      accuracy_decimals: 1
    power_factor:
      name: "lilygo_facteur_puissance"
      accuracy_decimals: 2
      id: lilygo_facteur_puissance
    #energy:
      #name: "puisard_energy"
      #unit_of_measurement: Wh
      #accuracy_decimals: 1
      #id: puisard_energy
    update_interval: 10s

    
  #- platform: template
    #name: "puisard_puissance_cumulee"
    #unit_of_measurement: "kWh"
    #accuracy_decimals: 1
    #update_interval: 5s
    #icon: mdi:power
    #lambda: return (( (id(puisard_energy).state)/1000.0));
    
  - platform: total_daily_energy
    name: "lilygo_du_jour"
    power_id: lilygo_puissance
    unit_of_measurement: "Wh"
    #unit_of_measurement: "kWh"
    #accuracy_decimals: 1
    id: lilygo_puissance_du_jour
    #filters:
        # Multiplication factor from W to kW is 0.001
        #- multiply: 0.001
    icon: mdi:counter
    
  - platform: template
    name: "lilygo_veille"
    id: template_lilygo_veille
    unit_of_measurement: "Wh"
    accuracy_decimals: 1
    icon: mdi:power
    update_interval: 10s
    
  #- platform: template
    #name: "puisard_puissance_apparente"
    #id: puisard_puissance_apparente
    #unit_of_measurement: "VA"
    #accuracy_decimals: 1
    #update_interval: 10s
    #icon: mdi:power
    #lambda: return ( (id(puisard_puissance).state/id(puisard_facteur_puissance).state));
  
  #- platform: template
    #name: "puisard_puissance_reactive"
    #id: puisard_puissance_reactive
    #unit_of_measurement: "VAr"
    #accuracy_decimals: 1
    #update_interval: 10s
    #icon: mdi:power
    #lambda: return ( ((id(puisard_puissance_reactive).state)*sin(acos((id(puisard_facteur_puissance).state))) ) );  
    
  #- platform: wifi_signal
     #name: "lan_8720 WiFi Signal"
     #update_interval: 10s
    
  - platform: uptime
    name: "up_lilygo"
    id: uptime_sec 
 
switch:
  - platform: restart
    name: "lilygo_sensor Restart"
    
    
binary_sensor:
  - platform: status
    name: "lilygo_statut"  
    
  # Capteur binaire représentant
  # le flotteur de présence d'eau.
  - platform: gpio
    id: button
    name: lilygo Flotteur
    device_class: moisture
    pin:
      # Connecté à GPIO15
      number: GPIO02
      #mode: INPUT_PULLUP
      inverted: true

  - platform: gpio
    id: button_2
    name: lilygo Flotteur 2
    device_class: moisture
    pin:
      # Connecté à GPIO15
      number: GPIO04
      #mode: INPUT_PULLUP
      inverted: true

  - platform: gpio
    id: temoin_lumiere_jardin
    name: lilygo Temoin Lumière Jardin
    device_class: light
    pin:
      # Connecté à GPIO15
      number: GPIO32
      mode: INPUT_PULLUP
      inverted: true

  - platform: gpio
    id: temoin_lumiere_sous_sol
    name: lilygo Temoin Lumière Sous Sol
    device_class: light
    pin:
      # Connecté à GPIO15
      number: GPIO33
      mode: INPUT_PULLUP
      inverted: true
    
    
text_sensor:

  - platform: version
    name: lilygo ESPHome Version


      
  - platform: template
    name: lilygo_uptime
    lambda: |-
      int seconds = (id(uptime_sec).state);
      int days = seconds / (24 * 3600);
      seconds = seconds % (24 * 3600); 
      int hours = seconds / 3600;
      seconds = seconds % 3600;
      int minutes = seconds /  60;
      seconds = seconds % 60;
      return { (String(days) +"d " + String(hours) +"h " + String(minutes) +"m "+ String(seconds) +"s").c_str() };
    icon: mdi:clock-start
    update_interval: 113s  
    

    
    


    
    


Je parlais de fiabilité car je perds de temps en temps le wifi. Esp32 en limite de réception

Effectivement, j’ai le wifi de ma box de mon fournisseur en Belgique (et c’est de la crasse).
Mais au départ, j’avais prévu (et acheté) des arduino avec shield ethernet donc ma maison est câblée partout partout en rj45. Le codage étant trop nébuleux pour moi , j’ai abandonné et remplacé par des esp32. Ayant des déconnexions régulièrement et n’aimant pas les ondes (ou du moins, le minimum possible), j’ai cherché et trouvé hier ces Shields pour esp32 qui avaient l’air pas mal. D’où ma question sur ce que vous pensiez de ces Shields.
Je n’ai pas trop envie de changer les esp32 car achetés et que tous les montages sont faits et m’ont pris beaucoup de temps…

Merci de vos retours

Discutable parce que en fonction du lieu de d’habitation, le wifi des voisins fait pas la différence avec son appart et le mitoyen.

Oui. C’est l’équivalent du cable ethernet pourri ou trop court… :joy: