Blog Archives

ModemManager, now with Iridium satellite network support

ModemManager and the Iridium satellite network

I recently sent a new ‘iridium’ plugin for review upstream, this time for Iridium modems. The plugin was developed using a Iridium 9522B Satellite Transceiver modem connected through RS232, properly handled by ModemManager’s plugin system thanks to the extended RS232 support available in git master. The ‘iridium’ plugin handles these modems as any other GSM modem, even if it has nothing to do with GSM technologies.

Iridium is a constellation of 66 active (plus spares) LEO satellites orbiting at an altitude of 781 km, which gives phone and network coverage to every point in Earth. It was initially thought to be a constellation of 77 satellites, therefore named ‘Iridium’ after the chemical element with atomic number 77. The name didn’t change to ‘Dysprosium‘ when it was redesigned to maintain only 66 active satellites, no wonder why.

Even if the Iridium modems expose a GSM-modem like AT command set, several special things needed to be considered. For example, IP address setup via PPP needed more than the 20s hardcoded in NetworkManager, due to the extreme latency of the satellite network. Therefore, NM was also updated to allow ModemManager plugins to specify a specific ‘IpTimeout’ value.

See my email to the NM mailing list for further information on how to use ModemManager with Iridium support.

Ammonit Measurement GmbH sponsoring some hardware for ModemManager development

In Lanedo we have worked with Ammonit Measurement GmbH to help them with the improvement of ModemManager to handle Wavecom, Cinterion and Iridium modems. The guys at Ammonit were kind enough to sponsor some modems, so that I can spend my free time in developing and improving ModemManager, as well as in testing the modems before stable releases (Dan will probably be happy for that):

  • Sierra Wireless Fastrack Xtend FXT009 (GPRS modem, USB, handled by the ‘wavecom’ plugin)
  • Cinterion TC63i (GPRS modem, RS232, handled by the ‘cinterion’ plugin)

So, thanks Ammonit!

Trisquel Taranis is here, including a MINI edition!

After a great job done during several months by RubĂ©n and the rest of the Trisquel team, the long-waited Trisquel 4.0 Taranis” was published during the Software Freedom Day.

This new release of Trisquel is based on Ubuntu 10.04 “Lucid”, and provides a fully-free distribution of GNU/Linux, running the 100% free Linux-libre 2.6.32 kernel. This release comes in two different primary versions, the “Standard Edition” and the “Mini Edition”.

The “Standard Edition” is meant for standard desktop computers, and includes:

The “Mini Edition”, focused on computers with CPU/RAM limitations like Netbooks, includes:

I’ve been using Trisquel Taranis Standard Edition since some months ago, while it was not even in beta stage; but also wanted to check the look and feel and performance of the Mini version, so I decided to try it in a VM.

The boot menu when installing Trisquel Taranis is really appealing:

Boot menu in Trisquel Mini installation CD

Remember that you can try Trisquel GNU/Linux without installing it!

This is the initial look and feel of Trisquel Taranis Mini after installing it and logging in the user account. Note to Windows users, what’s the difference between a fresh Windows installation and a GNU/Linux installation? Just check the image…

The Trisquel Taranis Mini desktop

Answer: The “welcome” popup in GNU/Linux tells you about new software updates, it doesn’t tell you “Your computer is at risk!!!” because you didn’t install the antivirus or whatever. GNU/Linux doesn’t need an antivirus, and a fresh install is just SECURE, not like a Windows one.

The lightweight Mini edition will use only ~90MB of RAM when booted, which makes it perfect for netbooks and laptops without much memory:


So, if you want to give it a try, Download Trisquel Taranis! And if you like it, you can also Donate to the project, or buy some nice Trisquel Merchandise

Understanding Valgrind memory leak reports

I tried to write a tutorial focusing on the type of memory leaks as detected internally by Valgrind and the generated output leak reports.

The PDF is available in the following URL:

And the simple C tester to generate each type of memory leak (cases 1 to 9 in the Valgrind Manual) is available here:

Comments, fixes, whatever… highly appreciated. You could even send me a diff file to the original LaTeX source, available in:

The document is licensed under the GFDL 1.3, and the tester is published in the public domain.