Quote from paparplate9 post:
"... From some googling, if you are a ham & run echolink, it may be interfering..."
Yes, I am a ham. But I do not run echolink.
Announcement
Collapse
No announcement yet.
Stealth Wimax driver drvxi314.ko?
Collapse
This topic is closed.
X
X
-
Thanks. And I agree with your remark about all the other stuff I am chasing.
That's is one of my downfalls. I get to work on the issue, find some interesting stuff related (or not) to it and go to work on the unscheduled stuff. Soon after I am lost, I guess.
I will follow your suggestions tomorrow.
Just attempted to use the U600 in XP. It does no longer detect it!!
- Top
- Bottom
Leave a comment:
-
Your socket bind failure could mean one of two things:Originally posted by PJJ View Post
1. you already have another wimaxd process running
2. based on the code, it is trying to bind to 127.0.0.1:5200. Make sure "sudo netstat -anp|grep :5200" does not have any results (prior to running wimaxd).
It looks like if the bind fails, you can forget about doing anything else as it does not attempt to open the device.
Also you can forget about ipv6 or ipv4 or running dhclient prior to connecting to a base station....none of that matters until that point.
Don't worry about 169.254.x.x either, this is your link-local IP which will always be there and has nothing to do with the U600.
And the stuff you see in picocom looks like the stuff the NetworkManager does once it detects a modem on the system...trying to query and/or initialize it.
Just focus on making sure dmesg doesn't give any bad output once you modprobe drxvi314, and that you only have one wimaxd running and no other application listening on port 5200. From some googling, if you are a ham & run echolink, it may be interfering. All your other stuff you're chasing I don't feel leads you to getting the U600 working.
- Top
- Bottom
Leave a comment:
-
Thank you, paperplate9.
I just pasted a bunch of other stuff at pastebin. Going in circles. I desperately need some input from outside.
Therefore I will carefully look at and study your remarks and suggestions.
It appears to me that something is wrong with my driver modules. They are shown in the correct places - but I often get the 'file not found' or 'file does not exist' message even when I am looking at it.
Also always have problems recompiling modules. Many error messages. It is making my head spin.
On the positive side: dmesg does some work and gives results similar to that you show. It also definitely shows 'usbbcm' as driver. Just as in your message.
I will get back in detail.
Thank you again for your input.
- Top
- Bottom
Leave a comment:
-
- Top
- Bottom
Leave a comment:
-
As mentioned, the bcm_wimax module never worked for me, so you're on your own with that.
If wimaxd isn't opening the device, points to the module not being loaded or not finding the device. wimaxd's CM_Server_Debug.log file was in a 'Trying to open device' loop only until I modprobe'd drxvi314. What is your dmesg output once you modprobe or insmod drxvi314?
Mine is listed below at the point of 'modprobe drxvi314':
Code:[ 8993.080433] usbbcm_device_probe:subtype[1] = 0x000000ff [ 8993.080447] [ 8993.080453] usbbcm_device_probe:subtype[2] = 0x00000000 [ 8993.080458] [ 8993.080463] usbbcm_device_probe:subtype[4] = 0x00000000 [ 8993.080468] [ 8993.080473] usbbcm_device_probe:subtype[8] = 0x00000000 [ 8993.080477] [ 8993.080483] InitAdapter:Initialising Adapter = 0xffff8800550a0000 [ 8993.080556] InitAdapter:Adapter initialised [ 8993.080569] usbbcm_device_probe:psIntfAdapter 0xffff8800cd348000 [ 8993.080577] InterfaceAdapterInit:MODEM IS CONFIGURED TO FULL_SPEED [ 8993.082298] InterfaceAdapterInit:First RDM Chip ID 0xbece3301 [ 8993.082303] [ 8993.082309] InterfaceAdapterInit:Current number of endpoints :6 [ 8993.082313] [ 8993.083607] InterfaceAdapterInit:usb dev registered [ 8993.083804] create_worker_threads:Init Threads... [ 8993.092682] open_firmware_file:Got file descriptor pointer of /lib/firmware/macxvi.cfg! [ 8993.092702] bcm_parse_target_params:Config file /lib/firmware/macxvi.cfg size = 144 bytes [ 8993.092729] beceem_parse_target_struct:AutoSyncup is Disabled [ 8993.092737] [ 8993.092742] beceem_parse_target_struct:Disabling autolink up [ 8993.092749] beceem_parse_target_struct:DDR Setting: 3 [ 8993.092753] [ 8993.092758] beceem_parse_target_struct:Enabling Auto Firmware Download [ 8993.092762] [ 8993.092768] beceem_parse_target_struct:HarqCat5Enable : 0x101 [ 8993.092771] [ 8993.092776] beceem_parse_target_struct:HarqCat5Enable : 0x0 [ 8993.092780] [ 8993.092785] beceem_parse_target_struct:MIPSConfig : 0x0 [ 8993.092788] [ 8993.092793] beceem_parse_target_struct:PMU MODE: 0 [ 8993.092798] beceem_parse_target_struct:bDisableFastFlashWrite:0 [ 8993.092804] beceem_parse_target_struct:uiEEPROMFlag : 0x2 [ 8993.092808] [ 8993.092813] beceem_parse_target_struct:Power Save Mode: 0 [ 8993.092816] [ 8993.092821] doPowerAutoCorrection:PMU selected .... [ 8993.092827] beceem_parse_target_struct:LinkUp Config : 0x3 [ 8993.092831] [ 8993.097435] updateWriteProtectedRegister:Value read from Reg: 0xf000c00 is 0x1f4022 [ 8993.097435] [ 8993.097454] updateWriteProtectedRegister:Register 0xf000c00 restored successfully, with value 0x1f4022 !! [ 8993.097462] [ 8993.097468] updateWriteProtectedRegister:Tried to restore Reg: 0xf000c00, 0 times [ 8993.097468] [ 8993.097477] Bcm_kill_all_URBs:Cancelling All Submitted TX Urbs [ 8993.097482] [ 8993.097501] Bcm_kill_all_URBs:Cancelling All submitted Rx Urbs [ 8993.097505] [ 8993.097523] [ 8993.097523] <<<<No of tries in the tx side:0>>> [ 8993.097529] [ 8993.097529] <<<<No of tries in the Rx side:0>>> [ 8993.097536] Bcm_kill_all_URBs:TCB: used- 0 cur-0 [ 8993.097541] [ 8993.097545] Bcm_kill_all_URBs:RCB: used- 0 cur-0 [ 8993.097549] [ 8993.097554] reset_card_proc:Reseting UMA-B [ 8993.097558] [ 8993.097566] ====================> [ 8993.174361] usb 1-4.1: reset full-speed USB device number 19 using ohci_hcd [ 8993.276224] Do Post chip reset setting here if it is requiredddr_init:Register Count is =48 [ 8993.599870] [ 8993.723761] InitCardAndDownloadFirmware:CFG file downloaded [ 8993.811692] [ 8993.811692] /usr/src/USB_350/Source/Driver/Network/OSAL/Linux/usb/Common/nvm.c:ReadMacAddressFromNVM:441:Buffer dump of size 0x6 in the HEX: [ 8993.811710] 12 34 56 78 9A BC [ 8993.811727] register_networkdev:Registering netdevice notifier [ 8993.811732] [ 8993.811745] register_networkdev:BCM Notifier got Registered [ 8993.812253] bcm_notify_event:Register RefCount: 7 [ 8993.812259] [ 8993.812412] register_networkdev:Beceem Network device name is eth2! [ 8994.560057] ReadLEDInformationFromEEPROM:GPIO's bit map correspond to LED :0xA000 [ 8994.779868] ReadLEDInformationFromEEPROM:SPIO's bit map correspond to LED :0x0 [ 8994.783907] open_firmware_file:Got file descriptor pointer of /lib/firmware/macxvi350.bin! [ 8994.783917] BcmFileDownload:Opened file is = /lib/firmware/macxvi350.bin and length =0x2039a8 to be downloaded at =0xbfc00000 [ 8994.783925] BcmFileDownload:download start 13f1be7e2e3 [ 8999.139253] InterfaceFileDownload:Got end of file! [ 9003.261792] InterfaceFileReadbackFromChip:Got end of file! [ 9003.261826] BcmFileDownload:file download done at 13f1be80408 [ 9003.261833] InitCardAndDownloadFirmware:BIN file downloaded [ 9003.275867] device_run:Sending first interrupt URB down...... [ 9003.277961] device_run:Got the mailbox interrupt ...Registering control interface... [ 9003.277961] [ 9003.278232] register_control_device_interface:Got Major No: 251 [ 9003.281846] usbbcm_device_probe:Enabling USB Auto-Suspend [ 9003.281859] [ 9003.281990] usbcore: registered new interface driver usbbcm
In wimaxd.conf,Originally posted by PJJ View PostOne 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.
TLSDevicePrivateKeyFileName should be unset or commented out
TLSDevicePrivateKeyPassword should be your 6-character hwaddr/mac address
FirmwareRSAPrivateKeyEncrypt should be 'yes'
FirmwarePrivateKeyBits should be 2048.
The private key does not leave the U600, which is why FirmwareRSAPrivateKeyEncrypt is set to yes. All that is necessary is to supply the U600 with the PrivateKeyPassword (your MAC address). This was the part that took the longest for me...which took a lot of trial & error of modifying wimaxd.conf literally hundreds of times. So I can only really comment on what worked for me (the information I listed above). You can, however, set TLSDevicePrivateKeyFileName to 'DeviceMemSlot2' in which wimaxd will pull the key off, but on my system, openssl couldn't figure out how to process the private key file (appropriate engine/etc..).
Once I got the above method working, I did not continue with other approaches.
If wimaxd is still telling you device not present, make sure your module is being loaded & initializing the U600 at startup.Last edited by paperplate9; Aug 24, 2013, 10:33 AM.
- Top
- Bottom
Leave a comment:
-
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.
- Top
- Bottom
Leave a comment:
-
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.
- Top
- Bottom
Leave a comment:
-
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.
- Top
- Bottom
Leave a comment:
-
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!!
- Top
- Bottom
Leave a comment:
-
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
- Top
- Bottom
Leave a comment:
-
Originally posted by PJJ View PostPart 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.
- Top
- Bottom
Leave a comment:
-
Wimax driver drxvi314.ko for Kubuntu kernel 3.11.0-1-generic
Part III of the saga of the stealth wimax driver is now posted:Originally posted by PJJ View PostI 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
http://pastebin.ubuntu.com/5971379/
and
http://pastebin.com/q6mtiVxf.
- Top
- Bottom
Leave a comment:
-
Thank you for your contact and reply, paperplate9.Originally posted by paperplate9 View PostDid 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.
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.
- Top
- Bottom
Leave a comment:
-
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.Originally posted by PJJ View PostInstead 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"
- Top
- Bottom
Leave a comment:
Users Viewing This Topic
Collapse
There are 0 users viewing this topic.
Leave a comment: