Appendix B. AT Commands

Revision History
Revision 2.01 2003-12-14 mrb
v2.01 release

This appendix will teach you how to use AT commands to

  • configure the simulator for your test requirements

  • interrogate the simulator regarding its state

  • command the simulator to perform an action

  • query the simulator regarding AT command syntax

AT commands may be used to set the configuration of the MOB-IP-SIM™, to query the simulator about its state, to command it to perform an action, or to test for the existence and syntax of a command. While the MIP-5850 is expected to be used by a mobile device software engineer who requires significant control of the PPP and Mobile-IP connection, the MIP-5800 user is expected to be the user applications programmer, who requires only those commands required to establish a normal Mobile IP connection for applications testing. The MIP-5800 command set is therefore smaller than that of the MIP-5850. With either model, the AT commands may be used over either the Ethernet or serial ports.

To configure the MOB-IP-SIM™ the appropriate command must be followed by one or more arguments. Some action commands may also require arguments. To query the simulator a command is followed by a question mark. To test a command requires following the command with =?. Some commands allow setting a value, or take an action that requires arguments. Use the command name followed by = and a value. Some of these commands return a value.

Action commands are used by themselves or sometimes with arguments:

Test commands are those followed by an equals sign, which all commands support. The response is an indication of the syntax of the commands arguments. If no arguments are used, an empty template is returned.

Templates consist of the following pieces:

  • Decimal numbers and ranges in parentheses

  • (0-9) One of the integers 0 through 9 inclusive.

  • (0, 1-9) One of the integers 0 through 9 inclusive, but number 0 is special.

  • (0.0-9.9) Real numbers 0.0 through 9.9.

  • Character strings specified in hexadecimal

  • A string of printing ASCII characters and blanks

  • A string of lower case as and blanks

  • Hexadecimal numbers and ranges

  • Punctuation

Some commands allow querying the current value of some parameter by adding a ? to the name of the command. The response returns the current value.

In the description following, each command description lists the methods supported (except for the ? test).

After the controller issues a command, the MOB-IP-SIM™ returns one or more lines of response. Each line is terminated with carriage return and line feed.

Every command returns a basic result code, currently either OK or ERROR, as its last line of response. Some commands return extended response lines, which start with a plus sign followed by the command name, a colon, a blank, and some additional information. This additional information is the return value.

Many of the AT commands affect and read configuration data visible from the web pages, one command per datum. While changes to some of these data, such as the fields in Mobile IP messages take effect immediately, changes to others such as the IP address and PPP settings, do not.

The commands are discussed using the following format:

+command [argument]

Query, Immediate, Disruptive, and/or Action

The command description

The template entry indicates what at+foo=? returns, if anything.

A command is labeled Query if it supports the "=?" command.

A command is labeled Immediate if it has an immediate effect but does not disrupt operation any more than one would expect from changing that parameter.

A command is labeled Disruptive if it forces changes to take effect other than what one may expect from the name or one-line summary of the command.

A command is labeled Action if it has a no-argument form

The commands on this page are available to both the MIP-5800 and MIP-5850 simulators

Agent Advertisement Commands

+advb [(0,1)]

Immediate Query

Set to 1 for the Busy bit in the Mobility Agent Advertisement. Must be set to 0 for normal operation.

+advdelay [(0.00-3600.00)]

Immediate Query

Simulated network delay in seconds for Mobility Agent Advertisement messages. TheMOB-IP-SIM™ sends the advertisement this many seconds after receipt of a Router Solicitation or the establishment of a PPP link with the mobile station.

+advf [(0,1)]

Immediate Query

Foreign Agent bit in the Mobility Agent Advertisement. Must be set to 1 for normal operation.

+advg [(0,1)]

Immediate Query

GRE encapsulation supported bit in the Mobility Agent Advertisement.

+advh [(0,1)]

Immediate Query

Home Agent bit in the Mobility Agent Advertisement. Must be set to 0 for normal operation.

+advlife [(0-65535)]

Immediate Query

Set the number of seconds the Router Advertisement is valid. See also +advreglife .

+advm [(0,1)]

Immediate Query

Minimal encapsulation supported bit in the Mobility Agent Advertisement.

+advpref [(-32768-32767)]

Immediate Query

Set the preference level to advertise for this router (larger means more preferable).

+advr [(0,1)]

Immediate Query

Registration required bit in the Mobility Agent Advertisement. Set to 1 to require registration.

+advreglife [(0-65534, 65535)]

Immediate

Set the number of seconds to include in the Mobility Agent Advertisement as the maximum registration lifetime.

+advseq [(0-65535)]

Immediate Query

Set the sequence number to use the next Router Advertisement message.

+advt

Immediate Query

Reverse tunneling supported bit in the Mobility Agent Advertisement.

+advv [(0,1)]

