[PATCH] Added echo suppression fixes for the OpenMoko Neo phone.

HouYu Li karadog at gmail.com
Mon Mar 9 14:31:17 CET 2009


OK. I have committed your patch to my main repository. Now building
binaries.

On Mon, Mar 9, 2009 at 8:21 PM, Chris Samuel <chris at csamuel.org> wrote:

> The original Qt Extended 4.4.3 initially set both echo
> suppression and noise reduction in separate AT commands
> which might result in the second command negating the
> first one.  It also only set them for outgoing calls.
>
> This new version uses the AT command to set both
> echo suppression and noise reduction at the same
> time as well as setting them on initialisation and
> after a wake up.
>
> This is identical to the patch against QtE 4.4.2 and
> applied cleanly with no fuzz with QtE 4.4.3.
>
> Signed-off-by: Chris Samuel <chris at csamuel.org>
> ---
>  .../src/plugins/phonevendors/neo/vendor_neo.cpp    |   17
> ++++++++++++++---
>  1 files changed, 14 insertions(+), 3 deletions(-)
>
> diff --git a/devices/neo/src/plugins/phonevendors/neo/vendor_neo.cpp
> b/devices/neo/src/plugins/phonevendors/neo/vendor_neo.cpp
> index d27b4eb..35f7a0b 100644
> --- a/devices/neo/src/plugins/phonevendors/neo/vendor_neo.cpp
> +++ b/devices/neo/src/plugins/phonevendors/neo/vendor_neo.cpp
> @@ -153,8 +153,7 @@ QString NeoCallProvider::dialVoiceCommand(const
> QDialOptions& options) const
>  // do undocumented echo cancellation and noise reduction
>
>     modemService->primaryAtChat()->chat( "AT at ST=\"-26\"" );
> -    modemService->primaryAtChat()->chat( "AT%N028B" );
> -    modemService->primaryAtChat()->chat( "AT%N0125" );
> +    modemService->primaryAtChat()->chat( "AT%N0187" );
>     return QModemCallProvider::dialVoiceCommand(options);
>  }
>
> @@ -551,11 +550,14 @@ NeoModemService::NeoModemService
>
>     //  chat("AT%CMGRS=1"); //message transmission to get any failed sms
> during suspend
>
> -   chat("AT%SLEEP=2"); //makes my Moko8 not respond to calls during
> sosuend
> +   chat("AT%SLEEP=2"); //makes my Moko8 not respond to calls during
> suspend
>     // Turn cell id information back on.
>     chat( "AT+CREG=2" );
>     chat( "AT+CGREG=2" );
>
> +    // Turn on echo suppression and noise reduction.
> +    chat( "AT%N0187" );
> +
>     QTimer::singleShot(200, this, SLOT(sendRego()));
>  }
>
> @@ -572,6 +574,9 @@ void NeoModemService::sendRego()
>     if( !cfg.value("PlaneMode",false).toBool()) {
>         //       chat("AT%NRG=0,0"); //force auto operations
>         chat("AT+COPS=0"); //force auto operations
> +
> +        // Turn on echo suppression and noise reduction.
> +        chat( "AT%N0187" );
>     }
>  }
>
> @@ -679,6 +684,9 @@ void NeoModemService::reset()
>     chat("AT%CWUP=1");
>     chat("ATE0");
>
> +    // Turn on echo suppression and noise reduction.
> +    chat( "AT%N0187" );
> +
>     // Turn on "%CNAP" notifications, which supply the caller's
>     // name on an call.  Only supported on some networks.
>     chat( "AT%CNAP=1" );
> @@ -738,6 +746,9 @@ void NeoModemService::wake()
>
>     // Re-enable signal quality notifications when the system wakes up
> again.
>     chat( "AT%CSQ=1", this, SLOT(mcsqOn()) );
> +
> +    // Turn on echo suppression and noise reduction.
> +    chat( "AT%N0187" );
>  }
>
>  void NeoModemService::mcsqOff()
> --
> 1.5.6.3
>
>
> _______________________________________________
> Openmoko community mailing list
> community at lists.openmoko.org
> http://lists.openmoko.org/mailman/listinfo/community
>



-- 
Best Regards

HouYu Li, Karajan

karajan_ii (at) hotmail.com
karadog (at) gmail.com
lihouyu (at) phpex.net

PHP Developer
Red Hat Certified Engineer

Shanghai, China
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.openmoko.org/pipermail/community/attachments/20090309/0f88b1a3/attachment.htm 


More information about the community mailing list