Cisco 1941 with EHWIC-3G-HSPA+7 card configuration
Antenna and cable
Cisco Product Number | Description | Cable Length | Maximum Insertion Loss (cable) or Maximum Gain (antenna) | Frequency (MHz) | Color |
---|---|---|---|---|---|
Cisco 3G-AE010-R (1) | Cisco Single-Port Antenna Stand for Multiband TNC Male-Terminated Portable Antenna | 10 ft | <3 dB at or below 2.5 GHz | 0.8-6.0 GHz | Grey |
3G-ANTM1919D | Cisco Multiband Swivel-Mount Dipole Antenna | na | 0 dBi at 806-960 MHz, 0 dBi at 1710-2170 MHz | 806-960 MHz and 1710-2170 MHz | Grey |
Connector type is TNC (threaded Neill-Concelman). (1)This document applies to both 3G-AE015-R and 3G-AE010-R. The only difference between these two products is the length of the cable.
Preamble
Three components are required to use a 3G data connection: a SIM, a radio modem, and a router. The SIM identifies the subscriber (that is you the human) for billing and so forth. The radio modem does the hard work in providing physical layer (Layer1) access to the local 3G base station. The router typically uses PPP as the Layer2 data link to the provider’s Network Access Server (NAS), and from there is connected to the provider’s Layer3 network (which may be a private VPN, or public Internet).
The cellular modem must establish a data call, then once connected a PPP session is established to the providers NAS. The cellular modem still requires age-old AT commands to make that call, and additionally to interrogate the SIM, etc. Cisco IOS provides an interface to a handful of modem features via the “cellular” exec command and a chat script(s). Note that AT commands can only be issued when the modem is idle (not in a call).
The modem is configured with at least one “profile” which stores an Access Point Name (APN) and optionally a username and password. This profile is then “dialed” to establish the connection similar to using a traditional phone number. These modem profiles are stored on the modem and NOT on the routers NVRAM or flash. Note that a modem profile and an IOS dialer profile are two separate things.
The EHWIC-3G-HSPA+7 is just a Sierra Wireless MC8705 AirPrime modem sold in a EHWIC form factor with a Cisco Logo on it. The modem is presented in Cisco IOS as two interfaces:
Low-speed asynchronous “control” interface which communicates with the modem.
line x/x/x
High-speed synchronous interface connecting to the cellular providers network.
interface cellular x/x/x
Configuration 3G Step-by-step
Configure APN
APN configuration is stored on the modem nvram not on the router it self. Cisco IOS provides interface to manipulate the modem and modem profiles with following syntax:
cellular 0/0/0 gsm create profile create 1 <apn name> chap <username> <password> ipv4
Both working profiles for Vodafone contract are below, the first one with CHAP auth seems to be quicker to establish connection:
cellular 0/0/0 gsm profile create 1 internet chap web web ipv4 cellular 0/0/0 gsm profile create 2 internet pap web web ipv4
Define Vodafone AT command in a chat-script
Syntax
chat-script <dialer_name> "" "AT!SCACT=1,<apn_profile_number>" TIMEOUT 60 "OK"
Live command
chat-script hspa "" "AT!SCACT=1,1" TIMEOUT 60 "OK"
Manually execute the chat script if needed for debugging purposes. Here hspa is the chat-script name and 0/0/0 is cellular interface
start-chat hspa 0/0/0
Configure line interface
This line interface information sets low-speed asynchronous “control” interface which communicates with the modem. The line x/x/x number is the same as cellular x/x/x interface number.
line 0/0/0 ! this will depend on what slot the card uses exec-timeout 0 0 script dialer hspa ! calls the chat-script script activation hspa ! activates the script it did not work without and it is not documented anywhere modem InOut no exec rxspeed 21600000 txspeed 5760000
NAT and cellular routing
Local lan is connected to Gi0/1 and all traffic is NAT overload'ed through Cellular0/0/0 interface. There ip 192.168.100.254/24 is a default gateway for local LAN hosts. From IOS 15 ip nat inside / ip nat outside
can be replaced by ip nat enable
. Please visit NVI - NAT Virtual Interface
interface GigabitEthernet0/1 ip address 192.168.100.254 255.255.255.0 ip nat inside ! NAT is needed when coming from private addresses (in ios v15 use - ip nat enable) ip virtual-reassembly in duplex auto speed auto ! interface Cellular0/0/0 description 3G link to Vodafone-APN ip address negotiated ! The NAS will issue your card an IP address ip nat outside ip virtual-reassembly in encapsulation slip ! new modem cards are using native slip protocol to communicate with the router dialer in-band dialer string hspa ! again uses the chat-script' dialer-group 1 ! references to the dialer-list (interesting traffic) async mode interactive ! interface Cellular0/0/1 no ip address encapsulation slip ! ip forward-protocol nd ! ip nat inside source list 2 interface Cellular0/0/0 overload ip route 0.0.0.0 0.0.0.0 Cellular0/0/0 '<--- Static route to cellular interface required by Cisco for proper packet routing' ! access-list 2 permit any dialer-list 1 protocol ip permit '<--- Specifies interesting traffic to bring up the dialer'
Verify 3G connection
sh cellular 0/0/0 profile Profile 1 = INACTIVE* '<--- NOTE inactive, Cellular still down' -------- PDP Type = IPv4 Access Point Name (APN) = internet Authentication = CHAP Username: web Password: web
Since we using a DDR dial-on-demand routing config, the Cellular interface will only be brought up if there is interesting traffic, either real traffic or traffic created by IP SLA or from the command line.
#ping 8.8.8.8 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 8.8.8.8, timeout is 2 seconds: ...!! Success rate is 40 percent (2/5), round-trip min/avg/max = 92/106/120 ms *Aug 28 10:37:58.499: %LINK-3-UPDOWN: Interface Cellular0/0/0, changed state to up
Verify the profile again to confirm all is working
#sh cellular 0/0/0 profile Profile 1 = ACTIVE* '<--- NOTE now its active, Cellular is up' -------- PDP Type = IPv4 PDP address = 10.49.122.44 Access Point Name (APN) = Internet Authentication = CHAP Username: web Password: web Primary DNS address = 88.82.13.60 Secondary DNS address = 88.82.13.60
Quick 3G config: always connected using Dialer interface
! ! Reset interfaces before applying to, first Dialer 1 ! interface Dialer1 shutdown ! ! waiting for shutdown ... ! exit default interface Dialer 1 default interface Cellular 0/0/0 ! ! Applying configuration ! chat-script hspa "" "AT!SCACT=1,1" TIMEOUT 60 "OK" ! interface Cellular0/0/0 description 3G link to Vodafone-APN ip address negotiated encapsulation slip dialer in-band dialer pool-member 1 dialer-group 1 async mode interactive routing dynamic ! interface Dialer1 ip address negotiated ip nat enable encapsulation slip dialer pool 1 ! dialer idle-timeout 0 dialer string hspa dialer persistent dialer-group 1 no shutdown ! ip nat source list 1 interface Dialer1 overload ip route 0.0.0.0 0.0.0.0 Dialer1 ! access-list 1 permit any dialer-list 1 protocol ip permit ! line 0/0/0 exec-timeout 0 0 script dialer hspa ! script activation hspa modem InOut no exec exit
- Verify dialer profile
If dialer is fully removed the following comman will not return anything. If configured the example output has been included below.
#show dialer Ce0/0/0 - dialer type = IN-BAND ASYNC NO-PARITY Dialer pool 1, priority 0 Idle timer (never), Fast idle timer (20 secs) Wait for carrier (30 secs), Re-enable (15 secs) Dialer state is data link layer up Dial reason: Persistent Dialer Profile Interface bound to profile Di1 Time until disconnect never Current call connected 00:00:14 Connected to hspa Di1 - dialer type = DIALER PROFILE Idle timer (never), Fast idle timer (20 secs) Wait for carrier (30 secs), Re-enable (15 secs) Dialer state is data link layer up Number of active calls = 1 Dial String Successes Failures Last DNIS Last status hspa 1 0 00:00:14 successful Default
Backup Cellular 0/0/0 interface when primary Gi 0/0 does down
Basic config
conf t interface GigabitEthernet0/0 backup delay 9 5 ! enables-delay:9s disable-delay:5s backup interface Cellular0/0/0 ! specifies the cellular interface as backup
Then the Cellular0/0/0 interface administrative mode will change to standby mode.
r1-basic#sh ip int brief Interface IP-Address OK? Method Status Protocol Embedded-Service-Engine0/0 unassigned YES NVRAM administratively down down GigabitEthernet0/0 192.168.1.66 YES DHCP up up GigabitEthernet0/1 192.168.100.254 YES NVRAM up up GigabitEthernet0/1/0 unassigned YES unset down down GigabitEthernet0/1/1 unassigned YES unset down down GigabitEthernet0/1/2 unassigned YES unset down down GigabitEthernet0/1/3 unassigned YES unset down down Cellular0/0/0 unassigned YES IPCP standby mode down Cellular0/0/1 unassigned YES unset administratively down down NVI0 unassigned YES unset administratively down down Vlan1 192.168.101.1 YES NVRAM down down
- Verify if backup interface is trigger when disconnecting a cable from Gi0/0 interface and reconnecting.
The sequence events should look like below. First link connected to the main WAN link on interface GigabitEthernet0/0 goes UP
*Sep 1 23:43:20.523: %LINK-3-UPDOWN: Interface GigabitEthernet0/0, changed state to up
*Sep 1 23:43:21.523: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/0, changed state to up
Interface GigabitEthernet0/0 has been assigned the IP addres by dhcp server
*Sep 1 23:43:25.387: %DHCP-6-ADDRESS_ASSIGN: Interface GigabitEthernet0/0 assigned DHCP address 192.168.1.66, mask 255.255.255.0, hostname r1-basic
Interface Cellular0/0/0 goes into standby mode and goes down
*Sep 1 23:43:27.523: %LINK-5-CHANGED: Interface Cellular0/0/0, changed state to standby mode *Sep 1 23:43:28.523: %LINEPROTO-5-UPDOWN: Line protocol on Interface Cellular0/0/0, changed state to down
Troubleshooting
This debug requires you to have enable service internal enabled
debug cellular 0/0/0 messages all debug ppp negotiation debug ppp authentication debug ppp packet debug chat '<-- use when interface does not to change to UP' debug async state debug dialer
*debug ppp will only show messages on old routers as the new ones are using slip protocol for communication between router and modem
- Here is output when debug dialer is on
r1#ping 8.8.8.8
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 8.8.8.8, timeout is 2 seconds:
*Aug 29 16:40:23.447: Ce0/0/0 DDR: place call
*Aug 29 16:40:23.447: Ce0/0/0 DDR: Dialing cause ip (s=192.168.100.254, d=8.8.8.8)
*Aug 29 16:40:23.447: Ce0/0/0 DDR: Attempting to dial hspa
*Aug 29 16:40:23.447: CHAT0/0/0: Attempting async line dialer script
*Aug 29 16:40:23.447: CHAT0/0/0: Dialing using Modem script: hspa & System script: none
*Aug 29 16:40:23.447: CHAT0/0/0: process started
*Aug 29 16:40:23.447: CHAT0/0/0: Asserting DTR
*Aug 29 16:40:23.447: CHAT0/0/0: Chat script hspa started
*A.ug 29 16:40:23.447: CHAT0/0/0: Sending string: AT!SCACT=1,1
*Aug 29 16:40:23.447: CHAT0/0/0: Expecting string: OK.
*Aug 29 16:40:26.455: CHAT0/0/0: Completed match for expect: OK
*Aug 29 16:40:26.455: CHAT0/0/0: Chat script hspa finished, status = Success
*Aug 29 16:40:26.455: Ce0/0/0 SLIP: Async Protocol Mode started for 0.0.0.0.
*Aug 29 16:40:28.455: %LINK-3-UPDOWN: Interface Cellular0/0/0, changed state to up!
*Aug 29 16:40:28.455: Ce0/0/0 DDR: Dialer statechange to up
*Aug 29 16:40:28.455: Ce0/0/0 DDR: Dialer call has been placed
*Aug 29 16:40:28.455: Ce0/0/0 DDR: dialer protocol up
*Aug 29 16:40:29.455: %LINEPROTO-5-UPDOWN: Line protocol on Interface Cellular0/0/0, changed state to up!
Success rate is 40 percent (2/5), round-trip min/avg/max = 400/548/696 ms
--------< cut >---------------
- Below is output of show caller full when connection is established. It shows connection time, timeouts and TTY line info.
r1#show caller full
User: unknown, line con 0, service TTY
Active time 00:04:42
Timeouts: Limit Remaining Timer Type
00:10:00 00:10:00 Idle Exec
TTY: Line 0
Line: Baud rate (TX/RX) is 9600/9600, no parity, 2 stopbits, 8 databits
Status: PSI Enabled, Ready, Active
Modem State: Ready
User: unknown, line tty 0/0/0, service Async
Timeouts: Limit Remaining Timer Type
- - -
TTY: Line 0/0/0, running SLIP on Ce0/0/0
Line: Baud rate (TX/RX) is 5760000/21600000, no parity, 2 stopbits, 8 databits
Status: Ready, Active, No Exit Banner, Async Interface Active
Capabilities: EXEC Suppressed, Modem Callout, Modem RI is CD
Line usable as async interface, Integrated Modem
Modem State: Ready
- Below is output of show caller full when connection is DOWN
r1#show caller full
User: unknown, line con 0, service TTY
Active time 00:06:52
Timeouts: Limit Remaining Timer Type
00:10:00 00:10:00 Idle Exec
TTY: Line 0
Line: Baud rate (TX/RX) is 9600/9600, no parity, 2 stopbits, 8 databits
Status: PSI Enabled, Ready, Active
Modem State: Ready
show cell 0/0/0 radio history all '<-- will draw RSSI in time graph' sh cellular 0/0/0 network | i Service|Status sh cellular 0/0/0 con !! (if there is one)
show cellular 0/0/0 network show cellular 0/0/0 radio '<-- shows link strength' show cellular 0/0/0 profile show cellular 0/0/0 security show cellular 0/0/0 all
show dialer show interface dialer 3 '<-- it does not work ??? --' show caller timeouts show caller full '<-- shows connection time, timeouts and TTY line info --'
show controllers cellular 0/0/0 show interfaces cellular 0/0/0 show run interface cellular 0/0/0
sh cellular 0/0/0 network | include Cell '<-- shows cell ID connected to'
Examples at EN37QJ post code
show cellular 0/0/0 network Current Service Status = Normal, Service Error = None Current Service = Combined Packet Service = HSPA+ (Attached) Packet Session Status = Active Current Roaming Status = Home Network Selection Mode = Automatic Country = GBR, Network = voda UK Mobile Country Code (MCC) = 234 Mobile Network Code (MNC) = 15 Location Area Code (LAC) = 175 Routing Area Code (RAC) = 175 Cell ID = 63412 Primary Scrambling Code = 490 PLMN Selection = Automatic Registered PLMN = vodafone UK , Abbreviated = voda UK Service Provider =
Explained
- Cell ID
- A unique number used to identify the GSM base transceiver station the phone is connected to.
- MNC - Mobile Network Code
- This number is used to uniquely identify the GSM network operator in combination with the MCC the phone is currently connected to.
- MCC - Mobile Country Code
- This is a unique number for the country with the GSM net the phone is currently connected to. (234 - United Kingdom)
- LAC - Location Area Code
- A 16-digit fixed length code that identifies the phone's location area within a GSM public land mobile network.
Signal indicator units RSSI, ECIO
If the output of the show cellular x/x/x radio
command indicates high ECIO values and a low C/I ratio and you are experiencing poor throughput, you should consider using a diversity antenna. For example:
1xRTT related info ------------------ Current RSSI = -52 dBm, ECIO = -7 dBm Current Channel Number = 507 Current Channel State = Acquired Current Band Class = Band Class 1 HDR (1xEVDO) related info ------------------------- Current RSSI = -51 dBm, ECIO = -6 dBm Current Channel Number = 325 Current Band Class = Band Class 1 Sector ID (Hex) = 0080:0580:0000:0000:000A:CCF3:0500:A201 Subnet Mask = 104, Color Code = 24, PN Offset = 72 Rx gain control(Main) = -49 dBm, Diversity = -103 dBm Tx total power = -35 dBm, Tx gain adjust = -1280 dBm Carrier to interference (C/I) ratio = 3
The C/I ratio should be as high as possible and the ECIO value as low as possible. Lab tests have indicated ECIO ≤-2 dB. If you observed a value of -7 or something similar, you might have a very noisy environment, which may in turn cause retransmissions of the packets, lower throughput, call drops, etc. Cisco does not determine acceptable values; cellular carriers determine these values.
Modem restart
service internal '<-- this enables hidden commands' exit test cellular 0/0/0 modem-reset
or, this is better
service internal exit test cellular 0/0/0 modem-power-cycle
Send SMS
! Configure ftp required for SMS storage router(config-controller)# gsm sms archive path ftp://username:password@10.0.99.100/SMS_archive ! Sent message cellular 0/0/0 gsm sms send 00447881122995 The link maybe down2
This is error message when ftp is not specified
Nov 20 23:40:11.751: %CELLWAN-2-SMS_ARCH_PATH_UNCONFIGURED: Cellular0/0/0 failed to archive SMS because 'gsm|cdma sms archive path' under cellular controller is not configured.