Démarrage rapide : AtomS3 Lite
En une quinzaine de minutes, vous faites passer un kit de démarrage AtomS3 Lite de la boîte à un appareil en ligne dans Fundamentum. Vous consultez ensuite ses états dans le Hub et changez la couleur de sa LED avec une action. Aucun micrologiciel ni aucun code n'est nécessaire : Fundamentum flashe et enregistre le kit avant son expédition.
Avant de commencer
Vous avez besoin des éléments suivants :
-
Un kit de démarrage AtomS3 Lite. Il contient un M5Stack AtomS3 Lite (un ESP32-S3 doté d'une LED RGB et d'un bouton couvrant toute la face supérieure, sans capteurs) et une carte comportant un code QR et un numéro de série tel que
atoms3-xxxxxx. -
Une source d'alimentation USB-C, comme un chargeur de téléphone ou un port d'ordinateur portable.
-
Une adresse e-mail que vous pouvez consulter dès maintenant.
-
Un réseau Wi-Fi répondant aux exigences suivantes :
- 2,4 GHz uniquement (les réseaux 5 GHz ne sont pas pris en charge).
- WPA2-Personal ou ouvert, sans page de connexion captive (les portails d'hôtel ou d'invités ne fonctionnent pas).
- UDP 123 (NTP) sortant autorisé.
- TCP 8883 sortant vers
mqtts.fundamentum-iot.comet TCP 443 versdevices.fundamentum-iot.comautorisés.
Un point d'accès mobile (hotspot) de téléphone est généralement l'option la plus simple. Si vous en utilisez un, configurez l'appareil depuis un second téléphone ou un ordinateur portable.
-
Facultatif : la CLI
fun, pour les étapes en ligne de commande.
Chaque kit est livré avec son propre projet, nommé kickstarter <serial-number>. Le projet contient un registre, REG1, et un type d'appareil, AtomS3Lite. L'appareil y est déjà enregistré.
1. Rejoindre le projet du kit
- Scannez le code QR figurant sur la carte. La page Join this project s'ouvre.
- Saisissez votre adresse e-mail et sélectionnez Join. La page affiche Check your email.
Seule la première personne à rejoindre un kit peut le faire. Si la page affiche une erreur, consultez ce tableau :
| Message | Signification |
|---|---|
| Someone has already joined this project | Un autre compte a déjà revendiqué ce kit. |
| This device is not part of this project | Le code QR et le numéro de série ne correspondent pas. Vérifiez la carte. |
| This project does not accept invitations from this page | Le projet n'est pas un projet de kit de démarrage. |
2. Créer votre compte
- Ouvrez l'e-mail d'invitation et suivez le lien vers Connect, le service d'authentification de Fundamentum.
- Définissez un mot de passe, ou connectez-vous avec Google ou Microsoft. Votre mot de passe doit comporter au moins 8 caractères, avec des majuscules et des minuscules, un chiffre et un caractère spécial.
Vous obtenez le rôle project_manager sur le projet du kit. Connect vous redirige ensuite vers la page de l'appareil du kit.
3. Connecter l'appareil au Wi-Fi
- Branchez l'appareil à l'alimentation USB-C. La LED devient bleue (démarrage), puis violette (en attente des paramètres Wi-Fi).
- Depuis votre téléphone ou votre ordinateur portable, rejoignez le réseau Wi-Fi ouvert
AtomS3-Demo(sans mot de passe). Le portail de configuration s'ouvre généralement tout seul. Si ce n'est pas le cas, accédez àhttp://192.168.4.1. - Sélectionnez Configure WiFi, choisissez votre réseau, saisissez son mot de passe, puis sélectionnez Save. Le portail affiche Saving Credentials.
- En 30 secondes environ, la LED passe du jaune (connexion au Wi-Fi) à l'orange (connexion à Fundamentum), puis au vert (connecté).
- Appuyez sur le bouton. Un flash blanc confirme que l'appui a été envoyé.
| LED | Signification |
|---|---|
| Bleu | Démarrage |
| Violet | Portail de configuration ouvert, en attente des paramètres Wi-Fi |
| Jaune fixe | Connexion au Wi-Fi |
| Jaune clignotant | Wi-Fi perdu, nouvelle tentative |
| Orange | Connexion à Fundamentum |
| Vert | Connecté |
| Rouge | Fundamentum est inaccessible |
| Flash blanc | Un appui sur le bouton a été envoyé |
4. Consulter la page de l'appareil
La page de l'appareil à laquelle vous avez accédé après votre connexion affiche des vignettes en direct pour la température de la puce, les appuis sur le bouton, la couleur de la LED, le signal Wi-Fi et la durée de fonctionnement, ainsi qu'un graphique des dernières heures. Appuyez plusieurs fois sur le bouton et observez le compteur d'appuis augmenter.
L'appareil publie ses états toutes les 15 secondes et à chaque appui :
| État | Signification |
|---|---|
button_count |
Appuis depuis le démarrage. Remis à zéro au redémarrage de l'appareil. |
wifi_rssi |
Puissance du signal Wi-Fi, en dBm |
uptime_s |
Secondes écoulées depuis le démarrage |
ip |
Adresse IP actuelle |
chip_temp_c |
Température de la puce en °C. Il ne s'agit pas de la température de la pièce. |
wifi_pertes |
Déconnexions Wi-Fi depuis le démarrage |
mqtt_pertes |
Déconnexions MQTT depuis le démarrage |
mqtt_dernier_etat |
État du client MQTT lors de la dernière déconnexion |
reset_reason |
Cause du dernier démarrage |
firmware_version |
Version du micrologiciel |
La plateforme ajoute deux états qui lui sont propres : connection et authentication. Chaque appui envoie également un événement de télémétrie de la forme {"timestamp": ..., "event": "button_press", "button_count": ...}.
Pour savoir si l'appareil est actif, consultez l'horodatage de son dernier état. S'il date de plus de 30 secondes environ, l'appareil ne transmet plus de données.
5. Trouver l'appareil dans le Hub
- Connectez-vous au Hub à l'adresse
https://hub.fundamentum-iot.comavec le même compte. - Sélectionnez le projet
kickstarter <serial-number>dans le sélecteur de projet. - Ouvrez Registries et sélectionnez
REG1, puis ouvrez l'appareil. - Ouvrez l'onglet States pour voir les mêmes valeurs que sur la page de l'appareil. Les onglets Actions, Alerts et Security présentent le reste de la vie de l'appareil dans Fundamentum.
6. Lire les états depuis la ligne de commande
Si vous avez installé la CLI fun, connectez-vous et actualisez les commandes de l'API :
fun login
fun api refresh
fun login ouvre votre navigateur. Consultez Authentification pour plus de détails. Ensuite, trouvez les identifiants du projet et de l'appareil. La page de l'appareil renvoie vers le Hub à l'adresse /devices/<device-id>/edit, et la CLI peut également lister les appareils :
fun api v1 device list-devices --project-id <project-id>
Lisez la dernière valeur de chaque état, avec les horodatages :
fun api v1 device get-last-states --project-id <project-id> --device-id <device-id> --with-timestamps true
Lisez l'historique des états :
fun api v1 device get-list-states --project-id <project-id> --device-id <device-id> --item-per-page 50
7. Changer la couleur de la LED avec une action
Le moyen le plus rapide consiste à toucher l'un des huit échantillons de couleur sur la page de l'appareil. Cela envoie une action à l'appareil.
Pour envoyer vous-même la même action, commencez par trouver le type d'action qui commande la LED. Le micrologiciel se base sur le numéro type du type d'action : 1000 définit la couleur de la LED. L'API, en revanche, a besoin de l'id du type d'action :
fun api v1 action list-action-types --project-id <project-id>
fun api v1 registry list-registries --project-id <project-id>
Notez l'id du type d'action dont le type est 1000, ainsi que l'identifiant du registre REG1. Envoyez ensuite la couleur verte. La charge utile est constituée des trois octets RGB 00 FF 00, encodés en base64 sous la forme AP8A :
fun api v1 action store-action-by-registry --project-id <project-id> --registry-id <registry-id> \
--body '{"action_type_id": <action-type-id>, "devices": [<device-id>], "payload": "AP8A", "description": "LED to green"}'
La LED devient verte. Essayez /wAA pour le rouge ou AAD/ pour le bleu. La charge utile doit être en base64 : une charge utile en texte brut est rejetée avec une erreur HTTP 422. Le micrologiciel accepte également ces formes, encodées en base64 : #RRGGBB, {"r": 0, "g": 255, "b": 0} et {"color": "#00FF00"}.
Vérifiez le résultat :
fun api v1 action get-device-actions --project-id <project-id> --device-id <device-id>
En cas de succès, l'appareil répond couleur appliquee (couleur appliquée), ou format de couleur non reconnu (format de couleur non reconnu) s'il n'a pas pu décoder la charge utile.
Le projet comporte également un type d'action dont le type est 1001, qui réinitialise les paramètres Wi-Fi de l'appareil. Ne l'envoyez que si quelqu'un peut accéder à l'appareil pour configurer de nouveau le Wi-Fi.
Dépannage
- Rouge après le jaune : le réseau bloque NTP (UDP 123), l'appareil ne peut donc pas régler son horloge.
- Rouge après l'orange : le réseau bloque le TCP 8883 ou 443 vers Fundamentum.
- Réseau enregistré disparu : après environ 5 minutes de tentatives infructueuses, l'appareil rouvre
AtomS3-Demopendant 3 minutes afin que vous puissiez configurer de nouveau le Wi-Fi. Pour faire passer l'appareil sur un autre réseau, utilisez le bouton Forget the WiFi network sur la page de l'appareil.
Étapes suivantes
- Concepts clés : découvrez ce que sont le projet, le registre, le type d'appareil et les états que vous venez d'utiliser.
- Authentification : obtenez un jeton pour vos propres intégrations.
- Provisionnement : enregistrez et connectez vos propres appareils.
- Envoyer la télémétrie, les états et les heartbeats : publiez des données depuis votre propre micrologiciel.
- Actions et encodeurs personnalisés : concevez vos propres actions.