LTE on RCC-VE 2440 with Sierra Wireless MC7354
-
I purchased a Sierra Wireless MC7354 after reading that support had been added in 2.2.3. I've been unsuccessful in any attempts to get it to work. I will try to put as much info as I can based on the searching that I've already done.
I'm running pfSense 2.2.4.
I am attempting to use a T-Mobile card in the SIM slot on the 2440 board under where the mini PCIe card mounts.Commands and results:
–----------------------------------------------------------
dmesg | grep ugen
ugen0.1: <intel>at usbus0
ugen0.2: <vendor 0x8087="">at usbus0
ugen0.3: <sierra wireless,="" incorporated="">at usbus0
ugen0.4: <generic>at usbus0usbconfig -u 0 -a 3 dump_device_desc
ugen0.3: <mc7354 sierra="" wireless,="" incorporated="">at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)
bLength = 0x0012
bDescriptorType = 0x0001
bcdUSB = 0x0200
bDeviceClass = 0x0000
bDeviceSubClass = 0x0000
bDeviceProtocol = 0x0000
bMaxPacketSize0 = 0x0040
idVendor = 0x1199
idProduct = 0x68c0
bcdDevice = 0x0006
iManufacturer = 0x0001 <sierra wireless,="" incorporated="">iProduct = 0x0002 <mc7354>iSerialNumber = 0x0003 <retrieving string="" failed="">bNumConfigurations = 0x0001/dev/usb: ls -al /dev/cua*
crw-rw---- 1 uucp dialer 0x2c Aug 31 23:47 /dev/cuau0
crw-rw---- 1 uucp dialer 0x2d Aug 31 23:40 /dev/cuau0.init
crw-rw---- 1 uucp dialer 0x2e Aug 31 23:40 /dev/cuau0.lock
crw-rw---- 1 uucp dialer 0x32 Aug 31 23:40 /dev/cuau1
crw-rw---- 1 uucp dialer 0x33 Aug 31 23:40 /dev/cuau1.init
crw-rw---- 1 uucp dialer 0x34 Aug 31 23:40 /dev/cuau1.lockIt is apparently significant that the 2nd 'u' in 'cuau0' is lower case. What I have read is:
The capital U is significant.
/dev/cuau0 is the serial port.
/dev/cuaU0 is a USB serial adapter.Source: https://forums.freebsd.org/threads/ftdi-kernel-modules-for-freebsd-compiling-a-linux-kernel-module.21577/
From what I can gather this means that it isn't loading properly but I am out of my depth.
Any input I can get is appreciated.
Edit:
Forgot to include the PPP log.Aug 31 23:47:36 ppp: Multi-link PPP daemon for FreeBSD
Aug 31 23:47:36 ppp:
Aug 31 23:47:36 ppp: process 1678 started, version 5.7 (root@pfSense_RELENG_2_2_i386_i386-pfSense_RELENG_2_2-job-01 00:09 9-Jun-2015)
Aug 31 23:47:36 ppp: web: web is not running
Aug 31 23:47:36 ppp: [lan] Bundle: Interface ng5 created
Aug 31 23:47:36 ppp: [lan_link0] Link: OPEN event
Aug 31 23:47:36 ppp: [lan_link0] LCP: Open event
Aug 31 23:47:36 ppp: [lan_link0] LCP: state change Initial –> Starting
Aug 31 23:47:36 ppp: [lan_link0] LCP: LayerStart
Aug 31 23:47:49 ppp: [lan_link0] CHAT: The modem is not responding to "AT" at ModemCmd: label.
Aug 31 23:47:49 ppp: [lan_link0] MODEM: chat script failed</retrieving></mc7354></sierra></mc7354></generic></sierra></vendor></intel> -
I think help is on the way on this. Jeremy from Netgate has got the newer PID's working and I am setting up to test his work….There are different firmwares with different PID's...
Yours has the same PID as some of mine.
idProduct = 0x68c0 -
Actually, Jeremy had this done last weekend. I have been tied up trying to get BeagleBoard Black running with FreeBSD. My knowledge of 'Nix is squat. I actually have printed a DOS to UNIX command cheatsheet. Sad.
I started working on my FreeBSD u3g test rig last night and realized how much easier pfSense makes it connecting with modems. FreeBSD used to have Gnome-PPP and KPPP but they are long gone…
Manual connect stinks...Good Job Jeremy for fixing U3G to work with these newer firmwares. It was more than simply adding PID/VID's. He had to do some driver hacking.. Sierra makes good products but sure do make it hard on the developers. Constantly changing things for no good reason.
-
Jeremy also got the Dell version of this card going. Dell DW5808..
That should be a little cheaper model on ebay.
His work may enable devices from IBM/Lenovo/HP modules too. I have not tested them yet. Still a work in progress. We are gathering PID's. I have 6 to add if they work. Jeremy has 2 already working. pid=6820 and pid=9041 plus the Dell model -
You should see a series of /dev/ttyU0.X devices as well as the /dev/cuaU0.X The "U" is capitalized, and the "X" is the endpoint on the device, it has 4 or 5 endpoints,
I believe the correct enpoint is "2" for the PPP connection, but you are not seeing that in your devices.If the card is being recognized by the kernel you should have a dmesg entry:
u3g0: <sierra 0="" 3="" wireless,="" incorporated="" mc7355,="" class="" 0,="" rev="" 2.00="" 0.06,="" addr="">on usbus0
u3g0: Found 4 ports.I never tested the device on t-mobile, but can't see that that would make a difference unless it changes the PID. Although that PID matches.
I'm not sure if I still have the card to test, but I can look for it.Can you add a uname -a output to the post?</sierra>
-
I found the problem with the 7354 (and also the 7355) not working with pfSense. There was an error where a patch wasn't being applied during build. We'll put up a "test" kernel for download next week for 2.2.4 based systems. Patch will be in 2.2.5 and 2.3 snapshots, but I don't have an eta on those.
-
Thanks to everyone for the info. I'm excited to get this working.
Here is the uname -a output as requested.
FreeBSD NetGate-2440-LTE-Test.some.event 10.1-RELEASE-p15 FreeBSD 10.1-RELEASE-p15 #0 c5ab052(releng/10.1)-dirty: Sat Jul 25 20:25:50 CDT 2015 root
@pfs22-i386-builder:/usr/obj.i386/usr/pfSensesrc/src/sys/pfSense_SMP.10 i386 -
Please try the latest snapshot, from https://snapshots.pfsense.org (2.2.5-Development).
You might want to upgrade from the 32bit image to the 64bit image as well (uname shows you are runing the i386/32 bit system). -
Looks like you got it Jeremy…Was having troubles with FreeBSD as my MC7700 custom PPP.conf did not work and this worked straight up....
I did have to switch the PID to 9041 as this is a MC7354 with 68c0 PID...My MC7355 is on loan..I need to test my Dell module next.
-
Please try the latest snapshot, from https://snapshots.pfsense.org (2.2.5-Development).
You might want to upgrade from the 32bit image to the 64bit image as well (uname shows you are runing the i386/32 bit system).Quick question: does pfsense have plans to support QMI or DirectIP (DIP) protocol for connecting to these PCIe cellular modems? From what I have heard, PPP is limited to ~20Mbps while QMI or DIP is much faster (50Mbps and higher).
-
@Phishfry:
Looks like you got it Jeremy…Was having troubles with FreeBSD as my MC7700 custom PPP.conf did not work and this worked straight up....
I did have to switch the PID to 9041 as this is a MC7354 with 68c0 PID...My MC7355 is on loan..I need to test my Dell module next.Would you mind sharing any customization you made? I have been considering purchasing a RCC-VE-2440 for a while just for this purpose (using a SW MC7354). You mention a custom PPP.conf - did you have to make any tweaks in 2.2.5 to get the card recognized by pfsense?
-
No tweaks necessary. The PPP file was for testing in FreeBSD.
I did have to switch the module to a supported PID. This is how. For MC7354,MC7355 with PID other than 9041..
pfSense -Menu Item #8 Command Prompt
cu -l /dev/cuaU0.2
Then type these AT commands:
AT
ATZ
AT!entercnd="A710"
AT
AT!UDPID=9041
ATExit and Reboot
-
In case your wondering how to find PID then look at post above:
usbconfig -u 0 -a 3 dump_device_desc
The 0 means USB BUS 0 and Device number 3 on that bus. Yours may be different.
Look for line that says IDproduct=Another Way
From the cu (Terminal program) console
cu -l /dev/cuaU0.2
AT
ATZ
AT!entercnd="A710"
AT
AT!UDPID?
AT
Shift key and Tilda –Then -dot- to exit.Notice the difference, AT!UDPID? Outputs PID and AT!UDPID=9041 Changes it. AT!UDPID=? Shows available PID's
-
Sorry about the Zombie thread. again.. It's a bad habit.
From what I understand in this thread, everything was fixed with the Dell 5808 version of the MC7355.
Jeremy also got the Dell version of this card going. Dell DW5808..
Im on the same RCC-VE-2440 with the Dell card running pfSense 2.3.2-p1 and it will not show up as a cuaU0.x device.
I did find (similar to the OP):
ugen0.3: <sierra wireless,="" incorporated=""> at usbus0</sierra>
and
[2.3.2-RELEASE][admin@pfSense.rack.center]/root: usbconfig -u 0 -a 3 dump_device_desc ugen0.3: <dell 5808="" wireless="" gobi="" 4g="" lte="" mobile="" broadband="" card="" sierra="" wireless,="" incorporated="">a, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA) bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0200 bDeviceClass = 0x0000 <probed by="" interface="" class="">bDeviceSubClass = 0x0000 bDeviceProtocol = 0x0000 bMaxPacketSize0 = 0x0040 idVendor = 0x413c idProduct = 0x81a8 bcdDevice = 0x0006 iManufacturer = 0x0001 <sierra wireless,="" incorporated="">iProduct = 0x0002 <dell 5808="" wireless="" gobi="" 4g="" lte="" mobile="" broadband="" card="">iSerialNumber = 0x0003 <retrieving string="" failed="">bNumConfigurations = 0x0002</retrieving></dell></sierra></probed></dell>
Has support been dropped? Do I need to change the PID from another box?
-
Just found a thread with a potential answer.
-
Just found a thread with a potential answer.
curtis some of the things talked about in that thread are essentially what Phishfry mentions in these posts:
@Phishfry:No tweaks necessary. The PPP file was for testing in FreeBSD.
I did have to switch the module to a supported PID. This is how. For MC7354,MC7355 with PID other than 9041..
pfSense -Menu Item #8 Command Prompt
cu -l /dev/cuaU0.2
Then type these AT commands:
AT
ATZ
AT!entercnd="A710"
AT
AT!UDPID=9041
ATExit and Reboot
@Phishfry:
In case your wondering how to find PID then look at post above:
usbconfig -u 0 -a 3 dump_device_desc
The 0 means USB BUS 0 and Device number 3 on that bus. Yours may be different.
Look for line that says IDproduct=Another Way
From the cu (Terminal program) console
cu -l /dev/cuaU0.2
AT
ATZ
AT!entercnd="A710"
AT
AT!UDPID?
AT
Shift key and Tilda –Then -dot- to exit.Notice the difference, AT!UDPID? Outputs PID and AT!UDPID=9041 Changes it. AT!UDPID=? Shows available PID's
I literally just got my mc7354 working following these directions, all with the card installed in my pfSense box.
Anyways, hopefully you got yours figured out! 8)
-
I'm in a similar situation and I used Phishfry's other thread to get my card in the proper state. It works with both Windows and Ubuntu. However, it doesn't connect when using the card on pfsense. Using the command cu -l /dev/cuaU0.3 I get the reply:
/var/spool/lock/LCK..cuaU0.3: File exists
Can't read lock file.
all ports busyAny other variation of this command will reply with:
/dev/cuaU0.X: No such file or directory
link downAs a result I can't use any AT commands. Using the card on Ubuntu I can confirm the PID and VID have been changed to the apporpriate numbers. Despite this I'm unable to get the card running using PPP. Any further suggestions?
-
My issue was that the cuaU0.x devices do not show up in pfSense. Therefore I am unable to run any of the AT commands. I will post with more information when I'm able to work on this again.
-
The USBCOMP setting is really important. It stands for USB Composition. It is how the modem is able to use multiple protocols. I would check in Ubuntu and see what the AT!USBCOMP setting is. If you cant pull up a AT Console on Ubuntu than you may need to run the perl script from this post.
https://forum.pfsense.org/index.php?topic=96468.15
You need to get the USBCOMP to something FreeBSD can use.
Like the example usbcomp=14 is a good choice.:
sudo perl swi_setusbcomp.pl –usbcomp=14So run Ubuntu install putty or use a terminal and check out the AT console. If it comes up then change usbcomp to 14.
-
Atlas2112, you are using the wrong port, Try cuaU0.2 for AT command console.