TX RX via deux modules HC05

Bonjour,

voilà, j'ai une carte mega ADK, et j'ai branché deux modules Bluetooth HC-05 sur les port TX et RX 14 et 15 et 16/17. Je tiens à dire que j'ai connecté correctement TX / RX croisé.

J'ai un module en Slave et un en Master et donc je désire redirectionner tout le traffics entre ces deux modules afin qu'il soit transparent et afficher le dialogue dans le moniteur.

Cela va me permettre de sniffer un dialogue bluetooth en interposant ce petit module.

Actuellement le code ne renvois aucune erreur, mais je n'ai aussi aucune données, avez-vous des conseils ?

Pour information, si je connecte que les deux modules HC-05 ensemble tx sur RX du 2 eme et RX sur tx du 2 eme et bien j'arrive à le faire fonctionner (sans arduino), mais il me manque la visu du dialogue :frowning:

Merci de votre aide et voici mon code :

#include <SoftwareSerial.h>


//HC05 master
#define rxPinMaster 15
#define txPinMaster 14

// HC05 Slave
#define rxPinSlave 17
#define txPinSlave 16

// set up a new serial port
SoftwareSerial mySerialMaster =  SoftwareSerial(rxPinMaster, txPinMaster);
SoftwareSerial mySerialSlave =  SoftwareSerial(rxPinSlave, txPinSlave);

void setup()  {
  
  // define pin modes for tx, rx:
  pinMode(rxPinMaster, INPUT);
  pinMode(txPinMaster, OUTPUT);

  // define pin modes for tx, rx:
  pinMode(rxPinSlave, INPUT);
  pinMode(txPinSlave, OUTPUT);
  
  // set the data rate for the SoftwareSerial port
  mySerialMaster.begin(9600);
  mySerialSlave.begin(9600);
  Serial.begin(9600);

  Serial.print("Pret");
  
}


void loop() {

        mySerialMaster.listen();
        
        if (mySerialMaster.available()>0){
          
              Serial.println("Reception 1 : ");
              //ci-dessous code qui affiche dans le moniteur série et qui transfert à l'autre module
              Serial.print(mySerialMaster.read());
              char inByte = mySerialMaster.read();
              mySerialSlave.write(inByte);
              
       }
      
      
      
      mySerialSlave.listen();
      
        if (mySerialSlave.available()>0){
          
              Serial.println("Reception 2 : ");
              //ci-dessous code qui affiche dans le moniteur série et qui transfert à l'autre module
              Serial.print(mySerialSlave.read());
              char inByte = mySerialSlave.read();
              mySerialMaster.write(inByte);
              
       }



 
}

Salut,

Pourquoi utiliser des liaison série software ? T'as une mega avec 4 liaisons séries hard ... Car le problème vient de la en plus : on ne peut écouter que sur un port série logiciel à la fois.

Salut B@tto,

Merci pour ton message, je dois dire que je ne comprend pas tout je suis novice. Une information de dernière minute, j'ai changé le mage ADK par un arduino UNO et là ca fonctionne mieux, je rentre dans la première boucle, mais ca transmet pas :frowning:

Peux-tu m'expliquer ce que tu entends par liaison série hard ? Et comment brancher (pin) ?

Merci,

Christophe

Un grand merci B@tto, j'ai en effet modifier via les liaison hard et ça marche. EN plus le code et 3 x plus simple :slight_smile:

Les trames que je capture ressemble à cela :

PFC00FC}PFC00FC}PFC00FC}QFC00FD}QFC00FD}RFC00FE}RFC00FE}RFC00FE}SFC00FF}SFC00FF}TFC00F8}TFC00F8}TFC00F8}UFC00F9}UFC00F9}VFC00FA}VFC00FA}VFC00FA}WFC00FB}WFC00FB}XFC00F4}XFC00F4}ZF2000FF7}ZE20A20C2}QF916EE}QFA2301D9}QFA2301D9}SF916EC}SFA2301DB}SFA2301DB}UF916EA}UFA2301DD}UFA2301DD}WF916E8}WFA2301DF}WFA2301DF}//ZF2000FF7}ZF30AF3}ZF005FF}ZE20A20C2}QF917EF}QFA2301D9}QFA2301D9}SF917ED}SFA2301DB}SFA2301DB}UF917EB}UFA2301DD}UFA2301DD}WF917E9}WFA2301DF}WFA2301DF}//QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}QF800000000000000F9}SF800000000000000FB}UF800000000000000FD}WF800000000000000FF}XF800000000000000F0}

Quelqu'un à une idée à quoi ca ressemble ? et comment décoder ?