SPCM read and send – full duplex possible?

9 thoughts on “SPCM read and send – full duplex possible?

  1. Hi All,


    I wanted to use the main uart interface to implement a fully duplex digital voice channel.


    1. Can this be done with SPCM read and send? My approach was if I could use ASC1 (the aux port on GE865) to turn on BOTH read and send together?


    2. Another issues is that in testing the READ on its own I am using AT#SPCM=2,1. The modem begins to stream samples but they are all 0x00 or 0xFF. I used CAP=2. There must be some other setting in the audio path that I’m missing. I turned off sidetone as well. Any ideas?


    Thanks for your help,

    Ciarán Mac Aonghusa


    1. Hi Ciarán,


      thanks to contact us.

      Here below my notes:


      1)  bidirectionalaudio comunication trough serial port is not supporte3d in V2 modules.

      There are plans for next release of FW in the more powerful modules HE910.


      2)  SPCM=2,1 means you are sneding to serial port voice samples coming from the network so you need to be in a voice call, are you?

      #CAP is important in case you need to retrieve audio from microphone, in chich case the correct command is #SPCM=2,0

  2. Luca,


    Thanks for your reply.


    1) Ok, I understand – bidirectional is not possible over serial. 


    2) Yes, I have a call present when reading the samples. I am not retrieving samples from the microphone, only from the incoming audio channel. Can you think of anything else in the digital audio path that would cause a stream as described? Any levels or gain stages that need to be adjusted?


    In addition – 

    3) Am I correct to say that the GE865 can do bi-directional (full-duplex) digital voice using its DVI inerface? 


    Thanks again,




    1. Hi Ciarán,


      I’m stucked .. it has to works this way ..

      Attached a serial capture I did now ..

      I can open and listen the audio with  audacity for example.

      Rena,e it as .pcm

      1. Hi Lucas,


        Ok – then I must be doing something wrong. Let me re-check all my audio settings.


        By the way, now that you confirm that bi-directional is not possible I need to explore the DVI options. Looking at the I2S timing diagram in the DVI app note, it seems that this is an odd implementation of I2S – what I mean is that there is an extra bit "bit 17" of clock during which the frame sync is pulsed. Is that a non-standard implementation? Have you heard of anyone using a standard I2S peripheral to interface with the GE865 DVI?


        All the best and thanks again,


        1. Hi Claran,


          the DVI is not an I2S standard indeed, but a lot of audio codec use the same format ( we tested the MAXIM family for example).

          Anyway on the latest FW we implemented a PCM mode where WAO is a square wav, spanning one sample ( right ch ) in high level and left channel in low level.

          Also 16, 24 and 32 bit per sample has been implemented.

          See attached figure as an example.

          I hope it can help you.

          1. Thanks again Luca. Unfortunately I cannot access the jpg file you posted. I get a "not foud on server" message.


            I think I am very near to getting the DVI inerface to work – at least for play. One issue I have is understanding how to convert from my unsigned 8 bit PCM to the format needed for the DVI. It says Q15 format. Though I’m not quite sure how to do the conversion. Can you help me understand this one. 


            Do I have to first convert my 8 bit unsigned to a 16 bit signed with a 0 as centre / average. I would appreciate any assistance with this.


            All the best,


          2. Hi Claran,


            Q15 is a numeric format used to rappresent floating number in hte range ox +1  -1.

            It take kong to describe it, but let’ see if you can download the attached doc.

          3. Hi Luca,


            I still cannot download files from your posts. I’m not sure if this is a general problem with the forum or not.


            In any case, thanks for your response again. Yes, I have figured out the Q15 format and it isn’t very complicated. In short, my translation from my 8 bit signed PCM to the Q15 required by the modem is like translating to signed 16 bit (in 2’s complement format).


            On the bigger question of using the DVI interface – I now have that working very nicely in both send and receive. I  was unsure if the I2S on my micro could be configured to use the specific flavour of I2S (DSP Mode with 1-bit pulsed sync) used by GE865. In fact, it works fine – I can configure my I2S peripheral to use a 1-bit sync pulse and to be a slave and I can configure word size, endianess, alignment and so on. So I use the Telit in Master mode. It works very well!


            Once again thanks for your prompt and helpful replies,