Go Down

Topic: Communication avec xbee shield et bluetooth bee (Read 3841 times) previous topic - next topic

debzsud

Bonjour tout le monde,
Tout est dans le titre. Je souhaite établir une connexion bluetooth entre un ordinateur ou un téléphone avec ma carte arduino (duelimanove). Pour cela j'utilise la carte XBee_Shield_v1.11 sur laquelle je branche un émetteur bluetooth Bee. La doc (que j'ai scruté pnd 3 jours...) explique qu'il faut tout d'abord configurer le module BT via un port usb (on peut passer par la carte arduino). Il s'agit seulement de bien placé certains boutons qui permettent de ne pas envoyer les infos à l'arduino mais au module. Seulement quoique je fasse rien ne bouge. Le module bluetooth ne fait que clignoté (2 fois/sec) et à chaque fois que je veux modifier la configuration du BT rien ne se passe (pas de réponse venant du COM branché à la carte et pas de changement de comportement du module BT). Le module reste tjrs indétectable.
Ais- je bien compris? Auriez-vous une idée d'où peut venir le problème?  

debzsud

Quelqu'un saurait au moins m'expliquer comment se passe les interfaces arduino/XBee et XBee/BT Bee?

debzsud

UP
Personne n'a jamais entendu parlé de module XBee?

Luj06

#3
Nov 10, 2010, 08:01 pm Last Edit: Nov 10, 2010, 08:03 pm by julien@pobot.org Reason: 1
Si si, un petit peu :)

Tu mets les interrupteurs sur quelle position ?

Tu as vu le code à charger dans l'Arduino pour permettre la configuration ?

http://www.seeedstudio.com/depot/xbee%C3%82%C2%AE-shield-v11-by-seeedstudio-p-419.html

debzsud

#4
Nov 10, 2010, 08:42 pm Last Edit: Nov 10, 2010, 10:16 pm by debzsud Reason: 1
Merci de ta réponse!
Je n'avais effectivement pas vu ce petit bout de code mais le problème n'a pas évolué. Ce code permet d'utiliser X-CTU mais avec ou sans rien ne change. Pourrais-tu m'expliquer le positionnement des interrupteurs?
J'ai remarqué qu'il n'y avait qu'une seule position où, branché via arduino>>USB, lorsque j'appuie sur le reset du bluetooth je reçois à l'écran:
WORK:SLAVER         (me dit qu'il est en mode esclave)

+BTSTATE:0             (Initialisation)

+BTSTATE:1             (ready)

Après lorsque je veux envoyer une configuration (+INQ=1)
il me retourne ERROR.
En gros je n'arrive pas à parler à la carte.
En fait les docs que j'ai lues concernent essentiellement les XBee shield or ici c'est une version miniaturisée par seed. Pourtant sur leur site il y a bien écrit qu'on peut y accéder avec X-CTU... J'ai tout essayer je n'arrive à rien.

Jean-François

#5
Nov 11, 2010, 07:34 am Last Edit: Nov 11, 2010, 07:47 am by jfs Reason: 1
J'avais fait une ébauche d'un configurateur avec Processing :

Code: [Select]

import processing.serial.*;
Serial myPort;

int lf=10;
String inString;
char CR=13;

void setup()
{
 size(490, 200);
 background(51);
 frame.setResizable(true);

 println(Serial.list());
 String portName = Serial.list()[2];
 myPort = new Serial(this, portName,115200);//57600, 115200
 myPort.bufferUntil(CR);

}

void draw()
{
delay(3000);
   println("receive");
 myPort.write("+++");
delay(3000);
println(inString);
println("receive");
 myPort.write("ATID"+CR);
delay(3000);
   println("entree"+inString);
     myPort.write("ATID"+CR);
delay(3000);
   println("entree"+inString);
     myPort.write("ATBD"+CR);
delay(3000);
   println("entree"+inString);
     myPort.write("ATBD6"+CR);
delay(3000);
   println("entree"+inString);
     myPort.write("ATBD"+CR);
delay(3000);
   println("entree"+inString);
println("entree"+inString);
     myPort.write("ATWR"+CR);
delay(3000);
  println("entree"+inString);
     myPort.write("ATBD"+CR);
delay(3000);
   println("entree ok"+inString);
 }





void receive_value_filter()
{
 //}
//myPort.clear();
}
void serialEvent(Serial p) {
 inString = p.readString();
   println("In "+inString);
 myPort.clear();
}



Fait selon les commandes décrites ici :

http://www.arduino.cc/en/Main/ArduinoXbeeShield

J'ai un dongle Xbee, donc je n'ai pas fais la partie arduino, je n'en avais pas besoins, mais c'est faisable en utilisant cette librairie :

http://www.arduino.cc/playground/Interfacing/Processing
MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Teiva

Bonsoir debzsudn,

Pour le module Bluetooth bee, il y a juste a faire :
a) appairage Bluetooth avec ton pc le code usine est '1234'.
b) ensuite tu as un port séries qui apparaiit sur ton PC.
c) la communication se passe sur ce port série 9600 Bauds par défaut.

