GSM Connect - проблемы по отправки SMS с Arduino
  • Приобрели недавно полный комплект
    проделал все как написано в примерах
    в терминальном режиме все прошло успешно
    подключил к Arduino загрузил Sketch указанный в примерах
    исправил только номер телефона и ПИН код карты (хотя СИМка у меня не требует вводить его тоесть всегда ГОТОВА)
    компелирую, загружаю - ничего не отправляется
    перемычки стоят как описано 2-3
    скорость подбирал
    комментировал команды запроса ПИН кода
    Тишина :(
    куда копать ?
    и еще неприяный и неудобный момент
    когда Шилд воткнут в АРДУИНО то невозможно закрузить Sketch приходиться вынимать их Ардуино потом снова втыкать
    оч неудобно при отладке
  • dt_andrew said:

    исправил только номер телефона и ПИН код карты (хотя СИМка у меня не требует вводить его тоесть всегда ГОТОВА)
    компелирую, загружаю - ничего не отправляется



    Если ввод пин-кода не требуется - удалите эти строчки кода из скетча.
    Далее - у сим-карты получается зарегистрироваться в сети? Красный светодиод загорается? Просто нужно понять на каком моменте программа дальше не идет.

    Если по быстрому можно еще попробовать отключить эхо при инициализации модема - ATE0

    dt_andrew said:


    когда Шилд воткнут в АРДУИНО то невозможно закрузить Sketch приходиться вынимать их Ардуино потом снова втыкать



    Да, есть такое. Просто линия UART одна на Ардуино Уно. Как вариант можно юзать программный UART с помощью библиотеки NewSoftSerial. Поэкспериментировать лучше на макетной плате, т.е. не вставляя шилд в Ардуино, а проводками соединяя платы.
  • да красный светодиод загорается (точнее мигает 1 раз в секунду)
    в терминалке же все работает
    а если использовать программный сериал то пины Rx Tx от шилда должы быть подцеплены к другим портам и его уже не вставиш как положено и все на проводках
    даже если и на проводках то как это облекчит отладку тогда придеться выдергивать и снова втыкать несколько проводков

    может всетаки пооветуете другую модель ардуино с 2 сериал
    а по скетчу то что вы предложили я же написал что все это делал уже

    и еще вопрос
    если на макетке эксперементировать с программным сериалом то какие контакты к шилду надо подключать
    я так понял 0 1 6 7 (Rx, Tx, вкл/выкл, сброс)
    Спасибо
  • dt_andrew said:

    да красный светодиод загорается (точнее мигает 1 раз в секунду)


    То что мигает - это хорошо, значит модем успешно зарегистрировался в сети вашего оператора.

    Значит нужно смотреть дальше на процесс самой отправки сообщения. Как вы вводите номер телефона, в международном формате (+7) или локально (8) ? Просто у некоторых операторов есть различия.
    Еще момент, какой текст вы передаете? Для теста попробуйте как в нашем примере писать латинскими.
    И еще момент - каким Ардуино IDE вы пользуетесь?


    dt_andrew said:


    а если использовать программный сериал то пины Rx Tx от шилда должы быть подцеплены к другим портам и его уже не вставиш как положено и все на проводках
    даже если и на проводках то как это облекчит отладку тогда придеться выдергивать и снова втыкать несколько проводков


    Можно использовать макетную платку (бредборд) - либо 2 узкие либо 1 но широкую, чтобы плата на нее встала.
    Уже на бредборд проводками с Ардуино подать линии. Это все на момент отладки. Как только ПО будет готово, прошиваете МК и вставляете шилд как положено в разъемы на Ардуино.


    dt_andrew said:


    может всетаки пооветуете другую модель ардуино с 2 сериал
    а по скетчу то что вы предложили я же написал что все это делал уже



    На "Ардуино Мега" есть 3 UART, но опять же линии по которым заливается скетч 0 и 1.

    dt_andrew said:


    и еще вопрос
    если на макетке эксперементировать с программным сериалом то какие контакты к шилду надо подключать
    я так понял 0 1 6 7 (Rx, Tx, вкл/выкл, сброс)
    Спасибо


    Нужно соединять пины.
    0 и 1 (rx/tx)
    6 и 7 (reset и power on)

    Если нужны сигналы RTS CTS - тогда и аналоговые 2 и 3

    Ну и подать питание: 5V и GND
  • Cпасибо! понял
    удалось все таки отправить СМС контроллером
    но почему так медленно реагирует
    немного изменил скетч теперьуменяпо нажатию кнопки отправляется сообщение
    так вот реакция 1 мин
    почемуто работает у меня только на 9600 на других не пашет
    пробывал и на Вашей Блэк Стар и на моей
  • не планируете переделать плату шилда чтоб оперативно можно было оключать линии Rx Tx (для прошивки)
    цены бы ему не было
    читал что у модуля есть входв для подключения доп батарей типа УПСА
    пошел дальше ваять свою сигналку и контроль температуры
    если интересно потом могу выложить - мне не жалко
    Доволен пока потому что заработало хоть и медленно

  • dt_andrew said:

    почемуто работает у меня только на 9600 на других не пашет
    пробывал и на Вашей Блэк Стар и на моей


    Странно, должно работать как минимум на 38400 бод.
    Попробуйте модему задать скорость.
  • Попробую
    и еще забыл сказать прошивка у меня заработала после того как я добавил установку 7 вывода снова в 1
    было так
    digitalWrite(7, HIGH);
    delay(1200);
    digitalWrite(7, LOW);


    стало

    digitalWrite(7, HIGH);
    delay(1200);
    digitalWrite(7, LOW);
    delay(1200);
    digitalWrite(7, HIGH);

  • dt_andrew said:

    не планируете переделать плату шилда чтоб оперативно можно было оключать линии Rx Tx


    Для этого шилда уже наврядли, хотя подумать еще можно.

    У нас есть еще 2 аналогичных проекта, только на других модулях от Telit.
    1 плата - это мк+gsm, все в одном месте с питанием от 12/5V
    2 плата - это новый gsm-шилд.
  • Отлично! бум ждать....
  • Обьясните тупому для чего в премере
    char commandbuffer[100];
    if(Serial.available()){
    delay(100);
    while( Serial.available() && i< 99) {
    commandbuffer[i++] = Serial.read();
    }
    commandbuffer[i++]='\0';
    }

    если commandbuffer нигде не используется
  • Оно используется для отладки, чтобы посмотреть отвечает модем или нет на первый AT
    Дальше по коду commandbuffer выводится :
    if(i>0)
    Serial.println(commandbuffer);


  • Спасибо!
    наверно именно она и помогла мне запустить шилд
    поскажите еще
    перевожу работу шилда на другие ноги как советовали ранее SoftSerial
    правильно я понял что для жилда надо подать +5 землю на 0 и 1 контактов RxTx c основной платы
    и 6 7 контакты для подачи программного включения и сброса
  • dt_andrew said:

    правильно я понял что для жилда надо подать +5 землю на 0 и 1 контактов RxTx c основной платы
    и 6 7 контакты для подачи программного включения и сброса



    Соединять нужно так:
    (левая колонка пины на Ардуино, правая - на шилде)
    pin 2 - pin 0
    pin 3 - pin 1
    pin 6 - pin 6
    pin 7 - pin 7
    5V - 5V
    GND - GND

    Т.е перенесли линию UART на другие пины Ардуино, теперь дело за SoftSerial
  • модем перестал отвечать на AT команды с терминала
    скорости менял чего только не делал
    терминалки менял тоже всякие
    перемычки 1 3 в положении 1-2

    но при этом загруженный скетч по отправке сообщений работает (перемычки в положении 2-3)
    и еще почему же так медленно модем работает и отрабатывает команды
    может можно как то сбросить все по дефолту
  • dt_andrew said:

    модем перестал отвечать на AT команды с терминала
    скорости менял чего только не делал
    терминалки менял тоже всякие
    перемычки 1 3 в положении 1-2


    Возможно, эхо выключено, скорость порта не выставилась правильно, ну либо в терминальной программе, после at-команды CR не отправляется.

    dt_andrew said:

    но при этом загруженный скетч по отправке сообщений работает (перемычки в положении 2-3)
    и еще почему же так медленно модем работает и отрабатывает команды
    может можно как то сбросить все по дефолту



    AT-команды для сброса настроек (factory default):
    ATZ
    AT&F
    описание можно посмотреть в инструкции пользователя.
  • что значит скорость порта выставилась неправильно
    где именно
    в терминалке и в диспетчере все стоит 1 в 1

    в терминалке просто невозможно ввести ничего не говоря уже о CR
  • и еще хоть перемычки и стоят в положении 1-2
    то при подключении терминала вижу что идут команды которые были прописаны в скетче
  • dt_andrew said:

    и еще хоть перемычки и стоят в положении 1-2
    то при подключении терминала вижу что идут команды которые были прописаны в скетче



    Если в МК залит скетч, который пишет в Serial - его нужно перезаписать другим (например blink), чтобы он не мешал работе терминальной программе.

    dt_andrew said:

    в терминалке просто невозможно ввести ничего не говоря уже о CR


    Если вы пользуетесь SerialMonitor - нужно выставить Carriage return (или Both NL & CR). Если гипертерминалом - это там уже есть.

    Если не получается увидеть отклик от модема. Скорость порта выставьте 38400.
    Напомню, что после подачи питания на Ардуино, на шилде нужно нажать кнопочку K3 (power on).

  • делал я уже это все
    не первый год электроникой занимаюсь
    я уже писал ранее что он у меня работает только на 9600
    я бы может и согласился на такую скорость если бы терминалка работала
    и еще почему МК шлет команды если перемычки стоят в 1-2
    збросить по дефолту с терминалки не могу по причине выше
    неужели скетч для этого писать надо
    как для разработчика пока модуль не удобен оч сильно много лишних телодвижений надо делать
    перетыкат провода потом снова втыкать
    сделал переходную плату на подобии шилда с переключателями для оперативного отключения
    и все бы ничего если бы это работало
    раньше же работала у меня терминалка
  • еще спрошу
    можно ли просто подключить модульGSM к модулю USB2UART на FT232RL
    сделанный для АРДУИНО (не замодельный)
    попробывать терминалкой так зацепится
  • dt_andrew said:

    я уже писал ранее что он у меня работает только на 9600


    Задайте модему нужную вам скорость.
    AT+IPR=115200

    Залейте в МК скетч Blink. Вставьте шилд, перемычки в положение FTDI (1-2). Включите. Откройте SerialMonitor, Carriage return, 38400. Сделайте AT. Если ответа нет, уменьшите скорость и попробуйте снова. После того как начнет отвечать, задайте скорость модему AT+IPR=115200

    dt_andrew said:

    и еще почему МК шлет команды если перемычки стоят в 1-2


    МК выполняет залитый в него скетч, поэтому это мешает прохождению команд от FTDI. Поэтому либо перезаливаем на пустой скетч, либо вынимаем МК.

    dt_andrew said:

    можно ли просто подключить модульGSM к модулю USB2UART на FT232RL


    Можно, смотрите схему шилда чтобы понять куда подавать питание и тянуть линии.
  • у моего модуля USB2UARTесть выходы Rx Tx и питание
    подцеплять видемо надо на соответсвующие пины модуля GSM 0 и 1 и питание
    только наверно надо еще простетский преобразователь уровней на резисторах как у вас сделано R6 R7
  • Вообщем получилось получить отклик от модема из Serial Monitor
    сбросил все по дефолту
    даю
    AT
    OK
    AT+IPR?
    +IPR: 0
    OK
    тоесть скорость автоопределение согласно докум
    даю
    AT+IPR=115200

    от модема ответа нет
    и уже дальнейшие команды не берет
    ставлю скорость 9600
    все опять все отвечает
    даю
    ATZ
    ставлю снова скорость в терминале 115200
    снова все ОК до первой неверной команды

    и на последнее
    если я сбросил все по дефолту
    откуда появляется регистрация в сети (красный светик мигает)
    я ему таких команд не давал
    чем дальше тем больше непонятного
    вы не обижайтесь что я так напрягаю
    с МК я уже собаку сьел а вот с такими модулями мне помоч может тот кто возился с ними больше чем я
    Спасибо
  • забыл еще сказать что в Serial Monitor вижу что прет какаято гадость в виде кадратов
    сами понимаете терминал оболочки АРДУИНО не самый хороший - определить что это такое не имеет возможности
  • dt_andrew said:


    если я сбросил все по дефолту
    откуда появляется регистрация в сети (красный светик мигает)
    я ему таких команд не давал
    в Serial Monitor вижу что прет какаято гадость в виде кадратов


    В МК Ардуино залит скетч, в котором есть Serial.begin(), Serial.print() ?
    Вы скетч перезаписали?
  • конечно! загрузил Блинк
  • жду ответы на предыдущие вопросы
  • Мне кажется, вы упускаете детали.
    Итак, заного и по порядку.

    1) Ардуино подключаем к ПК, перезаписываем скетч на Blink. Отключаем от ПК.
    2) Вставляем в Ардуино шилд, все джампера (1-2-3-4) выставьте в положение 1-2. Подключите Ардуино к ПК.
    3) Нажмите на кнопку K3
    4) Запустите в Arduino IDE SerialMonitor. В настройках выставьте, Carriage return, 38400.
    5) Введите команду AT. Один, два раза. Если ответа не последовало, измените в настройках SerialMonitor скорость порта на большую/меньшую. Найдите тот вариант при которой модем будет отвечать на AT.
    6) Вводим AT-команды. Например:
    AT+CGMI (производитель)
    AT+CGMM (модель)
    AT+CGMR (версия)
    AT+CGSN (серийный номер)

    7) Про изменение скорости порта модема.
    Если вы меняете скорость порта модема (AT+IPR=115200), то после выполнения этой команды вам нужно поменять скорость порта в SerialMonitor. Если вы модем перевели на скорость 115200, то и в SerialMonitor нужно выбрать 115200.

    Если вы хотите, чтобы модем сам автоматически подстраивался под заданную вами скорость, тогда задайте ему:
    AT+IPR=0
    В этом случае, модем сам будет переключать скорость при изменении значений в SerialMonitor.
  • все проделал 1 в 1 как написали
    отклик от модема получил о чем я и писал выше
    не получил ответ на вопрос

    если я сбросил все по дефолту
    откуда появляется регистрация в сети (красный светик мигает)
    я ему таких команд не давал

    в МК загружен скетч Блинк

    7) Про изменение скорости порта модема.
    Если вы меняете скорость порта модема (AT+IPR=115200), то после выполнения этой команды вам нужно поменять скорость порта в SerialMonitor. Если вы модем перевели на скорость 115200, то и в SerialMonitor нужно выбрать 115200.

    да в том то и дело что после команды установки скорости от модема ОК не получаю
    на все другие он нормально откликается
    AT+IPR устанавливается в 0
  • может у модема есть буфер для команд и его надо очистить
  • dt_andrew said:


    если я сбросил все по дефолту
    откуда появляется регистрация в сети (красный светик мигает)
    я ему таких команд не давал



    ATZ восстанавливает конфигурацию. Разъединяет любой вызов, НО не подключение к сети.
    Хотите перезагрузить модем пользуйтесь RESET
  • да блин что за отписки
    я не даю ATZ

    AT&F
    сбросил все по дефолту
    в МК скетч Блинк то есть обращения к сериал порту нет
    через определенное время поисходит регистрация (красн светодиод горит)
    даем RESET
    красн гаснет черес некоторое время опять загорается

    или красный светик означает всего лиш подключение к сети
    а не регистрацию как везде написано
    вообщем настроение пока что зря потратил деньги
    напишите в описании шилда об его недостатках чтоб люди не наступали на грабли
    если бы я знал что нельзя будет прошивать при вставленном шилде и тюд я бы не купил
    для меня как разработчика это важно - пришлось городить доп платы чего я в принципе не должен делать
  • dt_andrew said:


    AT&F
    сбросил все по дефолту
    в МК скетч Блинк то есть обращения к сериал порту нет
    через определенное время поисходит регистрация (красн светодиод горит)
    даем RESET
    красн гаснет черес некоторое время опять загорается


    Модем сам по себе регистрироваться в сети не может - это НЕВОЗМОЖНО, для этого нужны команды на подключение.
    Команды сами по себе на модем приходить не могут, он их генерировать физически не может.
    Их можно отправлять через COM или через Serial микроконтроллера.
    Отсоедините Ардуино от USB (+блок питания) или вытащите из Ардуино МК - и вот посмотрите будет ли у вас загораться красный светодиод или нет.

    dt_andrew said:


    вообщем настроение пока что зря потратил деньги
    напишите в описании шилда об его недостатках, чтоб люди не наступали на грабли
    если бы я знал что нельзя будет прошивать при вставленном шилде и тюд я бы не купил
    для меня как разработчика это важно - пришлось городить доп платы чего я в принципе не должен делать


    Городить дополнительных плат совсем не нужно.
    Если вам нужно часто перезаписывать прошивку и вынимать шилд вам неудобно, тогда вам нужно 3 вещи: Ардуино, GSM-шилд, макетная плата. Перед очередной заливкой скетча просто отключайте или отсоединяйте линии RX/TX от шилда...

    Если вы думаете, что другие GSM-шилды (да и любые другие использующие UART) позволяют перезаписывать скетч не вынимая шилда - вы ошибаетесь.
    Можно ли это сделать - да, можно поставить дополнительно переключатель, но по большому счету это лишь ненужное удорожание платы.

    Ну и дабы не быть голословным, вот вам видеотуториал другого производителя GSM-шилдов. Особо обратите внимание на вторую часть руководства - standalone mode.


  • Огромное спасибо
    конкретный и содержательный ответ
    бум изучать и смотреть
    проверю еще при вытащенном контроллере из Блэк Стар
  • вытащил МК из АРДУИНО
    в Сериал Мониторе так же идут квадраты
    и светодио красный по прежнему загорается через некоторое время
    я в непонятках
    пс на команды модем все нормально отвечает
  • а в ответ тишина,,,,
  • dt_andrew said:

    а в ответ тишина,,,,



    Так, а что не получается?
    Вы ж написали, что модем на AT-команды отвечает.
    Производите настройки через терминальную программу, а далее пишите скетч.

  • dt_andrew said:

    вытащил МК из АРДУИНО
    в Сериал Мониторе так же идут квадраты
    и светодио красный по прежнему загорается через некоторое время
    я в непонятках
    пс на команды модем все нормально отвечает


    я же вот об этом спрашиваю
    почему красный светик загорается если МК нет команд по регистрации в сети не давал

  • dt_andrew said:

    я же вот об этом спрашиваю
    почему красный светик загорается если МК нет команд по регистрации в сети не давал



    Отключите шилд от Ардуино, совсем.
    Проверка 1: Подайте с помощью проводков на шилд питание. Красный индикатор мигает?
    Проверка 2: Если при предыдущей проверке индикатор активен, вытащите сим-карту и поменяйте на другую. Каков будет результат?

  • 1- красный мигает
    2 - поменял СИМку все одно красный мигает

    вообщем выводы у меня такие
    красный показывает всего лиш то что модуль подключился к сети и готов отправлять сообщения и другие функции

    мой проект работает и делает то что мне надо
    оптимизацией задержек при отправки сообщений добился реакции и СМС отправляется через 10 сек а не через 30 как было ранее
    есть конечно огрехи но они не существенны бум разбираться

    Но вопрос новый все таки задам

    как программно можно выключить модуль

    включение понятно подать 0 временно на 7 пин Ардуино
  • dt_andrew said:

    как программно можно выключить модуль


    Чтобы выключить модуль:
    AT$POWEROFF

    Чтобы "выключить" SIM-карту:
    AT+CFUN=0
  • У меня все заработало на Mega+Cosmo GSM:

    int count = 0;
    int countMessages = 1;

    void setup (){
    Serial.begin(38400);
    Serial.flush();
    // программно включаем gsm-модем
    pinMode(7, OUTPUT);
    delay(5000);
    digitalWrite(7, HIGH);
    delay(1200);
    digitalWrite(7, LOW);
    delay(5000);
    // опрашиваем gsm-модем
    Serial.println("AT");
    delay(1000);
    Serial.println("AT+IPR=38400");
    delay(1000);
    int i=0;
    char commandbuffer[100];
    if(Serial.available()){
    delay(100);
    while( Serial.available() && i< 99) {
    commandbuffer[i++] = Serial.read();
    }
    commandbuffer[i++]='\0';
    }
    if(i>0)
    Serial.println(commandbuffer);
    delay(10000);
    Serial.println("AT+CSCA?"); // запрашиваем номер смс-центра
    delay(5000);
    Serial.println("AT+CMGF=1"); // выставляем текстовым режим сообщений
    delay(10000);
    }

    void loop (){
    while (count < countMessages){
    delay(5000);
    Serial.print("AT+CMGS="); // отправляем смс
    Serial.write((byte)34);
    Serial.print("89169999999"); // номер получателя
    Serial.write((byte)34); // символ кавычки "
    Serial.write((byte)13); // символ (ASCII character 13)
    delay(1500);
    Serial.print("SMS from GSM Shields"); // текст смс
    delay(500);
    Serial.write((byte)26); // символ (ASCII character 26)
    delay(5000);
    count++;
    }
    }
  • airguru said:

    У меня все заработало на Mega+Cosmo GSM


    При желании для отправки СМС еще можно воспользоваться нашей GSM-либой под Ардуино.

    Отправка СМС
    GSM.SendSMS(RemoteID, "Message")

    В либе также есть готовый функционал:
    1) Вы звоните на шилд с определенного номера, шилд в ответ отправляет вам СМС.
    2) Вы отправляете на шилд СМС с текстом, например "1", шилд разбирает полученный текст и выполняет определенные действия.
  • Спасибо, покрутим.
  • Здравствуйте. У меня вопрос как раз по поводу либной функции GSM.SendSMS(RemoteID, "Message")

    В примерах RemoteID объявляется как константа, а именно:
    const char RemoteID[] PROGMEM = "+70001234567"

    У меня поставлена задача таким образом что в EEPROM на ардуино у меня хранятся 3 номера, на которые необходимо отправлять сообщения. В EEPROM каждая отдельная цифра номера хранится в своей ячейке. Далее по коду:

    /////
    char RemoteID[]= "+70001230101"; //Шаблон номера, с которого ждём звонка и на который отправляем СМС
    int numt[ ] = {9, 0, 4, 1, 2, 3, 4, 5, 6, 7}; // Массив используется для того чтобы извне можно было менять каждую цифру номера
    char cnumt[ ] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9'}; // Массив используется для перевода из int в char следующей функцией

    void takeRemoteId(){
    RemoteID[0] = '+';
    RemoteID[1] = '7';
    for (int i = 0; i < 10; i++){
    RemoteID[i+2] = cnumt[numt[i]];
    }
    }

    // На выходе получается char RemoteID = "+79041234567" который необходимо использовать для отправки смс библиотечной функцией:

    GSM.SendSMS(RemoteID, "SMS with any information...");

    В результате смс не отправляется. Смотрел в библиотеку, видел что функция требует SendSMS (const char* Num, char *Txt); но попытка поменять на SendSMS (char* Num, char *Txt); оказалась так же неудачной.

    Подскажите пожалуйста как использовать переменную(!) RemoteID для отправки смс, вместо константы.
  • ПС: Данные из еепром я загружаю данные сначала в переменную int numt[]. Но это не суть проблемы, а скорее обоснование того для чего я вообще про еепром писал.
  • chich said:

    в EEPROM на ардуино у меня хранятся 3 номера...
    чтобы извне можно было менять каждую цифру номера.



    Пример с динамическим изменением номера сможем написать в начале октября. Программист сейчас в отпуске.

    А если вам просто нужно отправлять СМС на 3 разных номера - просто создайте 3 разные константы.
    const char RemoteID0[] PROGMEM
    const char RemoteID1[] PROGMEM
    const char RemoteID2[] PROGMEM

  • Я разобрался.
    В библиотеке в файле .h нужно поменять строку, чтобы выглядела так

    static s8 SendSMS (char* Num, char *Txt);

    В файле .cpp нужно поменять в этой функции SendSMS, чтобы выглядело так:

    s8 GSMClass::SendSMS (char* Num, char *Txt)
    {
    GSM.WriteStr_P(PSTR("AT\r\n"));
    _delay_ms(500);
    UART0_rx_reset( );
    UART0_setSearchString( MORE_ );
    _delay_ms(1000);
    UART0_rx_on( );
    GSM.WriteStr_P(PSTR("AT+CMGS=\""));
    GSM.WriteStr(Num); /////////////////////////////// Изменения здесь!!!
    GSM.WriteStr_P(PSTR("\"\r\n"));
    if( UART0_check_acknowledge( pause256 ) > 0 )
    {
    UART0_rx_reset( );
    UART0_setSearchString( OK_ );
    _delay_ms(1000);
    UART0_rx_on( );
    GSM.WriteStr(Txt);
    GSM.WriteStr_P(CTRLZ);
    GSM.WriteStr_P(PSTR("\"\r\n"));
    if( UART0_check_acknowledge( pause256 ) > 0 )
    {
    return 1;
    }
    else return -3;
    }
    else return -2;
    }


    После этого можно из скетча вызывать функцию

    GSM.SendSMS(RemoteID0, "Hello from Arduino!");

    где SendSMS объявлена как обычная строка:

    char RemoteID0[] = "+79041234567";

    (!)
  • *
    где RemoteID0[] объявлена как обычная строка:
    char RemoteID0[] = "+79041234567";
  • Добрый вечер.

    Обратил внимание, что греется разъем питания меги (подаю 9В). Предполагаю, что может оказывать влияние то, что нужно GSM shield отправлять в sleep mode (ибо разница в потреблении тока на 2 порядка 3мА и 233мА).
    Никто не в курсе случайно?

    Нарыл в спеке (http://jt5.ru/files/pdf/M33(A)G_AT_Command_User_Guide_1.1.7.pdf), что делается командой AT$NOSLEEP=. Может кто в курсе- какой параметр там по умолчанию стоит?

Привет, незнакомец!

Похоже, вы новенький! Чтобы пообщаться с нами, кликните на одну из кнопок ниже :)

Войти с помощью OpenID

В этом теме: