Votre carte Arduino peut communiquer avec d’autres appareils(Smartphone, ordinateur ou un autres microcontrôleurs) par liaison Bluetooth en utilisant un module HC-05 (maître/esclave). Cela vous permet de connecter la carte Arduino à un autre système afin d’envoyer et de recevoir des données. La communication par Bluetooth permet, par exemple, de piloter votre robot via une application Smartphone, récupérer les mesures d’un capteur sur votre ordinateur ou encore permettre à deux robots de communiquer entre eux.
Prérequis : Communication Série avec Arduino
Matériel
- Ordinateur
- Arduino UNO x2
- câble USB pour connecter l’Arduino à l’ordinateur x2
- Module Bluetooth HC-05 ZS-040 x2 (ou 1x HC-06 et 1x HC-05)
- Câbles Dupont M/F
Présentation du module Bluetooth HC-05
Le module Bluetooth HC-05 présente 6 broches pour permettre d’établir la connexion.
- VCC broche d’alimentation. Typiquement connectée à la broche 5V de l’Arduino.
- GND masse. Typiquement connectée à la broche GND de l’Arduino
- RX broche de réception. Typiquement connecté à la broche de transmission (TX) de l’Arduino
- TX broche de transmission. Typiquement connecté à la broche de réception (RX) de l’Arduino
- State retourne 1 lorsque le module est connecté
- Key ou EN doit être alimentée pour entrer dans le mode de configuration et ne doit pas être connecté pour être en mode communication.
La particularité du module Bluetooth HC-05 est qu’il peut être utilisé en mode esclave (dans ce cas il est équivalent à un module HC-06 et s’utilise de la même manière) ou en mode maître, ce qui veut dire qu’il peut de manière autonome se connecté à un autre module Bluetooth (HC-06, HC-05 en mode esclave ou autre) sans action extérieure.
Schéma de câblage pour la configuration
ATTENTION :
- Nous utilisons les broches 2 et 3 pour la communication série avec Arduino UNO. Selon la carte que vous utilisez, ces broches peuvent ne pas être compatibles avec la communication SoftwareSerial. Notamment, pour les carte Mega, Micro et leonardo. Vérifiez la documentation.
- La logique du module Bluetooth étant en 3,3V, il est conseillé d’utiliser un pont diviseur de tension afin de réduire la tension de 5V de l’Arduino (résistance 1k entre pin3 et Rx, et 2k Ohm entre Rx et GND).
Configuration du module HC-05
La configuration du module Bluetooth peut être intéressante pour vérifier le bon fonctionnement du module et pour modifier ses paramètres notamment lorsque vous voulez utiliser le module en mode maître. Le module doit être alimenté mais non-appairé et la broche Key/EN doit être à alimentée à 3V à l’allumage du module. Lorsque le module est en mode configuration, la LED s’allume deux secondes toutes les deux secondes.
Ouvrez le moniteur série de l’Arduino et assurez vous que l’option de fin de ligne affiche « Nouvelle ligne » et que le baudrate est réglé à 9600.
Notez que le module Bluetooth HC-05 entre dans le mode AT avec une vitesse de communication (baudrate) de 38400 bps.
Code de configuration
Pour gérer la communication avec le module HC-05, nous utilisons la librairie SoftwareSerial.h qui permet de créer un port série autre que celui utilsé par le port USB. Le code suivant permet de modifier les paramètres du module HC-05 (nom, le code PIN, la vitesse de communication(baudrate), etc.) et de trouver des informations comme le numéro de version du firmware.
#include <SoftwareSerial.h> #define rxPin 2 #define txPin 3 #define baudrate 38400 String msg; SoftwareSerial hc05(rxPin ,txPin); void setup(){ pinMode(rxPin,INPUT); pinMode(txPin,OUTPUT); Serial.begin(9600); Serial.println("ENTER AT Commands:"); hc05.begin(baudrate); } void loop(){ readSerialPort(); if(msg!="") hc05.println(msg); if (hc05.available()>0){ Serial.write(hc05.read()); } } void readSerialPort(){ msg=""; while (Serial.available()) { delay(10); if (Serial.available() >0) { char c = Serial.read(); //gets one byte from serial buffer msg += c; //makes the string readString } } }
Pour une bonne communication, assurez-vous de sélectionner le bon baudrate dans le moniteur série ainsi que « nouvelle ligne »(NL) dans les paramètres de communication.
Commandes de configuration
Autre le fait qu’il puisse être utilisé en mode maître, le module Bluetooth HC-05 vous permet aussi de connaître ses paramètres enregistrés.
en général, si vous tapez dans le moniteur série AT+<command>?, vous obtenez la valeur enregistré dans le module (ex: AT+PSWD? pour connaitre le code PIN du module). Si vous entrez la ligne AT+<command>=<Param>, vous définissez la valeur du module (ex: AT+PWSD=0000 pour modifier le code PIN en 0000).
Voici certaines commandes AT de base à connaître:
- Pour tester la communication, tapez AT dans le monitor série de l’IDE Arduino. Si tout va bien, le module doit répondre OK.
- Pour modifier le nom du module, tapez AT+NAME=<Param> module. Le module devrait répondre OK. (Ex: Pour changer le nom du module en BTM1 tapez AT+NAME=BTM1)
- Pour modifier le code PIN du module, tapez AT+PSWD=<Param> . Le module devrait répondre OK. (Ex: si vous voulez changer le PIN en 0000 tapez AT+PSWD=0000)
- AT+ROLE=<Param> pour modifier le role du module esclave ou maître (Ex: pour passer le module en maître AT+ROLE=1).
- Pour modifier la vitesse de communication du module (seulement si nécessaire), tapez AT+UART=<Param1>,<Param2>,<Param3> avec Param1, 2 et 3 les paramètres de communication série: le baud rate, le bit d’arrêt et le bit de parité respectivement. (Par défaut, 9600,0,0. Ex: si vous voulez changer le baudrate en 115200 tapez AT+UART=115200,0,0).
Ils existent d’autres commandes AT du module Bluetooth HC-05 que vous pouvez retrouver en suivant le lien.
ATTENTION: Différentes versions du module HC-05 existent et la liste des commandes AT et la procédure peuvent varier. Vérifiez bien le numéro de série écrit sur le module et la version du firmware en tapant la commande AT+VERSION?. Dans notre cas le module HC-05 est libellé ZS-040 et la version est 2.0-20100601.
N.B.: Si ça ne fonctionne pas vérifiez le branchement, la conductivité des câbles et la vitesse de communication (baudrate).
N’hésitez pas à laisser un commentaire si vous rencontrez des difficultés pour configurer votre module Bluetooth HC-05.
Configuration du module esclave
Pour le mode esclave, vous pouvez changer le nom en tapant AT+NAME=HC05-Slave et choisir les paramètres de communication et le mot de passe que vous voulez. Il faudra vous assurer qu’ils sont les mêmes que pour le module maître.
- AT retourne OK
- AT+NAME=HC05-Slave
- AT+UART=9600,0,0
- AT+ROLE=0
- Entrez AT+ADDR pour obtenir l’adresse du module esclave (dans notre cas, +ADDR:98d3:32:21450e)
Pour le module esclave, vous pouvez aussi utiliser un module HC-06. Pour trouver l’adresse du module HC-06, il faudra utiliser un ordinateur ou un smartphone.
Configuration du module maître
Pour le mode maître, vous devez modifier le role du module et choisir les même paramètres de communication que pour le module esclave
- AT retourne OK
- AT+NAME=HC05-Master
- AT+UART=9600,0,0
- AT+ROLE=1
- Vous devez enregistrer l’adresse du module esclave pour que le module maître puisse s’appairer: AT+BIND=98d3,32,21450e (remplacez les deux points « : » par des virgules « , »)
Schéma de câblage pour la communication
En mode communication la broche Key/EN ne doit pas être alimentée.
Code de communication
Lorsque les modules sont configurés, vous pouvez débrancher la pin Key ou EN, charger les codes suivant dans deux cartes Arduino et rallumer vos modules HC-05 pour entrer en mode communication.
Comme pour le module HC-06, nous utilisons la librairie SoftwareSerial.h dont voici quelques fonctions:
- SoftwareSerial hc05(Rx,Tx) pour définir le port série et les broches servant à la communication
- hc05.begin() pour définir la vitesse de communication
- hc05.available() pour tester si des données sont disponible dans le buffer du port série
- hc05.read() pour lire les données du port série, un octet à la fois
- hc05.print() pour envoyer une chaine de caractères en ASCII
- hc05.write() pour envoyer des données, un octet à la fois.
- hc05.flush() pour vider les données du buffer.
Code Maître
#include <SoftwareSerial.h> SoftwareSerial ArduinoSlave(2,3); String answer; String msg; void setup(){ Serial.begin(9600); Serial.println("ENTER Commands:"); ArduinoSlave.begin(9600); } void loop(){ //Read command from monitor readSerialPort(); //Read answer from slave while (ArduinoSlave.available()) { delay(10); if (ArduinoSlave.available() >0) { char c = ArduinoSlave.read(); //gets one byte from serial buffer answer += c; //makes the string readString } } //Send data to slave if(msg!=""){ Serial.print("Master sent : "); Serial.println(msg); ArduinoSlave.print(msg); msg=""; } //Send answer to monitor if(answer!=""){ Serial.print("Slave recieved : "); Serial.println(answer); answer=""; } } void readSerialPort(){ while (Serial.available()) { delay(10); if (Serial.available() >0) { char c = Serial.read(); //gets one byte from serial buffer msg += c; //makes the string readString } } Serial.flush(); }
Code Esclave
#include <SoftwareSerial.h> SoftwareSerial ArduinoMaster(2,3); String msg; void setup(){ Serial.begin(9600); ArduinoMaster.begin(9600); } void loop(){ readSerialPort(); // Send answer to master if(msg!=""){ Serial.print("Master sent : " ); Serial.println(msg); ArduinoMaster.print(msg); msg=""; } } void readSerialPort(){ while (ArduinoMaster.available()) { delay(10); if (ArduinoMaster.available() >0) { char c = ArduinoMaster.read(); //gets one byte from serial buffer msg += c; //makes the string readString } } ArduinoMaster.flush(); }
Si vous ouvrez les deux moniteurs série correspondant et si vous tapez une commande dans le moniteur de la carte maître, vous pouvez voir le résultat suivant: la carte maître envoie une chaîne de caractères que la carte esclave reçoit et renvoie. On vérifie ainsi que la communication se passe bien dans les deux sens.
Si vous avez des difficultés à configurer ou à communiquer avec votre module Bluetooth HC-05, n’hésitez pas à nous contacter ou à laisser un commentaire.
Application
Et vous, que feriez-vous si votre carte Arduino pouvait communiquer avec d’autres systèmes? N’hésitez pas à nous répondre en commentaire.
Source
- Communication Série avec Arduino
- Utilisation du module HC-06 avec Arduino
- Module Bluetooth HC-05
- AT Commands
- Créez votre application smartphone avec App Inventor 2
Retrouvez nos tutoriels et d’autres exemples dans notre générateur automatique de code
La Programmerie
Bonjour.
Je voudrais créer un potentiometre 10k manuel sur Arduino Nano avec module hc-05 pour
faire varier l’intensité d’une led sur un autre Arduino Nano avec module hc-06.
Les 2 modules sont déjà appairés et fonctionnels grâce a votre tuto (Merci et Bravo!)
je suis novice dans le monde arduino!!!!
Cordialement
Bonjour,
Il faut que tu envoies la valeur lue sur le potentiomètre et que tu l’envoies avec HC05.print(). Ensuite, dans la carte qui reçoit l’information tu dois convertir la valeur qui sera de type String en entier en utilisant les fonctions String.toCharArray() puis atoi().
Cordialement
Bonjour, Xukyo tu sembles t’y connaitre. J’ai sensiblement le même projet que MLSFR. Je veux transmettre la valeur d’un potentiomètre récupérée sur une Arduino et la transmettre à une deuxième Arduino réceptrice via 2 modules hc05 appairés. Toutefois, je ne trouve nulle part une explication claire quant à comment on code la transmission de la valeur potentiomètre acquise (dans mon cas sur le pin A0 de l’Arduino) sur la pin de la même Arduino sur laquelle est connectée le hc05.
Merci d’avance
Bonjour Macca,
Merci pour ton message. Tu peux lire ce tutoriel pour une meilleure approche de la communication série.
N’hésite pas à me dire si ça t’aide!
Génial
Bonjour, ce code fonctionne sur un arduino uno mais pas sur mon arduino micro qui fonctionne très bien..
Si quelqu’un à une idée, merci
Effectivement les broches 2 et 3 ne peuvent pas être utilisées pour la communication série sur Micro
Ref. Arduino SoftwareSerial.h : Not all pins on the Leonardo and Micro support change interrupts, so only the following can be used for RX: 8, 9, 10, 11, 14 (MISO), 15 (SCK), 16 (MOSI).
Bonjour, ce tutoriel ne devrait même pas fonctionner : Les pins 3 et 4 sur le schémas ne concordent même pas avec les pins 2 et 3 du code.
Bonjour, merci pour votre commentaire. C’est corrigé!
Bonjour après avoir copier votre code, j’introduis les caractères « AT » mais aucune réponse aparaît. J’ai pourtant bien suivi les instructions en configurant 9600 baud… Avez-vous une idée?
Bonjour,
Avez-vous essayé différents baudrates et différentes fins de ligne?
Bonjour, très bon tutoriel, cependant lorsque j’envois une chaîne de caractères depuis la carte maître vers l’esclave, cette dernière reçoit des caractères spéciaux et non la chaîne de caractères prévue. Mon baudrate est correct ainsi que ma fin de ligne. Avez-vous une idée?
Bonjour, les baudrates des deux moniteurs séries et des deux modules bluetooth sont-il réglés à la même valeur? Il y a-t-il, dans la chaîne reçue, quelques caractères qui correspondent à ce qui est envoyé?
Le problème est résolu, les deux modules avaient un baudrate de 38400 alors que les cartes avaient un baudrate de 9600…
Bonjour cela m’aide beaucoup mais est-il possible qu’un module soit dans un premier temps maître puis esclave ?
Bonjour, il est possible de modifier le rôle du module mais pas en temps réel. Une fois maître et esclave connectés, il est possible de communiquer dans les deux sens sans distinction. Le maître est simplement celui qui initialise la communication.
Parfait, merci beaucoup. J’ai juste une autre petite question, si un smartphone communique avec un hc05 es-t-il possible que le premier hc05 communique avec un autre hc05?
Bonjour, un module Bluetooth HC-05 ne peut se connecter qu’à un appareil Bluetooth.
Bonjour, j’ai un soucis avec mon HC-05.
C’est pour piloter un « spider robot » avec 12 servo moteur.
Je me connecte bien avec mon appli (bluetooth electronics).
Dans le code source, il fait mettre par exemple la valeur « w 1 1 » pour avancer d’un pas. Mais quand j’appuie sur mon téléphone, la led RX clignote sur l’arduino nano, signe je pense qu’elle reçoit bien l’information, mais aucun moteur ne bouge ! Tous les ports de la nano sont pris par les moteurs, je branche le HC-05 sur les ports RX et TX de la nano.
Pouvez vous m’éclairer ?
Je suis à votre disposition pour des renseignements complémentaires…
D’avance merci
Cordialement,
Arnaud
Bonjour,
Merci pour votre message. Avez-vous essayé d’envoyer des commandes via le moniteur série, plutôt qu’avec l’appli, pour commencer?
Cela vous permettra de vérifier que l’information est bien prise en compte.
De plus, si vous utilisez les broches 0 et 1, ce sont les mêmes broches utilisées par le port USB et donc la librairie à utiliser est Serial et non SoftwareSerial
Bonjour, j’ai bien suivi toutes tes indications mais lorsque je rentre « AT » dans le monitor, rien n’apparaît.
Pourrais-tu m’aider ?
Bonjour, il me faudrait plus d’information que cela.
As-tu bien suivit les consigne pour rentrer en mode AT avec le bouton? Quelle vitesse de communication utilises-tu?
Quelle Arduino utilises-tu?
Re, désolé je viens de voir ton message pourtant tu m’avais répondu directement, normale j’ai réussi le mode AT vu qu’il me répond « ok », la vitesse que j’utilise est 9600 Baud et je relie une arduino uno à une arduino mega (j’ai mis les ports (10,11) pour cette dernière). Mon problème maintenant est que quand j’envoie une commande, elle s’envoie mais elle ne se récupère pas
Bonjour,
Les modules Bluetooth sont-ils connectés? Il y a bien un esclave et un maître?
C’est à dire ? On sait quand ils sont connectés quand il se passe quoi ?
J’ai fais le même programme donc je pense qu’il y’a bien un maître et un esclave.
Normalement, si les HC05 sont connectés leurs leds devraient cesser de clignoter. Est-ce qu’il y a quelque chose qui s’affiche du côté de la réception?
Si les branchements et si les baudrates sont corrects, je ne vois pas.
Peux-tu tester la commande « AT+BIND? » ?
Rien ne s’affiche du côté de la réception, et lorsque je test la commande « AT+BIND? » ça me marque « ok »
Pour résumé, il y a deux HC05, un configuré en Maître, l’autre en Esclave (tu peux vérifier leur rôle avec AT+ROLE? ). Les deux répondent aux commandes AT donc les deux sont branchés correctement. Est-ce que l’adresse correspond bien à l’autre module?
Le baudrate est 9600 pour les modules Bluetooth. Je suppose que tu utilises un baudrate de 9600 pour le moniteur série. Les modules sont connectés car leurs leds arrêtent de clignoter et la commande AT+BIND? renvoie OK.
La commande devrait renvoyer une autre ligne avec l’adresse:
+BIND:
Peux-tu vérifier le status de chaque module avec la commande AT+STATE?
Je t’invite à tester différentes commandes AT pour tester la configuration de tes modules bluetooth
Salut je me suis rendu compte de mes erreur, merci, j’ai testé les différentes commandes AT et elles fonctionnes, l’adresse correspond bien à l’autre module et les leds cessent de clignoter. Seulement lorsque je fais la compilation du code maître il y’a un message d’erreur, je ne vois pas d’où il provient.
Non c’est bon j’ai réussi, MERCI BEAUCOUP pour ta patience et ton aide.
Bonjour, je cherche la solution inverse, c à d recevoir, depuis un module HC05 par bluetooth , recevoir deux
caractères dans ma Tablette en Bluetooth qui feront flasher deux petits rectangles représentant deux leds.
concrètement, deux leds s’allument en sorties de la carte UNO pins 10 et 11; je souhaite voir sur la tablette ces deux
rectangles qui ont virés de couleur par exemple Rouge , étant verts auparavant.
Il y a de nombreux exemples qui avec screenbuttons sur la tablette , font allumer et éteindre la led connecté à une carte UNO; ici c’est l’inverse que je souhaite. Recherche de l’aide, Merci. Sinead.
Bonjour, je t’invite à regarder ce tutoriel sur la communication entre un module Bluetooth et un téléphone.
tu peux envoyer l’état des leds (0 éteinte, 1 allumée) et modifier la couleur du rectangle correspondant.
Si l’OS de la tablette n’est pas Android, il ne sera pas possible de créer une application avec App inventor 2
Bonjour moi avec le module bluetooth je doit juste afficher la température de l’eau sur mon application app inventor mais je ne sais pas du tout comment faire quelqu’un pourrait m’aider svp?
Il y a un tutoriel là dessus dans les projets
Bonjour
je voudrais connecter un module Bluetooth HC-05 à un mobile avec Android.
En utilisant le moniteur sériel Arduino, j’envoie des données au bluetoth sur un téléphone mobile Android et je reçois des charactèrs complètement différents, par exemple Start devient gvV.
Seulement envoyant AT je reçois YOk.
Merci
Je m’excuse, à au lieu de Start lire 12345 qui donne gvV.
Bonjour,
est-ce que les baudrates de l’Arduino et du module Bluetooth sont bien réglés?
Bonjour
je crois d’avoir trouvé ou était le problème, ceci à permis de voir les donnèes :
SoftwareSerial bt = SoftwareSerial(BT_RX_PIN, BT_TX_PIN,true);
Toutefois je ne connais pas s’il est du à une anomalie dema carte mega.
Amitiés
Bonjour,
selon la carte Arduino utilisée la librairie SoftwareSerial n’est pas compatible avec toutes les broches.
Bonjour,
j’ai réalisé votre montage en 2 UNO et 2 HC-05 et utilisé les mêmes codes.
quand j’envoie un caractère, je reçois sur le moniteur maître:
14:02:33.789 -> Master sent : hello
14:02:33.789 ->
14:02:33.883 -> Slave received : ⸮⸮
et sur le moniteur esclave:
14:02:33.851 -> Master sent : ⸮⸮
je ne comprends pas…
Qu’en pensez-vous ?
merci
Bonjour,
Vérifiez bien que la vitesse de communication (baudrate) est la même sur toute la chaine de communication.
Bonjour,
Est-ce que quelqu’un a réussi à paramétrer en master un hc-05 avec le firmware 3.0 ? Ou si quelqu’un a de la doc pour le firmware 3.0 ?
Merci d’avance
quand je fait le commande AT en mode maitre il me retourne toujours ERROR: [0]
Bonjour,
J’ai un soucis pour connecter mon module au telephone. J’arrive a communiquer avec via l’arduino, les commandes AT fonctionnent, et lorsque je veux l’appairer avec le telephone (le telephone voit bien le module) il dit connection impossible. En parallele, la led du HC-05 arrete de clignoter et le moniteur serie ecrit « connected ». C’est un module bluetooth 4.0 acheté sur ali.. Je ne sais pas si ca a un rapport… Merci d’avance
Avez-vous réussi à communiquer avec via une app ou un autre module?
Est-il bien en mode esclave?
Bonjour ,
j’ai fais un appli avec MIT APP INV 2 qui envoi un code couleur R G B ( getPixelcolor) a travers de un variable text a la carte Arduino NANO a travers de la communication serial HC-05 bluetooth .
L app envoi un variable TEXT en format de string.
Si je utilise la librerie serial ( pin 0 et 1 de arduino NANO ) je reçois correctement les variables Char ( toujours !! )
SI je utilise la librerie softwareserial ( pin 8 et 9 de arduino NANO ) je ne reçois pas toujours correctement les variables Char .
Des fois je reçois de character special ou le character point interrogatif ( ? )
Ou je ne reçois pas tous le numéro text envoyé par l app
exemple : variable text envoyé par l app : 123
char reçu par l’arduino NANO : 1
?
?
la communication fonction de fois oui et de fois non, de fois l arduino recois tous le char correctement et de fois non.
J’ai aussi regardé avec l’oscilloscope le byte envoyé et je ne vois pas du bruit particulier sur le signale.
quelque idée ?
merci en avance
Michele
Bonjour,
Pouvez-vous partager le code de lecture du port serie pour Serial et softwareSerial?
Est-ce que vous utilisez la fonction readString()?
c’est la première fois que je travaille avec le module bluetooth hc-05 , j’ai fais tous les étapes mais j’ai pas reçue le msg ( j’ai mis le maitre avec une carte arduino méga et l’esclave avec une carte nano )
!!!! qui peut m’aider svp
Si tu utilises une Mega, tu peux essayer d’utiliser le Serial2 ou 3 à la place de SoftwareSerial. regarde la doc
Not all pins on the Mega and Mega 2560 support change interrupts, so only the following can be used for RX: 10, 11, 12, 13, 14, 15, 50, 51, 52, 53, A8 (62), A9 (63), A10 (64), A11 (65), A12 (66), A13 (67), A14 (68), A15 (69).
Bonjour j’ai un problème avec ma communication entre le hc05 et le moniteur série. Quand j’écrit AT il me dit bien OK quand je lui donne un nouveau NOM ou MOT DE PASSE sa fonctionne en revanche quand je lui demande de me donner des information sur la carte exemple la VERSION ou L’ADRESSE ou le ROLE sa ne fonctionne pas et me met ERREUR[0]. J’ai l’impression que je peut donner des instruction à la carte mais qu’elle ne peut pas me transmettre d’information sur la carte. Pouvez-vous m’aidez ?
Bonjour il y a t’il moyen de faire le même system avec une seul carte Arduino ?
Cela peu paraitre étrange mais se serai pour faire des test sur les capteurs mais je ne possède pas 2 cartes Arduino. Merci d’avance
Bonjour,
en théorie, oui. Il faut utiliser SoftSerial pour créer un autre port série ou utiliser les broches 0,1 et configurer un module en maître et l’autre en esclave.
Je vous conseille quand même d’investir dans une seconde carte Arduino (ou autre). Cela vous permettra de tester tous types de protocoles de communication (I2C, SPI, Bluetooth, Wifi, RF, etc.)
Bonjour tout le monde,
je viens vers vous car j’ai un projet de bateau avec une hélice hors de l’eau que j’ai relié à un moteur par ESC à la carte Arduino car c’est un moteur Brushless. Et j’aimerai savoir si c’est possible avec un module Bluetooth de pouvoir relié dans les commendes la vitesse de l’hélice ainsi qu’une commende qui permet de faire tourné un servo moteur qui me sert de gouvernail. Tout cela étant relié à la carte Arduino et au module pour pouvoir le piloter de mon téléphone.
Pensez-vous que cela est-il réalisable ?
merci de votre lecture
Bonjour, merci beaucoup pour ce tuto.
J’ai quelques soucis avec des modules Bluetooth.
En effet j’ai 2 HC05 dont je ne peux pas changer le mot de passe et le rôle.
Ils me retournent systématiquement ERROR: (1D).
Je peux cependant modifier leur nom.
Pour info ils sont en version: 3.0
Bonjour; merci pour ce tuto tres utile
J’ai toujours quelques problemes avec le systeme « FEU/CLE/NOIR » et « SUS/ITL/AIR ».
Merci.
Bonjour, et merci beaucoup pour cet article qui m’a permis d’avancer sur un pb sur lequel je butais depuis un certain temps.
Une précision, peut-être utile à rajouter dans l’article , certains modules HC05/6 disposent d’un bouton à appuyer au démarrage, pour rentrer en mode AT (en parallèle du pin ENABLE). J’ai perdu bien trop de temps à tester en vain avant de trouver un site me disant cela.
Par ailleurs c’est vrai que les commandes peuvent varier d’un constructeur à l’autre et c’est la galère de tester un peu à l’aveugle sans savoir si ça peut marcher, quand leur documentation est lacunaire, ou pire, fausse, ou écrite partiellement en chinois.
Bon j’ai une question qui me taraude surtout, j’ai tapé ds le moniteur série « AT+UART=115200,0,0 « .
Une vérification » AT+UART? « me confirme « +UART=115200,0,0 »
Toutefois ce message je le reçois sur un moniteur série paramétré en 9600 baud, je continue à pouvoir interagir en 9600, et les interactions en 115200 baud ne me donnent rien d’autre en retour que de mystérieux petits carrés blancs, j’en déduis donc que je n’ai pas vraiment changé le paramétrage UART, non ? Le constructeur pourrait il avoir conçu qqch qui me prétende juste que c’est OK sans que ça ne soit bon? Ça me semblerait tiré par les cheveux.
Une autre question dont j’ignore l’importance : tout ce que j’ai réussi à faire en mode AT, c’était avec le paramètre de port série « No line Ending ». Les autres réglages ne fonctionnaient pas. Ça change quelque choses ?
Bonjour, pour mon projet BTS, j’aimerai que mon robot équipé d’une carte HC-05, se déplace dans une « zone » délimitée par 4 balises HC-05. j’aimerai avoir des infos-pratiques pour réaliser mon projet.
Cordialement
Alex
Bonjour,
ce n’est peut-être pas le système le plus approprié pour délimiter une zone. La méthode couramment utilisée est un câble périphérique qui émet un signal détecté par le robot (cf robot tondeuse).
Pour ce qui est des modules Bluetooth il existe la donnée RSSI qui peut normalement être obtenue avec les commandes AT
Bonsoir s’il vous plait aidez moi j’ai relier le bluetooth HC05 avec arduino mega ADK Tx avec Rx et vis verssa j4ai choisit NL et 9600 baud mais il ne fonctionne rien lorsque j’ai mis le code meme si je change les valeurs correctes de TX Et Rx
ça ne marche pas, j’ai un analyseur logique, le HC05 recoit bien le AT mais pas de réponse
y’a une pin EN/KEY, je serais d’avis qu’il faut la connecter quelque part
ouais il faut effectivement connecter EN au 5V, éteindre le HC05, appuyer sur son bouton RESET et le ralumer
t’aurais pu prévenir 😉
Bonjour
Je souhaitera afficher sur trois led la puissance de réception du Bleutooth du module HC-05 , comment puis je récupéré la valeur de la puissance de réception du module ?