[Comm] Билайн USB модем
Il'ya
=?iso-8859-1?q?brutalfreak_=CE=C1_gmail=2Ecom?=
Пт Фев 20 04:42:31 MSK 2009
Вот для себя делал заметку, по ней все сделал за 5 минут после
перехода с 4.0 на 4.1.
После подключения модема запустить скрипт
#!/bin/sh
sleep 5
eject /dev/rs0
sleep 5
rmmod usbserial
sleep 5
insmod /lib/modules/2.6.18-std-smp-alt8/kernel/drivers/usb/serial/usbserial.ko
vendor=0x19d2 product=0x0031
rm -f /etc/resolv.conf
cp -f /root/resolv.conf.mega /etc/resolv.conf
2.6.18-std-smp-alt8 текущее ядро
eject /dev/rs0 можно упустить если в модеме отключить автозапуск в роли привода.
Последние строки нужны так как по непонятным причинам именно при
соединении этим способом по этому модему /etc/resolv.conf сам не
обновляется, при этом если через мобилу, то все нормально. Либо
указать в параметрах kppp.
Так же нужно в crontab добавить на поминутное выполнение программу
скомпилированную из этого кода UnBeeline.c (сперто с форума
гентушников):
#include <usb.h>
#include <stdio.h>
#include <string.h>
int OpenMyDevice(struct usb_device **device, usb_dev_handle
**udev_handle, int VID, int PID)
{
struct usb_bus *bus;
struct usb_device *dev;
usb_dev_handle *udev;
int isFound = 0;
usb_init();
usb_find_busses();
usb_find_devices();
for (bus = usb_busses; bus; bus = bus->next) {
for (dev = bus->devices; dev; dev = dev->next) {
udev = usb_open(dev);
if ( (dev->descriptor.idVendor == VID) &
(dev->descriptor.idProduct == PID)) {
isFound = 1;
break;
} else {
if (udev) usb_close(udev);
};
}
if (isFound)
break;
}
*device = dev;
*udev_handle = udev;
return isFound;
}
int main(void)
{
struct usb_device *dev;
usb_dev_handle *udev;
int rc;
char msg[] = "AT+ZOPERTE=\"beeline\"\r\n";
int NUM = strlen(msg);
if (OpenMyDevice(&dev, &udev, 0x19d2, 0x0031)) {
printf("Device found\n");
} else {
printf("Device not found\n");
exit(1);
};
printf("Claim_interface: %d\n", usb_claim_interface(udev, 1));
printf("Alt_interface: %d\n", usb_set_altinterface(udev, 1));
rc = usb_bulk_write(udev, 2, (char *)msg, NUM, 1000);
printf("USB bulk write: %d (%d)\n", rc, NUM);
usb_close(udev);
return 0;
}
Копмилировать командой:
gcc -o UnBeeline UnBeeline.c -lusb
Есть уже скомпилириванный этот код в 4.0, в 4.1 он так же работает.
Если что могу выслать.
Посмотреть наличие модема ls /dev/ttyUSB*
Понадобяться пакеты libusb, libusb-devel.
20 февраля 2009 г. 5:09 пользователь Sokolov Aleksandr
<masterklavir на gmail.com> написал:
>
> Здравствуйте все!
> Помогите пожалуйста разобраться с установкой билайновского модема.
> Я посмотрел архив рассылки и мало что понял.
> Опишу то, что уже сделал:
> 1. создал скрипт startmodem в
> /usr/bin/startmodem
> следующего содержания:
> #!/bin/sh
> sudo usb1on.shsleep 10
> sudo eject /dev/sr0sleep 5
> sudo modprobe usbserial vendor=0×19d2product=0×0001sleep5
> sudo dmesg|grep -i ttyUSB0
> sudo comgt -d /dev/ttyUSB0
> sudo cp /etc/resolv.conf.ppp /etc/resolv.conf
> sudo chmod +x /usr/bin/startmodem.sh
> Скрипт нормально работает отключает cdrom, и переключает в режим модема.
> Читал инструкцию
> http://ru.gentoo-wiki.com:80/wiki/MF626
> но не понял, как действовать дальше?
> Там уж больно навороченно, мне кажется должен быть более простой способ.
> Если кого не затруднит, объясните пожалуйста тупому юзеру как всё же заставить
> эту штуку пустить меня в интернет?
> С уважением Соколов Александр г. Самара
> _______________________________________________
> community mailing list
> community на lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/community
Подробная информация о списке рассылки community