Partage
  • Partager sur Facebook
  • Partager sur Twitter

Communication Série TTL half-duplex

Connexion Wemos D1 Mini et Poêle Ravelli

    14 février 2021 à 16:29:38

    Bonjour à tous,

    Ayant l'objectif de domotiser mon poêle à pellet Ravelli, j'ai écumé pas mal de forum et je suis finalement tombé sur un membre du forum de Jeedom.com. Avec son aide et mes maigres connaissances en électroniques, j'ai réussi à mettre en place le montage qu'il me proposait. Mais je rencontre quelques problèmes et le forum Jeedom n'est malheureusement pas réactif du point de vue électronique pure.

    La communication du poêle est de type série half-duplex. Un seul fil pour les instructions entrantes et sortantes.

    Les commandes sont envoyées via des trames bien spécifique à chaque commande avec un Wemos D1 Mini. Le Poêle y répond avec une trame bien spécifique selon la commande envoyée. La carte électronique du poêle fonctionne en 5V et les communications du D1 Mini en 3.3V.

    L'envoi des trames fonctionne en général parfaitement. J'ai utilisé le montage ci-dessous afin de séparer les signaux entrants et sortants:

    Pour le montage j'ai utilisé une diode 1N14148 et j'ai testé avec un transistor 2N2222A et BC109.

    L'un des problèmes que je rencontre c'est que la trame en réponse est précédée d'un bruit correspondant à la trame sortante.

    La ligne du haut correspond au TX du D1 Mini et la deuxième au RX du D1 Mini.

    A quoi peut être dû ce "bruit"? Mon analyseur logique n'est pas de haute qualité, est-ce que cela pourrait être du à ça? Est-ce que la tension plus élevée sur la borne émettrice peut provoquer cela?

    Je suis désolé mes connaissances en électronique sont basiques...

    Merci d'avance pour vos réponses 

    Frysko

    • Partager sur Facebook
    • Partager sur Twitter
      15 février 2021 à 21:24:47

      Ce n'est pas vraiment du bruit mais plutôt un problème d'effet capacitif du transistor.

      A chaque front montant ou descendant du signal TX, tu vas avoir un pic de tension positif ou négatif très bref sur la broche RX.

      D'ailleurs, tu noteras que ton analyseur place bien ces pics RX juste en face de chaque front du TX, ce qui confirme le fait qu'il ne s'agisse pas réellement du bruit.

      Théoriquement, une UART est sensée suréchantillonneur le signal et ne devrait donc pas prendre en considération des pics qui sont extrêmement bref par rapport au temps d'un bit de donnée utile.

      Du coup, tu ne devrais donc rien recevoir pendant que tu émets des données sur le TX, ce qui est plutôt bon signe.

      Mais si par malheur ton UART venait a considérer un pic de tension négative comme un bit '0' associé au bit de START, alors celle-ci va ensuite ne lire que des bit '1' et donc recevoir 0xFF, comme l'indique ton analyseur de signaux.

      Si c'est le cas, ce n'est pas bien dérangeant, il te suffit de vider le buffer de réception juste après avoir émit des données, puis attendre la réponse du poêle.

      Ou alors, après chaque émission, tu peux tout simplement ignorer tous les 0xFF reçus jusqu'à trouver un caractère autre que 0xFF.

      -
      Edité par lorrio 15 février 2021 à 21:29:09

      • Partager sur Facebook
      • Partager sur Twitter

      Communication Série TTL half-duplex

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown