Linux connect usb modem

How to ‘talk’ to USB modem in Linux?

How to talk to that device (e.g. with microcom etc?)? What dev device should I use? There is no /dev/ttyUSBXXX available and just one /dev/ttyACM0 .

6 Answers 6

You can connect to your modem with:

(with: ttyACM0 being the device /dev/ttyACM0) You should get a response:

At this point you can use any of the standard AT commands such as to test dialing:

You should have your userid set to the group dialout for permission to access the modem.

You can exit the cu application with «~.» (tilde dot).

You can find other Hayese commands at:

If by talk you mean send AT commands in the form

Welcome to Ask Ubuntu! Whilst this may theoretically answer the question, it would be preferable to include the essential parts of the answer here, and provide the link for reference. Link-only answers can become invalid if the linked page changes.

Use minicom , socat or screen :

socat - /dev/ttyUSB1 minicom -D /dev/ttyUSB1 screen /dev/ttyUSB1 

NOTE: I used real device name /dev/ttyUSB1 instead of fake /dev/usbDev .

Important stuff (extracted from the site):

When I plugged a Conexant modem, I executed

Bus 006 Device 002: ID 0572:1300 Conexant Systems (Rockwell), Inc. SoftK56 Data Fax Voice CARP 

so I knew that the HSF modem was recognized by the system.

As I had a previous internet connection, I upgraded the system

sudo apt-get update && sudo apt-get dist-upgrade 

I checked that I had no previous Conexant drivers installed. For example: I executed

and it said that that file did not exist; if it existed I would have thought that something was still installed.

I made sure that I had «gcc» and «make» ready, executing

sudo apt-get install gcc make 

Then I executed those steps told there:

sudo -s cd /lib/modules/$(uname -r)/build/include/linux ln -s ../generated/utsrelease.h ln -s ../generated/autoconf.h exit 

I prepared the files for the driver compilation, executing

mkdir ~/conexant_modem cd ~/conexant_modem 

and if I had a 64-bit operating system I executed

wget http://linux.dell.com/files/ubuntu/hardy/modem-drivers/hsf/hsfmodem-7.68.00.09x86_64oem.tar.gz tar xzf hsfmodem-7.68.00.09x86_64oem.tar.gz wget http://www.bargweb.net/images/2009/november/hsfmodem-7.80.02.05-DiacoEdition.zip unzip hsfmodem-7.80.02.05-DiacoEdition.zip cp -a hsfmodem-7.80.02.05-DiacoEdition/modules/imported/include/framewrk.h hsfmodem-7.68.00.09x86_64oem/modules/imported/include/framewrk.h cp -a hsfmodem-7.80.02.05-DiacoEdition/modules/imported/include/osservices.h hsfmodem-7.68.00.09x86_64oem/modules/imported/include/osservices.h 

else, if I had a 32-bit operating system I executed

wget http://linux.dell.com/files/ubuntu/hardy/modem-drivers/hsf/hsfmodem-7.68.00.09oem.tar.gz tar xzf hsfmodem-7.68.00.09oem.tar.gz wget http://www.bargweb.net/images/2009/november/hsfmodem-7.80.02.05-DiacoEdition.zip unzip hsfmodem-7.80.02.05-DiacoEdition.zip cp -a hsfmodem-7.80.02.05-DiacoEdition/modules/imported/include/framewrk.h hsfmodem-7.68.00.09oem/modules/imported/include/framewrk.h cp -a hsfmodem-7.80.02.05-DiacoEdition/modules/imported/include/osservices.h hsfmodem-7.68.00.09oem/modules/imported/include/osservices.h A note for the curious ones: those "framewrk.h" and "osservices.h" files were the different ones between the directories "hsfmodem-7.68.00.09oem/modules/imported" and "hsfmodem-7.80.02.05-DiacoEdition/modules/imported". 

If I had a 64-bit operating system I executed

wget http://www.linuxant.com/drivers/hsf/full/archive/hsfmodem-7.80.02.06x86_64full/hsfmodem-7.80.02.06x86_64full.tar.gz 

else, if I had a 32-bit operating system I executed

wget http://www.linuxant.com/drivers/hsf/full/archive/hsfmodem-7.80.02.06full/hsfmodem-7.80.02.06full.tar.gz 

A note for the curious ones: that file was the newest one in http://www.linuxant.com/drivers/hsf/full/downloads.php

Читайте также:  Linux заархивировать папку zip

And then, if I had a 64-bit operating system I executed

tar xzf hsfmodem-7.80.02.06x86_64full.tar.gz rm -r hsfmodem-7.80.02.06x86_64full/modules/imported cp -R hsfmodem-7.68.00.09x86_64oem/modules/imported hsfmodem-7.80.02.06x86_64full/modules/ cp -R hsfmodem-7.68.00.09x86_64oem/modules/imported hsfmodem-7.80.02.06x86_64full/modules/ 

