Page 1 of 1

ZTE MF180 ( Bob - A1 Austria )

Posted: Tue Dec 27, 2011 5:41 pm
by Chan
I have been trying to get this device to work on my Suse Linux
I have downloaded usb-modeswitch-1.2.0 and also the ...-data-20111023 .tar files and extracted them into my /tmp/ directory. I also downloaded libusb.
When I try to
# make install
the usb-modeswitch-1.2.0 files I get an error message, like this:
#make install
gcc -0 usb_modeswitch usb_modeswitch.c -Wall -l usb
usb-modeswitch.c:58:17 fatal error: usb.h: No such file or directory compilation terminated.
make: *** [usb_modeswitch] Error 1

When I look into the /tmp/usb-modeswitch-1.2.0/ directory, I can see a file " usb.h" When I open the file up I can see that it is Version 1.19 from 2011/08/05. So is this file in the wrong place, that it cannot be found ?

My ZTE device is visible in the hardware manager as a storage device under the parameters Vendor id 19d2, and Product id 2000.
That is as far as I have got. Any ideas anyone ?

Posted: Wed Dec 28, 2011 1:34 am
by Josh
There is a README file in the source distribution. The paragraph about installation states that the development package of libusb is needed.

BTW, version 1.2.1 was released yesterday. I recommend using it over 1.2.0.

Posted: Wed Dec 28, 2011 5:48 pm
by Chan
Thanks Josh,
I have downloaded and installed the 1.2.1 version, as well as the libusb 0.1.12
When I installed the libsub, I was indicated that their was a problem building the SGML documentation. ( I am running Suse 11.4 / KDE 4.6)
I don't know if this is critical.
I think everything went Ok but I cannot configure my stick to work.
I can see the Bob stick in the hardware manager, and it looks like it has switched OK. It is reported as a Communications Controller, and the model alias shown vendor id 19D2, and Product id as 0117 which I believe is correct.
I am trying to use Yast to configure the modem but have no sucess.
Can you see what I am doing wrong ?

Posted: Thu Dec 29, 2011 12:01 am
by Josh
You are probably not doing anything wrong.

