Pages

dimanche 18 février 2018

Auto-connexion de deux modules Bluetooth HC-05 et HC-06

Pour certains projets, il peut être utile que deux modules bluetooth se connectent automatiquement dès qu'ils sont à portée l'un de l'autre.
Ci-dessous, vous trouverez la méthode pour auto-connecter un HC-05 (en maître) et un HC-06 (en esclave). Seul un HC-05 pour être maître. On peut aussi faire une paire HC-05/HC-05 avec un maître et l'autre esclave.

Pour cette démonstration, il sera nécessaire d'avoir un adaptateur UART-USB (n'importe quel modèle fait l'affaire, tant qu'il y a du 5 V et du 3.3V)


La procédure va se faire en deux temps : la configuration du HC-06 (débit binaire et mot de passe) puis la configuration du HC-05 (débit binaire, mot de passe et passage en mode maître et liaison avec le HC-06)



Connexion du HC-06 avec un module UART-USB


1) Câbler le module comme ci-dessus

2) Connecter sur le PC le module UART-USB et identifier son port COM (le module BT clignote rapidement)

3) Lancer un logiciel de votre choix pour communiquer en mode AT (ici, j'utilise Termite)

Test de communication : taper AT dans la console, le module doit répondre "OK"


Taper "AT+NAMEESCLAVE", le module répond : "OKsetname" (attention à la syntaxe !). Cela permet de renommer le module.


Taper "AT+PIN1234", le module répond : "OKsetPIN". Cela permet d'être sûr que les deux modules auront le même mot de passe.



Test de reconnaissance sur mon PC : 

C'est fini pour le HC-06, heu, pardon, l'Esclave !







Maintenant, au tour du HC-05.... c'est un peu plus long......

Connexion du HC-05 avec un module UART-USB




1) Câbler le module comme ci-dessus

2) Avant de connecter le module USB, appuyer sur le bouton poussoir qui se trouve sur le HC-05 (non représenté ici) et laisser appuyé pendant la connexion. Une fois alimenté, la DEL doit clignoter lentement.

3) Configurer le logiciel :
Bien respecter les valeurs !!!

Taper "AT", après un premier retour qui indique une erreur (normal), retaper AT, le module répond "OK"


Si on tape "AT+NAME?", on obtient le nom actuel :


Taper "AT+NAME=MAITRE", le module répond "OK". On vérifie par "AT+NAME?" une nouvelle fois :


Taper maintenant "AT+ PSWD=1234" pour affecter le même mot de passe que l'esclave



Il faut indiquer au module qu'il est maître, il faut saisir : "AT+ROLE=1" 


Afin d'être sûr qu'il ne reste pas d'ancien couplage, on tape cette commande afin de les effacer, au cas où..."AT+RMAAD"


Il faut maintenant préciser que le module doit se connecter à un seul autre module, cela se fait par cette commande "AT+CMODE=0"


Nous allons maintenant initialiser le mode qui permet l'appairage et saisissant "AT+INIT"


Attention : A partir de maintenant, il faut alimenter l'Esclave et couper tous les autres modules (sauf le maître) afin de détecter son adresse 

Saisie de la commande "AT+INQ" pour détecter l'Esclave



Selon la réponse du module, après +INQ:, on lit : 98D3:32:308BFF. Ceci est l'information qui nous intéresse. Le reste de l'information n'est pas utile ici.
Pour lier le maître à l'esclave, il faut utiliser la commande "AT+BIND=98D3,32,308BFF". Les deux points doivent être remplacés par des virgules à la main.



On peut contrôler la liaison par "AT+BIND?"



C'est FINI !

A ce niveau, on débranche le maître, on retire le 3.3V et on rebranche sans appuyer sur le bouton poussoir.

Si les deux modules sont alimentés, après quelques secondes, l'esclave ne clignote plus et le maître envoie un clignotement double comme un battement de cœur (c'est une image...)

 Bravo, les deux modules se connectent automatiquement !!!!!















jeudi 15 février 2018

Draw.io, appli en ligne et locale bien utile

Il devient rare de trouver de très bons logiciels gratuits et utilisables en ligne ou installés sur un ordinateur.
Le site draw.io propose un service de création de diagrammes, de dessins, d'illustrations... pour tous les niveaux, tout en proposant des modules bien pratiques comme les IHM Android ou iOS, le Sysml....

Le logiciel est très stable et je n'ai jamais connu de plantage intempestif.

Interface de l'application :

L'import de modules supplémentaires :
 Le menu pour télécharger le logiciel en local :
A noter que les plugins sont les mêmes en local qu'en ligne.

