FreeCalypso still alive in 2022

Mychaela Falconia mychaela.falconia at gmail.com
Mon Apr 4 05:25:50 UTC 2022


Hello FreeCalypso community,

I am still alive and kickin'!  The first update I have is a new release
of FC host tools:

ftp://ftp.freecalypso.org/pub/GSM/FreeCalypso/fc-host-tools-r17.tar.bz2
ftp://ftp.freecalypso.org/pub/GSM/FreeCalypso/fc-host-tools-latest.tar.bz2

The bulk of changes from the previous r16 release consists of new
tools for working with PWT ringtone melodies for buzzer platforms.
What are buzzer platforms?  They are Calypso phones and development
boards that feature a traditional magnetic buzzer that is driven with
Calypso BU/PWT output; these buzzer-equipped phones and devboards are:

* Motorola C11x/12x and C139/140
* TI D-Sample board (ceremonial support only)
* Our planned FC Venus development board

My project scoping decision for FreeCalypso is to support two types of
ringing noise generation: my long-term goal is to move toward
loudspeaker-based ringing, playing E1 (Calypso DSP) melodies in the
voice audio path going to the same loudspeaker that will be used for
hands-free calls, but this goal is currently far away.  Instead the
first phase of FC Tourmaline fw development on our still-desired Venus
board will use the old-fashioned buzzer as the ringing noise generator,
continuing this aspect from the starting-poing fw we got from TI.  My
previous plan was to keep buzzer ringing support in our FreeCalypso fw
to a minimum, keeping the crappy implementation contained in the
Condat audio driver layer, but I have now revised that plan.

Out of the large firmware code base which we've inherited from TI,
different parts were written by different people/teams at TI (some of
which were actually Condat prior to being bought out by TI), and
different code layers exhibit very different levels of design and
coding quality.  Layer1, the code that drives TI's DSP, is the most
solid; the GSM protocol protocol stack (G23M) culminating in ACI is
also pretty good, and so are most of the "application support" pieces
implemented in TI's RiViera land.  However, those code layers that sit
at the very top of the stack, the handset UI, are the very worst, and
this part of the fw is where the need for cleanup is most acute.

The layer of "Condat drivers", a sort of glue layer between Condat's
UI implementation (MFW+BMI) and underlying platform drivers and
services, is part of the "bad" fw division in need of cleanup, and the
"audio driver" layer is one part that is majorly in need of spring
cleaning.  The mess we got from TI/Condat has buzzer ringing and
simple audio tones (keyclick, call waiting, busy etc) entangled
together in a really gnarly way, and we need to cut that Gordian knot
so that the audio tones subsystem can be cleaned up properly while the
ringer implementation becomes its own separate entity.

The actual transition from using the legacy Condat audio driver layer
to ring the buzzer on incoming calls and SMS to ringing via our new
BUZM (buzzer melody) service implemented in RiViera land won't happen
until we have our Venus development board, but I have made some
preliminary steps: BUZM service itself has already been implemented,
and in the absence of handset UI hook-up, it can be exercised via
AT at BUZ test command.  PWT ringtone melodies for this new buzzer
ringing service are compiled using the new tools introduced with the
just-out fc-host-tools-r17 release, and the whole mechanism works very
nicely on Mot C139, using FC Tourmaline fw built in the developer-only
vpm configuration in which there is no UI.

One side benefit we shall get from this upcoming transition from the
legacy Condat audio ringer to BUZM is that we'll get a selection of
nice ringtones to choose from, rather than just the one basic ringing
sound we've had since 2016 (alternating 800 Hz and 900 Hz tones), and
we shall have these nice ringtones while staying with the buzzer, long
before the much much later transition to Melody E1.

Here is the set of monophonic buzzer ringtone melodies which I proudly
stole from Motorola:

ftp://ftp.freecalypso.org/pub/GSM/ringtone/Motorola-buzzer-melodies.tar.gz

The linked tarball contains 18 ringing tone melodies (intended for
continuous ring-until-answer) plus 2 message alert tone melodies
(short, non-repeating), and all 20 melodies are of Motorola's
professional quality - the quality contrast with various IMY melodies
I've been able to find on the Internet is huge.  These melodies have
been extracted out of that one special C11x fw version for which we
got a linker map file with symbols - the process I used is explained
in the README file inside the tarball - but they can be played on any
Calypso device that has a buzzer.

Zooming out to the bigger picture, I've been doing this ringtone work
and other minor FC developments while I'm waiting for my new Cox
business Internet connection to be installed - hopefully only another
couple of weeks of waiting left.  I recently got a new Slackware x86
server machine put together, and once the new business Internet
connection arrives, I will be installing Osmocom CNI software on that
server.  I already have two NanoBTS units, one for 1900 MHz and one
for 850 MHz - I have had them for a while now - and I've been meaning
to set up my own GSM network for a while, but now is the time to
actually do it.  Using the live network of a regular commercial GSM
operator for FC development would not be a problem if I lived in a
more 2G-friendly country - the kind of tests I need to do at my
current stage of development are very high-level, dealing with handset
UI functions rather than radio or protocol stacks, hence I am NOT
putting any kind of experimental or dangerous or unapproved
(radio-wise) devices on the network - but T-Mobile USA are so hostile
to 2G users these days that any act of moving one of those legacy
"grandfathered" SIMs (no longer available new) from one device to
another is like Russian roulette.  Thus the time has come for me to
set up my own GSM network - I got the BTS hardware, I got the server
machine for running Osmocom CNI software, just waiting for the
business Internet connection for backhaul.

Hasta la Victoria, Siempre,
Mychaela aka The Mother


More information about the Community mailing list