Yast may have problems picking the right port. ZTE devices (vendor 19d2) usually want to connect via their third port (most often ttyUSB2). There are programs which miss that (like Gnome's Network Manager in earlier versions) and consequently fail to connect when using one of the other ports.
BTW, usb_modeswitch adds a convenience symlink to the correct port in the /dev folder. Look for "gsmmodem".

I'm not very familiar with Suse, though. If there is no way to set the connection port manually (e.g. to "/dev/gsmmodem"), I can only recommend to try other tools for building a connection, like "umtsmon" or "wvdial".

Posted: Mon Jan 09, 2012 6:05 pm
by Chan
Thanks Josh,

I can see the /dev/gsmmodem that you refer to as a convenience symlink.
what is a "convenience symlink" and how do I use it ?

However, if I cannot get it to work I am minded to try using wvdial, as I have seen a copy of this on another post using the ZTE 190 stick for O2
Maybe I can adapt the wvdial for the ZTE 180 stick and Bob-A1.

If I do use wvdial, wher do I locate it, and how would I point to it ? so that it is recognised. ?

Posted: Tue Jan 10, 2012 12:26 am
by Josh
You can use the symbolic link like any device file in the /dev folder; e.g. you can tell wvdial to use this (/dev/gsmmodem) as the port for connection. Mind that you can use "/dev/ttyUSB2" with the exact same result, if that is where "gsmmodem" points to.

Imagine a symbolic link as a desktop link to a "real" file, or as an alias name for that file. You can just use it like the file that it is linked to.

When I said in my first answer that some desktop-integrated network and setup tools have problems with recognizing the right modem port, I meant to say that you need to try using different tools - like wvdial or UMTSMon. The big issue here is that the tool needs a way to set the modem port manually in case the automatic recognition fails.
I know that Gnome's Network Manager does not allow this. I'm not sure about the KDE network tool. Anyway, your best bet might indeed the simple wvdial, though you have "to get your hands dirty" a little bit by setting it up. Don't trust the auto-configuration of this tool either ...

That said, there are lots of configuration examples available in the net; you may want to google for "wvdial.conf" and the name of your provider.

Posted: Fri Jan 13, 2012 12:39 am
by Chan
I have managed to script a wvdial which appears to work - almost.
I cannot get a connection even though the modem gets a carrier, and starts ppp etc.
It gets as far as " -->Script /etc/ppp/ip-up run successful "
but then gets a message "DNS Failure - No Nameserver found."

and that's me stuck. I cannot get on-line.

I did notice however, that after switching with Modeswitch my device Vip and Pid were 19d2:0117,
but that has now changed to 19d2:0016

is this significant ?? Also, can anybody help with the DNS problem ?
Thanks in advance.

Posted: Fri Jan 13, 2012 9:36 am
by Josh
If I set up the "options" file in /etc/ppp manually (which I do on my system), I make sure it has these lines:

I have found a hint that wvdial uses a renamed option file:
You can have a look and make sure these entries are included.

If dialing works and you are assigned an IP address, you should have a "ppp0" interface showing the address. If the DNS information was correctly received, the file "/etc/resolv.conf" should have been modified by pppd and contain the IP addresses of your provider's name servers.

If you know these adresses (most providers publish them somewhere), you can edit the said file manually and enter them directly in case pppd is not able to set them automatically.

If you still run into trouble after trying all this, you might want to follow the procedure described here: ... s-settings

Posted: Fri Jan 13, 2012 6:12 pm
by Chan
Hi Josh, and thank you for your reply.
My dialing works, I think, and ppp0 gives me some addresses. Here is what my wvdial dialogue looks like:
# wvdial bob
-->wvDial: Internet dialer version 1.60
-->Cannot get information for serial port
-->Initialising modem
-->Sending ATZ
-->Sending AT+CGDCONT=4,"IP",""
-->Modem initialised
-->Sending: ATDT *99***1#
ATDT *99***1#
CONNECT 3600000
-->Carrier detected. Starting ppp immediately.
-->Starting pppd:2933
-->Using Interface ppp0
-->local IP address
-->remote IP address
-->primary DNS address
-->secondary DNS address
-->Script /etc/ppp/ip-up run successful
-->Default route Ok
-->warning, no nameserver found '/etc/resolv.conf/'
-->Nameserver DNS failure, the connection may not work.
-->Connected ... Press Crtl-C to disconnect

I have looked at resolv.conf but this is only a text file telling me to screw around with the Netconfig. I have been doing this , but getting nowhere. I have also put in the google DNS addresses as Nameservers, but I think that Netconfig is overwritting them or something like that. I cannot be sure that the resolv.conf that I am writing is actualy being used.

Posted: Fri Jan 13, 2012 10:14 pm
by Josh
Did you try to add the DNS IP adresses manually to "/etc/resolv.conf" ?
This should work at least temporary.

By dialling with wvdial, you are effectively working around the system's integrated network tools.

Posted: Sat Jan 14, 2012 12:26 am
by Chan
Yes, I have tried that.
But the resolv.conf file that I have, states that it is generated automatically by netconfig.
So I think any code that I enter into it , is simply being overwritten.
here is a copy of what I have now:
### /etc/resolv.conf file autogenerated by netconfig!

# Before you change this file manually, consider to define the

# static DNS configuration using the following variables in the

# /etc/sysconfig/network/config file:




# or disable DNS configuration updates via netconfig by setting:



# See also the netconfig(8) manual page and other documentation.


# Note: Manual change of this file disables netconfig too, but

# may get lost when this file contains comments or empty lines

# only, the netconfig settings are same with settings in this

# file and in case of a "netconfig update -f" call.


### at least remove this warning if you change anything.


Posted: Sat Jan 14, 2012 12:35 am
by Josh

And you can try to make the file read-only.

# chmod a-w /etc/resolv.conf

Posted: Sat Jan 14, 2012 4:03 pm
by Chan
Josh, You are a Genius !!
I am replying to you using my newly configured ZTE MF180 Sick, ( usb-modeswitched ).

OK, I will not get too elated too soon, but it is working now. I will need to closedown and restart a few times, and make sure that wvdial starts from boot.

So, its a big THANK YOU from me, I am much obliged for your efforts and your patience.