Table des matières:
Vidéo: Bambou Clair (Lampe Connectée) : 3 Étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:08
Bonjour et bienvenue!
Light Bamboo est une lampe connectée qui s'allume lorsqu'une notification est reçue sur le smartphone Android auquel elle est connectée. Le but de cette instructable est de vous montrer l'étape de conception du projet: de l'architecture matérielle à la connexion Bluetooth Low Energy (BLE) et à la création d'applications Android.
Pour notre lampe, nous avons choisi une plante en plastique pour un design de décoration cool. Pour ce projet, les notifications qui s'affichent proviennent des applications suivantes: appels, sms/mms, facebook, messenger, instagram, whatsapp et gmail. Une couleur claire est attribuée pour chaque type de notification.
Pour ce projet, vous aurez besoin de:
- Un uC avec module BLE intégré: nFR51822 RedBearLab
- 3 anneaux NeoPixel (12 LED RVB)
- Un smartphone Android
- Android Studio
Chaque notification a une priorité spécifique, en fonction de son importance. Par exemple, une notification d'appel entrant est plus importante qu'une notification Facebook. Dans ce cas, la couleur des LED sera associée à la notification d'appel entrant.
Le smartphone sur lequel nous avons développé l'application est un Samsung Galaxy A5.
Étape 1: partie matérielle
Notre architecture est assez simple.
Connectez les broches NeoPixel Ring à la carte nRF51822 comme suit:
- Broche de données d'entrée de l'anneau NeoPixel au port 3 de l'uC.
- Vcc de l'anneau NeoPixel au 3.3V de l'uC.
- GND de l'anneau NeoPixel au GND de l'uC.
Vous pouvez remarquer que nous n'utilisons pas la broche Output Data de l'anneau NeoPixel. C'est parce que les broches de données d'entrée des trois anneaux NeoPixel que nous utilisons dans ce projet sont toutes connectées au même port de la carte nRF51822 (broche 3).
Étape 2: partie logicielle
1. La communication Bluetooth Low Energy:
Dans une communication BLE, le serveur (qui est dans notre cas l'uC) et le client (le smartphone) échangent des données à l'aide de transactions GATT. Dans ces transactions, les données sont organisées hiérarchiquement en sections appelées services, qui regroupent des éléments de données utilisateur conceptuellement liés appelés caractéristiques. Dans notre cas, l'encapsulation des données est simple puisque nous n'avons qu'une seule information à transmettre du client au serveur (voir l'image ci-dessus).
- côté serveur: Pour pouvoir utiliser la carte nrf51822 en tant que serveur BLE, installez d'abord la librairie "BLEPeripheral.h" sur l'IDE Arduino. Cette bibliothèque fournit des fonctions prêtes à l'emploi pour créer les services et les caractéristiques et la publicité.
- côté client: Pour démarrer une communication BLE dans Android Studio, configurez d'abord les autorisations BLE dans le fichier Manifest. Ensuite, dans le fichier activity_main.xml, ajoutez 4 boutons: analyser, arrêter l'analyse, se connecter et se déconnecter qui permettront à l'application de rechercher les appareils BLE à proximité, d'arrêter l'analyse, de se connecter et de se déconnecter à un appareil. Dans le fichier main_activity.java, implémentez les fonctions associées aux boutons précédents: startScanning(), stopscanning(), connectToDeviceSelected(), disconnectDeviceSelected(). Enfin, implémentez les fonctions de rappel qui sont appelées lorsque l'état du client change.
2. Gestion des notifications
- côté client (sur Android Studio): Pour écouter les notifications provenant du smartphone, implémentez un écouteur de notification qui s'active lorsqu'une notification se produit dans la barre d'état. Cet écouteur de notification enverra un "message", appelé intention, à l'activité principale lorsqu'une notification est publiée ou supprimée. Ce "message" contient un code de notification qui permet d'identifier l'application qui a posté la notification. Pour traiter la notification dans l'activité principale, créez un récepteur de diffusion qui recevra le message de l'écouteur de notification. Ensuite, selon le code de notification, un caractère différent est envoyé au serveur.
- côté serveur (sur Arduino IDE): la notification qui a la priorité la plus élevée est affichée.
Étape 3: Étape 3: Annexes
Ici, vous trouverez tout le code source.
Conseillé:
Lampe frontale / Booster de lampe de poche : 13 étapes (avec photos)
Lampe frontale / Booster de lampe de poche : La lampe frontale est modifiée à l'aide des circuits d'une lampe de jardin solaire. Il vous permettra d'utiliser seulement 2 piles au lieu de 3. Ceci est utile lors de l'achat de piles. Souvent, ils ne sont vendus qu'en packs de 2 ou 4 mais pas de trois. Il peut également permettre 'dead ba
Lampe à pochoir - Une lampe, plusieurs nuances : 5 étapes
Lampe au pochoir - une lampe de nombreuses nuances : cette instructable vous montrera comment faire une lampe simple avec des nuances commutables (c'est un abat-jour)
Lampe Lego ultra-lumineuse à partir de 14 $ Lampe de bureau Radio Shack : 8 étapes (avec photos)
Lampe Lego super lumineuse à partir de 14 $ Lampe de bureau Radio Shack : Avec un peu d'aide de votre chat, convertissez facilement une lampe de bureau à 14 $ de Radio Shack en une puissante lampe Lego avec de nombreuses utilisations. De plus, vous pouvez l'alimenter par secteur ou par USB. J'achetais des pièces pour ajouter de l'éclairage à un modèle Lego lorsque j'ai trouvé cela par accident
Microscopes à fluorescence et à fond clair à bas prix : 9 étapes (avec photos)
Microscopes à fluorescence et à fond clair à faible coût : La microscopie à fluorescence est une modalité d'imagerie utilisée pour visualiser des structures spécifiques dans des échantillons biologiques et autres échantillons physiques. Les objets d'intérêt dans l'échantillon (par exemple les neurones, les vaisseaux sanguins, les mitochondries, etc.) sont visualisés car fluorescents
Cultivez votre propre monopode en bambou pliable : 15 étapes
Cultivez votre propre monopode en bambou pliable : il s'agit d'un monopode en bambou pliable à 3 segments à utiliser avec des appareils photo légers, de petites longues-vues et tout ce que vous voudrez peut-être tenir sans avoir à transporter un trépied. C'est un produit simple, un bâton creux tenue avec un vélo