else, if I had a 32-bit operating system I executed

tar xzf hsfmodem-7.80.02.06full.tar.gz rm -r hsfmodem-7.80.02.06full/modules/imported cp -R hsfmodem-7.68.00.09oem/modules/imported hsfmodem-7.80.02.06full/modules/ cp -R hsfmodem-7.68.00.09oem/modules/imported hsfmodem-7.80.02.06full/modules/ 

The next step was to clean the present directory.

If I had a 64-bit operating system I executed

rm -rf hsfmodem-7.68.00.09x86_64oem rm -rf hsfmodem-7.80.02.05-DiacoEdition rm hsfmodem-7.68.00.09x86_64oem.tar.gz rm hsfmodem-7.80.02.05-DiacoEdition.zip rm hsfmodem-7.80.02.06x86_64full.tar.gz 

else, if I had a 32-bit operating system I executed

rm -rf hsfmodem-7.68.00.09oem rm -rf hsfmodem-7.80.02.05-DiacoEdition rm hsfmodem-7.68.00.09oem.tar.gz rm hsfmodem-7.80.02.05-DiacoEdition.zip rm hsfmodem-7.80.02.06full.tar.gz 

Then I had to change some files to adapt them to work with the 3.0.0 version of the Linux kernel. If I had a 64-bit operating system I executed

cd hsfmodem-7.80.02.06x86_64full xdg-open modules/GPL/serial_cnxt.c 

else, if I had a 32-bit operating system I executed

cd hsfmodem-7.80.02.06full xdg-open modules/GPL/serial_cnxt.c 

and then a text editor was launched. I searched for the string

#ifndef FOUND_UART_REGISTER_PORT 

and below I found the string

static DECLARE_MUTEX(cnxt_port_sem); 

I deleted that last string, and wrote there

static DEFINE_SEMAPHORE(cnxt_port_sem); 

and I saved and closed that file. I executed

and then a text editor was launched. I searched for the string

and below I found the string

I deleted that string, and wrote there

and I saved and closed that file. I executed

and then a text editor was launched. I searched for the string

static LIST_HEAD(nvm_newinst_list); 

and below I found the string

static DECLARE_MUTEX(nvmelem_writelist_sem); 

I deleted that last string, and wrote there

static DEFINE_SEMAPHORE(nvmelem_writelist_sem); 

and I saved and closed that file.

A note for the curious ones: the source of those changes in those files was http://www.openmamba.org/showfile.ht. l-2.6.37.patch

The user named Chiaseth helped telling those steps that I followed, this way:

and then a text editor was launched. I searched for the string

and I deleted that string, and wrote there

#include DEFINE_MUTEX(os_mutex); // Define a mutex 

In that file I searched for the strings

replacing all of them with

Also, in that file I searched for the strings

replacing all of them with

and I saved and closed that file.

In that file I searched for the string

static spinlock_t dcp_lock = SPIN_LOCK_UNLOCKED; 
static DEFINE_SPINLOCK(dcp_lock); 

and I saved and closed that file.

Читайте также:  Unzip all files in directory linux

In that file I searched for the string

static spinlock_t diag_lock = SPIN_LOCK_UNLOCKED; 
static DEFINE_SPINLOCK(diag_lock); 

and I saved and closed that file.

In that file I searched for the string

static spinlock_t fpstates_lock __attribute__((unused)) = SPIN_LOCK_UNLOCKED; 
static DEFINE_SPINLOCK(fpstates_lock); 

and I saved and closed that file.

In that file I searched for the string

static spinlock_t atomic_lock __attribute__((unused)) = SPIN_LOCK_UNLOCKED; 
static DEFINE_SPINLOCK(atomic_lock); 

and I saved and closed that file.

In that file I searched for the string

static spinlock_t tqueue_lock __attribute__((unused)) = SPIN_LOCK_UNLOCKED; 
static DEFINE_SPINLOCK(tqueue_lock); 

and I saved and closed that file.

sudo make install sudo hsfconfig 

It asked «Where is the linux source build directory that matches your running kernel?», then I simply pressed the return key to accept the default answer. I also accepted the default answer in other questions.

Finally the command reported that

