version 2.1
V.O. 31/03/2012
Last UpDate : 26 Fev 2023
Differents tests de liaisons BlueTooth avec Terminal Vbray ou tablette ARCHOS Android..etc
BlueTooth module YC-MU : Test en mode AT
Modification Vitesse de transmission 9600 -> 115 200 bauds
Usage de BlueTerm , un terminal liaison serie (Application Android)
Reseau BlueTooth sur PC
Mes modules bluetooth (2018)
Test Application Android BlueElectronics (en liaison avec appli EDF info BT RN41)
Test du module RN41 en mode MAITRE avec un HC06 esclave et avec HC05 (nov 2018)
Test entre 2 modules RN41 (1 en mode MAITRE et 1 en mode esclave (24 nov 2018)
Test HC05 Maitre avec 2 Esclaves (horloges numériques ) (26 fev 2023)
*Application (C18) GeneBF DDS 18F26K22 en liaison bluetooth avec AMARINO.apk
*Application PIC18F46K22 : liaison BLUETOOTH RN41 avec Tablette ARCHOS 43 it
*Appli en VB6 pour Gerer les données issues d'un PIC18F
*Appli GeneBF DDS
*Interface Operateur RFO-Basic pour Appli DDS via BT HC06 et Tablette Android Archos43it
Tests JY-MCU en mode commandes AT
Difference entre modele HC05 et HC06 :
ils sont visuelement quasi identiques
le HC06 repond à une commande AT SANS CR ni LF, le HC06 ne peut etre que ESCLAVE
le HC05 a besoin de CR pour repondre à une commande AT et il peut etre MAITRE.
document technique : HC Serial Bluetooth Products 201104.pdf
le module JY-MCU , alimenté en 3,3V , est connecté directement sur le terminal VBRAY (COMx du PC )
via un interface RS232 (Max3232 nivaux TTL en 3,3V)
La config RS232 : 9600,8,N,1
A la mise sous tension, la led rouge doit clignoter ( signifie NON APPAIRES).
Les commandes AT ne peuvent passer qu'en mode NON APPAIRES. (led fixe=mode appairé)
avec cet interface, le mode AT est tres Reduit et se limite à quelques instructions possibles :
ATTENTION :
* pas de CR ni LF en fin de commande
* delay significatif (1seconde!) à respecter apres chaque envoi de commande AT
AT (sans CR ni LF) --> reponse OK
AT+VERSION -------> reponse OKlinvorV1.5
AT+BAUD6 ----------> reponse OK38400
AT+BAUD5 ----------> reponse OK19200
AT+BAUD4 -------> reponse OK9600 (valeur par defaut )
AT+BAUD3 ----------> reponse OK4800
Nota: si on modifie la vitesse, il faut se caler sur celle ci pour pouvoir la remodifier ou continuer le dialogue! of course !
AT+PIN1234 --------> reponse OKsetPIN le code à fournir pour l'appairage coté host (PC) sera donc 1234
qui est la valeur par defaut (code Usine)
fichier script YC-MCU_init.tsc Terminal VBRAY pour l'init du module :
ATTENTION PIEGE ! : AT+NAME? ---> reponse OKsetname et donne comme nouveau nom ?
faire donc AT+NAMEMyJYMCU ---> reponse OKsetname et donne comme nom: MyJYMCU
On ne peut donc pas interroger le nom ! .
mais on peut verifier celui ci avec PC BlueSoleil + cle BT , en reactulisant les services
et on voit bien apparaitre le NOUVEAU NOM sous le device correpondant à l'adresse du YC-MCU
Usage de BlueTerm, application Android
17/12/2017
C'est un terminal sans fil , liaison via BlueTooth.
L'appli est installée sur mon Staraddict2 (déja vieux!)
Version :
Android 4.04
API Level 15
StarAddict2 (juin 2013!) system device datas Pour les tests, usage d'un module blueTooth classique HC06
Verification du module via une connection cable Prolic TTL/USB et Terminal PC TeraTerm
et pour remettre une vitesse de transmission à 9600 bauds. (était au prealable à 19200)
Module BlueTooth HC06-0539R (répéré par pastille Rouge)
Pinout du module :
1 STATE x NC
2 RX -- R=2,7K----fil Vert Prolic cable ---- USB Clavier
3 TX ----------------fil Blanc Prolic cable ---- USB Ecran
4 Gnd ---------------fil Noir Prolic cable ---- USB Gnd
5 VCC --- 4,5V
6 KEY x NC* fil rouge cable Prolic NON Connecté
Back View Front View ! Vue de face (coté composants ) avec reperage transposé sur face composant (HC06 Jaune) KEYES, alim 3,6 à 6V, attention : 3,3V TTL input
sur PC TeraTerm Terminal à 19200 bauds
Commande :
AT -->
AT+VERSION -->
modif de la vitesse
AT+BAUD4 -->
AT+PIN1234 --->
AT+NAMEHC06-0539R
Réponse:
OK
OKlinvorV1.8
OK9600
SetPIN
OKsetname
New config :
HC06-0539R 9600 bds
Test avec HC06 relié à une application PIC12F683 , via l'UART du PIC
HC06 TX-->R=2,7K ---> RX PIC
HC06 RX <-------------- TX PIC
La led du HC06 doit clignoter à la mise sous tension de l'application PIC12F683.
1) Lancer BlueTerm ( Application Android ) sur telephone Straddict2
affiche en haut BlueTerm not connected
La led Rouge du HC06 est clignotante
2) Acces au Menu via Touche en bas à gauche sur mon Phone
3) Preferences:
Local Echo Checked
Allow Insecure Connection Checked
Colors White Text on Blue ( Bleu car Blue Terminal !) c'est mon choix
(1) (2) (3) 4) Preferences (suite):
Local Echo Checked
Allow Insecure Connection Checked
Colors White Text on Blue ( Bleu car Blue Terminal !) c'est mon choix
Incomming EOL
CR (0x0D) character --> replace by CRLF
LF (0x0A) Character --> remove
Outgoing EOL
CR (0x0D) character --> remove
LF (0x0A) Character --> replace by CR
(4) Nota:
l'appli MikroC attend en Reception 1<CR> comme fin de trame
L'appil Mikro C envoi du texte avec terminaison <CR><LF>
Touche en bas à gauche , pour acces au menu
5) scan for devices
Nota:
La 1ere fois, si le device n'est pas déja appairé avec le telephone
Demande du code PIN
introduire 1234
Connect Device: selectionner votre module, ici le mien est le :
HC06-0539R
Message en haut à droite : Connecting ..
puis : Connected to HC06-0539R
La Led du HC06 passe en feu fixe !On recoit alors tous les messages émis par le PIC
Taper sur l'ecran pour faire apparaitre le clavier android
Taper le message, suivit de la touche Enter
Le message revient en echo
Dans cette appli on entre un parametre qui est la duree de
Consigne_Rampe (en mS) de la rampe d'eclairage ou d'extinction
qui evolue en simili PWM de 1 à 20mS
valeur numerique 1 à 1023
si 0 ou non numérique : message en retour "Error" et Consigne_Rampe=20
si on quite l'Appli BlueTerm on pert la connection Blue Tooth
La led du HC06 clignote.
La reconnection peut etre immediate .
Modification Vitesse de transmission 9600 -> 115 200 bauds
12/06/2018
Le module BlueTooth HC06 est connecté DIRECTEMENt sur le cable Prolific 2303 , donc au Terminal PC
12/06/2018
Modif vitesse module HC06
use Teraterm to modify the HC06
HC06 is direct connected to the pins of Prolific TTL/USB cable
Wiring :
State
RXD ----- Vert |
TXD ----- Blanc |====== USB ..terminal Teraterm COM13
GND ----- Noir |
VCC ---- Rouge |
EN
nota: AT commands do not need a terminating CR/LF sequence.
but HC05 need it.
original link was at 9600
cdes AT AT AT AT+Version AT+BAUD8
OKOKOKOKlinvorV1.8OOK115200
à partir de là, le HC06 ne peut plus dialoguer à 9600, puisqu'on a modifié sa vitesse
Then need to modify the terminal side :
Setup
Serial Port
Bauds was 9600 -> is 115200
test again at this new speed
AT --> OK
AT+Version --> linvorV1.8
Le HC06 est ensuite , remis sur l'application PIC (conecté à L'UART1)
Le programme PIC est modifié pour la nouvelle vitesse de dialogue : Uart1_Init(115200);
Nota: MikroC , dans les messages de compilation annonce 0,64% d'erreur sur la vitesse
J'utilise FOSC interne 8MHz et PLLEN=1 > 8x4 = > FOSC =32MHz
Le terminal Terraterm montre bien les message... OK à 115200 bds
Test avec appli Android BlueTerm
Une fois appairé avec mon module HC06_2187_J
La reception s'effectue ..OK
Affichage simultané sur TerraTerm et BlueTerm
la Pin TX UART RC6 -> Rx PL2303 Prolific Cable ET sur le module HC06
Reseau BlueTooth sur PC
Installation d'une cle USB/Bluetooth APM 571190 portee maxi 100M ?? (classe 1)
Livree avec un miniCD pour installer BlueSoleil.
PIC avec module BlueTooth-Click alimenté
Tablette Archos43it sous tension et BlueTooth link Activé :
...Valider la possibilite de reconnaissance, valider les associations
Lancement de recherche d'equipement sur PC BlueSoleil
Lancement des services : Port serie via bluetooth !
vue du reseau B.T.
Attention au pare-feu NORTON, donner les autorisations reseau!
Norton Reseau
Connection reseau local 3
IVT Corporation
En ligne
00-15-83-2B-6D-87
PAN IP 192.168.50.1
Noter que le reseau a bien decouvert l'interface BlueTooth-Click, la Tablette ARCHOS, et un telephone qui traine ...
On peut ainsi relier , via bluetooth, le Terminal VBRAY du PC via COM10,
Verifier que la vitesse en bauds soit correcte sur le terminal!
à l'appli basic RFO sur archos : _Bluetooth_120326.bas
On verifie le dialogue sur le terminal :
2 liaisons BlueTooth distinctes et simultannees via BlueSoleil
Terminal TERATERM en liaison 19200,8,1,N avec appli EDFInfo via BT RN41
Terminal VBRAY (version 2013) en liaison 9600,8,N,1 avec Appli DS1631 via BT HC06
PIC 18F46K22 EDFinfo 19200 -> RN41 MyBT-DB49 ))))) ((( APM BT USB Bluesoleil service Port A 19200 COM14 SSP TeraTerm1
PIC 18F26K22 DS1631 9600 -> HC06-2187-J )))) ((( APM BT USB BlueSoleil service Port B 9600 COM15 SSP Vbray Terminal
Application PIC18F46K22 en liaison BLUETOOTH RN41 avec Tablette ARCHOS 43 it
But :
Etablir une liaison et dialogue SANS FIL entre une application basée sur un PIC18F46K22 40pins et une tablette Archos 43it
Coté interface d'acquisition PIC:
Pic 18F46K22 pour sa grande taille RAM et EEPROM et tres grande capacite Flash
L'interface assure l'acquisition de 2 valeurs ANA 10 bits, // extensible à ..... par la suite
Gere en local, un afficheur LCD 2x16 car
Une liaison UART RS232
Une liaison reception code IRC5
Un interface BlueTooth_Click de chez MikroE :
docu MikroE trop succinte , voir ces liens Techniques :
http://www.rovingnetworks.com/products/RN_41
http://www.rovingnetworks.com/resources/download/47/Advanced_User_Manual
Mikroelektronika
module bluetooth_click
Mac NO : 00-06-66-07-DB-49
FCC ID: equipé de T9-JRN41-1
2 rangees de 8 pins au pas de 2,54mm
Alim 3,3V
Programmation via ICSP et PICKIT2 : mobilisation de RB7 et RB6
Nota:
attention, mettre à jour eventuellement PICKIT2 et sa base de donnée pour inclure le 18F46K22
C:\Program Files\Microchip\PICkit 2 v2\PK2DeviceFile.dat 180Ko du 04/10/2011
Phase primordiale : Test du module BlueTooth
en direct via Terminal Vbray RS232
Il suffit d'alimenter le module blue tooth en 3,3V via un regulateur TS2940-3,3 à partir du 5V
et relier la liaison RS232 Terminal, via un DS275 , aux pins du Bluetooth:
- relier respectivement 3 RS232 ---pin 5-- DS275 --pin 3 RX ---via R=750 ohms au pin Tx --module BlueTooth_Click
- relier respectivement 2 RS232 ---pin 7-- DS275 --pin 1 TX --- via R=750 ohms au pin Rx du module BlueTooth_Click
nota:
usage de R=750 ohms pour limiter le courant d'entree (j'aurais pu ausi mettre un pont diviseur de tension !),
car les niveaux TX et RX du module Blue Tooth ne sont pas compatible TTL 5V !
Aiguillage SW1 sur DS275 (voir schema)
Voir resultat et reponses aux commandes : Test Module Bluetooth
Le fichier de config des touches du Terminal Vbray : BTC_2012.tmf
On doit absolument pouvoir recuperer toutes ces infos ,pour valider le fonctionnement du module,
avant de continuer.
dont :
BTName = (was BlueTooth-Click is ) MyBT-DB49
PinCod=1234
qui serviront à la config d'association Bluetooth dans la tablette ARCHOS !
Déboires rencontres et remedes :
Probleme de niveau RS232 avec le DS275:
Celui ci ne peut pas fonctionner sous 3,3V ,il lui faut un mini de 3,6V
le mieux etant de l'alimenter au nominal de 5V. ne pas oublier alors la resistance de 750 à 1K
pour limiter le courant d'ecretage sur la pin d'entree du TX module BT
celui étant alimenté OBLIGATOIREMENT. en 3,3V.
Cela permet de faire des test avec des PIC18Fxx en 5V ou en 3,6V genre PIC18LFxxxPerte de l'acces Config du module BT via termminal @115200 bauds
DS275 boucle entre Tx=1 et Rx=3 => cra cra sur ecran
il faut descendre la vitesse à 38400 bds pour avoir un echo correct !
Impossible de re-obtenir la config via terminal
echange DS275 -> negatif ..idem
Notice Bluetooth-RN-UM.pdf page 6 para 3.4
Using dip switch and PIO for config
Essai de Factory Reset avec PIO4 relié à la masse -> negatif
Strap J4 pour relier PIO4 au +3V via rappel R3 de 1K (voir schema) ->Negatif
Essai de modifier Baudrate à 9600 bds
Contre-mesure:
en strappant J5 PIO7 relié au +3V via R4=1K
ON=9600 OFF=115200
OK j'ai sur l'ordre "$$$" le retour "CMD" à 9600 bds sur le terminal
Reception de carracteres incongrus n'ayant aucun rapport avec ce qui devrait etre..
La vitesse de l'appli PIC est differente de celle imposée dans le module BlueTooh !
Contre-mesure:
Via un terminal directement connecté au module BT, envoyer la bonne sequence d'init vitesse en bauds
ou modifier coté appli microcontroleur .
Affectation des E/S du PIC:
RB7 , RB6 mobilisé uniquement pour ICSP
RC7, RC6 pour liaison UART1
L'afficheur LCD est géré en mode 4 bits via :
- D7,D6,D5,D4 comme PORT DATA LCD
- C5 et C4 pour le Control du LCD
RB0 pour la reception IRC5, car besoin de l'interrupt Prioritaire sur RB0
recevant la sortie du capteur TSOP1736
Afin de garder des quartets entiers dispos : D0..D3 et C0 ..C3
Pinout et schema
Test du module RN41 en mode MAITRE avec un HC06 esclave
le but est de faire une laison entre un module BlueTooth RN41 configuré en Maitre , avec un module quelconque HC06 esclave.
Pour cela, je connecte directement le RN41 à un terminal PC , via un cordon Prolific LTTL/USB à un terminal PC .
Le HC06 sera , pour ce test, celui qui recoit une trame via l'appli PIC Horloge 60 leds.
RN41 MAITRE .. HC06 ESCLAVE
Test RN41 Maitre relié direct à VBRAY terminal COM19 -- Prolific cable en 3,3V
...............................fil Jaune 6 Connecteur plat Prolific
TX RN41 -->------ fil Blanc 5 Connecteur plat Prolific
RX RN41 --<------ fil Vert 4 Connecteur plat Prolific ======= USB COM19== PC
...............................fil violet 3 Connecteur plat Prolific
...............................fil bleu 2 Connecteur plat Prolific
Gnd ----------------fil Noir 1 Connecteur plat Prolific
$$$ -> CMD
SM,1<CR> passe RN41 en mode MAITRE
AOK
I,30<CR> recherche modules BT
found 2
00066607DB49,RN41-DB49,1F00 <- appli EDFInfo avec RN41 esclave dans le garage
201308072187,HC06-2187J,1F00 <- Appli PIC Horloge avec HC06-2187 Jaune
Inquiry Done
SR,201308072187<CR>
AOK
C<CR> Connecter le device designé
TRYING
18F_CONNECT,201308072187,0 <--- connecté au HC06 Jaune
*D03-11-18*H17:37:21*MOFF;*T00172*F17.26 °C <-- trame envoyée par le PIC sur le HC06 distant toutes les 3sec.
*D03-11-18*H17:37:24*MOFF;*T00172*F17.26 °C
....
*D03-11-18*H17:43:09*MOFF;*T00172*F17.20 °C
*D03-11-18*H17:43:12*MOFF;*T00172*F17.20 °C
*D03-11-18*H17:43:15*MOFF;*T00172*F17.21 °C
RTC Update : U;03;11;18;16;06;05;# <- envoi d'une commande clavier terminal PC pour le PIC
Ecriture dans DS3231... OK <-- reponse du PIC
*D03-11-18*H16:06:00*MOFF;*T00172*F17.20 °C
*D03-11-18*H16:06:03*MOFF;*T00172*F17.21 °C
si mise hors tension du RN41 maitre
18F_REBOOT <- message associé pendant la config du RN41
$$$ <-- passage module BT en mode commande
CMD <--- ok !
C<CR> <-- Commande Connect au HC06
TRYING
18F_CONNECT,201308072187,0 <--- connecté au HC06 Jaune .OK
.. et ça repart ..
*D03-11-18*H16:16:37*MOFF;*T00173*F17.30 °C
*D03-11-18*H16:16:40*MOFF;*T00172*F17.29 °C
*D03-11-18*H16:16:44*MOFF;*T00173*F17.30 °C
Fichier Macro Terminal VBRAY : RN41_configure.tmf
Fichier Macro Terminal VBRAY : HC06_config.tmf
Ce meme Test entre RN41 Maitre et HC05 esclave
RN41 Maitre (Teraterm PC) et HC05 (RealTerm) 115200,8,N,1
Coté TERATERM relié au RN41 via cordon LTTL/USB
---<CR> Deconnection
passe en mode command
$$$ <- sans <CR> !
CMD
+ <CR> <-- demande affichahe Echo (Toggle command)
ECHO OFF
ECHO ON
GR<CR>
98D321F48701 <---- adresse du HC05
GB<CR>
00066665EEEC <---- adresse du RN41
C,98D321F48701<CR> <----Connection au HC05 distant
TRYING
18F_CONNECT,98D321F48701,0
-- à partir de là, on peut discuter , car connectés ---
Yes , i am
moi aussi
coté REALTERM relié au HC05 via cordon Prolific TTL/USB
+DISC:SUCCESS <- suite deconnection du maitre
OK
-- pas de message à la reconnection ,coté esclave ?? ---
Hello, are you here ?
je te vois !
rappel <CR> = Carriage Return= touche Enter
fichier Macro Terminal VBRAY : HC05_config.tmf
fichier log correspondant : HC05_8701_test_181118.log
Test entre 2 RN41 , un maitre, un esclave
Hardware : Montage de test
PC connecté au RN41-EEEC :Trames Emises par le PIC
*C050222059498*;*W00051008981*;*K 1843.981*;*R00009*;*A00006*,*G00006,00009*;*T 9.1*;*
*C050222059498*;*W00051008981*;*K 1843.981*;*R00008*;*A00006*,*G00006,00008*;*T 8.5*;*
*C050222059498*;*W00051008982*;*K 1843.982*;*R00009*;*A00006*,*G00006,00009*;*T 9.3*;*
---Envoi de de trois fois $ (et non pas $$$ !) pour passer en mode commande -----
$$$ => affiche en retour
CMD
On ne recoit donc plus les trames PIC ...
Activation de l'echo ,
pour visualiser la commande et le retour de commande sur l'ecran terminal PC
+ <- cde + = demande toggle echo
ECHO ON
V
Ver 6.15 04/26/2013
(c) Roving Networks
E
***ADVANCED Settings***
SrvName= SPP
SrvClass=0000
DevClass=1F00
InqWindw=0100
PagWindw=0100
CfgTimer=255
StatuStr=18F_
HidFlags=200
DTRtimer=8
KeySwapr=0
M
8000
O
***OTHER Settings***
Profile= SPP
CfgChar= $
SniffEna=0
LowPower=0
TX Power=10
IOPorts= 0
IOValues=0
Sleeptmr=0
DebugMod=0
RoleSwch=0
&
SWitches
1=OFF
2=OFF
3=OFF
4=OFF
D
***Settings***
BTA=00066665EEEC
BTName=RN41-EEEC
Baudrt=115K
Mode =Auto
Authen=0
PinCod="paulfjujo"
Bonded=1
Rem=00066607DB49
GB
00066665EEEC <- adresse module RN41 LOCAL (PC)
GR
00066607DB49 <- adresse module RN41 DISTANT (PIC)
I,30
Inquiry,T=30,COD=0
18F_DISCONNECT
I,30 <-- attendre les 30 sec !!!!
ERR:Already Inquiring
Found 1
98D321F48701,HC05_8701B,0 <-- module BT HC05 actif à coté
Inquiry Done
AT <- WHAT THAT's ?????
ADC1=A7, 167 mv
A <- WHAT THAT's ? Commande non répertoriée????
ADC1=23, 35 mv
C,00066607DB49 <- reconnection au module distant RN41-DB49
TRYING
18F_CONNECT,00066607DB49,0
==> on retrouve les trames emises par le PIC ....
*C050222059498*;*W00051009234*;*K 1844.234*;*R00009*;*A00006*,*G00006,00009*;*T 9.2*;*O 49165000*
*C050222059498*;*W00051009234*;*K 1844.234*;*R00008*;*A00006*,*G00006,00008*;*T 8.8*;*O 49165000*
K, <-- Disconnect
KILL
18F_DISCONNECT
Tableau Commandes et Datas RN41
Malgré un prix élévé, ce module versatile et complet , presente de nombreuse fonctionalitée,
pas encore toutes exploitées..
Nota: un HC05 peut servir de maitre à la place du RN41-EEEC Maitre..
A creuser :
usage de PIO6 du RN41 pour AUTO reconnection
usage de CTS via PIO7 du RN41 pour usage d'un protocole CTS/RTS
Test du link Bluetooth PIC18F46K22 vers Archos
Aiguillage SW1 sur Bluetooth_Click (voir schema)
Coté PIC : Software (MikroC version Demo)
Source : My_BlueTooth.c
Au lieu de connecter Rx TX à l'interface DS275 RS232 --> terminal VBray,
- relier respectivement PIC RC7 = Rx via R=750 ohms au pin Tx du module BlueTooth_Click
- relier respectivement PIC RC6 = Tx via R=750 ohms au pin Rx du module BlueTooth_Click
Coté tablette ARCHOS
Parametres
Applications
Developpement
Faire une capture d'ecran au lieu de passer en veille via BP marche/arret (Cocher)
Parametres
Sans fil et reseaux
BlueTooth ... activer le bluetooth (Cocher)
BlueTooth : Gerer les connections
nom de l'appareil ( Archos43)
Identifiable : permettre l'identification de l'appareil ( pendant 120 sec!!) (Cocher)
Rechercher des appareils:
MyBT-PC relié mais pas connecté
MyBT-DB49 relié mais pas connecté
N5310 relié mais pas connecté
on les voit aussi tous les 3 ,sur le reseau BT.
coté PIC18F46K22 + interface BT:
Source C18 et Hex: 18F46K22_BT_Archos.zip
coté Archos
Lancer RFO basic et charger le programme _Bluetooth_Click_120410.bas
Basic RFO v 01.50
Apres initialisation , recherche de connection avec device BlueTooth
Une fois connecté l'echange de donnees est operationnel.. ici toutes les 2 secondes. (Timer1 du PIC)
Affichahe d'un indice envoyé par le PIC, puis de 3 mesures Analogique
L'archos repond en renvoyant un numero de reception de trame.
Autre version avec source MikroC avec afichage sur LCD en local sur le PIC et envoi des datas via UART sur le Bluetooth interface.
Affichage distant: sur PC avec Terminal Vbray sur COM8 ( vitual com sous resau BlueSoleil)
source ; 18F46K22_UART_LCD_IRC5_120415_MC.c
Chargeur : 18F46K22_uart_Lcd_Irc5_MC_120415_ok.hex
par defaut rien ne se passeLe PC ( ou l'archos) doit alors envoyer une commande:
A=Allumme led RA4
E=Eteint Led RA4
L=Lecture permanente des ADC CH0, CH1,CH2 ( L = commande Toogle !)
1= lecture ADC CH0 (Commande One shot !)
2= Lecture ADC CH1 (Cde One Shot)
I= Lecture code telecommande IRC5 (I=Cde Toogle)
H=Help 'Cde One Shot)
Arrivant aux limites de 2K sur MikroC, je suis obligé de revenir au C18 Mplab !
Version C18 :
18F46K22_BluetoothClick_link_Arkos_C18_120420.c
Memes fonctionalites que ci-dessus avec en +
Dans la boucle principale on attent soit la fin du timer1 de 2 secondes, soit l'arrivée d'un caractere
si au bout de 32 secondes , on a AUCUNE reception, on affiche alors un message de Timeout sur le LCD !
Coté appli Archos, il faut se debrouiller à envoyer systematiquement le caracter R pour remettre à zero le timeout
cet echange permet de valider l'echange de donnees (equivaut à un bit de vie d'Automate!)
donc en situation normale il ne devrait jamais apparaitre de message Timeout!
vue du reseau bluetooth (BlueSoleil) connection PIC BlueTooth à COM Terminal Echange entre PC et PIC
Application PC en VB6
Petite appli montrant la connectivité entre une appli PIC18F26K22 + bluetootth-click
et echange sur PC windows XP via un interface en VB6
coté Inteface PIC18F26K22:
L'appli C18 reagit à l'envoit des commandes suivantes recues : 1,2,3,L,A,E
la mesure de l'ADC #1 ou #2 ou #3
la commande L est une commande Toogle (ON/OFF) et renvoi les 3 mesures ADC #1#2#3
La commande A Allume la led rouge , la commande E eteint la led
Si l'appli C18 ne recoit pas de commande "R" en moins de 32 seconde , envoie le message " Timeout depasse 32 sec"
source C18 :18F26K22_BluetoothClick_link_Arkos_C18_120505.c
coté PC
cle USB Bluetooth et Bluesoleil activé!
package complet en VB6 : VB6_PIC_BT_Package.zip qui contient :
Vb6_PIC_BT_120511.exe
Bluetooth_SSP_PIC_PC_VB6_120506.doc
MSCOMFR.DLL
MSCOMM32.OCX
Definir tout d'abord le port COM #1..13 ,dans mon cas , le port#8 est utilisé comme passerelle UART via le reseau BlueSoleil
Il faut selectionner le PORT et la VITESSE pour voir le controle "Connecter" valide.
Une fois connecté , l'egrenage des secondes s'affiche en haut et
L'interface permet d'envoyer les commandes precisées ci dessus.
Un timer calé sur 10 secondes envoye systematiquement la commande "R" permettant d'eviter un "timeout" (voyant rond vert!)
et garantit ainsi la liaison, si on n'envoye pas de commande.
La commande L , une fois activée permet la lecture permanente des 3 voies ADC
Une nouvelle commande L annulera donc cet envoi.
Les 3 mesures ADC sont affichées en points, et en volts ( +VREF=+5V et -VREF=Gnd)
L'etat reel des Led represente l'etat du PORT B ( inverse, car allume led= etat zero , car led tiree au +5V)
L'etat portb est representé aussi en binaire.
Le champ Retour : affiche la trame recue en reception
Le champ Autre commande permet d'envoyer Autre chose !
.
GeneBF DDS minimaliste, interface Bluetooth JY-MCU,
version PIC18F26K22 (avril 2013)
(DIP28 broches)
Ici, c'est une tablette ANdroid ou Iphone qui sert d'interface utilisateur .
ni LCD, ni terminal RS232, ni Keyboard ou Joystick
..
Montage Hardware (prototype) :
Le LCD, et les 5BP (ou Joystick) interface utilisateur sont remplacés par un interface distant, sous Bluetooth.
Un module BT YC-MCU (dispo at MiniInthebox pour ~16)
est relié à l'UART du PIC via 2 R de 1K protection niveau 3,3V au lieu de 5V !
et c'est tout ..hardware tres depouillé !
module bluetooth JY-MCU BT-Board:
nom par defaut : linvor
@mac : 20:13:01:24:11:22
nota: module BT non reconfiguré, utilisé en version originale sortie d'usine.
Appli GENEBF DDS PIC18F
Tests prealable avec un terminal RS232
Dialogue via bluetooth entre le PIC et son interface JY-MCU
et le PC (terminal) equipé d'un module Bluetooth APM
Le logiciel BlueSoleil permet de creer une liaison virtuelle au terminal RS232 VBray avec un module bluetooth
Les messages d'initialisation doivent apparaitre sur le terminal
En fin d'init le PIC delivre 1000Hz en sortie de RA2 , puis passe par le double ampli OP , pour le reglage de niveau
et adaptation d'impedance.
Forme d'onde via touches de fonction S(inus),C(arre),T(riangle),D(ent de scie),R(everse dent de scie)
Frequence prereglées sur touches de fonction : introduire Fxxxxx# pour autre valeur quelconque
Interface operateur pour GENEBF DDS
avec appli AMARINO sur mobile Android
Hardware reduit à sa plus simple expresion.
L'interface operateur est 100% externe : c'est une tablette ARCHOS 43it
Inconvenient de cette super simple solution :
- liaison unidirectionnelle Archos ->PIC
- L'Archos43it ne recoit pas de compte rendu
Amarino est utilisé tel qel , avec les Flags suivants :
S,C,T,D,R, pour les formes d'ondes respectives Sinus,Carre,Triangle,Dent de scie,Reverse dent de scie
A pour l'amplitude maxi 1,2, ou 4V
et F pour regler la frequence : "Fxxxxx#" , valeur sur 5 digits comprise entre 1 et 25000 (hz) suivi du terminateur #
links to Amarino :
http://chetanpatil.info/1/post/2011/12/android-talking-to-arduino.html
http://www.amarino-toolkit.net/index.php/tutorials.html
Le programme coté tablette Archos :
Amarino 2.0.apk
choix du device "linvor" ( nota: MyBT-DB49 concerne un autre module Bluetooth-clik 18F46K22 et appli MikroC)
exemple: envoi de la consigne frequence 2500Hz avec le flag F suivi de 02500 et terminateur #
le programme coté PIC : (MPLAB C18)
18F26K22_DDS_DAc5b_Amarino.zip
GeneBF DDS sous RFO-basic coté Tablette Android Archos
rev 17/12/2014
RFO-Basic v 0184
Essai de compilation APK avec RFObasic-Appbuilder ..Compilation OK, mais APK crash.
Alors que ce progrmamme *.bas tourne bien dans RFO-Basic.!
source RFO-Basic : PIC_DDS_10Mhz_BT_Archos_141218.bas
Package Application C18 Pic18F46K22 : 18F46K22_DDS_10Mhz.zip
Meme Schema PIC18F sauf que le module BT est un HC06 avec 6 pins.
Le PIC18F gere la pin ENable pour initialiser le module BlueTooth en mode dialogue.
Sachant qu'à la mise sous tension la led rouge du module doit etre clignotante, passe en fixe, seulement si connection BT OK avec Archos.
Attention: l'ARchos n'est decouvrable que pendant 120 secondes !1ere Tentative de compilation application:
Usage de RFO-Appbuilder .Compilation OK
mais l'appli CRASH des que la connection BT avec le module HC06 est etablie.
Connected to HC06-2187-J
à noter :
l'init BT se fiat dans le mode texte , puis on passe en mode grafique des la connection etablie !
L'init du module BT , lors de la mise sous tension est assez aleatoire !
Sinon , l'appli tourne correctement dans l'environnement RFO-BASIC.
Essai aussi avec QUICK_APK : crash immediat
plus tard ...
2eme Tentative de compilation application: OK ,et RUN apk : OK
voir details ICI ( DDS_18Fx6K22_10Mhz.htm)
Remarques:
Ce module YC-MCU, pas cher ! , est en classe 2 et donc ne peut porter au dela de 20 Metres.(testé à 15M maxi)
Il est suffisant pour la majorité des cas, mais je lui prefere le Bluetooth-click RN41 de classe 1
presentant beaucoup plus de possibilité, portée theorique 100M (testé OK à 30M) et ayant
une solide doc technique , malgré un cout quasiment du double ( 40)
De plus , aucun aléas d'init , constaté avec ce module.
26/02/2023
module bluetooth HC05 MAITRE
Exemple d'envoi d'un message sur Horloge Numérique
+ terminal PC
..config touches : Terminal_HC05_115200_2023.yat
Hardware :
mini interface USB/TTL 5Vou 3,3V USBSerial CHG340
Ne peut pas etre utilisé en 3,3V ,car le module HC05 demande +5V !!
mais niveaux de commande en 3,3V !
donc , protection pins RX et EN .
DTR USB CH340G -- relié via pont diviseur R=1K à ---> EN HC05 et R=2,2K vers Gnd .. ou EN en l'air!
TX USB CH340G --> relié via pont diviseur R=1K à --->RX HC05 et R=2,2K au Gnd
RX USB CH340G <--- relié direct <-------- TX HC05
test du HC05 avec terminal YAT à 9600bds ...avec Bouton Poussoir HC05 Maintenu appuyé!
Partie Init de base :
modif vitesse HC05:
AT+UART=115200,0,0
OK
modif vitesse terminal YAT 9600-> 115200
passage HC05 en MAITRE
AT+ROLE=1
OK
Association de l'esclave
Mini HORLOGE 4 Matrices H 18F26K22 at 00:18:E4:40:00:06
AT+BIND=18,E4,400006
OK
Cpt= 37 ;Dim;26/02/23;09:41:26; 15.81°C
AT+MRAD?
+MRAD:98D3:51:F94180
OK
Nom de l'esclave distant
AT+RNAME?98D3,51,F94180
+RNAME:Horlog_8V <-- Problemo , car avec module esclave avec la meme Mac Adresse sur les 2 horloges !!!!
OK
Cpt= 73 ;Dim;26/02/23;09:52:18; 15.81°C <----------- Message de l'Horloge 8V (CH3)
Cpt= 74 ;Dim;26/02/23;09:52:36; 15.81°C
Cpt= 75 ;Dim;26/02/23;09:52:53; 15.81°C
Cpt= 76 ;Dim;26/02/23;09:53:14; 15.81°C
-------------------------------- ---
debranché alim de l' Horlog_8V CH3
-------------------------------------
+DISC:LINK_LOSS
OK
AT+MRAD?
+MRAD:98D3:51:F94180
OK
AT
OK
----------------------------------
attachement mini Horloge CH2
--------------------------------
AT+BIND=98D3,21,F48701
OK
AT+STATE?
+STATE:CONNECTING <----------- se connecte tout seul !
OK
?
AT+STATE?
+STATE:CONNECTED <-------------- mini Horloge connectée (CH2)
OK
Mes1? <--------------------------------- message from mini Horlog
Mes1?
Mes1?
envoi cde Help
Mes1?
Help <-- envoi cde Help depuis terminal YAP relié à ce HC05 Maitre
Help : Help<CR>
RTC Update: U;14;05;18;15;36;01#<CR>
exemple pour :14 Mai 2018 01(Lundi) 15H36
Plage Luminosité Minimale PLM=18:06<CR>
Speed=xx vitesse de defilement xx de 02 à 99 <CR>
Msg=x...x de 0 à 63 caracteres , si >0 , Affiche le message x...x pendant x Rep <CR>
et affichage Time reduit, pas d'info temperatures pendant le Msg Affiché <CR>
Rep=xx de 04 à 99 :Repetition du Msg pendant xx Cycles <CR>
Lum=xx de 00 à 15 :Reglage Luminosité en mode JOUR <CR>
Temp.Exterieur : capteur géré par PIC12F1840, envoi via bluetooth
Mes1?
Mes1?
Msg=Hello chaps
OK for Msg
Mes1?
Hello Chaps s'affiche sur l'horloge
rappel:
Toutes les commandes AT sont passés avec Bouton Poussoir HC05 Maintenu appuyé!
Attention si vous commander plusieurs modules Bluetooth : adresses Mac differentes ou les mêmes ?