Non, juste « update all » après avoir mis à jour l’addon, et tout se fait tout seul en wifi
Merci pour le partage, j’ai ajouté la LED interne sur le Gpio 13 pour avoir un retour sur l’ESP32
esphome:
name: esp-sim800
esp32:
board: esp-wrover-kit
framework:
type: arduino
# Enable logging
logger:
baud_rate: 0 # disable uart logger on esp 8266
# Enable Home Assistant API
api:
services:
- service: send_sms
variables:
recipient: string
message: string
then:
- sim800l.send_sms:
recipient: !lambda 'return recipient;'
message: !lambda 'return message;'
- service: dial
variables:
recipient: string
then:
- sim800l.dial:
recipient: !lambda 'return recipient;'
# Retourne le dernier message reçus au dernier expéditeut en y ajoutant OK
- service: reply_sms_ok
then:
- text_sensor.template.publish:
id: esp_sim800_sms_message
state: !lambda |-
return id(esp_sim800_sms_message).state + " <= OK";
- sim800l.send_sms:
recipient: !lambda "return id(esp_sim800_sms_expediteur).state;"
message: !lambda "return id(esp_sim800_sms_message).state;"
ota:
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Esphome-Web-7Ba600"
password: "iqozLsSjuW45"
captive_portal:
uart:
baud_rate: 9600
tx_pin: 27
rx_pin: 26
#sim800l:
# on_sms_received:
# - logger.log:
# format: "Received '%s' from %s"
# args: [ 'message.c_str()', 'sender.c_str()' ]
sim800l:
on_sms_received:
- lambda: |-
id(esp_sim800_sms_expediteur).publish_state(sender);
id(esp_sim800_sms_message).publish_state(message);
- logger.log:
format: "Received '%s' from %s"
args: [ 'message.c_str()', 'sender.c_str()' ]
text_sensor:
- platform: template
id: esp_sim800_sms_expediteur
name: "Sms Expediteur"
- platform: template
id: esp_sim800_sms_message
name: "Sms Message"
sensor:
- platform: sim800l
rssi:
name: "Sim800L RSSI"
binary_sensor:
- platform: sim800l
registered:
name: "Sim800L Registered"
# statut
# - platform: status
# id: esp_sim800_statut
# name: "Statut"
output:
- platform: gpio
pin: 13
id: "Internal_LED"
light:
- platform: binary
output: "Internal_LED"
name: "Internal_LED"
switch:
- platform: gpio
id: "key_pin"
pin: 4
restore_mode: ALWAYS_OFF
- platform: gpio
id: "reset_pin"
pin: 5
restore_mode: ALWAYS_ON
- platform: gpio
id: "power_pin"
pin: 23
restore_mode: ALWAYS_ON
# Bouton de redémarrage
- platform: restart
id: esp_sim800_restart
name: "Redémarrage"
Ce qui donne pour le script l’appel vocal (sans les 3 SMS)
alias: Alerte - Appel vocal
description: Appel vocal destinataire
sequence:
- type: turn_on
device_id: dbxxxxxxxxxxxxxxxxxxxxxxxxxx8e [en fonction de votre config]
entity_id: light.internal_led
domain: light
- service: esp-sim800_dial
data:
recipient: '06xxxxx'
- delay:
hours: 0
minutes: 0
seconds: 10
milliseconds: 0
- type: turn_off
device_id: dbxxxxxxxxxxxxxxxxxxxxxc8e [en fonction de votre config]
entity_id: light.internal_led
domain: light
mode: single
icon: mdi:message-alert-outline
Je vois que la version 2022.3.1 de l’addon est obsolète :
ESPHome
Current version: 2022.3.1 → DEPRECATED - ESPHome.
Ils disent : Please add the ESPHome repo GitHub - esphome/home-assistant-addon: ESPHome Home Assistant Add-on and install the ESPHome add-on from there to continue getting updates.
Donc l’idée c’est de supprimer l’addon obsolète et d’installer l’addon avec le nouveau repo ? Mais du coup ca va pas faire perdre les ESP déjà installés via l’addon obsolète ? J’imagine que la suppression de l’addon va aussi supprimer les composants liés
J’ai regardé les breaking change et je ne vois pas de point sur cette migration et les impacts
Effectivement, Nabucasa a racheté ESPHome, et du coup, ils l’ont en bonne logique intégré dans les add-on officiels, et ne le supporte plus dans les addons de la communauté.
Je viens de vérifier, la version courante dans le nouveau dépôt est toujours la même : 2022.3.1 Donc il n’y a aucune urgence. Par contre il faudra effectivement passer sur ce nouveau dépôt pour les prochaines mises à jour.
Concernant la migration, effectivement, rien dans la documentation. A priori, on peut supprimer l’addon et le recharger, et les composants seront retrouvés. Et au pire il est très facile de les recréer à partir des fichiers yaml présents dans le répertoire esphome. Mais je n’ai pas encore testé et le ferais prochainement.
Super. Merci pour les infos !
En ce qui concerne mon changement d’antenne : j’ai gagné en db (de 5 à 15/20) mais il y a toujours ce bug aléatoire de sms qu’il faut renvoyer. A voir si comme tu le disais c’est le module qui se met en veille ou bien le problème est côté opérateur. L’important c’est que ça marche plutôt bien en général et que c’est facile à utiliser
Tu as peut être vu que j’avais testé le changement de dépôt, qui se passe très bien.
A voir dans la durée, mais il semble que cela règle notre pb de prise en compte des SMS. Si tu peux tester aussi…
j’ai modifié pour passer en MQTT, cela fonctionne plutôt bien dans l’ensemble. comme ceci
mqtt:
topic_prefix: SIM800L
discovery: false
broker: 192.168.1.xxx
port: 1883
username: xxxxx
password: xxxx
discovery_prefix: homeassistant
on_message:
- topic: SIM800L/light/internal_led
payload: 'ON'
then:
- logger.log: "incoming MQTT : ON"
- output.turn_on : Internal_LED
- topic: SIM800L/light/internal_led
payload: 'OFF'
then:
- logger.log: "incoming MQTT : OFF"
- output.turn_off : Internal_LED
on_json_message:
- topic: SIM800L/sensor/sms_message
then:
- logger.log: "MQTT message => Send Message"
- sim800l.send_sms:
recipient: !lambda |-
if (x.containsKey("destinataire") ) {
return x["destinataire"];
}else{
return "+33xxxxxx";
}
message: !lambda |-
if (x.containsKey("message") ) {
return x["message"];
}else{
return "None";
}
J’ai juste un bug lorsque le message MQTT est vide.
[08:59:24][W][json:079]: Increasing memory allocation.
Auriez-vous une idée?
hello
je n’ai toujours pas retrouvé de connexion avec ma SIM Free mobile alors que ma sim Orange c’est OK.
je penche sur une mauvaise réception…
as tu un lien pour l’antenne que tu as acheté?
merci
Salut @carfnann , n’espère pas de miracle avec l’antenne, j’en ai commandé une pour tester et le gain n’a été que de 3 dBm en moyenne, l’orientation joue pas mal, pour ma part j’ai commandé l’antenne dédié au SIM800L.
@+
merci, j’ai tenté avec des antennes que j’avais sous la main mais pas mieux.
au vu de ton retour je préfère quitter Free Mobile, je vais me prendre un petit forfait chez Sosh
On peut ajouter une condition dans les automatisations, pour éviter les sms non sollicités à destination de Home Assistant.
alias: SIM800L - Test SMS
description: Retourne le SMS avec *Test ok* quand on envoie le SMS *Test* (test d'émission réception)
trigger:
- platform: state
entity_id: sensor.esp_sim800_sms_message
to: Test
condition:
- condition: state
entity_id: sensor.sms_expediteur
state: '+33888888888'
action:
- service: esphome.esp_sim800_reply_sms_ok
mode: single
Hello ,
Tout marche top pour moi ! Merci.
Toutfois j’aimerais savoir si il n’était pas possible de communiquer avec l’esp par le biais du cable usb et non wifi ?
Je voudrais le brancher directement sur Ha pour avoir moins de latance ou que ca marche quand il n’y a plus de wifi
Merci pour votre aide
Aies, je ne crois pas. Par le cable, c’est juste une connexion série pour le chargement des binaires et les logs, et pas le protocole client-serveur ESPHome.
Salut.
Pas certain qu’il y ait beaucoup à gagner sur la latence cable vs wifi quand un SMS mets plusieurs secondes à arriver
A défaut au moins que cela continue à fonctionner sans wifi. Je tends à me passer du wifi en domotique
Bon c’est dommage de se passer de ESPHome, qui permet de faire pleins de choses spécifiques DIY. Après j’ai reçu et dois tester un ESP32 équipé d’une prise ethernet….
j’attend qu’ils sortent une wt32-sim900
j’ai un message d’erreur direct au boot :
INFO Reading configuration /config/esphome/lilygo-sim800l-01.yaml...
INFO Detected timezone 'Europe/Paris'
WARNING GPIO4 is a Strapping PIN and should be avoided.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
INFO Starting log output from esp-sim800-01.local using esphome API
INFO Successfully connected to esp-sim800-01.local
[20:03:59][I][app:102]: ESPHome version 2022.6.2 compiled on Jul 30 2022, 19:15:28
[20:04:02][W][sim800l:065]: Not ack. 3 +CME ERROR: SIM PIN required
pourtant, j’ai bien vérifié que j’avais 0000 comme PIN sur un vieux téléphone…
des idées ???
Le pb est le code pin qu’il faut désactiver, et pas juste passer a 0000
C’est bien ca, je l’ai modifié sur un Samsung et désactivé sur un Wiko.
le binary_sensor registered est bien passé à on.