[
Bloke.com
|| Linux
|| JavaScript
|| Java
|| Volleyball
|| Link Me
]
Free: [ Guestbook || MessageBot || Plugins || Counter || AusPrices || Advertise ] |
My advice for picking a modem is choose the modem that you want to buy, then search the net for your particular modem looking for problems. Once you are convinced that you found the modem you want, check on-line for prices so you can guage if you are getting a reasonable deal, and then buy it either on-line or at the local store. In general, don't get a USB modem, however a sub-set of USB modems are starting to be supported. See linux-usb.org.
I tried to get my Swann V.90 USB modem working, I had offered to write the driver for them if they could get me some specs, but although tech. support seemed like they wanted to help, they weren't able to provide me with any information except that it's a "very soft-modem", which I assumed was that it's all software driven, and they talked about the problems they had getting it working on new windows systems.
So now I'm giving away the modem. I couldn't find the driver disk, but these things are usually on-line. I found them at: http://www.swann.com.au/tech/modems/modems.htm, and kept a local copy here
Howto:
[root@tiger cameron]# rpm -q wvdial ppp wvdial-1.41-15 ppp-2.4.1-2 [root@tiger cameron]#
[Dialer Defaults] Modem = /dev/ttyS0 Baud = 57600 Init = ATZ Init2 = ATB0 Init3 = AT&G Init4 = ATS0=0 Init5 = ATS6=2 Init6 = ATS11=95 Phone = 54755644 Username = someuser@ozemail.com.au Password = somepass [Dialer brisbane] Phone = 32301444 [Dialer cairns] Phone = 40501844 [Dialer rockhampton] Phone = 49310044 [Dialer townsville] Phone = 47265844 [Dialer quiet] Init7 = ATM0 [root@tiger cameron]#You would need to change the phone number (above is for Sunshine Coast unlimited plan), the Username and Password. You may also need to change the Modem line to /dev/ttySx, where x is the number of the serial port that your external modem is connected it.
The other options are to ensure that your modem fits the laws required by the Australian telecommunications industry. It's a bit of a pet peeve here, but Australia has a backward phone system where a user phone can bring down the exchange. This is probably not true in major cities now, but I'm sure it still exists in more remote places. So thats why you have to have a Telecom approved device.
Also note that the internal modem on my Dell Inspiron 8000 would not work in Australia not that I tried it. I heard stories of other people getting it working, but that would be illegal (since I bought my computer in the US), or possibly they got their's in Australia.
So now to connect, just type wvdial as root.
bash-2.05$ su Password: [root@tiger cameron]# vi /etc/wvdial.conf [root@tiger cameron]# wvdial --> WvDial: Internet dialer version 1.41 --> Initializing modem. --> Sending: ATZ ATZ OK --> Sending: ATB0 ATB0 OK --> Sending: AT&G AT&G OK --> Sending: ATS0=0 ATS0=0 OK --> Sending: ATS6=2 ATS6=2 OK --> Sending: ATS11=95 ATS11=95 OK --> Modem initialized. --> Sending: ATDT 54755644 --> Waiting for carrier. ATDT 54755644 CONNECT 57600 --> Carrier detected. Waiting for prompt. UQKT2 tnt3.sunshine-coast.au.da.uu.net Login: --> Looks like a login prompt. --> Sending: someuser@ozemail.com.au someuser@ozemail.com.au Password: --> Looks like a password prompt. --> Sending: (password) Entering PPP Session. IP address is 210.84.94.227 MTU is 1524. --> Looks like a welcome message. --> Starting pppd at Sat Mar 2 23:09:08 2002
I actually had a lot of trouble getting the modem working, but in the end, I was just calling the wrong number. Just my luck to hit another modem.
There was some talk that pppd doesn't work in red hat 7.2, but I didn't have that problem.
If you get:
--> WvDial: Internet dialer version 1.41 --> Cannot open /dev/ttyS0: Device or resource busyIt probably means that you are running wvdial as a user, and not root.
In the config file I gave above, you also see the phone numbers for various other places around the state. So if I went to Townsville, then I would use:
wvdial townsvilleAnd it would call the local number for townsville. How easy is that??
If you wanted to make the modem not use it's speaker, then you could say
[root@tiger cameron]# wvdial quietor if I was in Townsville.
[root@tiger cameron]# wvdial townsville quiet
With this modem under Windows 2000, the dialer will say that the connection speed is 115000 bps. This means that the computer is talking to the modem at this speed, so don't get too excited! The modem speed will still be the negotiated speed with your ISP.
With the defaults settings, I had problems with the connection hanging when downloading large files or accessing my email (since I get so much :-( ) My solution was to force the connect speed to 57600, and I haven't had trouble since. Go into the modem properties and changed the max connect speed to 57600. To do this, I start the connection as normal, select my modem (since I have a three on my computer!), and then clicked on "Configure", then in the first or second tab there is the option to change the max connection speed.
Ozemail disconnects every 4 hours, but when this happens wvdial will reconnect, automatically. It is against the terms of service for ozemail to have it do this. You can use "Auto Reconnect = off" to turn it off (not tested , check this).
I added
Init7 = AT%C3 Init8 = AT+MS=12,1,28000,56000%C3 turns on Data Compression (MNP5 and V.42bis). Init8 forces V.90, and the min/max rates to connect at. It appears to helped just a little bit, but I didn't do extensive testing.
ToDO:
Add: links This was to connect to ozemail. automatic connect. automatic disconnect. how do you disconnect normally? turning on hardware compressions and error checks etc. I used wvdialconf to set some options .. describe the new settings... My new settings seem to do much better...
[Dialer Defaults] Modem = /dev/ttyS0 Baud = 57600 Init = ATZ ;Init2 = ATB0 &G S0=0 S6=2 S11=95 %C3 +MS=12,1,28000,56000 ;Init2 = ATQ0 V1 E1 S0=0 S6=2 S11=95 &C1 &D2 +FCLASS=0 Init2 = ATQ0 V1 E1 S0=0 S6=2 S11=95 &C1 &D2 +FCLASS=0 Init3 = AT&G %C3 +MS=12,1,28000,56000 &K3 &D0 Phone = 54755644 Username = Password = Init1 = ATZ SetVolume = 0 Dial Command = ATDTMost of these make little sense to me, but I've been playing with them to increase the speed. I'd like to know what win2000 sends, since that seems to be better...
Q0 Allow result codes to DTE. V1 Verbal codes. E1 Enable command echo S0=0 Number of rings for auto-answer, 0 ==default S6=2 The time (seconds) to pause after off-hook before blind dialing (2 == default, but is country dependent) S11=95 0.95 seconds to wait for DTMF tone dialing, and the time between tone spacings. &C1 Normal CD (Carrier Detect) operations. &D2 Normal DTR operations (DTR=??). +FCLASS=0 &G No idea... %C3 Enable V.42bis and MNP 5 data compression +MS=12,1,28000,56000 Enable Modulation Selection to be auto and set the min/max baud rate to 28000/5600. &K3 Enable RTS/CTS flow control (maybe should be &K6 which is enable RTS/CTS and XON/XOFF flow control). &D0 I added this on recommendation of this site (it was in so many of the init strings, I added it)
After merging with the wvdialconf based strings, and adding &D0 and &K3, I get between 2.5k/s and 3.5k/s (generally around 3k/s). Still not as good as on windows, where I am getting up to 4-5k/s (reported).
I found /winnt/Modem*, and after looking at: /winnt/ModemLog_Standard 56000 bps V90 Modem.txt, I found the init strings
I've been messing with the commands to pass, by looking on the web for init strings, and using the files found below .. which I found in /winnt (I renamed to remove ()'s and spaces).
Now I'm using
[Dialer Defaults] Modem = /dev/ttyS0 Baud = 57600 Init = ATZ Init2 = ATE0V1&C1&D2S0=0%C1&k3 Init3 = ATM1X4 Init4 = ATS0=0 Init5 = AT +MS=12,1,50000,56000Which is what I found from the log files on windows 2000, but I added: %C1&k3 and +MS=12,1,50000,56000. This seems pretty good, sometimes I can connect with +MS=12,1,56000,56000 but just now it didn't work, so I turned to down to 50000. You may need to turn it down further.
With these options, ppprate shows between 3900 and 4050 Bytes/sec.
Dial on demand ... other dialers...
PPP script to measure input/output
This script measures the bytes in/out over the first ppp link.
#!/bin/sh
#
# ppprate - show actual PPP bandwidth usage
# @author Cameron Gregory, http://www.bloke.com/
period=10
prev_bytesout=''
prev_bytesin=''
while true ; do
bytesout=`grep ppp0: /proc/net/dev | sed -e 's/ppp0://' | awk '{print $9}'`
bytesin=`grep ppp0: /proc/net/dev | sed -e 's/ppp0://' | awk '{print $1}'`
if [ "$prev_bytesout" != '' ] ; then
bytesout_per_period=`echo "$bytesout - $prev_bytesout" | bc`
bytesout_per_sec=`echo "$bytesout_per_period / $period" | bc`
bytesin_per_period=`echo "$bytesin - $prev_bytesin" | bc`
bytesin_per_sec=`echo "$bytesin_per_period / $period" | bc`
date=`date '+%d%h%y %H:%M:%S'`
echo "$date in: $bytesin_per_sec B/s out: $bytesout_per_sec B/s"
fi
prev_bytesout="$bytesout"
prev_bytesin="$bytesin"
sleep $period
done
Bah .. so far this doesn't work for me ..
I found a post, which describes exactly my problem (well, I have Dell 8000, and not 8100, but I'm sure they are the same modem). It says to run "lspci" or "lspci -v" to see what kind of modem you have, then go get the driver from LinModems.org. Which I did. The relavent results from "lspci -v" are:
08:08.0 Communication controller: Lucent Microelectronics WinModem 56k (rev 01) Subsystem: Action Tec Electronics Inc LT WinModem 56k (MiniPCI Ethernet+Modem) Flags: bus master, medium devsel, latency 0, IRQ 11 Memory at f8ffec00 (32-bit, non-prefetchable) [size=256] I/O ports at ecb8 [size=8] I/O ports at e800 [size=256] Capabilities: [f8] Power Management version 2After following their links, I got a copy of the latest redhat binary (rpm), because compiling requires full kernel sources (and sounds a pain). Here is a local copy of 8.22a5
I ran the install
[root@tiger modem]# rpm -ivh ltmodem-kv_2.4.18_5-8.22a5-1.i686.rpmWhich didn't work because I had already set /dev/modem to /dev/ttyS2. So after noting this down I did what it recommended:
[snip snip] The modem symbolic link is: /dev/modem -> /dev/ttyS2 This will conflict with support for the Lucent modem. Please : rm -f /dev/modem and assign another symbolic link to /dev/ttyS2, such as: ln -s /dev/ttyS2 /dev/modem2 Then rerun: /var/tmp/rpm-tmp.91735 Aborting on this trial. error: execution of %post scriptlet from ltmodem-kv_2.4.18_5-8.22a5-1 failed, exit status 1 [root@tiger modem]# rm -f /dev/modem [root@tiger modem]# /var/tmp/rpm-tmp.91735 bash: /var/tmp/rpm-tmp.91735: No such file or directory [root@tiger modem]# rpm -qa | grep modem ltmodem-kv_2.4.18_5-8.22a5-1 [root@tiger modem]# rpm --erase ltmodem-kv_2.4.18_5-8.22a5-1 Lucent DSP modem device node support removed. Lucent DSP modem support lines are not present in /etc/modules.conf Exiting error: execution of %preun scriptlet from ltmodem-kv_2.4.18_5-8.22a5-1 failed, exit status 1
Notes
Mon Mar 17 19:34:26 EST 2003 Something recently has caused my modem to suck big time. I believe it was correlated with when I installed all the lastest RPM's. Possibly the new kernel? I have no idea. I removed Init5 from my config above and that appears to have helped, but it's still not as fast as my winmodem in win2000.
Links
Last Change: Monday, 10-Jan-2005 07:41:28 EST
Disclaimer
The information provided within these pages is provided AS IS, and without any
warranty. Following these directions may (but not limited to)
crash your computer, delete all the information on your hard disk, open up security holes or cause your house to burn down.
I made these pages to provide some information about the setup that I have done,
but I did not proofread it for correctness, and in most cases did not test it.
There are commands in these pages that would definately delete or corrupt all
the data on your computer (especially the dualboot section). In fact it happened
to me....
So you are on your own!