Espressif ESP-TOUCH protocol / Smart Config technology

Overview

Espressif’s ESP-TOUCH protocol implements the Smart Config technology to help users connect ESP8266EX-embedded devices to a Wi-Fi network through simple configuration on a smartphone.

Details

ESP-TOUCH Functional Overview

ESP-TOUCH is supported by the ESP8266 OS SDK and NONOS SDK as well as the ESP-IDF SDK for ESP32.

The SDKs also integrate the AirKiss protocol developed by Wechat, so that users can configure the device either via the ESP-TOUCH App or on the Wechat client-side.

ESP-TOUCH Operation Process

  1. Prepare a device that supports ESP-TOUCH, and enable its Smart Config function.
  2. Connect your smartphone to the router.
  3. Open the ESP-TOUCH App installed on the smartphone.
  4. Input the router’s SSID and password to connect the device to the router. Please, leave a blank in the password box if the router is not encrypted.

Mobile Apps

Resources

Mit dem neuesten Pycom Firmware Release [1] wurde nun scheinbar auch die WiFi Smart Config Technologie von Espressif [2] erschlossen. Meine Bewertung: Wenn auch proprietär ist das durchaus smart und definitiv praktisch – auf jeden Fall für den initialen Konfigurationsschritt [3] weniger esoterisch als die Provisionierung per Audio [4],

Das aktuellste Release für die dazu passende Android App findet sich bei [5]. Wir freuen uns über entsprechende Testergebnisse! ;]


  1. Pycom Firmware Release 1.20.1 ↩︎

  2. SmartConfig — ESP-IDF Programming Guide v4.1-dev-363-g4dac7c7df documentation ↩︎

  3. Wie bekomme ich bei Erst-Inbetriebnahme des FiPys meine WLAN-Zugangsdaten aufs Gerät? ↩︎

  4. Audio based provisioning of an ESP32 node ↩︎

  5. https://github.com/EspressifApp/EsptouchForAndroid/releases/download/v1.1.0/esptouch.apk ↩︎

was soll daran denn esoterisch sein? Das ist ebenso angewandte Physik in Elektronik (und Akustik).


ESP-TOUCH: das wird sicher genau so ein ‘Spaß’ wie beim CC3000 von TI (z.B. im Spark Core), siehe unten.

be aware: SmartConfig™ is ein TM von TI; dafür bekommt sicher Espressif auch auf die Mütze.

Interessant, danke für die Info!


P.S.: Mittlerweile wurden auch Angriffsvektoren dazu unter die Lupe genommen, siehe https://loccs.sjtu.edu.cn/~romangol/publications/wisec18.pdf.

… und – so schließt sich der Kreis – entsprechende Verbesserungsvorschläge ebenfalls in Richtung »Audio Wave Provisioning« gemacht:

Wenn ich bei alten Geräten nur (!) die firmware update habe ich Smart Config automatisch, ohne Nachfrage, :-( die REPL sagt:

Smart Provisioning started in the background
See https://docs.pycom.io/smart for details

Weiter hat sich das Standard-Verhalten bei der Inbetriebnahme verändert. Das Gerät macht keinen AP mehr auf, auch hier muss man nun eine PyCom-App nutzen statt sich mit einem x-beliebigen internetfähigen Gerät zum FiPy als AP zu connecten und so das WLAN einzurichten. Damit ist das hier beschriebene Szenario auch obsolet: Wie bekomme ich bei Erst-Inbetriebnahme des FiPys meine WLAN-Zugangsdaten aufs Gerät?

Finde ich nicht gut!

also vielleicht doch dies hier

default machen…?

Von welchem Prozeß wird denn der AP mode bisher gestartet, kann man das nicht ebenfalls wieder aktivieren (sofern jeweils gewünscht) ?

Ein Szenario bei BOB war: FiPy auspacken, Strom anstecken, mit dem Geräte als AP verbinden, den es mit der alten firmware-Version per default mit leerer boot.py und main.py aufmacht, per FTP Software hochladen.

Man wird das vermtlich entsprechend konfiguriert auch wieder hinbekommen, muss dazu aber das Gerät erst mal anfassen. Ich denke ohne expansion board oder die Pycom-App wird man nach einem factory reset das Ding nicht ins Netz bekommen, was vorher ging.