Unsupported Version
This article applies to an unsupported version of Ubuntu. More info...


Style Cleanup Required
This article does not follow the style standards in the Wiki Guide. More info...

Modems supported by the Smartlink driver

Note: Every time you update the Linux kernel, you're going to have to run through the "Compiling the driver" procedure below again. This is usually the case when you upgrade from one version of Ubuntu (e.g. 5.10 Breezy Badger) to another (e.g. 6.04 Dapper Drake).


  • These are steps you will only have to run through the first time you build this driver, we're just making sure you have all the installed packages you need. Make sure you have followed the sections of this document entitled If compiling from source and Installing GCC 3.4.

Additionally, you will need the packages sl-modem-source sl-modem-daemon, which, unfortunately, may not be present on the CD and may have to be obtained from another machine.

  • Note:

    • There are many rumors on the internet that this slmodem driver may also work with Intel 536ep/537ep modems. These rumors are NOT true.

Compiling the driver

  • Now you can use module-assistant to compile and install the driver:
    1. $ sudo module-assistant auto-install sl-modem

    2. $ sudo depmod -a (this updates the list of available modules)

Getting the modem to work

  • Edit the "SLMODEMD_COUNTRY="-line of the file /etc/default/sl-modem-daemon to include your country. The other lines should be fine as default.

    For the last step, run $ sudo modprobe slamr and $ sudo /etc/init.d/sl-modem-daemon restart and the device /dev/modem should appear. You can now go on configuring your dialup connection. (PS: This driver seems rather finicky, a reboot may help.) When using the dialup network configuration tool, set it to use Tone rather than Pulse dialling (unless you know that your area only supports pulse). Pulse dialling is very rare nowadays and in tests for Feisty, slmodem was not able to pulse dial reliably.

Note about alternative drivers for some slmodems

  • Some slmodems (those using the ALSA modem drivers, in this case) do not need compilation. An example is the winmodem of HP Pavilion zv5120us (which uses snd-atiixp-modem as the modem driver). Refer to your scanModem output if this is the case for you. To make such a modem work, see the section above about "Modems supported by ALSA drivers", or notes just below. This note on linmodems.org explains it:

    From http://archives.linmodems.org/21040

    Slamr has ceased to be the appropriate driver under more current 2.6.n kernels
     If your modem controller is one of these
         PCI  ID       modem controller  name/source     low_level_driver
        =======        ===============    =======         =================
        1002:434d          ATI                            snd-atiixp-modem
        1002:4379          ATI                                 "
        1106:3068          VIA                            snd-via82xx-modem
        10b9:5451          ALI 5451 audio with modem      snd-ali5451-modem
        8086:????           many Intel controllers        snd-intel8x0m
        10de:00d9          Nvidia Corp                          "
        1039:7013          SIS 630                              "
         Others?                                                "

Feisty 7.04 Special Instructions

  • Due to a BUG in Ubuntu Feisty, you may need to follow these instructions to be able to compile the sl modem drivers, in addition to the compiling instructions above. First, check whether the bug is fixed yet. If it is, you can probably ignore this part. Solution below first reported successfull in the comments of this bug. First, attempt Step 1. in the above compiling instructions. In case it won't compile, just choose STOP in the menu and update the slmodem sources before continuing. An example of how to do this - run these commands in the terminal:

    mkdir slmodemtmp
    cd slmodemtmp/
    wget http://linmodems.technion.ac.il/packages/smartlink/slmodem-2.9.11-20070505.tar.gz
    tar -xvf slmodem-2.9.11-20070505.tar.gz
    sudo cp slmodem-2.9.11-20070505/* /usr/src/modules/sl-modem/ -r # Now the sources are updated
    sudo touch /usr/src/linux-headers-`uname -r`/include/linux/config.h # Compile-fix*

    After this, attempt Step 1 again. Hopefully it compiles and installs nicely this time. If it won't work, check http://linmodems.technion.ac.il/packages/smartlink/ for a newer source package and use that one instead. Best of luck! //Motin

    PS Btw when connecting to my dial up internet provider I had some problems with "No carrier found" messages. I am not sure if this is driver related or ISP related but selecting "Setup -> Options -> Ignore terminal strings (stupid mode)" in gnome-ppp solved it for me at least. [*] The Compile-fix was needed for slmodem-2.9.11-20070505 with kernel 2.6.20-16 - it may be unnecessary for other configurations.

Dapper 6.06 Special Instructions

Due to a BUG in Ubuntu Dapper, you may need to follow these instructions, instead of the above module compilation instructions. First, check whether the bug is fixed yet. If it is, you can do the above steps. Steps below were taken from here.

  1. Read this entire document, as the steps below only compliment it and you should have all the preliminaries done as described for the Smartlink modem, but you can omit installing gcc-3.4 as this is not required for Dapper. Basically the sl-modem driver has to be installed first and then the sl-modem-daemon. The daemon in the repositories will work after an installation, but the /dev/ttySL0 will not be rewritten and the symlink to /dev/modem will not exist after a reboot. The new daemon found in the debian repos solve this. There was a mention that the daemon now looks for ungrab-winmodem and if you get an error message refering to this, you may need to install as well.
  2. Download sl-modem-daemon2.9.9d+e-pre2-5.deb and sl-modem_2.9.9d+e-pre2.orig.tar.gz from the debian website http://packages.debian.org/unstable/misc/sl-modem-daemon. I have found that the slmodem-2.9.11-20051101.tar.gz works better in dapper and this can also be downloaded from the linmodem website http://phep2.technion.ac.il/linmodems/packages/smartlink/.

  3. It may also be required that you download and install the ungrab-winmodem from the linmodem website as well.
  4. Copy the sl-modem-daemon file to your local repository and update your Packages.gz file, this will allow you to install with Synaptic etc. Or use your favourite way to install a .deb file.
  5. Copy the sl-modem_2.9.9+e-pre2.orig.tar.gz ( or preferably the slmodem-2.9.11-20051101.tar.gz) file to your Desktop and right click on it and select “Extract here” and a folder wth the same name will be created with the extracted files on your desktop.
  6. Now rename the folder to an easier name such as “slmodem”
  7. Open a terminal and cd in to the slmodem folder
  8. Type make
  9. Type sudo make install
  10. Type sudo modprobe slamr
  11. Type dmesg | grep slamr
  12. Now install sl-modem-daemon2.9.9d+e-pre2-5.deb with Synaptic or in your own favourite way.
  13. Use Kppp to query the modem, if this works you are there!
  14. Edit /etc/default/sl-modem-daemon to change the line SLMODEMD_COUNTRY= USA to i.e SOUTHAFRICA or your country
  15. Type sudo /etc/init.d/sl-modem-daemon restart to restart the daemon.
  16. If you do a “Query modem” in Kppp and you will see that your country has changed.
  17. It seems as if the Smartlink modems with Netodragon chip MDV92XP does not work, but the ND92XPA chip works.

Back to the main wiki

DialupModemHowto/Smartlink (last edited 2017-09-12 16:30:37 by ckimes)