GL-MiFi [EC25-AF] Asterisk Voice channel?

Anyone can help with any info to get asterisk work with voice channel of lte card? Thanks!

Sorry I have no info about this usage.

I tried “asterisk-chan-dongle” - Asterisk channel driver for Huawei UMTS 3G dongle. and its looks like its recognizing hardware and accepting even some AT commands, and answering back OK. but i’m very sure some AT commands can be different in compare with usb 3g dongles of huawei. Also i find on internets someone said its should be not hard to to make patch to this driver for new data-cards (if its recognizing at-commands), maybe someone will be interested to help? I can even donate some money for this job, thank you.

This could be something of interest to me too… I’ve got a lot on my plate, but will try to take a look at the source code for chan-dongle and see if I can cross-reference between the Huawei AT commands and the AT reference manual for the Quectel cards.

I’ve never tried to deal with the voice side of the card before so no idea how the actual audio gets passed around, but if it’s similar enough to what is already in chan-dongle it might be do-able…

Alright so some preliminary research shows:
old UC20 card had support, in theory, to make this work.
Newer EC25 cards have the feature listed as “Under development/coming soon” as per documentation released in November 2017. I don’t have access to the latest and greatest, nor do I have an EC25AF kicking around to test with so hard to know for sure. If you have one, trying manually sending it the command “AT+QPCMV=1,0” and see if it replies with OK or ERROR/fail.
That is what was documented to put the UC20 into USB-Audio mode from what I can find. If that does not work then there is no chance as modem card doesn’t support the audio mode.

Thank you for your answers! :slight_smile:
My MiFi with EC25 with few devices, attached to this pci-e card, i believe:
/dev/ttyUSB0
/dev/ttyUSB1
/dev/ttyUSB2 ***
/dev/ttyUSB3 ***
/dev/cdc-wdm0
/dev/ttyATH0
I tryed to send this command “AT+QPCMV=1,0” to every port and ports which i marked *** symbols is answered “OK” back, anothers just not answering on any command at all.

I think is possible one port is for GPS and another is for Modem. But which one?

/dev/ttyUSB0 is a diagnostic port
/dev/ttyUSB1 is the GPS/USB Audio Data port
/dev/ttyUSB2 is the control port that you want to send the AT command to
/dev/ttyUSB3 is a duplicate control port, can’t remember why it exists but it’s basically the same as USB2
/dev/cdc-wdm0 is your data port for QMI mode
/dev/ttyATH0 is the internal serial port of the MiFi itself, nothing to do with the modem.

So to test you need to do a few things:

  1. send command AT+QGPSCFG=“outport”,“none” to /dev/ttyUSB2 to make sure GPS output is disabled. Voice over USB uses the same port as GPS, so you need to make sure GPS output is off.
  2. send command “AT+QPCMV=1,0” on /dev/ttyUSB2
  3. Verify with command “AT+QPCMV?” on /dev/ttyUSB2. If it works, you should get “+QPCMV:0,0”

If that all goes well, then time for a test call
4) Open a terminal program to monitor /dev/ttyUSB1 (this is where the audio should be sent)
5) Use command “ATDYYYYYYYYYY;” where YYYYYYYYYY is a phone number you want to try calling out to. Command should return OK straight away. Call should go through once dialing completes though
6) Answer call, and say something on phone you dialed. You should immeidately see traffic appearing in the terminal monitoring /dev/ttyUSB1

Try that and let me know!

2 Likes

jolouis, thank you very much for your help! :slight_smile:
i’ll try and will let you know.
so far then i connecting to ttyUSB2 i see something interacting with this port in parallel. i guess we need to stop this script which jerking port every 5 seconds. i think this is gl-gui getting some info but i guess i can live without it.

Port /dev/ttyUSB2, 05:20:44

Press CTRL-A Z for help on special keys

+CREG: 0,1

OK

+CSQ: 26,99

OK

+CREG: 0,1

OK

+CSQ: 26,99

OK

+CREG: 0,1

OK

+CSQ: 23,99

OK

+CREG: 0,1

OK

+CSQ: 23,99

OK

+CREG: 0,1

OK

+CSQ: 26,99

OK

+CREG: 0,1

OK

+CSQ: 26,99

OK

+CREG: 0,1

OK

+CSQ: 26,99

OK

+CREG: 0,1

OK

+CSQ: 26,99

OK

+CREG: 0,1

OK

+CSQ: 23,99

OK

+CREG: 0,1

OK

+CSQ: 27,99

OK

+CREG: 0,1

OK

AT+QGPSCFG=“outport”,“none”

+CME ERROR: 501

AT+QPCMV=1,0

OK

AT+QPCMV?

+QPCMV: 1,0

OK

i dont have second phone right now, so i called to my own number, don’t know if its must be works (usually voicemail must be answered there)

ATD[num];

OK
and after few seconds
NO CARRIER

but also i got “NO CARRIER” in /dev/ttyUSB1 too, this is normal?

