- Note: If a command is only partially protected (for example, the execution form is restricted, but the query form is not), the non-protected form of the command also appears in the ‘Supported’ reference. The AT commands in this document are specific to the Sierra Wireless embedded modems listed in Table 1-1.
- ATtention Spanned: Comprehensive Vulnerability Analysis of AT Commands Within the Android Ecosystem Dave (Jing) Tian1, Grant Hernandez1, Joseph I. Choi1, Vanessa Frost1, Christie Ruales1, Patrick Traynor1, Hayawardh Vijayakumar2, Lee Harrison2, Amir Rahmati2,3, Michael Grace2, and Kevin R. Butler1 1Florida Institute for Cybersecurity (FICS) Research, University of Florida, Gainesville, FL.
AT Commands Reference Guide 80000ST10025a Rev. 0 - 04/08/06 Reproduction forbidden without Telit Communications S.p.A. Written authorization - All Right reserved page 3 of 614. Table of Contents Multi-Tech Systems, Inc. CDMA Wireless AT Commands - PN S000294D 6 Chapter 13 - Position Determination.87.
TUTORIAL DISCLAIMER: This tutorial is based on using a Windows PC and a Sierra MC7455 modem mounted in a
mPCIE-to-USB adapter. We will be using the a terminal from the Windows device to issue commands to the MC7455
modem. Different devices and methods to issue the AT commands may require various alterations from the
examples below. Always take caution when accessing a modem's interface. This forum, as well as the writer, will
assume NO liability for use of this information. In short, be cautious and use at your own risk.
If you are just getting started with programming the modem, there are three basic utilities required for this
method:
- Windows Connection Manager software (USB Drivers) (allowing Windows to recognize the modem)
- Latest Windows executable Generic Firmware (for the MC7455 modem)
- Huawei Terminal (to issues the commands to the modem)
Install the Air Prime Driver Software on the Windows machine via the executable file.
Run the Huawei Terminal executable file as an administrator. When the terminal opens, select the white down
arrow button, and select the COM port that corresponds to the Sierra Wireless…WWAN Modem and hit the Connect
button.
If you are working with the
Qualcomm At Commands Pdf Tutorial
EM7565 it is recommended to use PuTTY in Serial mode to program the modem. Refer to the bottom of this topic for more instructions.NOTE: If the terminal does not list the Sierra modem, open the Windows device manager (Press the Windows Key +
X then Device Manager) and look at the Ports (COM & LPT) and see on what COM port the modem is located and use
that Port Number.
If you are now connected to the modem through the terminal, go the white outlined slot on the bottom of the
Terminal and type (or copy and paste) the following and hit enter: If the modem is accessible, information will be displayed showing the model, firmware and other details related to
the modem.
If you see these details, congratulations! You are now ready to begin with issuing commands.
Type, or copy and paste (one line at a time) the AT commands that follow and hit Enter after every command.
In our first command we must tell them modem we have permission to enter commands. It is important to
remember that you must first enter this command any time you access the modem to enter various other
commands. It is also used to return more thorough or detailed information when requested.
Code: Select all
And, that ALL commands issued to program the modem will take effect ONLY after rebooting the modem:By default, the MC7455 will be in QMI mode which much be changed to the MBIM mode for various OpenWRT, LEDE, and ROOter frimware builds. (The EM7455’s defaults to the MBIM mode). The AT Commands for the EM|MC7455: for MBIM composition is:Code: Select all
Other options for the EM|MC7455 modem are for QMI:Another option is to expose the NMEA port:Code: Select all
The EM7465 requires a slightly different command to place it in MBIM (also, PuTTy works best for the EM7465):To check or verify the mode configuration:Code: Select all
We will now add the APN (shown in this demo for Sprint as r.ispsn using an ipv4 address).In return we get:Code: Select all
You may also check what versions of IP settings are available for the modem:Which on the mc7455, returns:Code: Select all
This reflects that the mc7455 will allow us to take advantage of Sprint's dual stack IPV4V6 for the APN:Which returns:Code: Select all
If you find that for what ever reason you cannot connect to an IPV6 address and would like to check and see if IPV6 is enabled use the following command:If you would like to disable IPV6 use this command:Code: Select all
While there are no requirements to do so, we can manually define and set our preferred bands for the modem.(NOTE: If you are doing a new custom build of LEDE/OpenWRT, I suggest you skip the band programming and/or
locking until the build is up and running properly--the modem will automatically select the bands). But, for this
demo and using Sprint, we can assign each band a reference command which we may later use to lock the modem
to an specific band or group of bands. If you are still in the same terminal session, you can skip the first permission
command. Notice that the Sprint (All) band was created by adding together the binaries of the individual bands we selected.
Creating an “All” band holds true for all carriers and bands available to that carrier. Take special notice of
redundant numbered bands and frequencies (when listed) to assure they match those of your carrier.
If you are using a different carrier other than Sprint and want multiple bands combined into one you may find that some of those combine band binaries have letters in them. Here is an example of what that would look like using Verizon:
Code: Select all
Note: The A at the end of the binary is from combining the 2 and the 8 from bands 2 and 4.To access what bands are available (and their binaries) we can use the following command:If we desire to lock the modem to a particular band, for instance band 41 to take advantage of carrier aggregation:
Code: Select all
Or we could allow the modem to pick and choose between the Sprint bands in (ALL):To check what bands we are locked to, we can always use the following command:Code: Select all
It is important to always remember what Index letter (i.e., 0c) you have assigned to what band. This isimportant when using various scripts by different people who may assign them differently.
If you have created a band and would like to remove that Index letter (i.e., 0c) from the list of available lockable bands, use the following command and insert your index name:For example if you wanted to remove the band 25 index that we created earlier you would use the following command:
Code: Select all
If you are having connection issues with the modem, then you may want to avoid locking the bands to any specificfrequency and allow the modem to connect as it wishes:We can also set the modem to receive LTE only:
Code: Select all
Another useful command you will use often, will get the status and general connection information from themodem such as what band you are currently connected to and signal strength.The Sierra mc7455/em7455 modem can and will store multiple different carrier firmware (i.e., generic, sprint, verizon,
etc...) which may create connection issues. To review the firmware (and/or preferred carrier) configuration:
Code: Select all
There may be times were one needs to restore the modem to its OEM configurations. This will effectively reset any changes you have made to the modem's settings.To restore to OEM settings:
Code: Select all
Some of the older Sierra Modems (i.e., mc7354, mc7750, mc7700...) may require a slightly different command torestore:After re-powering the modem, you are back to the OEM settings.
One note on programming the EM7565. The Huawei Terminal seems to have a conflict with issuing some commands to the EM7565. I recommend you use the Huawei Terminal to locate the COM Port number assigned to WWAN Modem , then use PuTTY in Serial mode to program the modem.
I encourage everyone to download a copy of the AT Command reference guide to better understand the various
commands.
I also encourage members to share AT commands they find useful and provide a brief description of when they are
used and what they do.
Overview
ESP8266 offers a complete and self-contained Wi-Fi networking solution, allowing it to either host the application or to offload all Wi-Fi networking functions from another application processor.When ESP8266 hosts the application, and when it is the only application processor in the device, it is able to boot up directly from an external flash. It has integrated cache to improve the performance of the system in such applications, and to minimize the memory requirements.
Alternately, serving as a Wi-Fi adapter, wireless internet access can be added to any microcontroller-based design with simple connectivity through UART interface or the CPU AHB bridge interface.
ESP8266 on-board processing and storage capabilities allow it to be integrated with the sensors and other application specific devices through its GPIOs with minimal development up-front and minimal loading during runtime. With its high degree of on-chip integration, which includes the antenna switch balun, power management converters, it requires minimal external circuitry, and the entire solution, including front-end module, is designed to occupy minimal PCB area.
Sophisticated system-level features include fast sleep/wake context switching for energy-efficient VoIP, adaptive radio biasing for low-power operation, advance signal processing, and spur cancellation and radio co-existence features for common cellular, Bluetooth, DDR, LVDS, LCD interference mitigation.
Go shopping ESP8266 Serial WIFI Module(IM140905002)
Features
- 802.11 b/g/n protocol
- Wi-Fi Direct (P2P), soft-AP
- Integrated TCP/IP protocol stack
- Integrated TR switch, balun, LNA, power amplifier and matching network
- Integrated PLL, regulators, and power management units
- +19.5dBm output power in 802.11b mode
- Integrated temperature sensor
- Supports antenna diversity
- Power down leakage current of < 10uA
- Integrated low power 32-bit CPU could be used as application processor
- SDIO 2.0, SPI, UART
- STBC, 1×1 MIMO, 2×1 MIMO
- A-MPDU & A-MSDU aggregation & 0.4s guard interval
- Wake up and transmit packets in < 2ms
- Standby power consumption of < 1.0mW (DTIM3)
Electronic Characteristics
1.Current Consumption
The following current consumption is based on 3.3V supply, and 25℃ ambient, using internal regulators. Measurements are done at antenna port without SAW filter. All the transmitter’s measurements are based on 90% duty cycle, continuous transmit mode.
Mode | Min | Typ | Max | Unit |
Transmit 802.11b, CCK 1Mbps, POUT=+19.5dBm | 215 | mA | ||
Transmit 802.11b, CCK 11Mbps, POUT=+18.5dBm | 197 | mA | ||
Transmit 802.11g, OFDM 54Mbps, POUT =+16dBm | 145 | mA | ||
Transmit 802.11n, MCS7, POUT=+14dBm | 135 | mA | ||
Receive 802.11b, packet length=1024 byte, -80dBm | 60 | mA | ||
Receive 802.11g, packet length=1024 byte, -70dBm | 60 | mA | ||
Receive 802.11n, packet length=1024 byte, -65dBm | 62 | mA | ||
Standby | 0.9 | mA | ||
Deep sleep | 10 | uA | ||
Power save mode DTIM 1 | 1.2 | mA | ||
Power save mode DTIM 3 | 0.86 | mA | ||
Total shutdown | 0.5 | uA |
2.RF Performance
The following are measured under room temperature conditions with 3.3V and 1.1V power supplies.
Description | Min | Typical | Max | Unit |
Input frequency | 2412 | 2484 | MHz | |
Input impedance | 50 | Ω | ||
Input reflection | -10 | dB | ||
Output power of PA for 72.2Mbps | 14 | 15 | 16 | dBm |
Output power of PA for 11b mode | 17.5 | 18.5 | 19.5 | dBm |
Sensitivity | ||||
CCK, 1Mbps | -98 | dBm | ||
CCK, 11Mbps | -91 | dBm | ||
6Mbps (1/2 BPSK) | -93 | dBm | ||
54Mbps (3/4 64-QAM) | -75 | dBm | ||
HT20, MCS7 (65Mbps, 72.2Mbps) | -71 | dBm |
Hardware
Schematic
Application Notes
- Smart power plugs
- Home automation
- Mesh network
- Industrial wireless control
- Baby monitors
- IP Cameras
- Sensor networks
- Wearable electronics
- Wi-Fi location-aware devices
- Security ID tags
- Wi-Fi position system beacons
AT Commands
Format
- Baud rate at 57600
- x is the commands
(Click the picture to zoom in)
Set | Inquiry | Test | Execute |
---|---|---|---|
AT+<x>=<…> | AT+<x>? | AT+<x>=? | AT+<x> |
AT+CWMODE=<mode> | AT+CWMODE? | AT+CWMODE=? | - |
Set the network mode | Check current mode | Return which modes supported | - |
Commands
- carefully there are must be no any spaces between the ' and IP address or port
Commands | Description | Type | Set/Execute | Inquiry | test | Parameters and Examples |
---|---|---|---|---|---|---|
AT | general test | basic | - | - | - | - |
AT+RST | restart the module | basic | - | - | - | - |
AT+GMR | check firmware version | basic | - | - | - | - |
AT+CWMODE | wifi mode | wifi | AT+CWMODE=<mode> | AT+CWMODE? | AT+CWMODE=? | 1= Sta, 2= AP, 3=both, Sta is the default mode of router, AP is a normal mode for devices |
AT+CWJAP | join the AP | wifi | AT+ CWJAP =<ssid>,< pwd > | AT+ CWJAP? | - | ssid = ssid, pwd = wifi password |
AT+CWLAP | list the AP | wifi | AT+CWLAP | |||
AT+CWQAP | quit the AP | wifi | AT+CWQAP | - | AT+CWQAP=? | |
AT+ CWSAP | set the parameters of AP | wifi | AT+ CWSAP= <ssid>,<pwd>,<chl>, <ecn> | AT+ CWSAP? | ssid, pwd, chl = channel, ecn = encryption; eg. Connect to your router: AT+CWJAP='www.electrodragon.com','helloworld'; and check if connected: AT+CWJAP? | |
AT+CWLIF | check join devices' IP | wifi | AT+CWLIF | - | - | |
AT+ CIPSTATUS | get the connection status | TCP/IP | AT+ CIPSTATUS | <id>,<type>,<addr>,<port>,<tetype>= client or server mode | ||
AT+CIPSTART | set up TCP or UDP connection | TCP/IP | 1)single connection (+CIPMUX=0) AT+CIPSTART= <type>,<addr>,<port>; 2) multiple connection (+CIPMUX=1) AT+CIPSTART= <id><type>,<addr>, <port> | - | AT+CIPSTART=? | id = 0-4, type = TCP/UDP, addr = IP address, port= port; eg. Connect to another TCP server, set multiple connection first: AT+CIPMUX=1; connect: AT+CIPSTART=4,'TCP','X1.X2.X3.X4',9999 |
AT+CIPMODE | set data transmission mode | TCP/IP | AT+CIPMODE=<mode> | AT+CIPSEND? | 0 not data mode, 1 data mode; return 'Link is builded' | |
AT+CIPSEND | send data | TCP/IP | 1)single connection(+CIPMUX=0) AT+CIPSEND=<length>; 2) multiple connection (+CIPMUX=1) AT+CIPSEND= <id>,<length> | AT+CIPSEND=? | eg. send data: AT+CIPSEND=4,15 and then enter the data. | |
AT+CIPCLOSE | close TCP or UDP connection | TCP/IP | AT+CIPCLOSE=<id> or AT+CIPCLOSE | AT+CIPCLOSE=? | ||
AT+CIFSR | Get IP address | TCP/IP | AT+CIFSR | AT+ CIFSR=? | ||
AT+ CIPMUX | set mutiple connection | TCP/IP | AT+ CIPMUX=<mode> | AT+ CIPMUX? | 0 for single connection 1 for multiple connection | |
AT+ CIPSERVER | set as server | TCP/IP | AT+ CIPSERVER= <mode>[,<port> ] | mode 0 to close server mode, mode 1 to open; port = port; eg. turn on as a TCP server: AT+CIPSERVER=1,8888, check the self server IP address: AT+CIFSR=? | ||
AT+ CIPSTO | Set the server timeout | AT+CIPSTO=<time> | AT+CIPSTO? | <time>0~28800 in second | ||
+IPD | received data | For Single Connection mode(CIPMUX=0): + IPD, <len>: |
Download
Instruction
Upgrading ESP8266 Firmware
How to upgrade ESP8266 firmware?
We use NodeMCU flasher here, the download links:
- English version: https://github.com/nodemcu/nodemcu-flasher
Note: use nodemcu flasher to flash Firmware to ESP8266, its default firmware is Lau language. If you want to flash AT Commands firmware, go to ESP8266 forum to get one.
- Chinese version: File:ESP8266Flasher-x86-v0.9.2.3.zip
1. Connect your ESP8266 module as follows:
- Vcc = 3.3V (needs around 300-400mA peak)
- Gnd = -ve ground
- CH_PD = Chip enable so always +ve
- RST = Leave floating or ground to reset
- GPIO0 = Normally floating but this needs to be grounded when you start the update.
- GPIO2 = high level
- UTXD = Tx data connect to RX on FTDI/Serial interface
- URXD = Rx data connect to TX of FTDI/Serial interface
English Version: Please refer to the NodeMCU flasher user guide.
Chinese Version: Please see the next step below
2. Open the software, choose the right COM and click the button that is circled in the following picture. When a tick appears in the bottom-left corner, it suggests that the firmware upgrade successfully.
Qualcomm At Commands Pdf Installer
3. This software contains an existing firmware, but if you want to upgrade other ESP8266 firmware, please click the button that is circled in the following picture, and only two file paths are available to choose.
Other ways of ESP8266 firmware upgrading
Useful Link
Reference:
Example
- The ESP8266 Becomes a Terrible Browser - http://hackaday.io/project/3072/instructions
- New Working GCC for ESP8266 - http://www.esp8266.com/viewtopic.php?f=9&t=224
- SDK for ESP8266 - http://hackaday.com/2014/10/25/an-sdk-for-the-esp8266-wifi-chip/
- An ESP8266 Based Smartmeter - http://hackaday.com/2014/10/25/an-sdk-for-the-esp8266-wifi-chip/
Demos for ESP8266
Library for ESP8266