Immediate Query

Reserved (formerly Van Jacobson) bit in the Mobility Agent Advertisement.

+mipcoaddr [(0-255).(0-255).(0-255).(0-255)]

Immediate Query

Set a care-of address to include in the Mobility Agent Advertisement message. The special case 0.0.0.0 means the IP address of the of the MOB-IP-SIM™ .

+spadvcount [(0-100)]

Immediate Query

Set the number of spontaneous Mobility Agent Advertisements to send when the PPP link is established. The MOB-IP-SIM™ may send fewer than this many Advertisements if the mobile station sends a Registration Request.

+spadvinterval [(0.00-100)]

Immediate Query

Set the interval in seconds between Mobility Agent Advertisements.

+miphaaddr [(0-255).(0-255).(0-255).(0-255)]

Immediate Query

Mobile Node home address to expect. Registration Replies will be sent only to mobile nodes requesting either this home address or the zero home address. See also +miphanum

+miphaaddr [(0-255).(0-255).(0-255).(0-255)]

Immediate Query

Mobile Node home address to expect. Registration Replies will be sent only to mobile nodes requesting either this home address or the zero home address. See also +miphanum

+miphamask [(0-255).(0-255).(0-255).(0-255)]

Immediate Query

Network mask of the Home Agent currently under configuration used to simulate directed-broadcast behavior. See +miphanum.

+miphanum [(0, 1-3)]

Immediate Query

Select which Home Agent to configure with the +miphaaddr , +miphamask , +mipreplycode , +miphaspi , +miphasecret , +mipmnspi , +mipmnsecret , and +mipreglife commands.

+miphasecret (20-7e)

Immediate Query

Set the secret (in ASCII) to use when verifying the Mobile-Home Authentication Extension in incoming Registration Requests.

+miphaspi [(0-4294967295)]

Immediate Query

Set the SPI to expect in the Mobile-Home Authentication Extension in incoming Registration Requests.

+mipmnaddr [(0-255).(0-255).(0-255).(0-255)]

Immediate Query

Set the Mobile Node home address to expect. Registration Replies will be sent only to mobile nodes requesting either this home address or the zero home address.

+mipmnsecret [(20-7e)]

Immediate Query

Set the secret (in ASCII) to use when generating the Mobile-Home Authentication Extension in outgoing Registration Replies. Must match +miphasecret .

+mipmnspi [(0-4294967295)]

Immediate Query

Set the SPI to include in the Mobile-Home Authentication Extension in outgoing Registration Replies. Must match +miphaspi for normal operation.

+mipreglife [(0-65534, 65535)]

Immediate Query

The upper bound on the number of seconds to include in the Registration Reply as the registration lifetime. It should be greater than zero; 65535 means unlimited lifetime.

+mipreplycode [(-1, 0, 1-255)]

Immediate Query

Set the registration result code to use when sending the next Registration Reply. -1 means no reply (simulate failure); 0 means success; codes from 64 to 192 indicate failures. See RFC 3344 for more details.

+miprrpdelay [(0.00-3600.00)]

Immediate Query

Set the delay in seconds between getting a Registration Request and sending a Reply.

+capcount

Query

Return the number of packets captured so far. They are numbered 0 to N-1.

+capdump [(2e, 30-39, 5b-5d, 5f, 61-7a)]

List all fields in the specified packet or part thereof in alphabetical order. The argument is a field or PDU identifier. This command is not intended for use from scripts.

+capfind [(0-9999), (2e, 30-39, 5b-5d, 5f, 61-7a)]

Locate the first packet with a number greater than or equal to START that contains a field named FIELD and return either the number of the found packet, or ERROR.

+capget [(2e, 30-39, 5b-5d, 5f, 61-7a)]

Return a field (not a PDU), generally in decimal. IP addresses are returned as dotted quads, sections and a few other binary fields are returned as hex strings. The data is a raw version of the higher-layer-protocol data (everything but the preceding fixed-length fields; e.g. ip.icmp.data starts at the octet following ip.icmp.sum).

+capident [(2e, 30-39, 5b-5d, 5f, 61-7a)]

Identify the specified packet or part thereof. The argument is a field or PDU identifier. Returns the most specific protocol name for the packet or specified part. The command doesn't look in extensions by itself; you have to point it there.

+capstart [(20-7e)]

Clear the saved packet buffer and start capturing packets. The argument is a tcpdump filter expression and may be left blank to capture all packets.

+capident [(2e, 30-39, 5b-5d, 5f, 61-7a)]

Immediate

Identify the specified packet or part thereof. The argument is a field or PDU identifier. Returns the most specific protocol name for the packet or specified part. The command doesn't look in extensions by itself; you have to point it there.

+capstop

Immediate Action

Stop capturing packets. Any packets already captured are preserved.