Table des matières:
- Étape 1: Évaluation/modification
- Étape 2: Programmation du HC05
- Étape 3: HC06 revisité
- Étape 4: Configuration de HC05 à HC06
Vidéo: OldMan et Bluetooth2 : 4 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
Donc, ce Lazy Old Geek (L. O. G.) a finalement obtenu un module Bluetooth HC05 d'AliExpress.com. J'en ai commandé un après avoir écrit ce Instructable:
www.instructables.com/id/OldMan-and-Blueto…
Eh bien, j'ai passé plusieurs heures à essayer de faire fonctionner cela en mode commande sans succès. J'ai même détruit un module HC05 (appliquant probablement de mauvaises tensions) et j'ai donc dû en acheter un autre.
ASTUCE: le mode de commande communique avec le module HC05 ou HC06 lui-même. Le mode de communication parle à un autre appareil Bluetooth.
Ce que j'ai trouvé, c'est beaucoup de différences entre HC05 et HC06. Le HC05 peut être maître ou esclave, le HC06 est esclave uniquement. Fondamentalement, un maître peut parler à un esclave, deux esclaves ne peuvent pas se parler. Les HC05 et HC06 ont des commandes différentes. Le HC05 doit être configuré matériellement pour passer en mode commande, il peut avoir différents débits en bauds pour la communication et le mode commande.
Le HC06 est toujours en mode communication et commande. Le réglage du débit en bauds pour l'un changera l'autre.
ASTUCE: Gardez une trace de cela car je ne l'ai pas fait et j'ai eu quelques problèmes.
ASTUCE: différents HC05 et HC06 peuvent être différents de ceux que j'ai reçus.
Le HCO6 exécutera des commandes, mais n'affichera pas toujours les résultats modifiés, par ex. changement de nom.
Étape 1: Évaluation/modification
Ci-joint un schéma HC05 similaire au mien. Deux différences que je connais sont qu'il y a une résistance de 2,2K entre PIO11 (34) et la broche EN et que le régulateur de 3,3v est un boîtier à 3 broches et n'a pas de broche CE. La photo ci-jointe est un schéma balisé de ce que je pense avoir.
À des fins de programmation, ce qui est important, c'est que la broche 34 Key soit connectée à la broche EN via une résistance de 2,2K. (Il est également connecté au bouton-poussoir, l'autre côté est connecté à 3.3V)
Le HC05 d'origine nécessite une alimentation de 5 V bien qu'il fonctionne avec des signaux de 3,3 V, j'ai donc modifié mon HCO5 pour utiliser 3,3 V à la place. J'ai retiré le régulateur 3,3 V et lancé un cavalier de la broche VCC directement à 3,3 V. Ceci est montré sur le schéma modifié et mon image HC05 modifiée.
Soit dit en passant, le jeu de commandes HC05.pdf ci-joint contient des informations précieuses sur l'utilisation du HC05. Malheureusement, il n'est pas très convivial.
Étape 2: Programmation du HC05
J'ai décidé que le moyen le plus simple d'utiliser le HC05 était de le connecter à l'un de mes adaptateurs série CP2102 3.3V comme je l'ai fait dans Old Man And Bluetooth Instructable avec un HC06. Voir photo et schéma.
ASTUCE IMPORTANT: Pour alimenter le HC05 en mode commande, la broche PIO11 (34) doit être élevée avant que 3,3 V ne soit appliqué. La broche EN de mon HC05 est connectée à PIO11 via une résistance de 2,2K, il suffit donc de la lier à 3,3V. Le schéma montre cela comme les broches du programme, mais placez simplement un cavalier de 3,3 V à la broche EN. Assurez-vous de le faire avant de mettre sous tension. Sur le mien, vous pouvez savoir si vous êtes en mode commande car la LED HC05 clignotera lentement. S'il clignote rapidement, cela signifie que vous êtes en mode couplage et que vous devez réessayer.
ASTUCE: Le HC05 en mode commande parle toujours à 38 400 bauds. Toutes les commandes sont en majuscules et doivent être suivies d'un CR et d'un LF. (Ceci est différent du HC06)
ASTUCE: Le format de la commande est très strict. Utilisez toujours des capuchons. Ils commencent tous par "AT" Suivez-les exactement, vous ne pouvez pas ajouter d'espaces là où ils ne sont pas affichés.
Démarrez Arduino. Allez dans « Outils » « Port » et sélectionnez le port Com auquel le CP2102 est connecté.
Ouvrez le moniteur série. Vers le bas de cette fenêtre, sélectionnez "Both NL and CR" et "38400 baud". (NL signifie New Line qui est le même que LF qui est Line Feed).
Vers le haut, il y a une case à côté du bouton Envoyer, cliquez dessus.
Sur votre PC, activez le verrouillage des majuscules
Tapez AT
La grande fenêtre devrait afficher « OK ».
Vous communiquez en mode commande
Quelques commandes qui fonctionnent sur la mienne
À
AT+RESET
AT+VERSION ?
AT+NOM ?
AT+ADDR ? ADDR:98D3:31:F5CB41
AT+NAME=BT1 Cela change le nom en BT1
AT+RLE ? 0 = Esclave 1 = Maître
Étape 3: HC06 revisité
L'une des principales différences entre le HC05 et le HC06 est que le HC05 peut être maître ou esclave alors que le HC06 est uniquement esclave. Cela signifie que vous pouvez parler entre un HC05 et un HC06. Cependant, il existe de nombreuses autres différences.
Alors que j'aurais pu utiliser un Arduino pour configurer mon HC06, j'ai choisi d'utiliser un CP2102 3.3v. Voir l'image
Connexions
CP2102 HC06
Terre Terre
Vcc Vcc
TXD RXD
RXD TXD
C'est fondamentalement le même que le HC05 sauf que mon HC06 n'a que quatre broches.
Mon CP2102 est modifié pour fournir 3.3V
Mon HC06 est modifié pour accepter 3.3V
Le CP2102 USB est connecté à mon PC. Sur mon PC, j'utilise l'IDE Arduino.
Sélectionnez le « port » approprié et ouvrez le moniteur série.
Sur mon HC06, la LED rouge clignote rapidement, ce qui indique qu'il est prêt à s'appairer mais peut également recevoir des commandes.
Certaines de ces informations proviennent de Martyn Currey:
www.martyncurrey.com/arduino-and-hc-06-zs-0…
Donc chaque type de HC06 peut être différent, le mien renvoie la VERSION linvorV1.5
Pour mon HC06 (et probablement tous), il n'y a pas de procédure spéciale pour le mettre en mode commande. Apparemment, s'il n'est pas couplé, vous pouvez toujours envoyer des commandes via le port série.
ASTUCE: vous ne pouvez envoyer de commandes à aucun module Bluetooth (à ma connaissance) via Bluetooth.
Ouvrez le moniteur série
Cliquez sur la première case en bas de Serial Monitor et réglez sur "pas de fin de ligne"
Initialement, mon débit en bauds était de 9600 bauds
Sur votre PC, activez le verrouillage des majuscules
Dans le top case tapez AT
Tapez Entrée ou appuyez sur le bouton « Envoyer »
L'écran devrait afficher OK
ASTUCE: Si vous n'obtenez pas de confirmation, cela peut être dû au fait que le débit en bauds a été modifié ou qu'il est différent. Vous pouvez en essayer plusieurs, jusqu'à ce que vous trouviez, espérons-le, le bon.
REMARQUE: En envoyant plusieurs commandes, les données de réponse ne passent pas à la ligne suivante. Vers le bas, vous pouvez cliquer sur Effacer la sortie.
Commandes qui fonctionnent pour moi:
Réponse de commande
AT+VERSION OKlinvorV1.5
AT+NAMEFred renvoie OKsetname
(Il ne vous dit pas le nom mais s'il est connecté par Bluetooth, il apparaîtra.)
REMARQUE: si vous modifiez le nom, l'ancien nom s'affichera sur votre smartphone jusqu'à ce que vous vous déconnectiez et reconnectiez.
AT+PINxxx Je ne l'ai pas essayé. La valeur par défaut est 1234
AT+BAUD8 Change le débit en bauds à 115200
La réponse est le débit en bauds, par ex. 115200
(Après avoir modifié le débit en bauds, vous devez modifier le débit en bauds du moniteur série à 115 200 pour envoyer d'autres commandes.
Options de débit en bauds
1 1200
2 2400
3 4800
4 9600 (par défaut)
5 19200
6 38400
7 57600
8 115200
9 230400
Un 460800
B 921600
C 1382400
REMARQUE: je n'ai pas essayé plus de 8 115 200. J'ai entendu parler de personnes essayant des taux plus élevés avec de mauvais résultats.
Les autres commandes censées fonctionner mais non testées:
AT+PN pas de contrôle de parité (par défaut)
Contrôle de parité impaire AT+PO
Contrôle de parité paire AT+PE
IMPORTANT: À ce stade, je vous suggère de choisir un nom unique et de le mettre. Je vous suggère également de décider du débit en bauds auquel vous souhaitez communiquer, de le mettre et de marquer votre HC06 avec.
Étape 4: Configuration de HC05 à HC06
Ok, ce Instructable m'a été le plus utile:
www.instructables.com/id/How-to-Configure-…
Ma configuration:
ESCLAVE recherche d'adresse
HC06 avec CP2102 (automatiquement en mode commande)
Branchez le câble USB CP2102 pour alimenter le HC06.
La LED HC06 doit clignoter rapidement (mode Pairing).
Sur votre smartphone, ouvrez les paramètres
Aller au Bluetooth
Rechercher un nouvel appareil
Si vous voyez quelque chose comme HC06 ou le nom que vous lui avez donné, sélectionnez-le.
Vous verrez très probablement une chaîne de chiffres comme 00:12:09:27:19:13, c'est probablement ça.
Notez cette adresse. (Le numéro est son adresse unique)
Sélectionnez-le
Lorsqu'on vous demande un code PIN, tapez 1234.
Le nom doit être affiché.
Si vous n'avez toujours pas l'adresse, sous « Périphériques précédemment connectés », sélectionnez le nom.
Cliquez sur Info, l'adresse devrait s'afficher. Écris le.
S'il ne s'affiche pas, quittez la configuration et ouvrez l'application Bluetooth Terminal HC-05.
Sous Appareils jumelés, recherchez le nom, l'adresse doit être en dessous, notez-le.
Configuration de l'esclave
Si le voyant HC06 ne clignote pas, éteignez et rallumez pour le remettre en mode d'appairage.
Démarrer Arduino
Sous « Outils » « Port » Sélectionnez le bon port Com
Ouvrir le moniteur série
Au bas de cette fenêtre
Sélectionnez « Pas de fin de ligne » et « 9600 bauds »
MAÎTRE
HC05 avec CP2102 réglé en mode commande (EN ponté haut)
Branchez le câble USB du CP2102 au PC
J'ai découvert que je pouvais ouvrir deux Arduinos
Sur le deuxième Arduino, sélectionnez le bon port Com pour HC05
Ouvrir le moniteur série
Au bas de la fenêtre
Sélectionnez « Both NL&CR » et « 38400 bauds »
Ce qui suit est de ce qui précède Instructable
Configuration principale
Les commandes AT requises pour définir la configuration:
RÉPONSE DU COMMANDEMENT Ce qu'il fait
AT+ROLE=1 OK Définir HC05 comme maître
AT+CMODE=1 OK Se connecter à une adresse spécifique
REMARQUE: L'adresse HC06 est probablement formatée comme ceci 00:12:09:27:19:13
La commande BIND attend ce 0012, 09, 27193 (vous enlevez les deux points, prenez les quatre premiers chiffres, puis la virgule, les deux chiffres suivants, puis la virgule, puis les six derniers chiffres)
AT+BIND=0012, 09, 271913 OK Se connecte/se lie avec HC06
(Au fait, AT+BIND? répond avec +BIND:12:9:271913)
(Vous voulez que la vitesse de communication du HC05 soit la même que celle du HC06) par exemple:
AT+UART=115200, 0, 0 OK Débit en bauds 115200 (1 bit d'arrêt, pas de parité)
Pour tester les communications:
Retirez le cavalier HC05 EN, éteignez et rallumez.
Lorsque les deux sont connectés, la LED HC05 clignotera deux fois toutes les quelques secondes, la LED HC06 restera allumée en continu.
Réglez les deux ports com sur le même débit en bauds (quel que soit votre configuration)
Réglez les deux sur « Both NL&CR »
Tapez quelque chose sur Serial Monitor1, Serial Monitor2 devrait l'afficher.
Tapez quelque chose sur Serial Monitor2, Serial Monitor1 devrait l'afficher.
Félicitations, vous communiquez via Bluetooth
Maintenant, l'Instructable ci-dessus a quelques croquis sur la façon d'utiliser les modules avec Arduino. Pour ce Instructable, je ne vais pas approfondir cela.
Conseillé:
Comment fabriquer une antenne double biquade 4G LTE en quelques étapes faciles : 3 étapes
Comment créer une antenne double biquade 4G LTE Étapes faciles : La plupart du temps, je n'ai pas une bonne force de signal pour mes travaux quotidiens. Donc. Je recherche et essaye différents types d'antenne mais ne fonctionne pas. Après une perte de temps, j'ai trouvé une antenne que j'espère fabriquer et tester, car ce n'est pas un principe de construction
Game Design dans Flick en 5 étapes : 5 étapes
Game Design dans Flick en 5 étapes : Flick est un moyen très simple de créer un jeu, en particulier quelque chose comme un puzzle, un roman visuel ou un jeu d'aventure
Système d'alerte de stationnement en marche arrière Arduino - Étapes par étape : 4 étapes
Système d'alerte de stationnement en marche arrière Arduino | Étapes par étape : dans ce projet, je vais concevoir un circuit de capteur de stationnement inversé pour voiture Arduino simple à l'aide d'un capteur à ultrasons Arduino UNO et HC-SR04. Ce système d'alerte de marche arrière basé sur Arduino peut être utilisé pour une navigation autonome, une télémétrie de robot et d'autres r
Détection de visage sur Raspberry Pi 4B en 3 étapes : 3 étapes
Détection de visage sur Raspberry Pi 4B en 3 étapes : dans ce Instructable, nous allons effectuer une détection de visage sur Raspberry Pi 4 avec Shunya O/S en utilisant la bibliothèque Shunyaface. Shunyaface est une bibliothèque de reconnaissance/détection de visage. Le projet vise à atteindre la vitesse de détection et de reconnaissance la plus rapide avec
OldMan et Bluetooth : 5 étapes
OldMan et Bluetooth: mise à jour d'avril 2020, grâce à un commentaire d'un lecteur, Krasla, je suis maintenant en mesure d'entrer en mode commande avec JDY-31s.Je vais essayer de participer au concours Sensor.Donc, ce Lazy Old Geek (LOG) vient de terminé un projet GPS : https://www.instructables.com/id/Old-Ma