Activation Codes and Methods, Hardware Details, Sniffing
Josh
Site Admin
Posts: 6593
Joined: 03 Nov 2007, 00:30

Post by Josh » 13 Jul 2010, 08:34

GChriss wrote:...err, looks like the modem has already been de-activated as it is being returned.
I don't understand that sentence.

Anyway, the thing reacts to AT commands which is good. Now, edit the "wvdial.conf" (in /etc). You don't need all that "Init2" stuff, abridge it to "ATE1". Set "Baud" to "115200".

Add a line "Stupid Mode = 1" which prevents probing.

According to your provider's access information you might need to add things like the access point or a username / password. And I'm not sure the number you dial is correct.

For many examples for the setup see
http://en.gentoo-wiki.com/wiki/Huawei_E220


olderek
Posts: 3
Joined: 23 Jul 2011, 15:49

my Beceem BCSM250 modem is not recognised

Post by olderek » 23 Jul 2011, 16:31

olderek@old5732Z:~$ sudo lsusb
[sudo] password for olderek:
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 003: ID 04f3:02f4 Elan Microelectronics Corp.
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 031: ID 198f:0220 Beceem Communications Inc.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


olderek@old5732Z:~$ sudo usb_modeswitch -v 198f -p 0220

Looking for default devices ...
Found devices in default mode, class or configuration (1)
Accessing device 031 on bus 001 ...
Getting the current device configuration ...
OK, got current device configuration (1)
Using endpoints 0x02 (out) and 0x81 (in)
Not a storage device, skipping SCSI inquiry

USB description data (for identification)
-------------------------
Manufacturer: Beceem Communications
Product: BCSM250 Mobile WiMAX
Serial No.: 123456789012345678901234567890
-------------------------
Warning: no switching method given.
-> Run lsusb to note any changes. Bye.


olderek@old5732Z:~$ sudo /usr/sbin/usb_modeswitch -W -c /etc/usb_modeswitch.conf

Reading config file: /etc/usb_modeswitch.conf

* usb_modeswitch: handle USB devices with multiple modes
* Version 1.1.8 (C) Josua Dietze 2011
* Based on libusb0 (0.1.12 and above)

! PLEASE REPORT NEW CONFIGURATIONS !

DefaultVendor= 0x198f
DefaultProduct= 0xbccd
TargetVendor= 0x198f
TargetProduct= 0x0220
TargetClass= not set
TargetProductList=""

DetachStorageOnly=0
HuaweiMode=0
SierraMode=0
SonyMode=0
GCTMode=0
KobilMode=0
SequansMode=0
MobileActionMode=0
MessageEndpoint=0x02
MessageContent="55534243f0298d8124000000800006bc626563240000000000000000000000"
NeedResponse=0
ResponseEndpoint= not set
Interface=0x00

InquireDevice enabled (default)
Success check enabled, max. wait time 20 seconds
System integration mode disabled

usb_set_debug: Setting debugging level to 15 (on)
usb_os_find_busses: Found 007
usb_os_find_busses: Found 006
usb_os_find_busses: Found 005
usb_os_find_busses: Found 004
usb_os_find_busses: Found 003
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_devices: Found 001 on 007
usb_os_find_devices: Found 001 on 006
usb_os_find_devices: Found 001 on 005
usb_os_find_devices: Found 003 on 004
skipped 1 class/vendor specific interface descriptors
usb_os_find_devices: Found 001 on 004
error obtaining child information: Inappropriate ioctl for device
usb_os_find_devices: Found 001 on 003
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 031 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device

Looking for target devices ...
searching devices, found USB ID 1d6b:0001
searching devices, found USB ID 1d6b:0001
searching devices, found USB ID 1d6b:0001
searching devices, found USB ID 04f3:02f4
searching devices, found USB ID 1d6b:0001
searching devices, found USB ID 1d6b:0001
searching devices, found USB ID 1d6b:0002
searching devices, found USB ID 198f:0220
found matching vendor ID
found matching product ID
adding device
searching devices, found USB ID 1d6b:0002
Found devices in target mode or class (1)
Looking for default devices ...
searching devices, found USB ID 1d6b:0001
searching devices, found USB ID 1d6b:0001
searching devices, found USB ID 1d6b:0001
searching devices, found USB ID 04f3:02f4
searching devices, found USB ID 1d6b:0001
searching devices, found USB ID 1d6b:0001
searching devices, found USB ID 1d6b:0002
searching devices, found USB ID 198f:0220
found matching vendor ID
searching devices, found USB ID 1d6b:0002
No devices in default mode found. Nothing to do. Bye.


olderek@old5732Z:~$ wvdial
--> WvDial: Internet dialer version 1.61
--> Cannot set information for serial port.
--> Initializing modem.
--> Sending: ATZ
--> Sending: ATQ0
--> Re-Sending: ATZ
--> Modem not responding.


olderek@old5732Z:~$ ls -l /dev/ttyUSB*
crw-rw---- 1 root dialout 188, 0 2011-07-23 17:08 /dev/ttyUSB0


i need serious help please anybody. my modem is not being recognised anywhere. when i plug it in, nothing happens. its the kind of modem with no storage device. when i plug it into windows, the device drivers install automatically and then i can install the software and start to use it. with ubuntu, nothing happens.

