Модуль SIM800l не отвечает на AT команды

Здравствуйте, уважаемые форумчане! Столкнулся с проблемой: при открытии монитора порта SIM800l отвечает на команду указанную в коде и добавляет такие символы “⸮⸮⸮”, а когда я пытаюсь написать AT команду самостоятельно через монитор порта, никакого ответа не следует.
Подскажите, пожалуйста, что делать?
Скетч вот такой:

`#include <SoftwareSerial.h>
SoftwareSerial SIM800(11, 12);
void setup() {
  Serial.begin(9600);
  Serial.println("Start!");
  SIM800.begin(9600);
  SIM800.println("AT");

}

void loop() {
  if (SIM800.available())
    Serial.write(SIM800.read());
  if (SIM800.available())
    Serial.write(Serial.read());
}`

А вот монитор порта:

В это деле я новичок, пожалуйста, сильно не судите.

Точно нужно одну и ту же операцию дважды проводить?

Попробуй убрать «NL (новая строка)»

Убрал повтор, пропали знаки вопроса, но при отправлении AT команды всё равно нет ответа

Убрал NL, ничего не поменялось(

Спасибо вам большое за помощь. Оказалось, что вместо

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

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

нужно было написать

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