//AT_HC06_en_mode_AT__240119 // Le HC06 demarre en mode AT par defaut, 9600bps //ATTENTION: si le HC06 a été programmé sur une autre vitesse //il FAUT modifier la variable "vitesse" ci dessous //Sur l'ecran du moniteur: //--Ajuster les bps egaux à "vitesse" //-- Tout en majuscules //--EN GENERAL: choisir "Pas de fin de ligne" MAIS //--il y a des EXCEPTIONS, certains HC06 demandent"Les deux NL et CR"!!!!!!! //--Entrer AT puis clic sur "Envoyer" (ou "Entrée" au clavier, c’est equivalent) //La réponse du module commence toujours par "OK". //CAS LinvorV1.8********************************** //--Pas de fin de ligne sur le moniteur //Les seules commandes AT reconnues sont : //AT+VERSION pour la version du logiciel dans le module //donne OK LinvorV1.8 cas de ce module, peut varier bien sur. //AT+NAMEmon_ModuleHC06 impose un nouveau nom au module, ici"mon_ModuleHC06". //AT+PIN1515 impose un nouveau mot de passe au module, ici 1515. //AT+BAUD4 impose la vitesse 9600bps entre module et smartphone.BAUD1 impose //1200bps,BAUD2 pour 2400bps , 3 = 4800, 4 = 9600, 5 = 19200, 6 = 38400, 7 = 57600, 8 = 115000 //CAS de la version 3.0-20170609*************************** //--Les deux NL et CR sur le moniteur //Sauf pour la commande VERSION, il faut utiliser d'autres commandes! //AT+NAME renvoie le nom actuel //AT+NAME=TOTO renomme en toto //AT+UART renvoie la vitesse, par ex 9600,0,0 //AT+UART=38400,0,0 impose la vitesse 38400 //AT+PSWD renvoie le code pin actuel (par defaut 1234) //AT+PSWD="2222" impose un nouveau mot de passe //...et beaucoup d'autres // Deux excellentes sources sur le sujet //http://www.martyncurrey.com/arduino-and-hc-06-zs-040/ //http://eskimon.fr/2498-arduino-annexes-g-utiliser-module-bluetooth-hc-05 #include SoftwareSerial HC06(10, 11); // RX10 Arduino relier à TX du module // TX11 Arduino relier à RX du module ////////////////////////////////// int unsigned long vitesse = 9600; //MODIFIER en meme temps le moniteur! //////////////////////////////// void setup() { Serial.begin(vitesse);//Pour le moniteur Serial.println("Enter AT commands:");//Sur le moniteur HC06.begin(vitesse);//Pour le module } void loop() { //On alterne entre lecture du module puis ecriture sur moniteur while (HC06.available()) { // If HC-06 has data Serial.write(HC06.read()); // Send the data to Serial monitor } while (Serial.available()) { // If Serial monitor has data HC06.write(Serial.read()); Serial.println(); //Mise en page , à ameliorer! } }