Gsmctl commands

From Teltonika Networks Wiki

Introduction

gsmctl is an SSH command used to communicate with a RUTxxx router's modem. In other words, gsmctl relays AT commands (a set of instructions used to control a modem) to the router's modem; thus, providing the user with a way to control and obtain information from the modem via SSH. This can be used to either obtain certain modem related variables (signal strength, operator, connection state, etc.) or to execute certain actions (sending SMS messages, changing the frequency band, etc.).

This article provides a complete overview on gsmctl commands available in RUTxxx routers.

Prerequisites

gsmctl commands can be used on all RUTxxx routers via any type of command line interface (CLI) supported by the router. So all you need is:

gsmctl options

gsmctl commands are used in tandem with various options that specify what type of action should be executed.


Example structure

Individual options are described in separate subsections of this article. To find the information you are looking for faster, refer to the table of contents at the top of the page or use your browser's "Find in page" feature (Control + F).

Each option is presented with its usage syntax and an example command. For easier differentiation of the different elements that make up the examples, different colors are used:

  • options are highlighted in blue
  • responses are highlighted in red
  • additional parameters are highlighted in purple

Two execution methods

Each option can be executed in two distinct ways. One is shorter, the other is longer and more descriptive. For example, to obtain the modem's IMEI you can either use:

  • short version: gsmctl -i
  • long version: gsmctl --imei

Combined options

Multiple options can be combined together to obtain more than one parameter at a time. For example, to obtain the name of the operator used, signal strength and connection type with one command you can use one of the following:

  • short version: gsmctl -oqt
  • long version: gsmctl --operator --signal --conntype

Note that in the shorter version multiple options can be used together with one hyphen (-) symbol with no spacing, while in the longer version different options must be separated by spaces and before each option a double hyphen (--) is required.

Basic options

This subsection overviews basic gsmctl options, usually related to obtaining certain modem related information.

Get IP address of logical interface


To obtain the IP address of a network interface, use -p or --ip options.

Usage syntax:

gsmctl -p, --ip <INTERFACE>

Where <INTERFACE> is the name of a network interface.

Example: obtaining the IP address of the mobile connection interface:

root@Teltonika:~# gsmctl -p wwan0
10.139.75.221

Where wwan0 is the name of the mobile interface when the connection type is set to QMI (default). You can use the ifconfig command to check the names of existing network interfaces.

Get number of bytes sent


To obtain the number of bytes sent (TX bytes) by a network interface, use -e or --bsent options.

Usage syntax:

gsmctl -i, --bsent <INTERFACE>

Where <INTERFACE> is the name of a network interface.

Example: obtaining the number of bytes sent (TX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -e wwan0
36335

Where wwan0 is the name of the mobile interface when the connection type is set to QMI (default). You can use the ifconfig command to check the names of existing network interfaces.

The units in the response are bytes (not bits).

Get number of bytes received


To obtain the number of bytes received (RX bytes) by a network interface, use -r or --brecv options.

Usage syntax:

gsmctl -b, --brecv <INTERFACE>

Where <INTERFACE> is the name of a network interface.

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -r wwan0
92551

Where wwan0 is the name of the mobile interface when the connection type is set to QMI (default). You can use the ifconfig command to check the names of existing network interfaces.

The units in the response are bytes (not bits).

Get network connection state


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get network link state


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get device IMEI


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get SIM ICCID


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get device model


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get device manufacturer


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get device serial number


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get device revision number


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get IMSI


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get SIM card state


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get GSM signal (RSSI) level


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get WCDMA RSCP level


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get WCDMA EC/IO level


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get LTE RSRP level


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get LTE SINR level


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get LTE RSRQ level


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get cell ID parameter


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get name of operator used


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get operator number


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get data carrier type


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get module temperature


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get PIN/PUK count


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get network information


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get serving cell information


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Get neighbour cell information


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Shutdown the modem


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

List available options


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

Print gsmctl version


To obtain the , use - or -- options.

Usage syntax:

gsmctl -, --

Example: obtaining the number of bytes received (RX bytes) by the mobile connection interface:

root@Teltonika:~# gsmctl -

SMS management options

Read SMS by index



List SMS by type



Print SMS memory usage



Delete SMS by index



Send SMS



Send SMS encoded in base64


Auxiliary options

Send AT command to device


Enter shell mode


Enable debug information


Do not log the command