Pages: 1 2 3 [4] 5 6 ... 32   Go Down
Author Topic: [HOWTO] Guida (più o meno) completa all'utilizzo di Moduli Bluetooth  (Read 70051 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Faraday Member
**
Karma: 45
Posts: 5789
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
- e' da chiarire quando dici che la velocita' standard degli HC05 e' 38400, in realta' la velocita' di comunicazione settata di fabbrica e' uguale per tutti i moduli e cioe' 9600, e' la velocita' da usare per la programmazione AT che e' 38400. Per spiegarmi meglio, se tu prendessi un modulo HC05 e lo lasciassi cosi' come da fabbrica, per collegarti dovresti usare 9600.

uhm questa è da approfondire. La velocità di default è quasi per tutti 9600 - quella dell' HC05, avendoci fatto parecchie modifiche, non me la ricordavo e avevo ritrovato il datasheet del venditore, in cui era segnato appunto 38400.

In realtà, cambiando baudrate, se reimpostavo la seriale a cui era connesso il modulo (es. con adattatore usb2serial), mettendo la nuova velocità la comunicazione avveniva senza problemi. Viceversa no.
Quindi quel che ne deduco è che esiste una sola velocità, che vale sia per la seriale via bt che quella "fisica".

Ho fatto dei test sulla velocita' delle due seriali.
Sul mio HC-07 si comporta cosi':
- settata con comandi AT seriale modulo a 19200
- lancio due terminali uno sulla Com seriale HW del modulo, e l'altro sulla seriale BT del modulo.
- Se cambio le impostazioni del terminal usato sulla com hw, settandolo ad esempio 11500, non mi funziona piu' la connessione.
- Se cambio le impostazioni del terminal usato sulla com bt, funziona.

Lato seriale BT si puo' usare indifferentemente qualsiasi velocita'. E' forse un comportamento comune per tutti gli aggeggi con profilo SPP ?

Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Offline Offline
Jr. Member
**
Karma: 0
Posts: 83
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ciao a tutti, ho creato l'app consigliatami da pitusso seguendo una guida, lo scaricata nel cellulare, ho caricato lo sketch sull'arduino.
riesco a connettere il cellulare al modulo bluetooth pero' quando premo su led on non si accende il led 13.
non riesco a capire quale' il problrma, mi aiutate a capire cosa devo fare?!? appena comprato bisogna impostare via codice il modulo bluetooth? in modalita' master o slave forse?


con blueterm riesco solo a vedere cio' che viene scritto sul serial monitor non riesco a controllare niente.
ciao
Logged

0
Offline Offline
Edison Member
*
Karma: 24
Posts: 2293
Have you mooed today?
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao
il tuo modulo dovrebbe già essere impostato a slave, altrimenti non lo vedresti neppure.

La connessione è corretta, secondo quanto riportato nella guida (magari posta pure una foto)?
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 83
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

in che senso e' corretta??
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 83
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

per connessione corretta intendi il circuito o la connesione via bluetooth??
Logged

0
Offline Offline
Edison Member
*
Karma: 24
Posts: 2293
Have you mooed today?
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao, intendo il circuito, scusa per la poca chiarezza  smiley-razz

Cmq, il pairing da smartphone a modulo è avvenuto senza problemi?
Riesci a vedere e selezionare il modulo, usando "Choose BT device" nella app?
Logged

Bologna
Offline Offline
Sr. Member
****
Karma: 2
Posts: 454
La gente spesso definisce impossibili cose che semplicemente non ha mai visto. [Albert Einstein]
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@pitusso
anche io ho provato con la tua app e facendo il serial print di quello che riceve l'arduino non ottengo nulla, però con Blueterm installato sul mio tablet riesco ad accendere e spegnere il led.
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 83
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

