После отправки команды телефону, нужно проверять (прослушивать) порт
Вид для печати
После отправки команды телефону, нужно проверять (прослушивать) порт
нашел подходящий пример , поправил его под свои настройки .
на передачу работает , команды которые я пишу в сериал монитор телефон принимает , набор номера проходит
но никаких откликов с телефона в сериал монитор не получаю .
где ошибка не понимаю .
код тут не стал размещать , по ссылке его можно увидеть .
http://pastebin.com/U1P2MYyA
Этот скетчь работает в режиме терминала через ардуиновский сериал монитор
PHP код:
#include <NewSoftSerial.h>
char incoming_char=0; //Will hold the incoming character from the Serial Port.
NewSoftSerial phone(2, 3);
void setup()
{
Serial.begin(115200);
phone.begin(9600);
pinMode(buttonPin, INPUT);
}
void loop()
{
if(phone.available() >0)
{
incoming_char=phone.read(); //Get the character from the cellular serial port.
Serial.print(incoming_char); //Print the incoming character to the terminal.
}
if(Serial.available() >0)
{
incoming_char=Serial.read(); //Get the character coming from the terminal
phone.print(incoming_char); //Send the character to the cellular module.
}
}
Спасибо .
Работает так же , только в одну сторону .
Команды на телефон идут а обратно тишина.
И что немного страно , после команд надо ставить ";" иначе не звонит .
Интересно , для передачи команды на телефон используется только вывод tx с ардуины который идет на rx телефона , или даже для передачи используется обе линии ?
Для передачи используется одна линия
Попробовал такой вариант :
#include <NewSoftSerial.h>
void setup() {
Serial.begin(9600);
}
void loop() {
Serial.println("AT+CMGF=0");
Serial.println("AT+CMGS=22");
Serial.println("0011000C918360577638660008FF080074 006500730074");
Serial.write("x1a");
delay(15000);
}
Не загружается в Ардуину почему-то...
Uploading to I/O Board... и все
попробуй перезапустить на компе прогу
Serial.write("x1a");исправь на Serial.write(0x1d);
и попробуй тот скетч что был выше для обратной связи с телефоном .
может быть увидишь сообщения об ошибках .
Ничего он мне не показывает... У тебя тоже не получилось СМСку отправить?
нет , и главное что никаких ответов на сериал монитор не приходит .
то что пока работает это команда набора номера или набор последнего номера .
и то работает только если в команду добавлять ; в конце .
А Вы уверены что эти АТ команды подходят для телефона сименс?
мануал из которого я свои смотрю относится к сименс S35i,C35i, M35i
сейчас буду еще раз рыть и сравнивать , может есть разница и s55 требует другой формат .
Но в терминале ведь работает. Я из PUTTY СМС отправлял
А можно глянуть что отправляется из терминала в телефон ?
а когда ты PUTTY пользовался телефон был к компу подключен на ком порт или через ардуину ?
АТ+СMGS=22
>0011000C918360577638660008FF080074006500730074
Ctrl+Z
Вот с этим скетчем:
void setup()
{
pinMode(0, INPUT); //RX
pinMode(1, INPUT);//TX
}
void loop()
{
}
#include <NewSoftSerial.h>
void setup() {
Serial.begin(9600);
}
void loop() {
Serial.println("AT+CMGF=0");
Serial.println("AT+CMGS=22");
Serial.println("0011000C918360577638660008FF080074 006500730074");
Serial.write("0x1d");
delay(15000);
}
залил скетч , подключил pytty на тот же порт что ардуина , а в окне ничего написать не могу
Внимание!!!
это скетч для использования ардуино вместо моста.
Нужно понимать что сам контроллер в данном процессе не участвует, получается что телефон подключается к самому мосту FTDI, а это значит что сигналы RX,TX при использовании телефона с контроллером без участия моста нужно поменять местами (перевернуть)
PHP код:
void setup()
{
pinMode(0, INPUT); //RX
pinMode(1, INPUT);//TX
}
void loop()
{
}
Serial.write("0x1d"); кавычки убери
Я этот скетч, использовал для того, чтобы понять, какими командами и с каким синтаксисом, ТЕЛЕФОН отправляет СМС. Далее, взял скетч "звонилку" (которая исправно работает) и в место ATD, попробовал CMGS в таком же виде, как в терминале. Ведь "звонилка" оформлена так же. Но СМС не уходит!!!
Заработало ??
Нет. Не работает.
Это какой-то кошмар. Перелопатил весь интернет на планете Земля и ничего не накопал, кроме того, что модемы с поддержкой текстовых СМС поддаются дрессировке легче. Но покупать шилд не буду принципиально. А что же будет с приемом и обработкой?
буду искать куда кинул свой сонерик 320 и на нем пробовать., может у сименса проблемы какие
Я тоже буду пробовать Ноку 6310 ай.
Если через терминал СМС отправляется, то и через ардуино 100% можно отправить
Chip, по всей логике так , осталось за малым , найти в чем у нас ошибка и как ее исправить .
Вот-вот... Я уже не знаю, может зациклился на скетче "звонилке", а на самом деле все по-другому нужно делать. :(
решил переделать кабель , может быть в нем проблема .
Сомневаюсь. Chip прав. Если из терминала отправляется, значит на аппаратном уровне у нас все нормально. Нужно искать решение на программном.
Все. Здаюсь. Куплю ШИЛД!!!
а я не могу найти где мои старые мобилы лежат , хотел попробовать ериксон 320 и нокию
есть еще сонерик z200 и z610 но не знаю есть ли у них компорт
Вот еще интересный вариант с использованием USB модема.
Решил заказать - http://arduino-ua.com/prod165-SIM900...d_dlya_Arduino.
Только вот ждать около 2-х недель... :( Пока из Китая долетит... Если кто подскажет, где есть в наличии и по нормальной цене, буду благодарен. Интересует только этот шилд и желательно новая версия. (в старой версии, установлена кнопка ручного включения питания), т.е. если произойдет сбой по питанию, придется включать шилд вручную. В новой версии эта проблема решена.
И вот сегодня я получил icomsat gprs shield v.1.1.
Вот только теперь встала проблема. Не знаю, как его подключить?