# Telit HE910

The [**Telit HE910**](https://www.telit.com/devices/he910-series/) is a compact cellular modem, supporting 3G/UMTS and includes GSM/GPRS fallback.&#x20;

![](/files/2ahoA6mI44EVjFYfkp9F)

### Prerequisites

* Monogoto SIM
* [Telit HE910](https://www.telit.com/devices/he910-series/) of HE910-GL

### Quick Navigation

* [Connect the Telit HE910 to Monogoto](#connect-the-mc7700-to-monogoto)
* [Network Activation](#network-activation)
* [Test the connection by sending a PING](#test-the-connection-by-sending-a-ping)
* [Useful Links](#useful-links)

## Connect the HE910 to Monogoto

{% hint style="info" %}
**For Windows users.** You need to install a driver to start using the Telit HE910. You can download the driver [**here**](https://www.telit.com/he910-download-zone/) (after signing up to Telit's website).
{% endhint %}

{% hint style="info" %}
Keep the **AT Commands manual** next to you for more details about the commands. Click the PDF below to download the latest version.
{% endhint %}

{% file src="/files/ooPFCFOkC2KG1lONBGS8" %}

**Connect to the modem**, enter the command: `AT` and wait for the response: `OK`

**Reset the modem** to its default configuration:

```bash
AT+CFUN=1,1
```

Set the error reporting to **verbose**, resulting in more descriptive error messages (optional):

```bash
AT+CMEE=2
```

Check the status of the SIM card. The correct response should be: `+CPIN: READY`

```
AT+CPIN?
```

{% hint style="warning" %}
If you receive an error, the SIM may not be inserted properly or the SIM is protected with a PIN. By default, Monogoto SIMs are not PIN protected.
{% endhint %}

### Query device information

Request the modem **hardware version**:

```
AT+CGMM
```

Request the modem **firmware version**:

```bash
AT+CGMR
```

Request the **IMSI** (International Mobile Subscriber Identity):

```
AT+CIMI
```

Request the **ICCID** (Integrated Circuit Card ID), which is the identification number of the SIM card

```bash
AT+CCID
```

### Network Configuration

It is possible to let the modem select the network automatically, or to manually define a network to connect with.

#### **Option 1: Automatic Network Selection**

To set the modem to **automatic network selection** enter the command:

```bash
AT+COPS=0
```

Check the **network and cellular technology the modem** is currently using:

```
AT+COPS? 
```

Expected response: `+COPS: 0,0,"<name of operator>",X`. The last digit indicates the cellular technology:\
`0` indicates **2G/GSM**\
`2` indicates **3G/UTRAN**

#### Option 2: Manual Network Selection

Start with searching for available networks:&#x20;

```
AT+COPS=?
```

{% hint style="warning" %}
It may take several minutes before the modem responds.&#x20;
{% endhint %}

The modem responds with the **names** and the **MCCMNC** codes of the available networks. It also shows the cellular technologies the networks support:&#x20;

```
+COPS: (1,"T-Mobile NL","TMO NL","20416",0),(1,"NL KPN","NL KPN","20408",0),(1,"vodafone NL","voda NL","20404",0),(2,"NL KPN","NL KPN","20408",2),(1,"vodafone NL","voda NL","20404",2),(1,"T-Mobile NL","TMO NL","20416",2),,(0,1,2,3,4),(0,)

OK
```

To find which of the networks Monogoto has **roaming agreements** with, review the [**Coverage lists**](/getting-started/global-public-coverage.md).

{% hint style="info" %}
To find the **profile** of your SIM, visit the [**Monogoto Console**](https://console.monogoto.io/), open the page **Things** ![](/files/OWVV2DjKOVW5iaNl1NcG) and select a specific **Thing**. Scroll down to **Mobile Identities** to find your profile in the column **Network Provider Name**.

![](/files/0IINqu41pSHJSRJYujvX)
{% endhint %}

Check the **network and cellular technology** the modem is currently using:

```
AT+COPS? 
```

Expected response: `+COPS: 0,0,"<name of operator>",X`. The last digit indicates the cellular technology.

**Manually set the network and the cellular technology**:

```
AT+COPS=1,2,"XXXXX",2
```

Replace `XXXXX` with the **MCCMNC** code of your operator, for example`"20404"` for Vodafone NL. Use `2` for UTRAN. It is possible to leave the value for setting the cellular technology out, allowing the modem to select the RAT by itself.

**Check the radio signal strength and signal quality:**

```bash
AT+CSQ
```

{% hint style="info" %}
`+CSQ` returns 2 values separated by a comma. The first value represents the **signal strength** and provides a value between 0 and 31; a higher number indicates better signal strength. The second value represents the **signal quality** indicated by a value between 0 and 7, a lower value indicates better signal quality . If `AT+CSQ` returns `99,99`, the signal is undetectable or unknown.
{% endhint %}

#### Define the cellular band(s) (optional)

It is possible to **lock the modem to specific bands for specific technologies**. This may result in a faster boot cycle as the modem does not need to scan for available bands at startup.

{% hint style="info" %}
For details about the available bands, have a look at the [**AT Commands**](https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M0mPxGpottOEfcucXOR%2Fuploads%2F0MAVnyAG8SzZGjeUAmgx%2Ftelit_3g_modules_at_commands_reference_guide_r13.pdf?alt=media\&token=5495fd9f-618d-4a92-a740-4ff43badc8d5) section **3.4.31**.&#x20;
{% endhint %}

To lock the modem a specific band, enter:&#x20;

```
AT#BND=<GSM_band>,<UMTS_band>
```

To test if the band was properly set, enter:

```
AT#BND?
```

### Network Activation

**Set the APN to** `data.mono`:

```json
AT+CGDCONT=1,"IP","data.mono"
```

Validate if the **APN** is set correctly:

```
AT+CGDCONT?
```

Expected response: `+CGDCONT: 1,"IP","data.mono","0.0.0.0",0,0,0,0,0,0`

**Activate the PDP (packet data protocol) context**:

```
AT+CGACT=1,1
```

**Test** if the PDP context is activated:

```
AT+CGACT?
```

Expected response: `+CGACT: 1,1`

#### Validate if your device received an **IP address**:

```bash
AT+CGPADDR=
```

Expected response: `+CGPADDR: 1,XX.XXX.XX.XXX`

{% hint style="success" %}
Do you see an IP address? **Congratulations! You’ve successfully connected the Telit modem to Monogoto 🎉**&#x20;

Have a look at the **Things** logs in the [**Monogoto Console**](https://console.monogoto.io/) to find more details about the established connection.
{% endhint %}

## Test the connection by sending a PING

A PING test can be performed to test if the modem has an active data connection with a mobile network.

{% hint style="warning" %}
When cellular modems are idle for a long period of time, cell towers might drop the data connection to save resources. Sending regular PINGs is a good method for testing the data connection, as well as for keeping the connection alive because the operator registers your device as being actively used.
{% endhint %}

**Activate a data connection** for PDP index `1`**:**

```
AT#SGACT=1,1
```

Expected response: `#SGACT: 10.140.xx.xxx`

**Send 5 PINGs** to IP address `8.8.8.8`.

```
AT#PING="8.8.8.8",5
```

If the connection is active, you will see 5 PINGs with a number representing the response time in milliseconds. Example response:

```
#PING: 01,"8.8.8.8",19,50
#PING: 02,"8.8.8.8",2,50
#PING: 03,"8.8.8.8",3,50
#PING: 04,"8.8.8.8",2,50
#PING: 05,"8.8.8.8",1,50
```

**Deactivate the PDP context** after completing the PING test.

```
AT#SGACT=1,0
```

Expected response: `OK`

{% hint style="success" %}
**Great work on connecting the Telit HE910 to Monogoto!** Have a look at the **Things** logs in the [**Monogoto Console**](https://console.monogoto.io/) to find more details about the established connection.
{% endhint %}

## Useful Links

* [AT Commands Manual](https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M0mPxGpottOEfcucXOR%2Fuploads%2F0MAVnyAG8SzZGjeUAmgx%2Ftelit_3g_modules_at_commands_reference_guide_r13.pdf?alt=media\&token=5495fd9f-618d-4a92-a740-4ff43badc8d5)
* [Telit HE910 Product Page](https://www.telit.com/devices/he910-series/)
* [Download Windows driver](https://www.telit.com/he910-download-zone/)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.monogoto.io/getting-started/general-device-configurations/iot-devices/telit-he910.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
