problema con bluetooth hc-05

buongiorno a tutti ragazzi, ho un grosso problema con il mio modulo bluetooth appena comprato =(
da giorni sto tentando di farlo comunicare con arduino, ma senza risultati.
sto utilizzando uno sketch che dovrebbe farmi funzionare 8 relè.
il problema è che il mio tablet comunica con il modulo bluetooth, ma aimè il modulo bluetooth non comunica con il mio arduino uno. qualcuno sa cosa posso fare???
P.S. i collegamenti sono giusti, TX con RX ed RX con TX, ho settato trammite comandi AT lo stesso baudrate a 9600, collegando tra loro i pin TX eRX del modulo, uso blueterm, e cio che invio lo ricevo, quindi il modulo funziona, non capisco perche arduino non riceve, quacuno può aiutarmi??

Guarda qui --> [HOWTO] Guida (più o meno) completa all'utilizzo di Moduli Bluetooth - Megatopic - Arduino Forum
E' una guida sull'uso dei moduli bluetooth.

Poi posta il codice (vedi come fare al punto 7 --> [REGOLAMENTO] Come usare questa sezione del forum - Italiano - Arduino Forum)

Ciao,

[cut] qualcuno sa cosa posso fare???

inzia pubblicando il codice :stuck_out_tongue:

Poi se fai una veloce ricerca sul forum, troverai davvero molti post con le tue stesse domande.
Hai guardato la guida postata in megatopic?
Utilizza SoftwareSerial invece di Seriale fisica, alcuni hanno avuto problemi analoghi usando direttamente la Seriale.
Infine, se utilizzi una SoftwareSerial, puoi usare la seriale per fare debug

EDIT Postato in contemporanea a PaoloP (ciao :P)

pitusso:
Utilizza SoftwareSerial invece di Seriale fisica, alcuni hanno avuto problemi analoghi usando direttamente la Seriale.
Infine, se utilizzi una SoftwareSerial, puoi usare la seriale per fare debug

CONFERMO !!!

Se ne è parlato un'infinità di volte ... :roll_eyes:

La maggior parte di questi modulini economici HC-05 NON funzionano se collegati alla vera seriale di Arduino (pin 0 e 1) ed occorre usare la SoftwareSerial inoltre, per ragioni di compatibilità con tutte le schede, i pin consigliati sono il 10 e 11 (RX e TX).

Prova e vedrai che funzionerà al primo colpo !

Guglielmo

Ci sarà pure una ragione per la quale una vera rs232-ttl non funziona mentre una software sì.
Non dipende dall'assenza del controllo di flusso perchè non ce l'hanno entrambe, gli unici motivi plausibili sono l'assenza di delay intercarattere o un incompatilità sui parametri elettrici della connessione(livelli-impedenza etc..) , gpb01 ?

icio:
... un incompatilità sui parametri elettrici della connessione(livelli-impedenza etc..) , gpb01 ?

Buona la seconda XD XD XD

Molti degli HC-05 che trovi a ... "prezzi stracciati" ... sono fatti con componenti al limite delle tolleranze. Aggiungi che lavorano a 3.3V (... anche se sono 5V tolerant) e che su Arduino vanno a finire in "parallelo" al convertitore USB <-> Seriale, su una vera seriale con livelli ben definiti ...

Il mix è una miscela che spesso ... porta al non funzionamento ... :wink:

Guglielmo

Buono a sapersi , ecco come mai i miei moduli hanno sempre funzionato su tutto , perchè il pcb e il circuito me l'ho fatto da me :smiley:

http://www.dmxpassion.altervista.org/pg008.html

ecco lo sketch in questione, dove ho sbagliato??
è la prima volta che utilizzo un modulo bluetooth e lo sketch in parte l'ho preso da internet

#define luce1  4
#define luce2  5
#define luce3  6
#define luce4  7

#define luce5  8
#define luce6  9
#define luce7  10
#define luce8  11

int firstSensor = 0;         // first analog sensor
int secondSensor = 0;    // second analog sensor
int thirdSensor = 0;        // digital sensor
int incomingByte = 0;               // incoming serial byte
boolean status_unlock;
boolean status_bluetooth;

long interval = 1000;           // interval at which to blink (milliseconds)
long previousMillis = 0;        // will store last time LED was update
int minite,sec;


void setup()
{
  // start serial port at 9600 bps:
  Serial.begin(115200);
  //pinMode(2, INPUT);   // digital sensor is on digital pin 2
  //establishContact();    // send a byte to establish contact until receiver responds
 
  pinMode(luce1, OUTPUT);
  pinMode(luce2, OUTPUT);
  pinMode(luce3, OUTPUT);
  pinMode(luce4, OUTPUT);

  pinMode(luce5, OUTPUT);
  pinMode(luce6, OUTPUT);
  pinMode(luce7, OUTPUT);
  pinMode(luce8, OUTPUT);
 
  digitalWrite(luce1, LOW);  // switch off LED
  digitalWrite(luce2, LOW);  // switch off LED
  digitalWrite(luce3, LOW);  // switch off LED
  digitalWrite(luce4, LOW);  // switch off LED
   
  digitalWrite(luce5, LOW);  // switch off LED
  digitalWrite(luce6, LOW);  // switch off LED
  digitalWrite(luce7, LOW);  // switch off LED
  digitalWrite(luce8, LOW);  // switch off LED
 
  status_bluetooth = true;
  status_unlock = false;
  sec = 0;
}

void loop()
{
  if (Serial.available() > 0) {
    incomingByte = Serial.read();
    if (incomingByte == 'a') {
      digitalWrite(luce1, HIGH); 
    }
     if (incomingByte == 'q') {
      digitalWrite(luce1, LOW); 
    }
     
     
     if (incomingByte == 's') {
      digitalWrite(luce2, HIGH);
    } 
    if (incomingByte == 'w') {
      digitalWrite(luce2, LOW);
    }
    
     if (incomingByte == 'd') {
      digitalWrite(luce3, HIGH);
    } 
    if (incomingByte == 'e') {
      digitalWrite(luce3, LOW);
    }
    
     if (incomingByte == 'f') {
      digitalWrite(luce4, HIGH);
    } 
    if (incomingByte == 'r') {
      digitalWrite(luce4, LOW);
    }
    
    
    
    
     if (incomingByte == 'g') {
      digitalWrite(luce5, HIGH); 
    }
     if (incomingByte == 't') {
      digitalWrite(luce5, LOW); 
    }
     
     
     if (incomingByte == 'h') {
      digitalWrite(luce6, HIGH);
    } 
    if (incomingByte == 'y') {
      digitalWrite(luce6, LOW);
    }
    
     if (incomingByte == 'j') {
      digitalWrite(luce7, HIGH);
    } 
    if (incomingByte == 'u') {
      digitalWrite(luce7, LOW);
    }
    
     if (incomingByte == 'k') {
      digitalWrite(luce8, HIGH);
    } 
    if (incomingByte == 'i') {
      digitalWrite(luce8, LOW);
    }
  }
 }

Come ti è stato detto, NON devi usare la Serial, ma la SoftwareSerial ...
... e ti servono un paio di pin liberi ...

E' inclusa nell'IDE quindi non devi scaricare nulla, devi solo modificare il programma ... guardati gli esempi :wink:

Guglielmo

icio:
USB2

Icio ... è il tuo sito ? Tue produzioni ? :slight_smile:

Guglielmo

gpb01:

icio:
USB2

Icio ... è il tuo sito ? Tue produzioni ? :slight_smile:

Guglielmo

quante cose :fearful:

Sì, è un misto tra divertimento e cose serie, c'è anche una cnc laser con arduino 2009, anche se è fatta con 2 lettori di Floppy , funziona anche su macchine grandi, pitusso l'ha vista , sa cos'è :sweat_smile:

..confermo che icio è un inventore pazzo e scatenato :slight_smile: