Announcement

Collapse
No announcement yet.

Stealth Wimax driver drvxi314.ko?

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    #16
    http://pastebin.ubuntu.com/5941235/

    re-post at pastebin.ubuntu.

    There is an identical post at both locations.
    Recompiling bcm_wimax driver module to kernel 13.04/ 3.8.0-27-generic using data from 3.0 kernel.

    Next up:
    Another attempt at creating the Linux version of the Windows driver drxvi314.ko by following instructions of either SprintDeveloperPack-6.1.22 or the older version 1.1.

    Will post result at same locations.
    Last edited by PJJ; Aug 03, 2013, 12:48 PM. Reason: added text.

    Comment


      #17
      I posted a record of my efforts to compile bcm_wimax to linux kernel 3.8.0-26 at ubuntu.pastebin and the generic pastebin,com

      Today I posted PART II of my efforts.

      The post is located at:

      http://pastebin.ubuntu.com/5952476/
      Part II only.

      The combined post (Part I and Part II) is at:

      http://pastebin.com/XMs1UHch

      Comment


        #18
        If I'm reading part 2 correctly, it appears that you've got this thing working now?

        Comment


          #19
          Yes, I believe so. But since I do not have wimax coverage here right now, I can no be sure.
          But all the expected responses are given and a connection attempt was made.

          I did not yet re-compile the driver drxvi314 because I found a previously compiled module of it that was compiled to kernel 3.8.0.
          It should work, and did as I hope, on all 3.8.0 upgrades.

          I will compile the drxvi314 module to kernel 3.10.0-?? as soon as I find time.
          Will post the results in the hope that this might save someone else a lot of time. Wimax drive problems are quite common for the Franklin U600 dual modem.

          Comment


            #20
            Yes, but it applies only toKubuntu 13.04. I have not had time yet to compile the drxvi314.ko driver module to 13.10 (3.10.0).

            Instead I found the error message at the end of my aborted compilation process. It reads as follows:

            "home/pjj/U600/Sprint4GDeveloperPack-1.1/CSCM/bin_pc_linux/bin -Wl,-rpath,/lib -lrt -lxvi020 -leap_supplicant -lpthread
            /usr/bin/ld: cannot find -leap_supplicant
            collect2: error: ld returned 1 exit status
            make: *** [wimaxd] Error 1"

            No file wimaxd.conf and thus no wimax connection for 13.10.

            I will paste the result of my efforts to the pastebins again.

            Comment


              #21
              Hello PJJ, I'm the guy from Ubuntu forums who got the 4g mode of U600 working on Ubuntu 12.10 (http://ubuntuforums.org/showthread.php?t=2078478). I did receive your PM but soon after, of course you know the forums were hacked & couldn't respond. Don't feel like making an Ubuntu One account just for a forum.

              As I mentioned in my thread, bcm_wimax didn't work for me no matter what I did. Only drxvi314 did. According to your Part II pastebin, it looks like things should work once you are in an area of good coverage.

              I've since reinstalled Ubuntu so I'll have to do this process all over again, so let me get my environment going again so I can follow along. Subscribed.
              Last edited by paperplate9; Aug 09, 2013, 08:32 AM. Reason: corrected ubuntu version

              Comment


                #22
                Originally posted by PJJ View Post
                Instead I found the error message at the end of my aborted compilation process. It reads as follows:

                "home/pjj/U600/Sprint4GDeveloperPack-1.1/CSCM/bin_pc_linux/bin -Wl,-rpath,/lib -lrt -lxvi020 -leap_supplicant -lpthread
                /usr/bin/ld: cannot find -leap_supplicant
                collect2: error: ld returned 1 exit status
                make: *** [wimaxd] Error 1"
                Did your wpa_supplicant directory 'make' successfully? The build.sh script (Sprint4gDevPack/USB_350/Source/CSCM/build.sh) should make wpa_supplicant and produce libeap_supplicant.so.

                Comment


                  #23
                  Originally posted by paperplate9 View Post
                  Did your wpa_supplicant directory 'make' successfully? The build.sh script (Sprint4gDevPack/USB_350/Source/CSCM/build.sh) should make wpa_supplicant and produce libeap_supplicant.so.
                  Thank you for your contact and reply, paperplate9.
                  Your published instructions allowed me to overcome the mystery of why U600 is not automatically detected upon insertion. I wish SprintDeveloperPack would mention that instead of promising automatic detection.

                  And yes, I am also convinced that a connection should now be possible. I just have not tried hard enough!

                  Did you ever attempt to use Network Manager (comes with Kubuntu) to establish a connection?
                  Whenever my modem is detected, the correct driver drxvi314.ko is working and I have an ethernet connection eth1, NM presents a second 'wired ethernet connection' setup screen. The third sub-screen is the critical one in my opinion.

                  It presents data fields to setup an 802.1x authentication procedure.
                  Asking for user name, user certificate, CA certificate, private key and private key password. Also looking for server IDs to connect to. I am convinced that if all fields are completed correctly, NM should establish a wimax connection automatically whenever a modem and a wimax signal is available.

                  Finally, no my wpa_supplicant directory did NOT complete successfully. It gave the above error. I have not yet attempted to correct it. Please note that this error occurred with my kernel 3.10.0 in a partition separate from the successful connection (3.8.0 kernel).
                  I know it is confusing because I do not take care to mention this all the time.
                  I will recompile the wpa_supplicant section for 3.10.0 as soon as I find time.

                  Did you find my notes posted on ubuntu.pastebin.com and pastebin.com?
                  They document my efforts step by step. I will also post my notes for the recompilation on 3.10.0 and so on.

                  Judging by the access to your post in the other forum and to my stuff here and on pastebin, I hold that getting a U600 to work successfully on Virgin Mobile and Sprint is of great interest to many a frustrated owner of such a modem.

                  PS: In kernel 3.10.0 (Kubuntu 13.10) the modem does not automatically flip though the correct 3G driver is loaded and modeswitch properly installed. Using files identical to those in 13.04.
                  Need to switch it manually every time.
                  Last edited by PJJ; Aug 09, 2013, 12:11 PM. Reason: typos

                  Comment


                    #24
                    Wimax driver drxvi314.ko for Kubuntu kernel 3.11.0-1-generic

                    Originally posted by PJJ View Post
                    I posted a record of my efforts to compile bcm_wimax to linux kernel 3.8.0-26 at ubuntu.pastebin and the generic pastebin,com

                    . . .
                    The combined post (Part I and Part II) is at:

                    http://pastebin.com/XMs1UHch
                    Part III of the saga of the stealth wimax driver is now posted:

                    http://pastebin.ubuntu.com/5971379/
                    and

                    http://pastebin.com/q6mtiVxf.

                    Comment


                      #25
                      Originally posted by PJJ View Post
                      Part III of the saga of the stealth wimax driver is now posted:

                      http://pastebin.ubuntu.com/5971379/
                      and

                      http://pastebin.com/q6mtiVxf.

                      From your logs above, it looks like your wpa_supplicant library (libeap_supplicant) didn't build because you don't have the openssl headers (there's a compilation error on the "#include <openssl/engine.h>"). As a result your libengine_beceem.so doesn't get built either....you will have a problem once it comes time to authenticate against a Wimax base station as it will be looking for that library. On my Ubuntu 12.10 box, 'dpkg -S /usr/include/openssl/engine.h' reveals that package libssl-dev owns the file, so you should install libssl-dev.

                      Also, I never attempted NetworkManager integration. If you could get that working, that would be good. I followed linux early on when it was more of a command-line OS that could also do X11, took a break, and then got back into it & am now lost in all the GUI-ness. However, keep in mind that the private key never leaves the U600. (Edit: However, there was one time where I setup wimaxd.conf to pull the certificates from the device, attached to the process under gdb, and then wrote the memory dump to a file (of the certificate data). So you can pull them off...but just a little bit of work) Since wimaxd does have wpa_supplicant embeded, maybe it can be integrated to work with the NetworkManager.

                      One thing I will say is that NetworkManager sometimes interferes when the U600 is first mode-switched to the (3G) modem. It appears it recognizes a modem has been plugged in & it starts throwing AT commands at it trying to query it & such. So I usually kill/disable NetworkManager (as personal preference).

                      It's good that you are documenting this step by step...I usually hack at stuff til it works & then try to remember what I did!

                      The U600 does make for a decent 4G solution as long as you have coverage. And my download speeds sometimes exceeded my 3.0mb/s wired AT&T connection. However, one thing to note is that I noticed the device would inject a <script> tag with an href of 1.2.3.4/something.js when on a clear http site. noscript prevented it, but I also threw some iptables rules to fully block 1.2.3.4 from being accessed.

                      Comment


                        #26
                        Glad to hear from you, paperplate9.
                        Yes, the wpa_supplicant library did not build correctly in my first attempt based on Minhazul instructional steps. Realizing that I wnet over to the instructions from Matthew M. (published on pastebin) and started the process in about the middle because the driver drxvi314.ko had built and was installed at the correct place. Have not checked on wimaxd.conf yet, but it does not matter because I will replace the 'new' version (if any) with my modified wimaxd.conf based on your data.

                        To make a long story short: As you can see further down in my pastebin text, after re-compiling everything carefully I ended up with the four "Success" notices.

                        "Beceem CM build Summary
                        Building EAP supplicant libraries SUCCESS
                        Building Beceem cryptographic engine SUCCESS
                        Building Client SUCCESS
                        Building Server SUCCESS"

                        I presume it means that I have the prerequisites for a connection.

                        Before tackling the Network Manager simplified wimax connection, I will follow the conventional way of connecting that is described in a Russian instruction and by other authors. It's the path you took as well.
                        Once that works, we can revisit the Network Manager.


                        One question: You mention 'private key'.
                        I can only find "TLSPrivateKey. . ." in various incarnations in the wimaxd.conf file. The closest I can come is:

                        #TLSDevicePrivateKeyFileName /lib/firmware/device_private_key.pem
                        I will have to look at the Russian instructions to see how they get the private key.

                        NM manager authentication does use TLS and offers the choice of using system CA certificates.
                        Alternative authentication protocols offered are:
                        LEAP
                        Protected EAP (PEAP)
                        and
                        Tunneled TLS.

                        LEAP would be my dream because it asks only for username and pasword! Too good to be true.

                        But I am getting ahead of myself. Back to the true and proven!

                        Finally, I am documenting my steps because I have a tendency to just execute them without writing them down - and then to forget how I got to the end result!
                        This is better because I can trace my steps.

                        PS:
                        NM also offers to use CA certificates

                        Comment


                          #27
                          Oh, I forgot.
                          openssl is installed in 3.8.0-27-generic.

                          The compilation reports I put into my latest pastebin are for 3.11.1 - ?-generic.

                          I always forget to define the kernel version I am working with.
                          I have 13.04 in one partition and 13.10 in another.
                          13.04/3.8.0-27-generic is the one that attempted to connect to a base station.

                          I am ready with 13.10 as well now. Have not had the guts to test!!

                          Comment


                            #28
                            Just a brief report on the latest developments in the ongoing saga of drxvi314.ko Wimax driver for Kubuntu:

                            After several successful attempts to execute the "search" command in wimaxc -i I am now back to the maddening message

                            "The device is NOT present"

                            While it is attached, powered on, shown in ifconfig -a and so on. The error message was first erratic but now it is steady.

                            I noticed that I get only the IPv6 inet address. The conversions to IPv4 does not produce acceptable results or does not work at all.

                            dhcp hangs.
                            dhclient also hangs.

                            After much googling and reading I may have found the reason. I am preparing another pastebin post that will explain.

                            I keep on posting here and on pastebin in the hope that this may eventually help other users to set up a wimax connection or someone who has done so successfully can contribute information that allows me and others a much needed break.

                            Comment


                              #29
                              Here is the latest in the ongoing saga of Franklin U600 wimax modem for Kubuntu/linux:

                              I had several successful implementations of the driver but could not find a wimax base station at the time. Meanwhile things have taken a turn to the worse. I am back to the dreaded "Device NOT present" error message. this is true for both drxvi314.ko and the mative linux driver bcm_wimax.
                              Today I used bcm_wimax as the driver of the day!

                              Result of today's efforts:

                              wimaxc -i:

                              wimaxc -i
                              Beceem CM Server Version 1.1.7.0

                              > search
                              Beceem WiMAX device is NOT present
                              > ^C


                              wimaxd -D -c /etc/wimaxd.conf:

                              wimaxd -D -c /etc/wimaxd.conf
                              ********** CSCM Server Started ********** 08/23/13 11:47:27

                              Processing configuration file
                              =============================
                              Reading CM Server options file '/etc/wimaxd.conf'


                              Option Values In Effect
                              =======================


                              This is then followed by the contents of my wimaxd file.

                              Result:

                              Message queue initialized.
                              Process messages thread started successfully.
                              Changed state to: Library initialized
                              Timer Periodic Action thread has started.
                              Timer Check Timeouts thread has started.
                              Timer Authentication thread has started.
                              Process Messages thread has started.
                              Changed state to: Waiting for WiMAX adapter ...
                              Trying to open device. . . . . . . . . . .

                              Got connection 1 from 127.0.0.1
                              Wcm connection handling thread launched successfully
                              Socket is 00000006
                              Client socket 00000006 lock Beceem API: SUCCESS (wait = 0 ms)
                              Client socket 00000006 unlock Beceem API: Success
                              trying to open device .............................................


                              0000: 73 65 61 72 63 68 00
                              Executing command 'search'
                              Client socket 00000006 lock Beceem API: SUCCESS (wait = 0 ms)
                              DEBUG: ServerSocketResponse for ID=20 Text chars=34: Beceem WiMAX device is NOT present
                              Client socket 00000006 unlock Beceem API: Success
                              Trying to open device............................................ .......

                              Connection closed by client.
                              Received 0 bytes:


                              .......

                              Terminating Authentication Timer thread.
                              Timer Authentication thread has finished.
                              Terminating Check Timeouts Timer thread.
                              Terminating Periodic Action Timer thread.
                              Timer Periodic Action thread has finished.

                              Shutting down the Beceem API interface.
                              Terminating Process Messages thread.
                              Process Messages thread has exited
                              Freeing the Options Table.
                              Freeing other structures.
                              Closing EAP supplicant.
                              Closing Beceem WiMAX device.
                              Freeing message queue.



                              I will post more detailed information on pastebin and ubuntu.pastebin.
                              This material will have some processes and commands to improve on the driver installation and setup.
                              I now managed to get IPv4 information on a reliable basis as well as IPv6 data. The wimax connection is again showing up in Network Manager as a wired connection. I had that before but lost it for a while.

                              I guess that something is still not quite right in my wimaxd file. I also am still not certain that I have enough correct data to use the 802.1 authorization screen in Network Manager.

                              PICOCOM, which was running during the test, again gave me a string of digital symbols that I do not understand. The generally look like 25,99 or similar combinations. If anyone knows how to interpret the code, please let me know. It might help me to solve the puzzle.

                              By the way, the results of my tests are almost identical for both drivers drxvi314.ko and bcm_wimax.
                              Last edited by PJJ; Aug 23, 2013, 01:11 PM. Reason: missing data added

                              Comment


                                #30
                                Oh, forgot something again.

                                tested network again. Result for eth1 only:

                                *-network
                                description: Ethernet interface
                                physical id: 2
                                logical name: eth1
                                serial: f4:63:49:07:27:9d
                                capabilities: ethernet physical
                                configuration: autonegotiation=off broadcast=yes driver=beceem driverversion=5.2.45 duplex=full firmware=0.0 ip=192.168.0.1 link=no multicast=yes port=twisted pair

                                bcm_wimax is loaded and recognized.
                                Autonegotiation is off and I do not yet know how to turn it on.
                                Port is another questionable entry. Need to find out whether 'twisted pair' is an actual port and/or what number.

                                Comment

                                Working...
                                X