Sickboy kernel and 3G USB Modem issue

Discussion in 'Linux' started by Xlater, Mar 11, 2009.

  1. Xlater

    Xlater

    Joined:
    Mar 11, 2009
    Messages:
    6
    Likes Received:
    0
    Hi, I'm Xlater from Italy.

    Using my AAO, I need sometime to be able to connect using my Nokia E61 as a 3G USB Modem.

    Now i have Crunchbang installed with the default kernel (2.6.27-9-generic) and everything works fine. When i connect my E61 with the USB cable, the system recognize it and i can start the mobile broadband with one clic.

    I would like to upgrade to the Sickboy kernel, optimized for AAO, but when i install it the system doesn't recognize the USB modem anymore, and there's no way to connecto to mobile Broadband. I've tried it several time, and always had to switch back to the generic kernel.

    Is there a workaround to solve this problem, eg. loading some modules more with the Sickboy kernel?

    There's something about Sickboy kernel and 3G USB Modem in the discussion about Sickboy Kernel. But I'm not sure that those solutions suit for my case, and anyway I think could be good to have a single thread devoted to this argument. Quite difficult to navigate between 290 messages... :)

    Thanks.
     
    Xlater, Mar 11, 2009
    #1
  2. Xlater

    Wilb

    Joined:
    Aug 26, 2008
    Messages:
    2
    Likes Received:
    0
    You need to compile the cdc-acm kernel module as its not in sickboys kernel.
     
    Wilb, Mar 11, 2009
    #2
  3. Xlater

    Xlater

    Joined:
    Mar 11, 2009
    Messages:
    6
    Likes Received:
    0
    Thanks. It means that i should recompile the kernel with sickboy config, but adding "USB Modem (CDC ACM) support"?
    I'm not so expert in linux. Never compiled a kernel before. But there's always a first time...
     
    Xlater, Mar 11, 2009
    #3
  4. Xlater

    Mister-Magoo

    Joined:
    Aug 28, 2008
    Messages:
    8
    Likes Received:
    0
    Location:
    Lyon, France
    Yes, you need only add "USB Modem (CDC ACM) support" at Sickboys kernel config
     
    Mister-Magoo, Mar 12, 2009
    #4
  5. Xlater

    Xlater

    Joined:
    Mar 11, 2009
    Messages:
    6
    Likes Received:
    0
    Thanks. It sounds easy, but... :?

    Is there a way to have CDC ACM support as a loadable module? This should require only the cdc-acm module to be compiled, and not the whole kernel. Is it right?
    I'm searching for some "how-to" about it, but it's not so simple. Most of kernel and modules "how-to" are written with the user with a PC and a standard Linux distro in mind, not for an AAO 110L user with a custom kernel on it...

    Even if I choose to recompile the whole kernel, i guess i should do it on a perferoming machine, not directly on the AAO. Afaik kernel compile is quite a processor intensive task. Is it right?

    Any advice?
     
    Xlater, Mar 12, 2009
    #5
  6. Xlater

    Wilb

    Joined:
    Aug 26, 2008
    Messages:
    2
    Likes Received:
    0
    If you're running the same version of the kernel as me then mine will work, see attached.
    Copy it to /lib/modules/2.6.28sickboy-kuki/kernel/drivers/usb/ and run "sudo depmod -a" - next time you plug in your phone give it a few seconds and type "dmesg | tail". If you see "cdc_acm: v0.26:USB Abstract Control Model driver for USB modems and ISDN adapters" then you know its working.
     
    Wilb, Mar 12, 2009
    #6
  7. Xlater

    ux50

    Joined:
    Sep 26, 2008
    Messages:
    18
    Likes Received:
    0
    Thanks so much, Wilb and Xlater :p

    Yes, your cdc-acm.ko works. I am using P1i via USB with GnomePPP.
    I couldn't believe it. It worked like a charm indeed. :D

    Again thank you so much.
    You are my life saver. :mrgreen:

    Cheers,
     
    ux50, Mar 12, 2009
    #7
  8. Xlater

    Xlater

    Joined:
    Mar 11, 2009
    Messages:
    6
    Likes Received:
    0
    When I run "sudo depmod -a" I get a "WARNING /lib/modules... usb/class/cdc-acm.ko is not an elf object" and when i connect my Nokia E61 to the USB port Network Manager doesn't yet see it as a modem. In dmesg I've something about USB 3-1, but nothing about cdc_acm. :cry:

    I'm going on with a double boot: Sickboy kernel by default and generic kernel when I know I'm going to connect on mobile broadband. But i'd rather solve this cdc-acm issue, if i knew where to put my hands on... :?

    Thanks!
     
    Xlater, Mar 14, 2009
    #8
  9. Xlater

    spinnekopje

    Joined:
    Aug 13, 2008
    Messages:
    83
    Likes Received:
    0
    You only need to have the different kernels installed to use them, so besides the kernel everything remains the same. If I were you I would try to compile a kernel yourself. Get the kernel source, make oldconfig when booted from sickboys kernel and add the usb modem support and compile it. It isn't that difficult and there are enough tutorials online. I did the same to get the kernel I'm running now.
     
    spinnekopje, Mar 15, 2009
    #9
  10. Xlater

    Xlater

    Joined:
    Mar 11, 2009
    Messages:
    6
    Likes Received:
    0
    I'm trying to follow your advice. But when I do "sudo apt-get install kernel-source" it says "Package kernel-sorce not available but is referred to by another package. This may mean that package is missing, has been obsoleted, or is only available from another source"

    Surely I don't know which source sickboy compiled. Is 2.6.28 something, but which? Plenty of tutorial out there for first timers like me. But they all give that I have a standard distro with standard kernel, not a custom one...
    I'm sure it's not so difficult, but I have these little pitfalls to avoid...

    Thanks a lot for your help!
     
    Xlater, Mar 15, 2009
    #10
  11. Xlater

    lePlaid

    Joined:
    Mar 22, 2009
    Messages:
    4
    Likes Received:
    0
    Hello, I don't know if this answers your question, but this is what I did to make use of my mobile phone with the latest sickboy kernel.

    Like suggested previously in this thread, there is no need to recompile the whole kernel, the cdc-acm module is enogh.

    First I'm using the updated verison of the Sickb0y kernel, found here http://www.ug.it.usyd.edu.au/~scole/releases/
    This is a 2.6.29 version of the kernel, so this will be the kernel version I'll be getting from http://kernel.org if you are using the older 2.6.28 sickb0y kernel, make sure to get a 2.26.28 kernel from kernel.org.

    Now get the right kernel-version from http://www.kernel.org/pub/linux/kernel/v2.6/ and if you are getting the 2.6.29 version make sure to download the .gz file, I had trouble using the .bz (it was corrupted).

    extract the kernel archive
    Code:
    tar -xzvf linux-2.6.29.4.tar.gz
    make a direcory for the kernel module
    Code:
    mkdir cdc-acm
    copy the cdc-acm source code to this directory
    Code:
    cp linux-2.6.29.4/drivers/usb/class/cdc-acm.* cdc-acm/
    To compile the module, use a make file. Since this is a module included in the kernel, we must write our own make file.
    Code:
    cd cdc-acm
    vim Makefile
    Of course you don't have to use vim, use whatever texteditor you like, now copy this text into the make file
    Now make sure you have the kernel-headers installed, you can get them from http://www.ug.it.usyd.edu.au/~scole/releases/
    Also since we don't have a build directory in /lib/modules/2.6.29.1.20090414.sickboy/ we must make a symlink to /usr/src/linux-headers-2.6.29.1.20090414.sickboy/
    Code:
    sudo ln -s /usr/src/linux-headers-2.6.29.1.20090414.sickboy/ /lib/modules/2.6.29.1.20090414.sickboy/build
    So now we can compile the module
    Code:
    make
    When the compiling finnished, we can test if the module is working
    Code:
    sudo insmod cdc-acm.ko 
    Check if it was loaded
    Code:
    lsmod | grep cdc
    If it is loaded plugin your phone/usb-modem and check that it is wokring
    Code:
    dmesg
    and look for lines saying something like
    If it is ok, you can connect using whatever program you like, I'm using nm-applet which is really easy, just click the applet icon and create a new mobile broadband connection.

    To make sure the module is loaded everytime we boot the computer, copy the module to the right place
    Code:
    sudo cp cdc-acm.ko /lib/modules/2.6.29.1.20090414.sickboy/kernel/drivers/usb/
    And make it load at every boot
    Code:
    sudo vim /etc/modules
    and add the line cdc-acm at the end of the file

    Now check that the module is found by the system. First remove the module from the kernel
    Code:
    sudo rmmod hello
    Then
    Code:
    sudo depmod -a
    sudo modprobe cdc-acm
    If all went well, reboot and check that the module is loaded. That's it, now everything should be fine and you should be able to use your aspire one on the road. Perfect as the summer is approaching! (make sure to get a good mobile deal, since the summer of 2009 is the "summer of sharing ") :)

    And yes, this guide was inspired by the guides
    http://www.cyberciti.biz/tips/compiling ... odule.html
    http://www.linux-usb.org/USB-guide/x332.html
     
    lePlaid, May 22, 2009
    #11
  12. Xlater

    hoki_goujons

    Joined:
    Aug 15, 2009
    Messages:
    9
    Likes Received:
    0
    lePlaid - thanks for your excellent instructions. I'm trying to do this under Sickboy 2.6.29.1 but when I come to make the module, I get 'Nothing to be done for 'all'. Any ideas?
     
    hoki_goujons, Aug 23, 2009
    #12
  13. Xlater

    lotus49

    Joined:
    Jun 29, 2008
    Messages:
    343
    Likes Received:
    0
    Location:
    Yorkshire
    I resorted to compiling my own kernel for this. If you are considering doing the same and you are not experienced at compiling a Linux kernel, I strongly recommend using kernelcheck (kcheck.sourceforge.net). This handy utility (written by the author of the Ubuntu Master Kernel thread) does almost all of it for you from downloading the latest source right through to installing your shiny new kernel. All the use has to do is configure the kernel (very easy if all you are doing is changing one or two options) and click next a few times.

    The alternative is not pretty unless you know what you are doing.
     
    lotus49, Aug 24, 2009
    #13
  14. Xlater

    lePlaid

    Joined:
    Mar 22, 2009
    Messages:
    4
    Likes Received:
    0
    @hoki_goujons, Hello, right now I do not know exactly what it can be that is wrong. Make sure you have the Kernel headers matching your kernel verison. There is a deb-file that you can download from the same place as the kernel itself. Then make sure that you have the symlink in place, the one pointing to /lib/modules/2.6.29.1.20090414.sickboy/build

    Hope this works, wishes Le Plaid.
     
    lePlaid, Aug 27, 2009
    #14
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.