Il est possible d'enregistrer ses travaux sur les nuages ou sur tout support physique...



Prise en main du logiciel Nextion et première IHM

Sur cet article, vous allez pouvoir découvrir les bases de la création d'une IHM avec un écran Nextion et son éditeur.

1) Lancer le logiciel 

2) Cliquer sur "New" et une fenêtre va s'ouvrir pour nommer le fichier (extension hmi): donner un nom...

3) Choisir le modèle d'écran et son orientation :

on change de menu en cliquant sur "DISPLAY"


Bien laisser "iso-8859-1"


Cet écran apparait :


A faire impérativement à cette étape : créer au-moins une police !

Cliquer sur "Tool Font generator"
Si cela n'est pas fait, il y aura des messages d'erreurs lors des compilations

4) A partir de cet écran, choisir une police et une taille :


5) Donner un nom à cette police et cliquer sur "generate font" (et chose bizarre, il faudra à nouveau l'enregistrer au format zi)

Si tout se passe bien, ce message apparait :

En cliquant sur ok, ce message apparait à son tour :
Bien entendu, on clique sur YES !

On peut quitter ce menu pour le moment en cliquant sur la croix en haut à droite.

La police a bien été insérée au projet :

6) Insertion d'un fond (c'est plus joli !) :
Bien choisir une image au format de l'écran

Il faut d'abord charger l'image :
Cliquer sur "+" et choisir une image
Si l'image a bien été insérée, elle apparait dans le gestionnaire d'image :
Cliquer sur l'outil "image" dans la zone d'outils :
Un simple clic suffit pour insérer une zone image :
Il faut affecter notre image à la zone :
Double cliquer sur"pic" et là, un choix peut être fait :
Choisir l'image de notre choix (ok, pas difficile ici) :


6) Insertion d'un texte :

Comme pour une image, cliquer sur l'outil "text" :
Le cadre apparait avec "Newtxt". Il est possible de le déplacer à la souris ou plus précisément en changeant ses coordonnées :
Pour changer le texte, il suffit de changer le champ "txt" : 
Si le texte est coupé, pas de souci, il suffit d'agrandir la zone à la souris :

7) Copier l'IHM générée sur l'écran :


Il y a deux possibilités : soit via un adaptateur UART-USB, soit avec une carte micro SD.

A venir dans un prochain article......














mardi 30 janvier 2018

Écran NEXTION - découverte

Une nouvelle rubrique va voir le jour, celle consacrée aux superbes écrans tactiles NEXTION. Ceux-ci sont interfacés avec un microcontrolleur par un simple UART, donc une liaison RXTX. Aucune bibliothèque spécifique obligatoire (bien qu'il existe des librairies dédiées mais pas nécessaires).

Très bientôt, une série de tutos vont être mis en ligne.

En attendant, vous pouvez aller faire un tout ici : https://nextion.itead.cc et télécharger le logiciel (il va être très utile et surtout..... indispensable !).



Une de mes premières IHM (Interface Homme Machine) :

Je sais, je ne suis pas un artiste......

Réparer une carte Arduino plantée....

Il se peut qu'un jour, une carte Arduino plante suite à une mauvaise manipulation. Elle ne répond plus et il est impossible de téléverser le moindre programme. 

Pas de panique ! il reste une solution !

Avec cet appareil vraiment peu cher (moins de 5€), on peut reprogrammer le bootloader d'une carte :



Le connecter sur la carte à réparer en respectant bien le sens du connecteur :



 Le câblage ressemble à cela :


Connecter le programmateur sur un port USB, les DELS doivent s'allumer :


Dans l'IDE Arduino, choisir le programmateur :
Enfin, cliquer sur "Graver la séquence d'initialisation" :

Ce message apparaît pendant les opérations :

A la fin, cette erreur peut être signalée, ce n'est pas grave..... 


Le principal, c'est que la LED 13 clignote à nouveau, là, c'est bon, la carte est réparée !!!!!


NdA : désolé pour la qualité des photos, j'ai fait cela à la va-vite ;-)

mardi 16 janvier 2018

Problèmes avec Nahimic et Qt

De très nombreux logiciels sont développés avec Qt. En STI2D, on peut citer Proteus, Fritzing, Sigrok......

Il peut se produire parfois des bugs : ces logiciels "plantent" sans raison, quelques secondes après leur lancement.

Après de très nombreuses recherches, j'ai enfin une piste : C'est dans mon cas, Nahimic (gestion des effets sonores) qui bloque les programmes développés en Qt (sous Windows 10).

Après désinstallation, tout fonctionne !