SIM900R
SIM 900R - GSM/GPRS модуль, использующийся в Wiren Board. Производится компанией SIMCOM.
Описание
Возможности
- Двухдиапазонный 900/1800 МГц
- GPRS multi-slot class 10/8 max. 85.6 kbps (downlink)
- Готовая ppp-конфигурация для работы в качестве модема в Linux
- Возможно управление AT-командами (в том числе нестандартными – например, удалённый контроль через SMS)
- SIM-слот
- Разъём под внешнюю антенну U.FL
Подробное описание
Вся документация Hardware design
POWER KEY и RESET
Питание модема можно управлять с помощью двух входов: PWRKEY и RESET.
PWRKEY должен находится в состоянии логического нуля при включении и работе модуля. Подача на PWRKEY импульса длительностью не менее секунды включает модем. Повторная подача импульса выключает модем. При выключении модем сообщает в порт строку NORMAL POWER DOWN.
подача на RESET логической единицы перезагружает модуль.
Скорость порта (Baud Rate)
По-умолчанию модем SIM900x находится в режиме Auto-Bauding. Скорость порта определяется автоматически после включения модема. Для того, чтобы модем определил скорость, ему надо отправить символ "A", желательно несколько раз.
Модуль можно перевести в режим фиксированной скорости порта с помощью команды AT+IPR= (см. справочник по AT-командам). Настройки скорости порта сохраняется в flash-памяти модема и сохраняется после выключения питания.
Максимальная скорость порта: 115200. Работа auto-bauding гарантирована до скорости 38400, но работает и при 115200 (иногда необходимо отправить несколько символов "A" подряд).
В Wiren Board
Модем подключен по двухпроводному UART. Используется первый порт (Application UART) процессора. Порт при использовании kernel 3.x: /dev/ttyAPP0
Сигналы PWRKEY и RESET подключены через транзисторы, управляемые через GPIO 6 (PWRKEY) и GPIO 7 (RESET). См. Список GPIO
Включение модуля
Для включения или перезагрузки модуля можно пользоваться утилитой wb-gsm из репозитория https://github.com/contactless/wirenboard .
Примеры:
$ wb-gsm on # включение устройства $ wb-gsm off # выключение устройства
$ wb-gsm reset # перезагрузка включенного устройства
Работа с модулем в интерактивном режиме
Удобнее всего через minicom (установлен по-умолчанию в стандартном образе):
- Первый запуск minicom, создадим профиль работы с портом:
$ minicom -s /dev/ttyAPP0
- В serial port setup необходимо выбрать порт - /dev/ttyAPP0, скорость - 38400, hardware flow control - off
- Сохранить настройки: Save setup
- Далее запускать как minicom /dev/ttyAPP0
Примеры команд
- Синхронизовать скорость порта (не совсем команда)
AAAAAAAAAAAAAT
- Список всех сетей
AT+COPS=?
- Уровень сигнала (см. http://m2msupport.net/m2msupport/atcsq-signal-quality/)
AT+CSQ
- Звонок на номер +79154816100
ATD+79154816100;
- Установка baud rate порта в фиксированное значение 115200
AT+IPR=115200
- RTC
AT+CCLK? AT+CCLK="14/03/19,01:20:29+00"
- get IMEI (xxxxxx - уникальный номер)
AT+GSN 86820400xxxxxxY OK
Мультиплексирование
Модем поддерживает режим мультиплексирования - создание виртуальных портов, через которые можно одновременно работать с модемом. Например через один порт можно открыть сессию PPP для GPRS, а через другой получать и отправлять SMS, проверять баланс и т.д. Подробнее см. CMUX.
Работа с GPRS
RTC
Настройки мощности по-умолчанию
AT+CRTXVMA? +CRTXVMA: (0204,01C9,0184,0149,0118,00EF,00CE,00B3,009E,008E,0081,0077,006F,0067,005F,0053),(021A,01B6 ,016D,0131,0105,00E0,00C4,00AE,009B,008C,0080,0078,0071,006A,0065,0053),(023A,01B7,0181,014F,0122,00FC ,00DC,00C1,00AB,009A,008B,007F,0076,0072,006B,0068),(01F4,01AF,0165,012A,00FB,00D7,00BB,00A5,0093,0086 ,007A,0071,006B,0065,0061,005D)