allora, il cicuiti mi sembra giusto, ho collegato il primo pin tx al rx e il secondo pin rx al tx. poi vcc al 3.3v e gnd a gnd. poi 2 pin a 2 led per vedere lo stato e il pio11(quello dell'AT) non lo collegato a niente.
il pairing avviene senza problemi anche perche' il secondo led non lampeggia piu' e il primo rima acceso fisso.
si riesco  a vedere e selezionare il modulo, usando "Choose BT device" nella app.

io con blueterm riesco solo a leggere cio' che viene scritto su serialmonitor, ad esempio con lo sketch sotto riesco a vedere solo "arduino led on" e "arduino led off" .
Code:
 
void setup(){
  //make sure your bluesmirf module is
  //configured at 115200 baudrate setting
  Serial.begin(9600);
  //let's test arduino led
  pinMode(13, OUTPUT);
}

void loop(){
  if(Serial.available()){
    //read first characer received
    unsigned char charreceived = Serial.read();
   
    switch(charreceived){
      case 'a':
        digitalWrite(13, HIGH);
        Serial.println("Arduino Led On");
        break;
      case 'b':
        digitalWrite(13, LOW);
        Serial.println("Arduino Led Off");
        break;
      default:
        break;
    }
   
    //flush remaining characters
    //we only want first character
    Serial.flush();
  }
  delay(10);
}
 










 
Logged

0
Offline Offline
Edison Member
*
Karma: 24
Posts: 2293
Have you mooed today?
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao,

Quote
facendo il serial print di quello che riceve l'arduino non ottengo nulla

l'applicazione prevede che, prima di accendere / spegnere il led, si effettui la connessione (pulsante in alto, e selezione device BT di cui preventivamente è stato fatto il pairing).

L'app è molto base ed è fatta per avvicinare i profani  smiley-yell, percui non ci son controlli sull'effettiva connessione.
L'avvenuta connessione però è verificabile tramite il led di controllo sul modulo stesso.
 
@yassino
mi sa che stai facendo unpoca di confusione, hai preso lo sketch da qualche altra parte: quello non può funzionare con la app che ho postato  smiley-confuse
Inoltre ti consiglio di mettere perlomeno una resistenza da 2k2 tra rx del modulo e tx di arduino (come riportato nella parte di guida relativa alla connessione hw)
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 83
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@pitusso
no no quello sketch che ho postato e' quello che ho usato con blueterm.
con l'app ho usato questo sketch:
Code:
#include <NewSoftSerial.h>    //IDE <= 0023

const int rxPin = 2;
const int txPin = 3;
const int ledPin = 13;
byte btval = 0;


NewSoftSerial bluetooth(rxPin, txPin);   //IDE <= 0023

void setup() {
 
  Serial.begin(9600);
  bluetooth.begin(9600);

  pinMode(ledPin,OUTPUT);
}

 
void loop() {

  if (bluetooth.available()) { 
    btval = bluetooth.read();
    if (btval == 1) {
       digitalWrite(ledPin, HIGH);
    } else {
        digitalWrite(ledPin, LOW);
    }
  }
 


per rx del modulo ho usato un partitore di tensione.
« Last Edit: June 05, 2012, 11:09:21 am by yassino » Logged

Offline Offline
Sr. Member
****
Karma: 0
Posts: 294
L'uomo non smette di giocare perché invecchia, ma invecchia perché smette di giocare. (George Bernard Shaw)
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Scusate se interrompo le spiegazioni a @yassino ...
Domanda: Ma tutti quei "pin" del modulo bluetooth cosa sono?? A parte, ovviamente, quelli che gia conosciamo/conosco: AT, alimentazione e tx/rx ...
Tutti gli altri pin a cosa servono??
Logged


0
Offline Offline
Faraday Member
**
Karma: 45
Posts: 5789
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

il chip contiene un suo fw, ed in base a quello i pin sono questo o quello. Ci sono foto, mi sembra anche nella guida, che danno dei nomi ai pin, sembrano esserci ad esempio gli altri segnali seriali, mentre per tutti i pin IO dipende dal firmware.
Mi sembra di aver visto progetti che usano il solo modulo, programmato dall'utente. Forse ha un suo IDE gratuito ?
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Offline Offline
Jr. Member
**
Karma: 0
Posts: 83
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@maggio93
ho usato 2 pin e a ciascuno ho attacato un led, serve per verificare la connesione. quando non sono conneso con il cell lampeggia il secondo e il primo rimane acceso e quando mi connetto si accende il primo e rimane acceso fisso.
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 83
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ciao, celo fatta ad usare il modulo bluetooth con il cell usando l'app consigliatami da pitusso.
grazie
Logged

0
Offline Offline
Edison Member
*
Karma: 24
Posts: 2293
Have you mooed today?
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao

Quote
celo fatta ad usare il modulo bluetooth con il cell usando l'app consigliatami da pitusso

come hai risolto? Cos'era che non andava?
Logged

Pages: 1 2 3 [4] 5 6 ... 32   Go Up
Jump to: