Results 1 to 10 of 38

Thread: Using HTC Diamond as a Rndis modem

Threaded View

  1. #1
    Join Date
    Sep 2006
    Location
    Leeds, UK
    Beans
    126
    Distro
    Ubuntu 9.04 Jaunty Jackalope

    Using HTC Diamond as a Rndis modem

    Hi, after a small amount of investigation I have finally got the HTC Diamond working as a Rndis modem over the USB port.

    What this means is that you can use the Internet connection sharing function of the Diamond to get a computer onto the Internet using the H or G phone data connection.

    Please note that the first steps of this guide will work for any ACTIVESYNC connected HTC phone that has the Connection Sharing (it's in the Connection Manager on other HTC phones)

    Obviously using data on your mobile costs money so be aware of this and make sure you have a package that has reasonable charges.

    finally I have only tested this on an ORANGE HTC Diamond in the UK.

    The reason you have to modify the source is that if you don't the rndis fails with an error like (this is seen in the /var/log/syslog)

    Code:
    [355.215268] rndis_host 5-3:1.0: dev can't take 1558 byte packets (max 1536)

    you need a working internet connection to set this up

    1. Install Pre-requisites
    2. Get the Source
    3. Modify the source (Diamond only)
    4. Compile and make and install
    5. Start the Internet Connection Sharing
    6. Plug in the Phone (USB)


    Once you have done steps 1-4 you will only ever need to do steps 5 & 6 to get re-connected.



    Step 1 - Install Pre-requisites

    open a terminal (use same terminal in next steps)

    Code:
    sudo apt-get install subversion
    Step 2 - Get the Source

    Code:
    svn co http://synce.svn.sourceforge.net/svnroot/synce/trunk/usb-rndis-lite
    cd usb-rndis-lite/
    Step 3 - Modify the source (Diamond only)

    Code:
    gedit rndis_host.c
    on line 524, find this bit

    Code:
           if (tmp < dev->hard_mtu) {
    		dev_err(&intf->dev,
    			"dev can't take %u byte packets (max %u)\n",
    			dev->hard_mtu, tmp);
    		goto fail;
    	}
    change it to this

    Code:
           if (tmp < dev->hard_mtu) {
    		dev_err(&intf->dev,
    			"dev can't take %u byte packets (max %u)\n",
    			dev->hard_mtu, tmp);
    		retval = -EINVAL;  
                    /* goto fail;*/
    	}
    save the file

    Step 4 - Compile and make and install

    Code:
    make
    sudo ./clean.sh
    sudo make install
    Step 5 - Start the Internet Connection Sharing

    On OLD Tytn II's open Comm Manager on your phone and click on the Internet Sharing Now make sure USB is selected and choose connect

    On Diamonds it's a seperate program called Internet Connection Sharing

    Step 6 - Plug in the Phone (USB)

    Plug the phone in, once the Phone has a data connection the Internet connection sharing will say connecting, then connected.

    If this takes a while the dhcp may timeout and you will have to run the following command.

    Code:
    sudo dhclient
    You should then see that you have an ip on the rndis device

    Code:
    ipconfig

    Thanks for this fix goes to
    http://www.solariz.de/blog/91-htc-to...ing-fuer-linux
    Last edited by StevenHarper; October 1st, 2008 at 05:45 PM. Reason: Added thanks

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •