Posts Tagged “umts”

Today we are going to touch on and dig out some old, published articles here on from several months ago, nearly two years ago. Do you remember this article from the end of 2009?

In this article, I talked about the imminent appearance of the new EU3 Cinterion module highlighting that one of its greatest strengths was that it supported the new 900MHz UMTS band that was approaching. The following is worth remembering from this article:

“From a technical point of view it’s better because it offers a greater coverage and penetration than the current UMTS2100, which is ideal for rural coverage and even coverage in cities where the greater the ability to penetrate, the better the coverage in buildings.

It’s obvious from an economic point of view.  One reason is that in order to have a greater scope to cover a specific area, you need to install less base stations with UMTS900 than UMTS2100. Another reason is that the current GSM stations are still valid and they only require small, inexpensive adaptations unlike the UMT2100.

I only have one more tip for those of you who are going to start a new project today with GSM/GPRS modules and who are looking into the future and who are evaluating modules from different manufacturers. The tip is that you read the announcement in the news about the new EU3 module published on Cinterion’s website. Pay special attention to this title, “Cinterion Announces First UMTS Module to Support Seamless 3G Transition for Existing GPRS/EDGE Designs”.


A little later in the article from May 2010:

We talked about everything more deeply on a technical level with the 3G 900MHz (it is recommended reading). One thing to note from this article, as many people asked and will ask this question, is that both in the text as well as in reader’s comments is the clarification that current GSM/GPRS technology (at 900MHz) will coexist with the new 900MHz UMTS.

Finally 10 months ago I posted an article on the EU3 module’s TCP/IP stack:

Note the last paragraph where it says:

“Finally here is a detail worth noting. The same B2B connector and (nearly) the same pinout as in the TC63i have been used with the EU3 Cinterion module. Therefore, whoever is designing a board to use with the TC63i, I recommend you to take a look at an application note called EU3_e-migration (which is part of the EU3 documentation) as it shows small differences to consider when moving from the TC63i to the EU3. Or rather, this document allows us to design a board in a way that we can use the TC63i or EU3 interchangeably, with obvious advantages that we can use in the future. If some of you are undecided whether to use a MC55i or a TC63i with a new design (I see this happen often), you should consider the compatibility with the EU3. At least it helped me to decide.”

Those who betted on the new EU3 Cinterion module or made a design with a TC63i and considered the application notes to make a compatible circuit like we talked about here, they can start to reap the benefits from the 9th of September (because it’s an implementation process that will last a couple of years). :)

Here you have more information of the implementation of the new 900MHz UMTS:

Well, I hope that this article has been interesting for some of you and satisfying for others who have made the right choice. I will now continue working on the new version of the MTXTunnel v6.0 manual which will be out soon. :)



Tags: ,

Comments No Comments »

Today I am going to talk a bit about the new HSDPA EU3 module communication interfaces and we will look at an example of using TCP/IP stack which is integrated into this module as it differs slightly as to what we were used to with the MC55i, XT65, TC63i and TC65i modules.

Communication Interfaces

The EU3 module has a serial port and a USB port. If you know the HC25 module, unlike this it’s possible to simultaneously use the serial port and the USB port with the EU3. In fact there are various ways to configure these interfaces. To do this we use the AT^SDPORT command (which is very important for the first contact with this module) that should be configured correctly.

With AT^SDPORT we can configure 4 modes.

Mode 1: default mode, it should only be used to configure an appropriate speed with AT+IPR and to change to SDPORT=2, SDPORT=3 or SDPORT=4

Mode 2: UART mode. We can only use the EU3 via serial port.

Mode 3: USB mode. To only use the EU3 via USB port, an application modem COM port and a virtual COM port are created. For example, this is in order to be able to send state AT commands to the modem at the same time as having established a 3G/HSDPA connection via the COM modem.

Mode 4: USB + UART mode. To be able to use the USB port in 3G/HSDPA connections and to use the UART to check the modem’s status by using AT commands.

Furthermore, as I indicated at the beginning of the post, we are going to see how to create a 3G/HSDPA connection using the modem’s internal TCP/IP stack i.e. we are going to create a socket to remote server to send/ receive data.

TCP/IP client connection example:

The first thing to do is define the connection profile with the context, e.g. 101



Note: it’s very important to use a context number between 101 and 116 as they are the most appropriate for service profiles (to create sockets). If you use values between 1 and 16 IT WILL NOT WORK as these are used with an external TCP/IP stack.

Afterwards, we simply activate the 101 context that we have just created.

AT + CGACT = 1,101


After receiving the OK, the EU3 modem should be connected to the 3G/HSDPA, i.e. it should have an IP address assigned to the operator. To try it we can run the following command:


