We are proud to introduce our first FreeCalypso hardware product:
a GSM mobile station development board.
Our board features the same legendary TI Calypso GSM MS chipset
that was used in commercial GSM/GPRS modems such as Openmoko's
(our design is based on TI's Leonardo schematics and Openmoko's PCB layout),
and functions as a standalone (or
bare) GSM modem.
The name of our board is FCDEV3B, which stands for
We originally designed this board for our internal needs, to provide a proper platform for further development of our FreeCalypso software and firmware, but the product is a versatile GSM MS development board that can be used for all kinds of GSM learning and experimentation. The complete design files for our board are published, the Calypso chipset itself is also very well-documented, and ours is not the only software/firmware project that runs on the Calypso.
Physical: a 90x50 mm circuit board, meant to be used bare on a lab bench.
Chipset: the legendary Calypso, specifically PD751992AGHH (C035, DSP ROM version 3606, full 512 KiB of internal SRAM), TWL3025 Iota ABB, TRF6151C Rita RF, Spansion S71PL129NC0 MCP for 16 MiB of flash and 8 MiB of external RAM.
Power: external battery-emulating DC power (3.6V nominal) required; our complete kits include an ultra-compact adapter from AC mains power to our required DC voltage with the necessary amperage rating to support GSM burst transmission.
External interfaces: power input connector, headers for two UARTs, JTAG and MCSI (Calypso DSP auxiliary interface) at 2.8V logic levels, SMA connector for the antenna or RF test equipment.
The primary means of programming, controlling and interfacing with this GSM modem board is serial on two UARTs. Natively our board presents only LVTTL UART interfaces, but our complete kits include an off-the-shelf FT2232D USB adapter board which puts the two UARTs behind a single USB device, appearing as
/dev/ttyUSBxto Linux hosts.
On-board peripherals: SIM socket, power-on and reset pushbuttons, connections for a loudspeaker and a microphone for exercising voice calls.
Radio: our standard version is 900/1800/1900 MHz triband; if someone needs one, we can also build an 850/1800/1900 MHz version. A 5 cm long quadband GSM antenna is included with every board.
Compared to the
mainstream commercial GSM modem kits for
hobbyists and tinkerers and IoT/M2M applications and whatnot,
our FreeCalypso GSM modem is unique in that it is explicitly designed
to allow you to tinker with the inner workings of its firmware:
you are explicitly encouraged to recompile our firmware from source
and to flash your own fw builds into the modem, as well as to study
our source, learn how it works, and make your own improvements which
we never dreamt of.
And if you totally dislike our firmware and wish to write your own
completely from scratch instead, all hardware registers and functions
are fully documented.
Compared to the ultra-cheap Motorola C1xx phones which are also based
on the same Calypso chipset and which may thus seem
at first glance, our board is a fairly direct (by way of Openmoko)
derivative of TI's Leonardo reference design, whereas Motorola's
(really Compal's) hw design is considerably mutilated relative to the
Here are the serious shortcomings of Mot C1xx hardware:
C1xx phones feature malicious wiring in their PCBs that disables the Calypso chip's internal boot ROM. This on-chip boot ROM is there to make Calypso-based GSM devices completely unbrickable, but having it disabled makes C1xx phones brickable: one wrong flash write command, and the phone is unrecoverably toast. Connecting JTAG ranges from extremely difficult to impossible depending on which specific C1xx variant you got, so it is not a viable recovery option either.
In contrast, our board has the Calypso internal boot ROM enabled, thus your flash can be blank, corrupt or filled with the worst malware you can dream of, yet you can still get in via either of the two UARTs (no JTAG needed) and reload the flash. And if you do wish to play with JTAG, it is brought out on a header — no need to tear a phone to shreds and solder wires to tiny pads.
TI's standard firmware for their Calypso-based modems, which runs beautifully on our board, supports not only GSM voice and SMS, but also CSD and GPRS. CSD is a particularly sweet feature which seems to have been dropped by most of the
mainstreamcommercial modem vendors, but it works like a charm on our TI platform. However, TI's standard firmware is designed to make use of two UARTs: one presents a standard AT command interface including CSD and GPRS, while the other is used for a debug and development interface specific to the internals of TI's firmware architecture.
Mot C1xx phones have only one UART practically accessible, hence TI's modem firmware (called TCS211) cannot be ported to them cleanly. We do have a very hacky port working, but CSD and GPRS functionality is inaccessible in it. In contrast, our board has both UARTs fully brought out, hence TI's TCS211 firmware can be exercised in its full glory.
In 2017 we have produced the first batch of FCDEV3B V1 PCB panels, and we have produced a total of 13 non-defective boards from those. Most of these boards have been either sold or given away to project supporters, leaving only a few boards in non-sellable condition for Mother's own use, hence these V1 boards are officially sold out. We do have two unpopulated PCB panels left, from which we could produce another 8 V1 boards, but it does not seem to make sense to build any more V1 boards given that they have a known hardware bug: sleep modes don't work because the way we have wired the flash reset line (following TI's reference schematics) has turned out to not be correct for the high-capacity flash chip we are using.
We now have a revised version of our board design that has this defect corrected (FCDEV3B V2), but we need money to make a new PCB fabrication and assembly run from the updated design files: we need about $5000 USD. Anyone who may be in a position to help, please email Mother Mychaela.