In-call audio channel setup for SIM7600G-H fails
The doc states that the "AT+CPCMREG=1" command is used after the module has reported "VOICE CALL: BEGIN". The current implementation(!186 (merged)) appears to issue the command immediately after the module changes the state of the voice call(intended behaviour?). Also, "AT+CPCMREG=0" MAY be used when "VOICE CALL: END" is reported and the previous "AT+CPCMREG=1" command was successful.
ModemManager[14216]: <debug> [1701703499.389462] [ttyUSB2/at] --> 'AT+CPCMREG=1<CR>'
ModemManager[14216]: <debug> [1701703499.420829] [ttyUSB3/at] <-- '<CR><LF>+CLCC: 1,0,2,0,0,"114",129<CR><LF>'
ModemManager[14216]: <debug> [1701703499.421101] [modem0] reported 1 ongoing calls
ModemManager[14216]: <debug> [1701703499.421117] [modem0] call at index 1: direction outgoing, state dialing, number 114
...
ModemManager[14216]: <debug> [1701703499.451899] [ttyUSB2/at] <-- '<CR><LF>ERROR<CR><LF>'
ModemManager[14216]: <debug> [1701703499.452976] [ttyUSB2/at] operation failure: 100 (Unknown error)
ModemManager[14216]: <warn> [1701703499.453021] [modem0] couldn't setup in-call audio channel: Unknown error
ModemManager[14216]: <debug> [1701703499.453034] [modem0] modem is now in-call state
The subsequent 'AT+CPCMREG=0' fails for reasons unknown. Why would it report error if it was turned off in the first place?
ModemManager[14216]: <info> [1701703510.548727] [modem0/call0] call state changed: active -> terminated (terminated)
ModemManager[14216]: <debug> [1701703510.548977] [modem0] cleaning up in-call state...
ModemManager[14216]: <debug> [1701703510.549014] [ttyUSB2/at] device open count is 2 (open)
ModemManager[14216]: <debug> [1701703510.549046] [ttyUSB2/at] --> 'AT+CPCMREG=0<CR>'
ModemManager[14216]: <debug> [1701703510.568867] [ttyUSB2/at] <-- '<CR><LF>ERROR<CR><LF>'
ModemManager[14216]: <debug> [1701703510.568967] [ttyUSB2/at] operation failure: 100 (Unknown error)
ModemManager[14216]: <warn> [1701703510.568998] [modem0] couldn't cleanup in-call audio channel: Unknown error
ModemManager[14216]: <debug> [1701703510.569029] [ttyUSB2/at] device open count is 1 (close)
ModemManager[14216]: <debug> [1701703510.569060] [modem0] modem is no longer in-call state
The PCM serial port is unstable anyways. It seems that some PCM bytes can be lost under certain circumstances resulting in garbled audio input/output as the format is pcm_s16le and there's no sync mechanism provided by the module. Might suggest manufacturer to add one or buy a model that does voice via analogue audio.