A+ Teiva


www.Zartronic.fr : Votre source Arduino en France


www.Zartronic.fr : Arduino & Robotique

debzsud

Merci pour vos réponses.

Teiva, mon seul problème est justement l'appareillage. Le module est introuvable... Le tiens a fonctionné tout de suite?

Jean-François, pourrais-tu juste m'indiquer la fonction de ton code?
Il sert à configurer le module ou le XBee shield?
Je vais m'interesser un peu de plus près à processing.





Jean-François

Juste le Xbee, mais ce code ne fonctionne qu'avec une sorte de clé USB où le module est mis dessus.
C'est un point de départ potentiel pour faire la même chose avec un Xbee-shield monté sur un Arduino.
MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Teiva

Quote
Teiva, mon seul problème est justement l'appareillage. Le module est introuvable... Le tiens a fonctionné tout de suite?


Bien oui, il est repéré sur mon pc et mon téléphone portable.
Vérifie l'alimentation 3,3V sur le support Xbee

A+ Teiva


www.Zartronic.fr : Votre source Arduino en France


www.Zartronic.fr : Arduino & Robotique

debzsud

Je vais vérifier mais le courant à l'air d'être bon puisque les leds fonctionnent et le module peut m'envoyer des infos.
Par contre dans la doc que j'ai trouvé ils disent que le code par défault est '0000'. Tu es sûr qu'on parle du meme module?

Luj06

Si tu as reçu ces messages sur ton écran, c'est que ça fonctionne. Mais effectivement comme le dit Teiva, normalement il n'y a pas de configuration (sauf cas particuliers).

Tu utilises quel système Bluetooth pour détecter le BTbee ?

- Bluetooth intégré à l'ordinateur ?
- Bluetooth via un dongle pas cher ?
- Bluetooth via un dongle normal ?
- Bluetooth sur téléphone ?

J'avais essayé un petit dongle pas cher pour me connecter en bluetooth et il ne détectait rien (les téléphones mobiles mais pas les Bluetooth embarqués comme l'ArduinoBT ou le Lego NXT). Essaie avec un autre ordinateur ou avec un téléphone.


Teiva

Quote
Par contre dans la doc que j'ai trouvé ils disent que le code par défault est '0000'.


Non je suis sur que c'est '1234', si c'est le  Bluetooth Bee de DFRobot.
Mais '0000' pour celui de SeedStudio
Si tu as celui de seedstudio attention a cts/rts.

A+ Teiva


www.Zartronic.fr : Votre source Arduino en France



www.Zartronic.fr : Arduino & Robotique

debzsud

C'est bien celui de seedstudio. J'ai essayé avec mon ordinateur portable et mon téléphone (téléphone assez vieux mais a priori l'ordinateur est plutôt récent). Je vais essayer avec d'autres matériels. Pour le rts/cts normalement le logiciel X-CTU s'en charge (les cases associées sont cochées). Merci pour vos réponses en tout cas. J'ai contacté seedstudio mais ils n'ont toujours pas répondu...

akhenakh

Bonjour

J ai le xbee bluetooth de dfrobot celui fonctionne tres bien 9600 baud mais impossible de passer a une vitesse plus eleve.

la doc mediocre en chinois montre des commande at a envoye en serie mais rien n y fait avez vous reussi ?

merci

Go Up