The /dev/modem alias (symlink) points to ttySHSF0 
[59190.782005] hsfengine: module license 'see LICENSE file distributed with driver' taints kernel. [59190.782011] Disabling lock debugging due to kernel taint [59192.564398] ttySHSF0 at MMIO 0x0 (irq = 0) is a Conexant HSF softmodem (USB-0572:1300) [59192.600274] usbcore: registered new interface driver hsfusbcd2 [59194.416241] usbcore: deregistering interface driver hsfusbcd2 [59194.600064] usb 6-1: reset full speed USB device using uhci_hcd and address 2 [59194.811746] cnxthsf_DcpDestroy: units still active, waiting.. [59194.811764] cnxthsf_DcpDestroy: units still active, waiting.. [59194.811778] cnxthsf_DcpDestroy: units still active, waiting.. [59196.967466] ttySHSF0 at MMIO 0x0 (irq = 0) is a Conexant HSF softmodem (USB-0572:1300) [59196.994150] usbcore: registered new interface driver hsfusbcd2 

which meant, among other things, that the USB modem was detected at /dev/ttySHSF0 .

Note: as they said in https://help.ubuntu.com/community/Di. Howto/Conexant: «do not delete or move the source tree [in our case: ~/conexant_modem] from your system after these steps, it will be required to uninstall and patch the driver.»

I launched kppp (for example) and configured a new «connection», specifying that the modem was at /dev/ttySHSF0 . You could also use a program like efax-gtk to send faxes through the modem.

Источник

Как подключить 3g модем в Linux?

За те годы, что я использовал Linux совместно с 3G модемом, не было ни одной родной программы от самой Ubuntu. У 3G модемов фирмы Huawei есть свой 3G менеджер под Linux, но работать с другими модемами (да и с некоторыми своими) он отказывается.

Но вот в Ubuntu 12.04 я совершенно случайно обнаружил в менеджере пакетов программу, созданную как раз для управления 3G модемами. Как подключить 3g модем в Linux при помощи этой программы?

Читайте также:  Linux pdf печать брошюры

Как подключить 3g модем в Linux? 13 2022

Для начала давайте установим эту программу, чтобы подключить 3G модем. Вы можете найти её в менеджере пакетов Synaptic под именем modem-manager-gui

Вы также можете установить её из командной строки:

Если у вас нет нужного репозитория и программа не находится, то добавьте репозиторий .

Сделать это можно, открыв менеджер пакетов Synaptic — Настройки — Репозитории — Другое ПО — Добавить, и добавить так, как показано на снимке:

Как подключить 3g модем в Linux? 14 2022

Теперь обновите сведения о пакетах и устанавливайте эту программу.

В самом менеджере пакетов есть небольшое описание того, что эта программа умеет:

Давайте попробуем запустить эту программу и на личном опыте оценить её полезность и функциональность. Я буду использовать разлоченный модем ZTE 100 с сим картой от Мегафон.

Заходим в «Приложения» — «Системные утилиты» — «modem-manager-gui» и запускаем приложение.

Как подключить 3g модем в Linux? 15 2022

Как видите, программа определила мой модем. Нажимаю кнопку «Сети» и тут выскакивает рамочка:

Как подключить 3g модем в Linux? 16 2022

Нажимаем «Активировать» конечно. Перед нами появляется вкладка сеть, где есть кнопка «Начать сканирование сетей». Сканируем:

Как подключить 3g модем в Linux? 17 2022

Видим все доступные сети. Очень полезно, кстати, посмотреть, у каких операторов в данном месте есть 3G или UMTS. Видим, что есть у Мегафон и МТС. Так и есть на самом деле. Тперь

Теперь нам нужно подключить 3g модем в Linux. Но не тут то было, в программе нет кнопки «Подключить». Пришлось идти в сетевые подключения и подключать 3G модем обычным способом.

Как подключить 3g модем в Linux? 18 2022

Но не будем это считать серьёзным недостатком, возможно так было задумано. После подключения 3G модема в менеджере сети, программа окончательно оживает. Посмотрим вкладку «Трафик».

Как подключить 3g модем в Linux? 19 2022

Ну что же — не плохо. Особенно радует пункт «Остаток трафика» — найти бы как его настроить. Нажимаем»Установить ограничения», ставим галочку «Использовать ограничения трафика» и выставляем значение».

Судя по следующему полю, при достижении этого значения, программа оповестит о лимите. Можно поставить поменьше, и тогда можно узнать, что скоро трафик закончиться.

Как подключить 3g модем в Linux? 20 2022

Теперь перейдём на вкладку «Статус».

Как подключить 3g модем в Linux? 21 2022

Самое интересное тут: «Уровень сигнала». Его необходимо знать, если вы хотите усилить сигнал 3G модема. Так же через программу можно отправить смс:

Как подключить 3g модем в Linux? 22 2022

Я не стал пробовать, оно мне не надо. Но вот попробовать отправку USSD запросов, чтобы проверить тот же баланс, думаю стоит:

Как подключить 3g модем в Linux? 23 2022

У меня не получилось посмотреть баланс, программа не реагировала. А потом мне пришло SMS:

Источник

Оцените статью
Adblock
detector