Voice problem with GSM Trunk

I am using huawei E303C GSM modem, it can dial out and in without any problem. when line established, SIP side can hear GSM side person speaker clearly. But GSM cannot hear (hearing breaking voice, like playing damaged CD audio) any voice from SIP. Internal SIP to SIP runs perfectly. I configured IVR for GSM incoming has same issue. But IVR working perfectly for SIP. What could be the issue? Should I change codecs for inbound/outbound? if so kindly let me the location. I’m using FreePBX with Asterisk 11.3.0 on RaspberryPI with kernel [Linux raspbx 3.6.11+ #408 PREEMPT Wed Apr 10 20:33:39 BST 2013 armv6l GNU/Linux].

I have created GSM gateway trunk as follows,

  • Add Custom Trunk
    Custom Dial String: dongle/dongle0/$OUTNUM$

Installed chan_dongle module for GSM/3G calling capability.