Das Signal <das.sig...@freecalypso.org> wrote: > Then I compiled the new gsm-fw and flashed it, then had the phone > connect to the test network and place a phone call, using Qt's GUI. > The good news is that everything worked fine! The other phone rang, > and the audio was of good quality.
At first I was going to say "yay, awesome, it looks like voice calls do work fine in our gsm-fw when the plain FR codec is used" - until I tried to reproduce it myself... I don't have a test network, but I was wondering if we could make our entroubled gsm-fw usable on real networks by having it advertise its capabilities as supporting FR only, and thereby bypass the currently broken AMR support. TI's protocol stack knows what codec capabilities it should advertise to the network based on the configuration of the MSCAP record in its PCM database. This record will be read from FFS if there is a file named /pcm/MSCAP, otherwise pcmdata.c gives the compiled-in default. If you look at pcmdata.c in either leo2moko or gsm-fw (the latter came from the former), you'll see a preprocessor conditional based on the DSP ROM version number: older versions of the Calypso chip (like the one on the D-Sample I got) have ROM versions that don't support AMR at all, and the MSCAP setting for these older DSP ROM versions has AMR excluded. So the first thing I tried was setting this MSCAP record as TI would set it for older DSP versions sans AMR - I did it in gsm-fw, hoping to get a libre fw version that can make voice calls successfully. But no joy: when I tried dialing a call, the DSP blew up with errors. (In contrast, with AMR it doesn't blow up, just puts noise out on the earpiece, although the voice uplink seems to be fine.) Then I realized that the EFR codec is still enabled, and the network probably selects EFR as the next best choice after AMR. I also recall reading somewhere (maybe it was in the DSP patch notes in the TSM30 source) that our funky DSP ROM version 36 requires some special initialization not only for AMR, but also for EFR. Then I tried setting MSCAP to {0x01, 0x00, 0x00, 0x00, 0x00, 0x00} - enabling only FR and nothing else. But *still* no joy: this time the DSP does not blow up, but the earpiece output is very quiet noise, almost (but not quite) silence. And furthermore, when I tried calling my test voice mailbox and speaking, then played it back, only silence/noise got recorded as well - whereas in my earlier experiments without disabling any codecs (thus presumably running AMR) I got my voice into the recording just fine, indicating that the uplink from the experimental gsm-fw was fine. Then I thought that perhaps Operator 310260's network might have non- working FR support, considering that EFR was probably fully rolled out when this network just started deploying. But nope, that isn't the case: I tried setting the same FR-only MSCAP configuration in leo2moko-debug, and it still worked fine, as in the voice downlink in the earpiece was fine. (It sounded a little different, confirming that a rarely used older codec was in use.) I've done everything I could think of. I give up. How did you make it work for you? -- Mychaela, poor t-girl tearing her hair out in frustration - no, not literally of course, it's too precious for that... _______________________________________________ Community mailing list Community@freecalypso.org https://www.freecalypso.org/mailman/listinfo/community