French Utiliser l'application Android Arduino BlueControl pour gérer des applications B4R

Marc DANIEL

Well-Known Member
Licensed User
Et cette fois, avec le programme B4R LightDimmer, tout fonctionne, allumage d'une LED bleue (sans résistance) et variation d'intensité effective de la LED bleue avec l'utilisation du curseur. Par ailleurs, on reçoit bien sur le Smartphone le retour Arduino via le module Bluetooth parce que j'ai remplacé "millis here:" par "millisecondes:" dans HC05LightDimmer.B4R et c'est ce qui s'affiche sur l'écran de mon Smartphone avec le nombre variable de millisecondes ...

Screenshot_20210419-231547.PNG
 

Attachments

  • HC05LightDimmer.zip
    1.1 KB · Views: 145
Last edited:

Marc DANIEL

Well-Known Member
Licensed User
Moi qui voulais changer de Smartphone, il faut donc que je me méfie des versions Android 10 et Android 11 !!!
 

Marc DANIEL

Well-Known Member
Licensed User
HC05 avec câbles.jpg


Mon schéma de branchement du module HC05 avec la liasse de câbles couleur fournie lors de l'achat
 

Marc DANIEL

Well-Known Member
Licensed User
Klaus,

J'ai appliqué les modifications (Bluetooth) sur l'application B4A trouvée dans le dossier HC05 pour gérer un moteur à distance et ça donne "GestionMoteur.zip" en PJ
Je viens d'essayer et ça fonctionne super sauf que pour le moment ça allume une LED bleue ( avec le bouton Arrêt/Marche) au lieu de démarrer un moteur et la LED bleue subit les variations de lumière avec le curseur "Vitesse". Evidemment, le bouton Avant/Arrière est inopérant pour le moment.

Screenshot_20210420-144409.PNG
Screenshot_20210420-145304.PNG


Captures d'écran de "GestionMoteur.B4A"
 

Attachments

  • GestionMoteur.zip
    40.4 KB · Views: 132

Marc DANIEL

Well-Known Member
Licensed User
Super, fantastique, inespéré !!!
D'avance merci à toi Klaus pour ton implication.
Bonne fin de journée. Au plaisir.
Marc
 

klaus

Expert
Licensed User
Longtime User
Voilà, ci-joint les deux programmes et le schéma.
Je n'ai pas pu tester de manière concrète, car mon circuit L293D est hors d'usage.
J'ai vérifié que tous les signaux arrivent aux bons endroits, c'est la partie puissance pour le moteur que ne fonctionne plus.

HC_05DCMotor.jpg
 

Attachments

  • HC05DCMotorB4A.zip
    11.6 KB · Views: 137
  • HC05DCMotorB4R.zip
    1.1 KB · Views: 138

Marc DANIEL

Well-Known Member
Licensed User
Et bien, ça a l'air de fonctionner, pas du premier coup mais une fois que ça a démarré, tout fonctionne, le ON/OFF (avec une inversion, le OFF démarre et le ON arrête), le changement de direction est impressionnant, même en marche. La vitesse fonctionne parfaitement. C'est même ce curseur qui provoque bizarrement le démarrage du moteur la première fois puis tout fonctionne bien.

Par contre, tu as encore oublié dans le B4A de corriger la ligne 28 dans le module Starter.BAS mais pas grave, je l'ai fait et ça marche !!!

Tu as bien travaillé Klaus ! Toutes mes félicitations. Grâce à toi, je vais pouvoir poursuivre sur cette voie avec HC-05 !!!
Belle fin de journée.
Cordialement,
Marc
 

klaus

Expert
Licensed User
Longtime User
Par contre, tu as encore oublié dans le B4A de corriger la ligne 28 dans le module Starter.BAS
Non, car le nom de mon module est "HC-05", la connexion fonctionne tel quel chez moi.
Pour être 'universel' nous pourrions remplacer le ligne 28 par:
If Name.Contains("HC-05") Then

Cet après-midi j'ai pris le projet [B4XPages] Bluetooth Char Example de Erel que j'ai commencé par adapter pour la commande du moteur.
J'ai réussi à connecter mon Smartphone Android 11 et à envoyer une commande.
Ce qui est, pour le moment et pour moi, bizarre est que j'envoie 2 bytes mais l'Arduino en reçoit 6 et ce sont les cinquième et sixième byte qui correspondent aux deux que j'envoie.
Encore des investigations à entreprendre pour comprendre le comment du pourquoi.
 

Marc DANIEL

Well-Known Member
Licensed User
Klaus, j'ai inversé les connexions aux broches 4 et 5 et le ON démarre et le OFF arrête, donc OK

et en fait non, ça n'a rien changé ...
Donc, dans le designer B4A, j'ai inversé les textes des propriétés du ToggleButton "TgbMotorOnOff" :

ON-OFF.PNG


et cette fois-ci, ça correspond à l'action constatée ...
 

Marc DANIEL

Well-Known Member
Licensed User
Ah OK, en fait il faut adapter les B4A aux noms des modules en notre possession. Je vais tenter : " If Name.Contains("HC-05") Then "

Connexion parfaite, donc je garde !!!
 

Marc DANIEL

Well-Known Member
Licensed User
Après mon inversion, le texte indique la fonction à exécuter, c'est à dire que si le moteur est en train de tourner, le bouton affiche OFF pour l'arrêter et s'il est arrêté, le bouton affiche ON pour le remettre en marche. Mais Klaus, c'est vraiment trop génial, encore merci pour ton travail !
 

Marc DANIEL

Well-Known Member
Licensed User
Je fais une proposition de légère modification du code dans Main, pour éviter la fermeture intempestive de l'application avant la fin de l'appairage si jamais on clique sur un bouton par mégarde:
(D'abord décocher les cases Enabled et Visible de "pnlButtons" dans le Designer)
ExtraitMainCode.PNG

Mais bon, ce n'est qu'un détail
 
Top