+CGPADDR: 101,”″

Note that we did not need to specify neither a login nor a password to initiate the 3G/HSDPA connection. In any case, if we had needed it we would have to use the AT^SGAUTH with something like this:


So once we have the IP, we can connect to a remote server. To do so we will proceed in a similar way to what we do with the rest of the Siemens/Cinterion family (MC55i, XT65, TC63i and TC65i) configuring a service profile or in this case a TCP/IP client socket.


We can open the socket to connect to it:


If we use the trainer as a socket listener we can see how the modem has connected.


Reading/writing with a socket is the same as what we did with the MC55i, XT65, TC63i and TC65i, therefore I’m not going to expand on it. If you have any questions don’t hesitate to ask me.


A new change in the EU3 stack is the ability to use it transparently i.e. without using AT^SISR or AT^SISW commands. In short, everything we send through the modem’s serial port is sent directly via 3G/HSPDA and everything that we receive via 3G/HSDPA is directly forwarded to the modem’s serial port i.e. transparently.

In order to do this we use the AT^SIST command (T for Transparent) after the service is opened with AT^SISO=x. As we have opened the service profile “0”…



You can see that CONNECT appears, just like when you make a CSD call. From this moment, we have a transparent 3G/HSDPA connection. To exit this mode, in a similar way to CSD calls, simply send “+++” to exit command mode.

And that’s it, as you can see this EU3 module’s TCP/IP stack is somewhat different from what we were used to with the rest of the Siemens/Cinterion modules.

Now here’s my personal evaluation. The best thing about this TCP/IP stack is that you can also use a socket in transparent mode, which could be very interesting for many applications. I don’t like the fact that for now (with the current firmware), you can’t create TCP server sockets. This is because the module is really aimed at M2M applications and most of these applications use TCP/Client sockets to send data to remote servers.

Here is a last detail to point out. The EU3 Cinterion module has the same B2B connector and (almost) the same pinout as the TC63i. Therefore anyone who is designing a board for the TC63i, take a look at the application note called EU3_e-migration (part of the EU3 documentation) as it points out slight differences to take into account when changing from a TC63i to a EU3. Or rather, this document will allow you to design a board that you can use with either the TC63i or the EU3, with obvious advantages that will help you in the future. If you, like others, have any doubts about whether to use a MC55i or a TC63i in a new design, you should consider the fact that the TC63i is compatible with the EU3. It would help me decide.

I hope that you have found it interesting. Until next time. ;) Read the rest of this entry »

Tags: , ,

Comments 2 Comments »

Good afternoon. A few days ago I posted about a new Multitech device which I was testing that turned out to be very interesting. Today I’m going to continue talking a little bit about Multitech which is perhaps not a very well-known company, but it has always seemed interesting to me especially for a specific application profile.

It’s a family of products with an architecture that Multitech call “Universal Socket”. In short, as the name suggests it’s about a family of communication modules that all have the pin-out in common i.e. if we create a device with PCB designed for use with one of these “Universal Socket” modules, we can interchangeably “click-in” any of these modules.

What types of modules are in this family?

Well there are a total of 10 modules. On one side we have GSM/GPRS/HSDPA communication modules such as SocketModem iCellSocketModem CellSocketModem HSDPA (note is has a Cinterion HC25),  SocketModem EDGE and SocketModem GPRS.


On the other side we have analog communication modems like SocketModem and SocketModemIP.

Finally we have modules that are suitable for other types of communication like SocketEthernet IP (a module which is basically as Serie/Ethernet convertor), SocketWireless Bluetooth (A Bluetooth -serial module i.e. with SPP Bluetooth profile, class 1 (100m range) and  socketWireless Wifi (a wifi-serial gateway for 802.11b/g networks).

So if I design a device for one of these modules, if one day I want to equip my device with GPRS connectivity, Bluetooth, Ethernet or Wi-Fi etc. for a project, would I only have to swap one module for another?

Yes that’s it.

But would I have to make a lot of software changes?

No. The modules have a common serial communication and configuration interface. All multisocket devices are configured through AT commands and some of them (those that provide IP connectivity) have what they call “Universal IP” in Multitech, a common TCP/IP stack i.e. you only need to create a single host software to control each of the modules, whether it’s a GPRS module, HSDPA, Wi-Fi, Ethernet etc.

Very interesting, the best thing I can do from now on is design my devices with one of these modules.

No. Look at the photo of the “Multisocket HSDPA” module in this post, as I said before is put together with a HC25 Cinterion module. What would be cheaper to use, the Multitech module or just the HC25 module? Well obviously it’s cheaper to just use the HC25 module. The same thing happens with “SocketWireless Bluetooth”, it’s cheaper to use a Bluegiga WT11 module than one of these modules. This means that it will depend on the connectivity features that you need for a particular application.

 So when do you recommend to use this type of module?

From my point of view, and as I said from the beginning, they are very interesting but only designed for devices when we want to provide various connectivity possibilities without needing to redesign hardware and with minimal or no software changes (which really saves time designing and improves “time to market”).

 I hope that you find these modules interesting for an application. Until next time. 



Tags: , , , , ,

Comments 1 Comment »

Good afternoon. In today’s post I’m going to talk about how to connect a UMTS/HSDPA modem to the internet (specifically Matrix‘s MTX-H25, based on Siemens HSDPA/Cinterion HC25 modem) with a Linux operating system (en specifically an Ubuntu). I’m not going to uncover anything new as you can find the information in the modem user guide. The only difference is that I’m going to post specific steps from 1-7 of what to do on here. Thanks go to my friend Linuxero Javi who is the original author of the manual. ;)


