About | Current product | Future products | Software | Community | Contribute

Calypso GSM firmware offerings

The current focus for FreeCalypso GSM firmware development is to target our own hardware first and foremost, as opposed to alien hardware like Mot C1xx or the Pirelli DP-L10. That said, right now we have two different FreeCalypso firmware projects:

Citrine

This firmware is built with gcc (no proprietary build tools) from full source (no blobs), and provides voice call and SMS functionality with control via AT commands — but no CSD, fax, GPRS or on-board UI. It can be run on our own FCDEV3B, on Openmoko's modem, on the Pirelli DP-L10, and on all 3 Motorola C1xx subfamilies.

Magnetite

This firmware is currently built with TI's proprietary TMS470 compiler under Wine; transition to building with gcc is in the plans for the future after we fully deblob it. The Magnetite Hg tree is where we do the deblobbing work, i.e., transitioning pieces of the firmware from the use of binary blobs to recompilation from source (either reconstructing that missing source from disassembly or fitting source pieces from other fw versions) piece by piece.

Our Magnetite firmware can be built in several different configurations corresponding to different degrees of deblobbing; the supported targets are our own FCDEV3B, Openmoko's modem, Motorola C139 and Pirelli DP-L10. Magnetite retains the full functionality of TI's official firmware for the Calypso (TCS211): voice, SMS, CSD, fax, GPRS and advanced audio features.

Starting sources

Our Calypso GSM firmware works listed above are based on the following 4 TI source leaks/finds, in the chronological order of discovery or liberation: TSM30, LoCosto Peek/FGW, MV100 and TCS211 from Sotovik.

In the order of importance, TCS211 from Sotovik has been the most essential piece (the foundation of our work), followed by the LoCosto source from Peek/FGW. The MV100 source fragments have helped fill a few blanks, and we have not taken any code at all from the ancient and heavily mutilated TSM30 source, beyond a little bit of aid in the reconstruction of the TCS211 version of L1. (We have reconstructed the latter by starting with the LoCosto version and massaging it until it compiles into an equivalent of TCS211 binary objects, sometimes looking at the TSM30 version for comparison.)

FreeCalypso host tools

We have developed an extensive suite of host tools for loading our own firmware into Calypso devices, for breaking into locked-down Mot C1xx specimen, for interpreting debug traces emitted by various firmwares, for interacting with running firmwares on Calypso targets (both our own and some alien ones), for manipulating device flash file systems and so forth. These tools run under Unix/Linux, and are 100% our own original work.

The current development version of our FC host tools can be found in the freecalypso-tools Hg repository; released versions can be found in our main FTP area.