Josh
Site Admin
Posts: 6593
Joined: 03 Nov 2007, 00:30

Post by Josh » 23 Jul 2011, 20:22

If you see "198f:0220", then your device is in the right mode already. It was switched automatically.

Don't try to switch it again. It is useless.

And don't add your device data to "/etc/usb_modeswitch.conf". If you have gotten advice to do so, forget it - it's totally outdated.

The problem with the Beceem Wimax chipset is that there is not yet a driver in the standard kernel.
See this:
http://cateee.net/lkddb/web-lkddb/BCM_WIMAX.html


olderek
Posts: 3
Joined: 23 Jul 2011, 15:49

Post by olderek » 23 Jul 2011, 22:27

thank you so much josh for getting back to me.
If you see "198f:0220", then your device is in the right mode already. It was switched automatically.

Don't try to switch it again. It is useless.

And don't add your device data to "/etc/usb_modeswitch.conf". If you have gotten advice to do so, forget it - it's totally outdated.

The problem with the Beceem Wimax chipset is that there is not yet a driver in the standard kernel.
See this:
http://cateee.net/lkddb/web-lkddb/BCM_WIMAX.html
i would have kept on screwing up my pc just to get my modem to work. now that i know that there is no driver yet, i think im gonna have to wait.
i just need to know one thing, is there anything i can do to make it work somehow, like install it's window's drivers? or is there anything being done to make certain that the linux kernel driver is in place? and if so, then which kernel...

Josh
Site Admin
Posts: 6593
Joined: 03 Nov 2007, 00:30

Post by Josh » 24 Jul 2011, 08:52

At the link I gave you is a list of kernel versions where the driver is found in the "staging" tree.

It says "2.6.37, 2.6.38, 2.6.39, 3.0".

You need to build your own kernel, enabling "experimental" drivers and select "Beceem BCS200/BCS220-3 and BCSM250 wimax support".

There is plenty of help available regarding kernel building. Google is your friend.


olderek
Posts: 3
Joined: 23 Jul 2011, 15:49

mobile wimax usb adapter

Post by olderek » 06 Aug 2011, 11:28

thanks to you Josh, i took the initiative to learn how to build my own custom kernel. thank you so much again.

a kernel source is what one needs when building a custom kernel. i went to http://www.kernel.org and got myself the stable kernel 3.0. the whole beginning process did not give me a hard time.

somewhere, i had to copy my old config file from the /boot folder to where i was building my new kernel from, which is normally /usr/src/linux.

when i get to make menuconfig, i get to change edit my conf file. i then move from device drivers - to - staging drivers(staging tree). i look for Beceem BCS200/BCS220-3 and BCSM250 wimax support, which i find. now this is the part that gets me confused. do i type 'y' or 'M'?

when u said that i should enable the drivers, i chose to go with 'y'. so i save and exit.
i really don't exactly know what to do from here.

so many people have different ways of continuing from this step onwards. so i choose to go with one of them. this is what i do...
sudo make-kpkg clean
sudo make-kpkg --initrd --append-to-version=-olderek kernel_image kernel_headers


this takes quite a long time like 2 hours. after all that, i see a list of the names of the files in the folder as well as the names of my new kernel image and kernel headers, which look something like this;

linux-headers-3.0.0-olderek_3.0.0-olderek-10.00.Custom_amd64.deb
linux-image-3.0.0-olderek_3.0.0-olderek-10.00.Custom_amd64.deb


i now install them by typing this command;
sudo dpkg -i *.deb and reboot.

when im finally happy to use my new customed kernel, i find that i dont have wireless enabled and i just dont see anything when i plug in my mobile wimax usb adapter.
or better yet, what am i supposed to do when i plug in my adapter?
its the kind of adapter that has no storage unit and has no capabilities of using different mobile simcards coz its locked to one mobile telecom.

this is my current kernel
2.6.39-02063903-generic

any help will be greatly appreciated.

Josh
Site Admin
Posts: 6593
Joined: 03 Nov 2007, 00:30

Post by Josh » 06 Aug 2011, 12:50

Most drivers can be built into the main kernel or built as separate modules. The latter is usually more flexible, especially if you might want to change parameters for the driver. So I recommend "M" as the choice for configuration.

If your kernel was installed once per Debian package mechanism, you probably don't need to do it again. Just run "make" in the kernel source folder. Then "make modules_install" and "make install". This way, compiled objects will be re-used and not cleaned out every time. The "make" mechanics will compile only the parts where changes were made.

Let's assume the driver name is "bcm" (file "bcm.ko").

To load a driver, use "modprobe -v bcm" to see what is actually happening. Also, there is a driver parameter "debug" that you can use: "modprobe -v bcm debug=16".
To change that parameter, unplug your device and reload the module: "modprobe -r -v bcm" to remove, the previous command to load. I don't think it's possible to change parameters if the module is already loaded (check "lsmod").

If your device is ready after mode-switching, the module should be loaded automatically. If you want to change driver parameters in the way I described, you have to preload the module before plugging. In any case, the device should be discovered by the driver. Run "dmesg" repeatedly to get the latest system update.

I'm afraid that is all I can do to help you get the stick running. If the driver does not work as expected you can try to reach its developers.


Post Reply