Step 1.

First we set the MTX-HC25 modem to MDM mode, it’s very easy to do this from Windows. Take the modem (as if it had just come out of the factory) and connect it to a PC with Windows. After a few seconds (about 10) you will see that “My Computer” appears in “Mass Storage Device” like it was a pen drive. Go into it and the modem drivers will be installed (yes you’re right, the MTX-HC25 drivers are inside the modem itself, cool right?)

Once the drivers are installed, you will see that three new devices have been installed in Windows Control Panel (a network card, a USB modem and a virtual COM). Look at the virtual COM that has been created to find out the COM port number.

Once we have the COM port can we open the HyperTerminal and run the at^susb command. You have to configure it like I have below; I won’t go into any more details other than saying that the “Startup” must be in MDM mode in order to be able to work with Linux.

^SUSB: “Startup”,”Mdm”
^SUSB: “MaxPower”,”10″
^SUSB: “PowerSource”,”SELF”
^SUSB: “Mdm/DD”,”0″
^SUSB: “MdmNet/DD”,”0″
^SUSB: “MdmNet/TO”,”60000″
^SUSB: “MS/CRC”,”6B1A1842?”
^SUSB: “MS/DD”,”0″
^SUSB: “MS/OnEject”,”MdmNet”
^SUSB: “MS/WProt”,”Disabled”

Leave the parameter ^SUSB: “MdmNet/TO”,”60000″ as it is in case you get yourself into a mess as Linux can retrieve it from Windows (you must connect it to Windows and after 60 seconds it will be visible again from Windows, returning to MdmNet mode). When everything is ready in Linux it is recommended that you set this parameter to 0.

Step 2.

Install the standard CDC-ACM drivers in Linux writing this in the control panel:

sudo modprobe cdc_acm

sudo modprobe usbserial vendor=0×0681 product=0×0047

Then take the modem, power it up and connect it via USB. If you have done this before, it may have become a Mass Storage (if it has been over a minute from when you plugged it in until when you installed the drivers). If so, unplug the power supply then plug it in again.

After doing this we send the “Isusb” command via Linux console so that we can see the MTX-H25 modem listed as a USB device.

Once we have done this, if we want we can send AT commands to the modem. We can do it by simply running this from the Linux console:

echo AT+cfun=1,1 > dev/ttyUSB0

(With the above example, we reset modem)

Step 3.

Launch the configuration script and check that Linux can detect our modem, run this from the Linux console:

sudo wvdialconf

If all goes well you will see the MTXH25 installed in /dev/ttyACM0


Edit the configuration file /etc/wvdial.conf :

[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Phone = *99***1#
New PPPD = yes
Modem Type = USB Modem
Baud = 460800
Auto DNS = off
Modem = /dev/ttyACM0

[Dialer movistar]
Init3 = AT+CGDCONT=1,”IP”,””
Password = MOVISTAR
Username = MOVISTAR

[Dialer vodafone]
Init3 = AT+CGDCONT=1,”IP”,””
Password = vodafone
Username = vodafone

Step 5.

We’re missing something.

Edit the file /etc/ppp/peers/wvdial with the ppp settings for the connection:

# Name
name wvdial
# No authentification
# Use PPP interface as default IP table route
# PPPD must not force an IP address’
# Do not use the Server DNS
# usepeerdns
mtu 472

Step 6.

Now you can run “wvdial” to connect to the net with the modem. To do this run wvdial from the Linux console along with the desired operator. If we have configured the /etc/wvdial.conf file the same as in step 4, it’s like this:

wvdial movistar

Step 7.

Enjoy the MTX-H25 modem’s HSDPA speed. 

I hope this has been useful to anyone googling “MTX-H25 Linux”.  I’ll be back another day ;)

Tags: , , , , ,

Comments 18 Comments »