# 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;

![](https://3922449203-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M0mPxGpottOEfcucXOR%2Fuploads%2FYazy9ZNEp2bca9y3rXvS%2Fimage.png?alt=media\&token=333a01ef-5c5c-41d6-8beb-9d6ccb274ca1)

### 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="<https://3922449203-files.gitbook.io/~/files/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>" %}

**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**](https://docs.monogoto.io/getting-started/global-public-coverage).

{% hint style="info" %}
To find the **profile** of your SIM, visit the [**Monogoto Console**](https://console.monogoto.io/), open the page **Things** ![](https://3922449203-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M0mPxGpottOEfcucXOR%2Fuploads%2FfH8DCNlIW5R2VRiHwMG5%2FThings.png?alt=media\&token=2a63b922-cb41-4271-803e-ba9eab36566d) and select a specific **Thing**. Scroll down to **Mobile Identities** to find your profile in the column **Network Provider Name**.

![](https://3922449203-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M0mPxGpottOEfcucXOR%2Fuploads%2FddQeceTZxjtQYFPAHe95%2Fimage.png?alt=media\&token=4a3f1cbf-3922-48f9-af5d-2e292bd76b72)
{% 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/)
