Мы — долго запрягаем, быстро ездим, и сильно тормозим.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
www.lissyara.su
—> статьи
—> FreeBSD
|
# kldload ubsa |
чтобы потом модуль загружался автоматичеси, можно добавить его в /boot/loader.conf
|
Возможно, может потребоваться подключение модулей ucom и umodem. Технология подключения точно такая же.
Итак, подключаем устройство и смотрим, подключилось ли:
# usbdevs -v |
Controller /dev/usb0: addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), Intel(0x0000), rev 1.00 port 1 addr 2: full speed, power 500 mA, config 1, HUAWEI Mobile(0x1001), HUAWEI Technologies(0x12d1), rev 0.00 port 2 powered |
Есть контакт! Посвятим немного времени обзору:
HUAWEI Technologies(0x12d1) - это код производителя
HUAWEI Mobile(0x1001) - номер модели(меняется в случае разных huawei'ев)
Однако, для работы нам нужен порт, который, как правило, обозначается в freebsd как /dev/cuaU0, цифра на конце может менятся в зависимости от уже подключенных устройств.
Проверяем, активен ли наш модем:
# ls /dev | grep cuaU |
Ответ пуст, модем еще не активен.
В 7 ветке freebsd(а возможно и в более ранних) уже есть поддержка модемов huawei, необходимо лишь включить нужный режим.
Большинство мануалов в интернете относятся к моделям huawei e220, нам подходит т.к. принцип работы у них тот же.
В частности, предлагается внести следующие изменения в ядро:
|
Я привожу этот код для того, чтобы если кто-то ищет подобные материалы, находил эту статью.
Нам не придется перекомпилировать ядро, не нужно даже подключать дополнительных модулей. Все что требуется для включения работы модема - это послать ему сигнал на переключение режима, чем и занимается вышеприведенный код драйвера, но есть простая программа, проделывающая то же самое изменение:
|
(с) Hans Petter Selasky http://lists.freebsd.org/pipermail/freebsd-questions/2007-December/164404.html
Для использования создаем файл: huawei.c, переносим в него код программы, а затем создаем исполняемый файл:
# cc -o huawei huawei.c |
запускаем:
# ./huawei /dev/usb0 2 |
где /dev/usb0 и 2 - это цифры из usbdevs -v ("Controller /dev/usb0" и "port 1 addr 2")
Если возвращает "Error!" - что-то в параметрах указано неверно. Если все верно нужно попробовать запустить программу еще раз. Верным результатом будет пустая строка.
В дальнейшем можно добавить эту строчку в автозапуск системы.
Проверяем, активен ли наш модем:
# ls /dev | grep cuaU |
В данном случае вывод должен содержать:
cuaU0 cuaU0.init cuaU0.lock |
В зависимости от модели портов может быть несколько.
Все! Теперь можно работать с нашим модемом. Если требуется подключение к сети интернет, нужно поискать статью о подключении к интернет с помощью gsm модема, мне требовалось подключить обработу смс, поэтому ставим smstools:
# pkg_add -r smstools |
Теперь внимание: модель huawei eg162, а, возможно, и другие модели huawei'ов, почему-то не поддерживает аппаратного управления хэндшейком... И плюс к тому, не поддерживает строку преинициализации и не работал у меня без ATZ.
Таким образом после минимальной подстройки рабочий конфиг /usr/local/etc/smsd.conf:
|
Если возникнут трудности с конфигурационным файлом, вот ссылка на подробное описание параметров: http://smstools3.kekekasvi.com/index.php?p=configure
Все, что осталось - запустить и проверить работу
Добавляем smsd_enable="YES" в /etc/rc.conf
запускаем сервис:
# /usr/local/etc/rc.d/smsd start |
смотрим лог:
# tail -f /var/log/smsd.log |
если нет файла, создаем его командой:
# touch /var/log/smsd.log |
2009-04-21 13:25:35,2, smsd: Smsd v3.1 started. 2009-04-21 13:25:35,2, smsd: Running as root:wheel. 2009-04-21 13:25:35,6, smsd: File mode creation mask: 022 (0644, rw-r--r--). 2009-04-21 13:25:35,6, smsd: Outgoing file checker has started. PID: 1700. 2009-04-21 13:25:35,6, GSM1: Modem handler 0 has started. PID: 1701. 2009-04-21 13:25:35,6, GSM1: Checking device for incoming SMS 2009-04-21 13:25:35,6, GSM1: Checking if modem is ready 2009-04-21 13:25:35,7, GSM1: -> AT 2009-04-21 13:25:35,7, GSM1: Command is sent, waiting for the answer 2009-04-21 13:25:36,7, GSM1: <- AT OK 2009-04-21 13:25:36,6, GSM1: Initializing modem 2009-04-21 13:25:36,7, GSM1: -> ATZ 2009-04-21 13:25:36,7, GSM1: Command is sent, waiting for the answer 2009-04-21 13:25:36,7, GSM1: <- TZ OK 2009-04-21 13:25:36,7, GSM1: -> AT+CPMS="ME","ME","ME" 2009-04-21 13:25:36,7, GSM1: Command is sent, waiting for the answer 2009-04-21 13:25:36,7, GSM1: <- T+CPMS="ME","ME","ME" +CPMS: 0,255,0,255,0,255 OK 2009-04-21 13:25:36,6, GSM1: Checking if Modem is registered to the network 2009-04-21 13:25:36,7, GSM1: -> AT+CREG? 2009-04-21 13:25:36,7, GSM1: Command is sent, waiting for the answer 2009-04-21 13:25:37,7, GSM1: <- T+CREG? +CREG: 0,1 OK 2009-04-21 13:25:37,6, GSM1: Modem is registered to the network 2009-04-21 13:25:37,6, GSM1: Selecting PDU mode 2009-04-21 13:25:37,7, GSM1: -> AT+CMGF=0 2009-04-21 13:25:37,7, GSM1: Command is sent, waiting for the answer 2009-04-21 13:25:37,7, GSM1: <- T+CMGF=0 OK 2009-04-21 13:25:37,6, GSM1: Checking memory size 2009-04-21 13:25:37,7, GSM1: -> AT+CPMS? 2009-04-21 13:25:37,7, GSM1: Command is sent, waiting for the answer 2009-04-21 13:25:37,7, GSM1: <- T+CPMS? +CPMS: "ME",0,255,"ME",0,255,"ME",0,255 OK 2009-04-21 13:25:37,6, GSM1: Used memory is 0 of 255 2009-04-21 13:25:37,6, GSM1: No SMS received |
Примерно так выглядит здоровый рабочий лог. В продакшене можно выставить в smsd.conf loglevel=5 и все.
Есть множество тем по настройке и работе smstools, в т.ч. и на этом сайте, поэтому дальше описывать не стану, главное - все работает!
|
Dog, 2009-04-22 в 18:14:46
Однако, для работы нам нужен порт, который, как правило, обозначается в freebsd как /dev/cuaU0 или /dev/ttyU0, цифра на конце может менятся в зависимости от уже подключенных устройств.
В данном случае некорректное определение, не "или", а "и". Чуть подробней, почему именно такой тип терминала: см. man 4 ucom и man 4 sio (раздел FILES):
...
/dev/ttyd? for callin ports
...
/dev/cuad? for callout ports
...
Для USB-консолей - да, будут соответственно ttyU? и cuaU?, но не "как правило", а конкретно для входящих и исходящих подключений. В данном случае подключение будет исходящим, поэтому именно cuaU?.
udaff, 2009-04-23 в 15:18:14
Для ввода пин кода я использую команду:
AT+CPIN=<pin>
А вообще нужно читать AT commad manual....
vp, 2009-04-23 в 16:54:11
Поправил статью всоответствии с комментариями.
Что касается пина, да, действительно, такая команда работает. Правда в smstools она представлена в виде pin=####(у меня в конфиге эта строчка закомментирована)
Вот полезные команды AT:
ATZ - инициализация, если не срабатывает, модем не работает
AT+CREG - зарегистрирована ли сеть
AT+CSQ - качество приема
AT+CPIN=№№№№ - ввод пин-кода
AT+CPMS="SM" - где хранить смс: "SM" - память сим-карты, "ME" память устройства(бывает полезно)
kyym, 2009-05-17 в 20:20:40
ну просто преогромнейшее спасибо за статью, совершенно случайно нашел сегодня на кухне вот именно такой модем - подрубил проверил - все работает как описано..))))))
единственное обо что спотыкнулся - не проверил снят ли пон код на симке)))
gocool, 2009-07-03 в 16:21:06
Если не удается считать SMS из этого модема, попробуйте добавить
memory_start=0
в smsd.conf
iceman, 2009-12-14 в 22:32:30
к статье не хватает команды uname , а то с патчем ubsa лажа выходит : )
2014-07-27, lissyara
gmirror
Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов.
2013-08-20, zentarim
Scan+Print server FreeBSD 9
Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540
2011-11-20, BlackCat
Разъём на WiFi-карту
Делаем съёмной несъёмную антену на WiFi-карте путём установки ВЧ-разъёма
2011-09-14, manefesto
Настройка git+gitosis
Настройка системы контроля версия исходного кода в связке git+gitosis+ssh
2011-08-14, zentarim
Wi-FI роутер + DHCP + DNS
Настройка Wi-Fi роутера на Freebsd 8 + DNS сервер + DHCP сервер: чтобы Wi-Fi клиенты были в одной подсети с проводными, проводные и беспроводные клиенты получали адреса автоматически по DHCP, кэширующ
2011-06-15, -ZG-
Охранная система на FreeBSD+LPT
В этой статье описана попытка реализации простой охранной системы на базе FreeBSD с подключением к ней охранных устройтсв на LPT порт и видеорегистрацией.
2011-03-13, terminus
ng_nat
Описание работы ng_nat, практическое использование, достоинства и недостатки в сравнении с ipfw nat
2011-02-20, Капитан
Nagios+Digitemp
Статья описывает создание системы оповещения о превышении температуры в специальных помещениях на основе Nagios с использованием программы Digitemp.
2011-02-17, Le1
Zyxel Configuration
Скрипт для массового изменения конфига свичей Zyxel. Берет из файла iplist список ip-шек, заходит последовательно на каждый и выполняет комманды из файла commands, записывая происходящее в лог файл.
2011-02-16, fox
hast carp zfs ucarp cluster
HAST (Highly Available Storage), CARP, UCARP, ZFS, Cluster настройка и одаптация плюс личные размышления…
2011-02-04, BlackCat
Восстановление ZFS
История о том, как был восстановлен развалившийся RAIDZ ZFS-пул (перешедший в FAULTED) с помощью скотча и подручных средств. Или о том, какие приключения ожидают тех, кто не делает резервных копий.
2011-02-03, Капитан
1-Wire
Статья описывает самостоятельное изготовление контроллера DS9097 для съёма показаний с датчиков температуры DS1820 с помощью программы Digitemp.
2011-01-28, Капитан
Температура в серверной
Статья описывает построение системы наблюдения за температурой в помещении серверной с использованием программы Digitemp и выводом графиков в MRTG
2011-01-21, m4rkell
Syslog server
Как то буквально на днях, у нас завалилось, что то в еве) или не в еве не суть. Суть в том, что когда захотели снять логи с хостов esx обнаружили, что хранят эти негодяи логии только за последнии сутк
2011-01-07, lissyara
Canon/gphotofs
Монтирование цифровых фотоаппаратов Canon (PTP) как файловой системы, автоматизация этого процесса через события devd и внешние скрипты.
2010-12-13, Al
IPSec
Описание принципов работы IPSEC и способов аутентификации.
2010-12-07, manefesto
FreeBSD on flash
Было принято решении переехать на USB Flash и установить минимальный джентельменский набор для работы своего роутера. Делаем =)
2010-12-05, Fomalhaut
root ZFS, GPT
Инструкция по установке FreeBSD с использованием в качестве таблицы разделов GPT и в качестве основной файловой системы - ZFS
2010-09-05, Cancer
Настройка аудиоплеера на ximp3
Цели: Простенький аудиоплеер, для того что бы тетя продавец в магазине утром пришла нажала на кнопку Power и заиграла в зале музыка, так же был доступ по сети, общая шара куда можно заливать музыку, к
2010-08-31, Cancer
Установка и настройка OpenVPN
На днях появилась задача - объединить головной офис и 3 филиала в одну сеть через интернет посредством OpenVPN, чтобы люди могли подключаться через RDP к базам 1С на серверах.
2010-08-25, manefesto
freebsd lvm
Использование linux_lvm для работы с LVM разделами из-под FreeBSD. Проблемы которые возники при монтирование lvm раздела
вверх
|
Этот информационный блок появился по той простой причине,
что многие считают нормальным, брать чужую информацию не уведомляя автора
(что не так страшно), и не оставляя линк на оригинал и автора — что более существенно.
Я не против распространения информации — только за. Только условие простое — извольте
подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой,
незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
Если соизволите поставить автора в известность — то вообще почёт вам и уважение.
© lissyara 2006-10-24 08:47 MSK
Комментарии пользователей [6 шт.]