GL-MIFI*CLI> dongle show devices
ID           Group State      RSSI Mode Submode Provider Name  Model      Firmware          IMEI             IMSI             Number        
dongle0      0     Free       25   0    0       AT&T           EC25       EC25AFAR05A04M4G  861107033620262  318210139827911  Unknown       
GL-MIFI*CLI>

Still getting in asrterisk console:

[Jun 21 06:09:30] ERROR[440]: at_response.c:118 at_response_ok: [dongle0] Received unexpected ‘OK’
[Jun 21 06:09:41] ERROR[440]: at_response.c:118 at_response_ok: [dongle0] Received unexpected ‘OK’
[Jun 21 06:09:52] ERROR[440]: at_response.c:118 at_response_ok: [dongle0] Received unexpected ‘OK’
[Jun 21 06:10:03] ERROR[440]: at_response.c:118 at_response_ok: [dongle0] Received unexpected ‘OK’
[Jun 21 06:10:24] ERROR[440]: at_response.c:118 at_response_ok: [dongle0] Received unexpected ‘OK’
[Jun 21 06:10:34] ERROR[440]: at_response.c:118 at_response_ok: [dongle0] Received unexpected ‘OK’
[Jun 21 06:10:44] ERROR[440]: at_response.c:118 at_response_ok: [dongle0] Received unexpected ‘OK’
[Jun 21 06:10:54] ERROR[440]: at_response.c:118 at_response_ok: [dongle0] Received unexpected ‘OK’
[Jun 21 06:11:04] ERROR[440]: at_response.c:118 at_response_ok: [dongle0] Received unexpected ‘OK’

How to stop this?

I did dirty hack:
chmod -x /usr/bin/modem_get_signal
and killed process. but now i got another process, but with longer delay, about 10 sec.

[Jun 21 11:44:48] ERROR[14853]: at_response.c:118 at_response_ok: [dongle0] Received unexpected ‘OK’
[Jun 21 11:44:59] ERROR[14853]: at_response.c:118 at_response_ok: [dongle0] Received unexpected ‘OK’
[Jun 21 11:45:09] ERROR[14853]: at_response.c:118 at_response_ok: [dongle0] Received unexpected ‘OK’
[Jun 21 11:45:20] ERROR[14853]: at_response.c:118 at_response_ok: [dongle0] Received unexpected ‘OK’
[Jun 21 11:45:30] ERROR[14853]: at_response.c:118 at_response_ok: [dongle0] Received unexpected ‘OK’

i’ll keep investigate…

GL-MIFI*CLI> core show channeltype Dongle
-- Info about channel driver: Dongle --
  Device State: yes
    Indication: yes
     Transfer : no
  Capabilities: (slin)
   Digit Begin: yes
     Digit End: yes
    Send HTML : no
 Image Support: no
  Text Support: no

This will help?

I tryed to make call by asterisk:

– Executing [2066606@default:1] Dial(“SIP/101-00000006”, “Dongle/dongle0/holdother:+2066606”) in new stack
[Jun 21 15:07:11] WARNING[9891][C-00000008]: channel.c:215 channel_request: [dongle0] Request to call on device which can not make call at this moment
[Jun 21 15:07:11] WARNING[9891][C-00000008]: app_dial.c:2525 dial_exec_full: Unable to create channel of type ‘Dongle’ (cause 44 - Requested channel not available)
== Everyone is busy/congested at this time (1:0/0/1)
– Auto fallthrough, channel ‘SIP/101-00000006’ status is ‘CHANUNAVAIL’
– Executing [h@default:1] Hangup(“SIP/101-00000006”, “”) in new stack
== Spawn extension (default, h, 1) exited non-zero on ‘SIP/101-00000006’

Then i calling to my number then i see this in asterisk console:

GL-MIFI*CLI> 
 [dongle0] Error parsing CREG: '+CREG: 1'

Bump. Anypne can help?

Ok I appreciate the enthusiasm but you need to take about 10 steps back here. We are not even close to getting chan_dongle on Asterisk to work yet, we are strictly testing to see if the EC-25 even supports the physical capabilities needed.

So:
a) Stop Asterisk
b) Open a terminal program to monitor /dev/ttyUSB1 (this is where the audio should be sent)
c) Try calling something by sending ATDYYYYYYYYYYYYY; to /dev/ttyUSB2. It can be anything, your friend, your family, basically any phone number that you will get audio back from. (might want to let your friend/family/whoever know you are trying to test something!)
d) The terminal on /dev/ttyUSB2 SHOULD read OK, and if successful within a few seconds (once the call actually dials and goes through) you should start seeing strange binary data flash up on /dev/ttyUSB1 terminal.

If you get “No Carrier” then maybe your SIM does not have voice support/plan from your provider? Otherwise it’s possible the modem itself does not have a voice module, as I have read there are variations of the EC cards and that some are data only, and some are full units, but cannot find details on how to tell one from the other using model #s

Yes, my modem have voice, its even in documentation on modem (same as EC25A i do believe). I have voice im my plan from my provider. Even asterisk driver confirmed it.
I think now its must be good idea to contact the driver maitainer and donate him for help directly.