Menu

Main Menu
Talk Get Daily Search

Member's Online

    User Name
    Password

    N900 as a Wifi Hotspot

    Reply
    Page 12 of 20 | Prev | 2   10     11   12   13     14   | Next | Last
    rambo | # 111 | 2010-01-28, 05:28 | Report

    Originally Posted by eber42 View Post
    btw, I can provide with my config/kernel/modules if someone is interested.
    I guess a patch against the .config created by "make rx51_defconfig" would be a good thing, I probably have time to experiment with kernels too on the coming weekend (though I think I'll start with whipping up a simple UI for configuring the GConf values hotspot_backend.py uses, most importantly the connection selector)

    Edit | Forward | Quote | Quick Reply | Thanks

     
    eber42 | # 112 | 2010-01-28, 05:50 | Report

    Good news: stopping iphb daemon (/etc/init.d/iphbd stop) remove the crashing issue. All my morning traffic went through the n900 including this post
    Later, i'll post my kernel & config, and i'll try usb networking to see if it makes a difference.

    Edit | Forward | Quote | Quick Reply | Thanks
    The Following 2 Users Say Thank You to eber42 For This Useful Post:
    jebba, rambo

     
    eber42 | # 113 | 2010-01-28, 20:10 | Report

    I've just uploaded my kernel config, zImage and modules to the cloud, for those who want to try it.

    It's a stock rx51-defconfig kernel with the following additions :
    • Framebuffer (because it's cool, but without the linux logo)
    • Netfilter for NAT
    • UnionFS because my root directory became a bit full - the kernel patch i've used is included
    • Bridging support : seems to be required for bluetooth networking (PAN) when you are on the receiving side

    Unfortunately I didn't add any EXTRAVERSION so you'll have to put the modules in the same place as the existing ones (sorry for this!). And I didn't package it because others in this thread are already making a god job at it.

    BTW the iphbd solution I talked about is only a workaround because it may increase battery drain when it's disabled (I don't know how much), so this should be looked into. The iphb kernel module has been written by Nokia (as stated in the source code header), so maybe that explains why they've never tested it with netfilter.
    In the meantime we could disable it just when we want to use NAT.

    Have fun,

    Edit | Forward | Quote | Quick Reply | Thanks
    The Following 3 Users Say Thank You to eber42 For This Useful Post:
    daperl, kwotski, rambo

     
    kwotski | # 114 | 2010-01-28, 21:31 | Report

    I wonder if anyone could spell out the issues, if any, around using the custom kernels mentioned in this thread and the different Nokia "firmware" versions?

    Personally, I'm still on the 1.0.1 release mainly because I don't want to make an irreversible change on the device when I don't have any immediate problem with the way it works (apart from not having NAT, of course), and I understand that the phone chip firmware gets updated in a way that can't be undone during the upgrade to 1.1.

    I know there are kernel or module components in the different releases, so I'm wondering if there's any requirement to be at a specific Nokia firmware version in order to use a custom kernel like those found here, or if there's any aspect that the firmware version impacts?

    Big thanks to all those working at this, BTW! I hope to try it soon, when I have a better understanding (and a bit of free time.)

    Edit | Forward | Quote | Quick Reply | Thanks

     
    rambo | # 115 | 2010-01-29, 07:11 | Report

    Originally Posted by kwotski View Post
    Personally, I'm still on the 1.0.1 release mainly because I don't want to make an irreversible change on the device when I don't have any immediate problem with the way it works (apart from not having NAT, of course), and I understand that the phone chip firmware gets updated in a way that can't be undone during the upgrade to 1.1.
    I don't know the exact details of the radio (=phone) update but I would guess they're related to the bootloader update that alllows both to be updated OTA. 1.1 also added support for some SIM cards that previously were problematic which is probably among those "non reversible" updates.

    Probably updating a patched "1.1" kernel (and modules) on a device that doesn't have 1.1 applied is not a major problem, and it's anyways possible to patch and compile the earlier kernel too...

    In fact these files are still for the 1.0 firmware, apart from the rebooting-on-traffic issue (which seems to be solved by '/etc/init.d/iphbd stop') it worked fine.

    I already updated to 1.1 but have not yet compiled a (working) NAT capable kernel for it, will try to get it done this weekend.

    Edit | Forward | Quote | Quick Reply | Thanks
    The Following User Says Thank You to rambo For This Useful Post:
    kwotski

     
    rambo | # 116 | 2010-01-29, 16:12 | Report

    Thanks to eber42 figuring out the iphbd workaround we have made a major step forward.

    I figured out why the kernel I compiled earlier would not boot too, it was a simple packaging problem with the modules (no depmod on postinst...), after enabling framebuffer the problem was clear to see.

    I'm now running a "hotspot kernel" on my device and my laptop can browse the web (so far tested only this) via it when NAT is enabled (I use the hotspot_backend.py to setup/teardown NAT, dhcp etc).

    The brave wishing to try it out should read the instructions on the project home page.

    I also compiled iproute and wondershaper (which requires the former) but neither has been tested in any meaningfull way. The "hotspot kernel" should have modules for the QoS stuff wondershaper needs but I'm not sure if wondershaper can automagically load the modules or will it simply suppose it's compiled in...

    ps. kwotski: if you use the hotspot-kernel-modules_2.6.28-20094102.3+0m5_armel.deb package I'm fairly sure you need to run "depmod 2.6.28-hotspot" manually or zImage-2.6.28-hotspot-20094102.3+0m5_armel won't boot.


    edit: minor typo fix

    Edit | Forward | Quote | Quick Reply | Thanks

    Last edited by rambo; 2010-01-29 at 16:17.
    The Following 4 Users Say Thank You to rambo For This Useful Post:
    daperl, iKneaDough, jebba, sjgadsby

     
    rambo | # 117 | 2010-01-29, 16:31 | Report

    The next question is how do we get NAT capable stock kernel or at the very least iphbd module that does not panic with the netfilter (I would think the iphbd is something relatively important)

    edit: eber42: could you contact the iphb module author (see module source file, I don't want to publish the email here) with your core dumps ? maybe the module can be fixed...

    edit: Seems we got slightly more info on possible approach for userspace NAT, I still have no expertise for implementing anything like it but if someone manages to make "userspacenatd" that can be managed from the hotspot_backend.py we're good.

    Edit | Forward | Quote | Quick Reply | Thanks

    Last edited by rambo; 2010-01-29 at 17:02.

     
    Matan | # 118 | 2010-01-29, 17:31 | Report

    The bug in iphb seems to me to be caused by dereferencing tcp or tsk while it is NULL. You can try recompiling iphb.c after adding
    if(!tsk || !tcp){
    flush_keepalives(1);
    return NF_ACCEPT;
    }
    in net_out_hook after tcp=tcp_hdr(skb);

    Edit | Forward | Quote | Quick Reply | Thanks
    The Following 5 Users Say Thank You to Matan For This Useful Post:
    aboaboit, BrettQ, eber42, iKneaDough, jebba

     
    eber42 | # 119 | 2010-01-29, 19:50 | Report

    Matan's modification works perfectly !

    Here's the replacement iphb.ko for my kernel and the patch in diff format.

    btw my kernel was just shown as an example, you should probably use more packaged kernels, like rambo's one once it includes the patch.

    Edit | Forward | Quote | Quick Reply | Thanks

    Last edited by eber42; 2010-01-29 at 20:00. Reason: Typo
    The Following 2 Users Say Thank You to eber42 For This Useful Post:
    iKneaDough, rambo

     
    rambo | # 120 | 2010-01-29, 22:38 | Report

    Originally Posted by eber42 View Post
    Here's the replacement iphb.ko for my kernel and the patch in diff format.
    Great, I'll build patched kernel (well, modules would be enough but dpkg-buildpackage always does everything) when I have slept.

    Started work on the GUI, now you can choose the connection to share via it.

    Edit | Forward | Quote | Quick Reply | Thanks
    The Following 5 Users Say Thank You to rambo For This Useful Post:
    Alan_Peery, iKneaDough, pierro78, rmarcus, sjgadsby

     
    Page 12 of 20 | Prev | 2   10     11   12   13     14   | Next | Last
vBulletin® Version 3.8.8
Normal Logout