esptouch_flutterPlugin Flutter pour ESP-TOUCH pour configurer le réseau pour les appareils ESP-8266 et ESP-32. Fonctionne sur iOS et Android.
esptouch_flutter est Fluzter Plugin Package qui contient une API pour ESP-Touch écrite en fléchette combinée à une implémentation spécifique à la plate-forme pour Android en utilisant Java et IOS en utilisant Objective-C.
Ce package offre une personnalisation élevée aux tâches ESP Touch et une interface DART idiomatique pour le lancement de tâches. Les paramètres de tâche personnalisés permettent aux utilisateurs de ce plugin de modifier la durée de la tâche, vous pouvez la définir à des heures, si c'est ce dont votre flux de travail nécessite.
pub.dev
Pour un exemple complet de l'application , consultez l' example de dossier dans le référentiel.
L'exemple d'application vous permet de configurer WiFi SSID, BSSID, le mot de passe, la durée de la tâche, le nombre de tâches attendu et bien d'autres.
Pour une application la plus simple possible , consultez le référentiel smaho-engineering/esptouch_flutter_kotlin_example .
import 'package:esptouch_flutter/esptouch_flutter.dart' ;
// Somewhere in your widget...
final ESPTouchTask task = ESPTouchTask (
ssid : 'My WiFi network' ,
bssid : 'ab:cd:ef:12:23:34' ,
password : 'I love SMAHO' ,
);
final Stream < ESPTouchResult > stream = task. execute ();
final printResult = ( ESPTouchResult result) {
print ( 'IP: ${ result . ip } MAC: ${ result . bssid }' );
};
StreamSubscription < ESPTouchResult > streamSubscription = stream. listen (printResult);
// Don't forget to cancel your stream subscription.
// You might cancel after the UDP wait+send time has passed (default 1 min)
// or you could cancel when the user asked to cancel
// for example, either via X button, or popping a route off the stack.
streamSubscription. cancel (); Si vous souhaitez personnaliser la tâche, fournissez une instance ESPTouchTaskParameter en tant que taskParameter sur ESPTouchTask . Dans l'exemple de code, je spécifie les types de clarté, mais vous pouvez omettre les types car Dart peut les déduire.
final ESPTouchTask task = ESPTouchTask (
ssid : 'My WiFi network' ,
bssid : 'ab:cd:ef:12:23:34' ,
password : 'I love Flutter and ESP-Touch, too' ,
// Tweak the task using task parameters
taskParameter : ESPTouchTaskParameter (waitUdpReceiving : Duration (hour : 12 )),
);
// You can still stop the task at any point by calling .cancel on the stream subscription:
streamSubscription. cancel ();Dans un exemple réel, vous obtiendrez les informations d'identification WiFi de l'utilisateur et vous pouvez soit afficher l'appareil configuré, l'enregistrer localement dans SQLite ou l'envoyer à votre backend.
Utilisez un vrai téléphone pour le développement. Le plugin ne fonctionnera pas dans les émulateurs et les simulateurs, vous avez donc besoin de téléphones réels pour le développement. Exécutez flutter devices pour vérifier.
Préparez vos appareils intégrés. Pour vérifier que l'application ESP-TOUCH fonctionne, vous avez besoin de matériel avec ESP8266 et ESP32 pour vous connecter à votre réseau WiFi.
connectivity Vous pouvez fournir un moyen facile d'obtenir SSID et BSSID du réseau WiFi actuel. Utilisez le plugin connectivity pour découvrir l'état du réseau (WiFi et mobile / cellulaire) sur Android et iOS.
À l'aide de ESP-TOUCH, vous pouvez configurer le réseau pour les appareils ESP8266 et ESP32.
Le protocole ESP-Touch d'ESPRESSIF implémente la technologie Smart Config pour aider les utilisateurs à connecter les appareils ESP8266EX- et ESP32-Eldded à un réseau Wi-Fi via une configuration simple sur un smartphone.
Vous pouvez en savoir plus sur ESP-TOUCH ici:
.pdf )EspressifApp/EsptouchForIOS ESP-TOUCH pour iOS en utilisant objectif-cEspressifApp/EsptouchForAndroid ESP-TOUCH pour Android en utilisant JavaLes modules iOS et Android originaux devaient être fortement personnalisés et modifiés afin de prendre en charge les paramètres de tâche personnalisés.
En commençant par iOS 14.6, le droit com.apple.developer.networking.multicast est nécessaire, pour permettre la diffusion de packages IP sur iOS, qui est utilisé par Esptuch.
Pour l'activer, vous devez demander ici en Antitleant en tant que titulaire de compte. Une fois que vous êtes inscrit, vous pouvez le configurer ici 
Il s'agit d'un projet open-source construit par l'équipe d'ingénierie Smaho de Munich pour envelopper les kits d'applications mobiles ESP-Touch d'ESPRESSIF.
Si vous venez de l'arrière-plan IoT, vous ne savez peut-être pas ce qu'est Flutter.
Flutter est la boîte à outils d'interface utilisateur de Google pour créer de belles expériences natives pour iOS et Android à partir d'une seule base de code. Pour aider à démarrer avec Flutter, consultez la documentation en ligne. Ce référentiel contient un package de plugin Flutter pour ESP-TOUCH. Un package de plugin est un package spécialisé qui inclut le code d'implémentation spécifique à la plate-forme pour Android et iOS. La partie Flutter de l'application envoie des messages à son hôte (iOS ou Android) sur un canal de plate-forme. Ce plugin s'appuie fortement sur les canaux de plate-forme (canaux d'événements).