SIM800L et SofwtareSerial - Aucune réponse

Bonjour à tous,

Encore un sujet sur le composant SIM800L, oui. J'ai passé des heures et des heures à tester toutes les solutions et rien ne fonctionne.

J'ai donc un clone (CH340G) Arduino Uno R3. Il a déjà fonctionné avec des schémas simples. Là j'essayais de faire fonctionner un envoi de SMS.

J'ai donc une alimentation à 6V 3A. Puis j'ai un réducteur de tension LM2596 qui la fait descendre à 4.06V. Il est donc branché sur le VCC du SIM800L. J'ai bien branché le RX du module sur un pin déclaré TX sur l'arduino et inversement. J'ai cependant utilisé un composant AMS1117 pour réduire la tension en sortie du pin Tx de l'arduino à 3.3V.

J'ai regroupé toutes GND.

Mon module clignote une fois toutes les 3 secondes, donc il détecte bien un réseau mais quand j'essaye d'envoyer un AT, je n'ai aucune réponse. Je précise que j'ai bien sélectionné "Les deux, NL et CR" dans les options du moniteur série.

J'ai mesuré les tensions des différents pin :

Arduino :
Pin 10 : 4.95V
Pin 11 : 2.82V

SIM800L :
VCC : 4.06V
Rx : 3.31V
Tx : 2.82V

#include <SoftwareSerial.h>

const byte rxPin = 11;
const byte txPin = 10;

// set up a new serial object
SoftwareSerial mySerial (rxPin, txPin);

void setup()
{
  // Open serial communication
  Serial.begin(9600);

  // define pin modes for tx, rx:
  pinMode(rxPin, INPUT);
  pinMode(txPin, OUTPUT);
  // set the data rate for the SoftwareSerial port
  mySerial.begin(9600);

}

void loop() // run over and over
{

  if (mySerial.available())
    Serial.write(mySerial.read());

  if (Serial.available())
  {
    while (Serial.available())
    {
      mySerial.write(Serial.read());
    }
    mySerial.println();
  }
}

Là je sèche. Je précise que je débute. J'ai lu que les pins 0 et 1 étaient utilisés par le port USB pour communiquer avec l'arduino lors des tests. Si vous avez une solution pour utiliser le module SIM800L en passant par ces pins, je prends, même si je dois tester en réel sans le câble USB.

Merci beaucoup pour votre aide.

J'ai rajouté une diode 1N4007 après le régulateur de tension à 3.3V. J'ai donc 2.9V environ qui arrive sur le module Sim800L pin Rx. J'ai essayé le logiciel AT Command Tester et j'ai remarqué qu'à chaque fois qu'une commande AT est envoyée, cela a un effet sur l'arduino. Le régulateur 3.3V s'éteint et la diode 13 (L) clignote puis se rallume. Puis ça recommence car le logiciel renvoie une commande AT.

Sans savoir de quel module SIM800 il s'agit, sans schéma du montage, que dire ?

Voici déjà le modèle du module. Je vais préparer le schéma.

Désolé si le schéma n'est pas très joli. J'ai tenté d'utiliser une autre alimentation au cas où et j'ai le même résultat. Là c'est celle que j'utiliserai pour le montage final c'est du 5V / 3A. Elle n'alimente pour le moment que le module. L'Uno est alimenté via le port USB.

Je n'ai jamais vu un régulateur AM1117 utilisé comme adaptateur de niveau.
Ce n'est certainement pas une chose à faire.
Un régulateur linéaire n'est pas fait pour cela. Il est fait pour réguler une tension d'alimentation.
Le monter sans condensateur de sortie est le meilleur moyen de le faire osciller.

Un simple pont diviseur à résistances serait de loin préférable.

Oh merci, mais ça a fonctionné très peu de temps. Déjà cet après-midi, il avait du mal à me trouver le réseau. Le module clignotait 7 fois puis faisait une pause de 3s environ. Alors qu'avant il me trouvait bien le réseau.

Et là la LED ne s'affiche même plus. A mon avis, j'ai du griller le module non ? D'ailleurs quand je lance le moniteur série j'ai maintenant du charabia.

J'attends une confirmation mais je pense que je suis bon pour racheter un module SIM.