T-Mobile shell commands
Once you have successfully connected to your developer kit via the CLI you can run any of T-Mobile shell commands listed in the table below.
(Click the command name to see a full list of available subcommands and required arguments.)
Command | Description |
---|---|
battery |
Battery and charger status |
ble |
Bluetooth low-energy (BLE) commands |
buzzer |
Buzzer commands |
certs |
Certificate of authority (CA) commands |
dfu |
Device firmware updates |
dns |
Perform DNS lookup |
file |
File commands |
gnssversion |
Get GNSS chip version |
http |
Get HTTP URL |
ifaces |
List network interfaces |
json |
JSON data options |
kermit |
Embedded kermit |
location |
Get latitude and longitude |
modem |
Modem status and control |
ping |
ICMP ping |
pm |
Device power management controls |
sntp |
Retrieve the current time |
sockets |
List open sockets |
sys_pm |
System power management controls |
tcp |
Send and receive transmission control protocol (TCP) packets |
test |
Run automated tests |
udp |
Send and receive user datagram protocol (UDP) packets |
version |
Print version details |
wifi |
Wi-Fi status and control |
Battery
Battery and status levels.
Subcommand | Description | Syntax | Example response |
---|---|---|---|
charger |
Get charger status | tmo battery charger |
Charger has VBUS and is charging |
percent |
Get battery level (percent) | tmo battery percent |
Battery level 54 percent |
voltage |
Get battery level (voltage) | tmo battery voltage |
Battery voltage 3.900V |
Bluetooth low-energy
Bluetooth low-energy (BLE) commands.
Subcommand | Description |
---|---|
smp |
Security manager protocol |
adv |
Advertise bluetooth settings |
rssi |
Received signal strength indicator |
Security manager protocol
Bluetooth low-energy security manager protocol (SMP) controls.
Subcommand | Description | Syntax | Example response |
---|---|---|---|
enable |
Enable security manager protocol (SMP) | tmo ble smp enable |
SMP Enabled. |
disable |
Disable SMP | tmo ble smp disable |
SMP disabled. |
callbacks |
Show enabled callbacks | tmo ble smp callbacks |
CONFIRM: disabled DISPLAY: enabled KEYBOARD: disabled |
toggle |
Toggle callbacks | tmo ble smp toggle |
A list of security manager protocol toggle subcommands |
respond |
Send response | tmo ble smp respond |
A list of security manager protocol response subcommands |
Toggle security manager protocol
Toggle bluetooth low-energy security manager protocol (SMP) callbacks.
Subcommand | Description | Syntax | Example response |
---|---|---|---|
keyboard |
Toggle keyboard | tmo ble smp toggle keyboard |
Keyboard is now enabled |
confirm |
Toggle confirm | tmo ble smp toggle confirm |
Confirm is now enabled |
display |
Toggle display | tmo ble smp toggle display |
Keyboard is now disabled |
Send security manager protocol response
Send a security manager protocol (SMP) response.
Subcommand | Description | Syntax | Example response |
---|---|---|---|
key |
Send passkey | tmo ble smp respond key <passkey> |
Sending passkey <passkey> |
confirm |
Send confirm | tmo ble smp respone confirm |
|
cancel |
Send cancel | tmo ble smp respond cancel |
Advertisement
Bluetooth low-energy (BLE) advertisement commands.
Subcommand | Description | Syntax | Example response |
---|---|---|---|
conn |
Advertise as connectable | tmo ble adv conn |
Advertising successfully started |
eddystone |
Advertise as Eddystone beacon | tmo ble adv eddystone |
Advertising successfully started |
ibeacon |
Advertise as iBeacon | tmo ble adv ibeacon |
Advertising successfully started |
Received signal strength indicator
Bluetooth low-energy (BLE) peripheral received signal strength indicator (RSSI) read.
Subcommand | Description | Syntax | Example response |
---|---|---|---|
rssi |
BLE RSSI read | tmo ble rssi |
No active connection(s) |
Buzzer
Buzzer jingle, tone and volume.
Arguments
<Hz>
: The frequency in Hz<time>
: The time, in seconds<volume>
: The volume, as a percent
Subcommand | Description | Syntax | Example response |
---|---|---|---|
jingle |
Play T-Mobile jingle | tmo buzzer jingle |
The T-Mobile jingle plays on your developer kit |
ramp |
Play ramp tune | tmo buzzer ramp |
A ramp tune will play on your developer kit |
tone |
Play a specific tone for a set time | tmo buzzer tone <Hz> <time> |
A specific tone will play on your developer kit for the number of seconds specified |
vol |
Set buzzer volume | tmo buzzer vol <volume> |
The volume on your developer kit will be set to the specified percentage |
Certificate of authority
Certificate of authority (CA) commands.
Arguments
<devid>
: The device ID- 1: modem
- 2: Wi-Fi
<URL>
: The URL from which to download the CA<index ID>
: The index ID
Subcommand | Description | Syntax | Example response |
---|---|---|---|
dld |
Download certificate | tmo certs dld <devid> <URL> |
|
info |
Print certificates | tmo certs info |
|
list |
List certificates | tmo certs list |
|
load |
Load certificates | tmo certs load <index ID> |
Firmware updates
Device firmware updates commands.
Arguments
<URL>
: The firmware URL<target>
: The target ID<iface>
: The interface ID<modem delta file>
: The file to use to update the firmware
Subcommand | Description | Syntax | Example response |
---|---|---|---|
base_url |
Sets the URL from which to download the firmware | tmo dfu base_url <URL> |
The URL will update in the settings |
download |
Downloads the firmware to the designated target | tmo dfu download <target> |
The firmware will begin to download to the designated target |
iface |
Sets the interface to which the firmware should be downloaded | tmo dfu iface <iface> |
The interface indicated will be set as the default interface to download firmware |
settings |
Prints out the current firmware update settings | tmo dfu settings |
Print out of the current firmware update settings |
update |
Updates the firmware on the target provided using the file provided | tmo dfu update <target> <modem delta file> |
Updates firmware using the file provided |
version |
Prints out the firmware version on the provided target | tmo dfu version <target> |
Prints out the current version of firmware installed on the target provided |
DNS lookup
Syntax | Example response |
---|---|
tmo dns <devid> <hostname> |
File commands
Look up DNS information the hostname provided.
Arguments
<source file>
: The source file<destination file>
: The file's destination<folder>
: The file folder<filename>
: The file name
Subcommand | Description | Syntax |
---|---|---|
cp |
Copy the source file provided to the destination provided | tmo file cp <source file> <destination file> |
ll |
List all files in the folder provided | tmo file ll <folder> |
mv |
Move the file to the destination provided | tmo file mv <source file> <destination file> |
sha1 |
Compute a file SHA-1 | tmo file sha1 <filename> |
GNSS version
Prints out the device's GNSS or GPS firmware version.
Syntax | Example response |
---|---|
tmo gnssversion |
GNSS chip FW version: 131143.49890765.4974 |
HTTP
Get HTTP URL.
Arguments
Syntax | Example response |
---|---|
tmo http <devid> <URL> <file> |
Interfaces
Lists all interfaces currently available on the developer kit.
Syntax | Example response |
---|---|
tmo ifaces |
A list of available interfaces and their IDs |
JSON
Commands to configure JSON data.
Arguments
<iface>
: The interface ID<interval>
: The transmission interval, in seconds<path>
: The endpoint path
Subcommand | Description | Syntax | Example response |
---|---|---|---|
base_url |
Set the base URL for API requests | tmo json base_url |
The endpoint base URL will be updated |
disable |
Disable JSON transmission | tmo json disable |
If JSON was previously enabled, the payload will stop printing on the screen |
enable |
Enable JSON transmission | tmo json enable |
Nothing will immediately print on screen. Soon, the JSON payload will begin printing on the screen at periodic intervals |
iface |
Set the interface through which to send JSON transmissions | tmo json iface <iface> |
The default interface will be updated |
interval |
Set the transmission interval (in seconds) | tmo json interval <interval> |
The transmission interval will be updated |
path |
Set the path (endpoint) for API requests | tmo json path <path> |
The endpoint path will be updated |
payload |
Print the most recent JSON payload | tmo json payload |
The most recent JSON payload will print on screen |
settings |
Print the current JSON settings | tmo json settings |
The current JSON settings will print on screen |
Embedded Kermit
Embedded Kermit file transfer protocol.
Arguments
<files>
: The files to send
Options
Option | Description |
---|---|
-r |
Receive files |
-s <files> |
Send files |
-p [neoms] |
Parity: none, even, odd, mark, space |
-b [1235] |
Block check type: 1, 2, 3 or 5 |
-k |
Keep incompletely received files |
-B |
Force binary mode |
-T |
Force text mode |
-R |
Remote mode |
-L |
Local mode |
-h |
Help |
Location
Location information.
Syntax | Example response |
---|---|
tmo location |
The latitude, longitude, SATS, HDOP, TTFF, and 1PPS of the developer kit |
Modem
Device modem commands.
Arguments
<iface>
: The interface ID<cmd_str>
: The command string. Must be one of the following:imei
imsi
iccid
ssi
sim
apn
msisdn
conn_sts
ip
ip6
version
golden
sleep
wake
awake
psm
edrx
Syntax | Example response |
---|---|
tmo modem <iface> <cmd_str> |
request: sleep, response SLEEP |
Ping
Ping a specified IP to check whether it exists.
Arguments
<iface>
: The interface ID<host>
: The host IP address-c
: The ping count-s
: The ping's packet size, in bytes-t
: The ping's timeout, in seconds
Syntax | Description |
---|---|
tmo ping -c 3 -s 64 -t 30 2 <host> |
Ping the specified host for 3 seconds with a packet size of 64 bytes with a 30 second timeout |
Power management
Power management controls for internal devices.
Arguments
<devid>
: The device ID. For example,pwmleds
Subcommand | Description | Syntax | Example response |
---|---|---|---|
get |
Get a device's power manangement state | tmo pm get <devid> |
Device is in state ACTIVE |
off |
Put a device into the off/unpowered state | tmo pm off <devid> |
The device's power will be switched off. |
on |
Put a device into the on/powered state | tmo pm on <devid> |
The device's power will be switched on. |
resume |
Resume a device from the suspended state | tmo pm resume <devid> |
<inf> modem_murata_1sc: Resume successful |
suspend |
Put a device into the suspended state | tmo pm suspend <devid> |
<inf> modem_murata_1sc: Suspend successful |
Simple network time protocol
Synchronize with the clock of the given server using simple network time protocol (SNTP).
Arguments
<server>
: The IP address of the server with which to be synced. For example, 8.8.8.8
Syntax | Example response |
---|---|
tmo sntp <server> |
successfully updated RTC |
Sockets
Lists all available sockets.
Syntax | Example response |
---|---|
tmo sockets |
A list of all the sockets that are currently open |
System power management
System power management controls.
Subcommand | Description | Syntax | Example response |
---|---|---|---|
active |
Puts device into the active state | tmo sys_pm active |
Entering active state... |
fulloff |
Puts device into the off state (without RTCC) | tmo sys_pm fulloff |
The device will turn off, without RTCC |
idle |
Puts device into the idle state | tmo sys_pm idle |
Entering runtime-idle state... |
off |
Puts device into the off state (with RTCC) | tmo sys_pm off |
The device will turn off, retaining RTCC |
standby |
Puts device into the standby state | tmo sys_pm standby |
Entering standby state... |
suspend |
Puts device into the suspend state | tmo sys_pm suspend |
The device will enter suspend mode |
Transmission control protocol
Transmission control protocol (TCP) commands.
Arguments
<socket>
: The selected socket<ip>
: The IP address to connect to<port>
: The port to connect to<iface>
: The interface ID<size>
: The size of the payload to be sent<wait time (seconds)>
: The time to wait to receive the SMS message<payload>
: The payload to be sent<phone number>
: The phone number to send the message to<message>
: The message to be sent
Subcommand | Description | Syntax | Example response |
---|---|---|---|
close <socket> |
Close the selected socket | tmo tcp close <socket> |
The selected socket will close |
connect <socket> <ip> <port> |
Connect the socket to the selected IP | tmo tcp connect <socket> <ip> <port> |
|
create <iface> |
Create a socket on the selected interface | tmo tcp create <iface> |
Created socket 0 |
recv <socket> |
tmo tcp recv <socket> |
||
recvb <socket> <size> |
tmo tcp recvb <socket> <size> |
||
recvsms <socket> <wait time (seconds) |
tmo tcp recvsms <socket> <wait time (seconds) |
||
secure_create <iface> |
Create a secure socket on the selected interface | tmo tcp secure_create <iface> |
Creating secure TCP (TLS) socket Created socket 2 |
send <socket> <payload> |
tmo tcp send <socket> <payload> |
||
sendb <socket> <size> |
tmo tcp sendb <socket> <size> |
||
sendsms <socket> <phone number> <message> |
Send an SMS message to the phone number over the selected socket | tmo tcp sendsms <socket> <phone number> <message> |
|
xfersz <size> |
tmo tcp xfersz <size> |
Close
Tests
Test the status of your developer kit's systems.
Subcommand | Description |
---|---|
mfg |
Tests the developer kit's hardware |
qa |
Quality assurance tests |
Manufacturing
Subcommand | Description | Syntax | Example response |
---|---|---|---|
all |
Runs all tests (buzzer, LED and misc.) | tmo test mfg all |
Buzzer, LED and miscellaneous tests will run in succession |
buzzer |
Runs buzzer tests | tmo test mfg buzzer |
buzzer_test - function was successful |
led |
Runs LED tests | tmo test mfg led |
led_test - function was successful |
misc |
Runs miscellaneous tests | tmo test mfg misc |
i2c scan I2C_0 - shell command was successful |
Quality assurance
Quality assurance (QA) tests will be added at a later date.
User datagram protocol
User datagram protocol (UDP) commands.
Arguments
< w or d>
: The operationw
: writed
: delete
<socket>
: The selected socket<ip>
: The IP to connect to<port>
: The port to connect to<wait time (seconds)>
: The time to wait to receive the SMS message<payload>
: The payload<size>
: The size of the payload<phone number>
: The phone number to send the message to<message>
: The message to be sent
Subcommand | Description | Syntax | Example response |
---|---|---|---|
cert |
Write or delete a certificate | tmo udp cert <w or d> <socket> |
|
ca |
Write or delete a certificate of authority (CA) | tmo udp ca <w or d> <socket> |
|
close |
Close the selected socket | tmo udp close <socket> |
|
connect |
Connect the socket to the selected IP | tmo udp connect <socket> <ip> <port> |
|
create |
Create a socket on the selected interface | tmo udp create <iface> |
Created socket 2 |
key |
tmo udp key <w or d> <socket> |
||
profile |
tmo udp profile <a or d> <socket> |
||
secure_create |
Create a secure socket on the selected interface | tmo udp secure_create <iface> |
Created socket 3 |
recv |
tmo udp recv <socket> |
||
recvb |
tmo udp recvb <socket> <size> |
||
recvfrom |
tmo udp recvfrom <socket> <ip> <port> |
||
recvsms |
tmo udp recvsms <socket> <wait time (seconds)> |
||
send |
tmo udp send <socket> <payload> |
||
sendb |
tmo udp sendb <socket> <size> |
||
sendsms |
Send an SMS message to the phone number over the selected socket | tmo udp sendsms <socket> <phone number> <message> |
|
sendto |
tmo udp sendto <socket> <ip> <port> <payload> |
||
xfersz |
tmo udp xfersz <size> |
Version
Prints the current version of tmo_shell
installed on your developer kit.
Syntax | Example response |
---|---|
tmo version |
Details of the current version tmo_shell |
Wi-Fi
Wi-Fi controls.
Arguments
<iface>
: The interface ID. (Must be set to2
)<SSID>
: The Wi-Fi network's name<PSK>
: The Wi-Fi password
Subcommand | Description | Syntax | Example response |
---|---|---|---|
connect |
Connects to the given Wi-Fi network | tmo wifi connect <iface> <SSID> <PSK> |
Connected |
disconnect |
Disconnects from the Wi-Fi network | tmo wifi disconnect <iface> |
Disconnection request done (0) |
scan |
Scans for available Wi-Fi networks | tmo wifi <iface> |
A list of available Wi-Fi networks |
status |
The Wi-Fi status | tmo wifi status <iface> |
A table listing the state of the Wi-Fi on the given interface |