2024 Sep 21 - PinePhonePro Calls Working
#1
START EDIT: 
Clean up and adding Mobian steps.
OS: DanctNIX Arch with Phosh fully updated
OS: Mobian fully updated
EG25 Firmware: Biktorgj 0.8.0
ADSP Version: 01.003

This uses PipeWire, Not PulsaAudio

DanctNIX Arch with Phosh
pipewire-alsa is required to get call audio.
Code:
sudo pacman -S pipewire-alsa
alsa-utils is required to run alsamixer so we can set the Microphone volume to 0
Code:
sudo pacman -S alsa-utils
pine64-alsa-ucm configuration files
Code:
cd /usr/share/alsa/ucm2/PinePhonePro/
#backups are good
sudo mv VoiceCall.conf VoiceCall.conf.org
sudo mv PinePhonePro.conf PinePhonePro.conf.org
sudo mv HiFi.conf HiFi.conf.org
sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/VoiceCall.conf
sudo wget https://raw.githubusercontent.com/dreemurrs-embedded/Pine64-Arch/master/PKGBUILDS/pine64/alsa-ucm-pinephonepro/PinePhonePro.conf
sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/HiFi.conf
sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/EnableSeq.conf
sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/DisableSeq.conf
Restart the phone
During a call, run alsamixer and set the default (PipeWire) microphone value to 0.
The Audio on the "other phone" should clear up
Plug in a headset (3.5mm headphones with microphone)
run alsamixer again and set the default (PipeWire) microphone value to 0.
DONE!

Mobian
alsa-utils is required to run alsamixer so we can set the Microphone volume
Code:
sudo apt install alsa-utils
pine64-alsa-ucm configuration files
Code:
cd /usr/share/alsa/ucm2/Rockchip/PinePhonePro/
#backups are good
sudo mv VoiceCall.conf VoiceCall.conf.org
sudo mv PinePhonePro.conf PinePhonePro.conf.org
sudo mv HiFi.conf HiFi.conf.org
sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/VoiceCall.conf
sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/PinePhonePro.conf
sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/HiFi.conf
sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/EnableSeq.conf
sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/DisableSeq.conf
Restart the phone
During a call, run alsamixer and set the default (PipeWire) microphone value to 0.
The Audio on the "other phone" should clear up
Plug in a headset (3.5mm headphones with microphone)
run alsamixer again and set the default (PipeWire) microphone value to 0.
DONE!

Benefits
Calls are OK after each reboot
Calls are OK after deep sleep (and calls waking the phone up)
Calls are OK after plugging in a headset and switching to the headset profile in settings >> sound
The volume up and down buttons actually WORK during a phone call!!!

Issues
Plugging IN a headsets (3.5mm headphones with mic) will not switch over correctly. Go to Settings >> Sounds and select headset.
Un plugging a headset will not auto switch back to the phones earpiece and mic. Go to settings >> Sounds and select earpiece


END EDIT

START OF ORIGINAL POST

After many hours, this is how I got Calls to a stable OK state on my PinePhonePro.

OS: DanctNIX Arch with Phosh (archlinux-pinephone-pro-phosh-20240326.img)
BootLoader: rk2aw
Carrier: USA - Patriot Mobile (T-Mobile SIM)
EG25 Firmware: Biktorgj 0.8.0
ADSP Version: 01.003

1) Fresh install of the OS on the eMMC
2) Full upgrade "sudo pacman -Syu"
3) No audio during calls
Code:
journalctl showed:
danctnix callaudiod[4807]: Card 'alsa_card.platform-rt5640-sound' lacks speaker and/or earpiece port, skipping...
"sudo pacman -S pipewire-alsa" stopped the "alsa_card" error.

4) Keep in mind, there is no pulseaudio on this version of the OS, they moved to pipewire.
5) Call audio worked, but sounded like a fright train! Extremely loud.
6) I installed "sudo pacman -S pulsemixer "
Code:
pulsemixer --list
Sink: ID: sink-117, Name: Built-in Audio Headphones, Mute: 0, Channels: 2, Volumes: ['40%', '40%'], Default
Source: ID: source-117, Name: Monitor of Built-in Audio Headphones, Mute: 0, Channels: 2, Volumes: ['100%', '100%']
Source: ID: source-118, Name: Built-in Audio Headset Microphone, Mute: 0, Channels: 2, Volumes: ['0%', '0%'], Default
Source output: ID: source-output-103, Name: GNOME Settings, Mute: 0, Channels: 1, Volumes: ['100%']
Source output: ID: source-output-104, Name: GNOME Settings, Mute: 0, Channels: 1, Volumes: ['100%']

7) I did a volume change on Built-in Audio to volumes set to 0
Code:
pulsemixer --id source-118 --change-volume -100

8) This helped until a phone reboot and new nodes were created with 100 as the volume
9) I then installed "sudo pacman -S alsa-utils" to set the mic default levels to 0
10) I ran alsamixer during a phone call to set the default mic to 0 for the internal mic.
11) I plugged in a 3.5mm headset (headphones with microphone)
12) I ran alsamixer again with the headset and set the default mic to 0 again.
13) "Freight train" sound is fix. Just leaves the echo on the other (not PinePhonePro) phone
14) The default VoiceCall.conf (danctnix) file had to many options and there was an echo...
15) I tried the VoiceCall.conf from biktorgj and I had to set the default mic back to 0 with alsamixer
16) Steps to use biktorgj VoiceCall.conf
Code:
cd /usr/share/alsa/ucm2/PinePhonePro/
#backups are good
sudo mv VoiceCall.conf VoiceCall.conf.org
sudo cp PinePhonePro.conf PinePhonePro.conf.org
sudo mv HiFi.conf HiFi.conf.org
sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/VoiceCall.conf
sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/PinePhonePro.conf (NOT THIS ONE, it points to a different folder, use the default PinePhonePro.conf)
sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/HiFi.conf
sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/EnableSeq.conf
sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/DisableSeq.conf
#backups are good
sudo cp VoiceCall.conf VoiceCall.conf.biktorgj
sudo cp HiFi.conf HiFi.conf.biktorgj
sudo cp EnableSeq.conf EnableSeq.conf.biktorgj
sudo cp DisableSeq.conf DisableSeq.conf.biktorgj

So, No "echoing" no loud feedback!
Calls are OK after each reboot
Calls are OK after deep sleep (and calls waking the phone up)
Calls are OK after plugging in a headset and switching to the headset profile in settings >> sound
EDIT: The volume up and down buttons actually WORK during a phone call!!!

I messed around with a lot settings. I am not sure the pulsemixer steps are needed...
  Reply
#2
Adding more details if anyone wants to read

I have used the PinePhonePro for over a year now. Early on, the Biktorgj 0.7.2 firmware worked really good. I had calls at an OK state. So, in my experience, I have had calls working in different states. Last week, I had to reload the OS on the PinePhonePro. I was having calls issues and I was told the Biktorgj 0.8.0 helped a lot with calls.

Definitions:
"during a call" is any phone call started or received between my PinePhonePro and my wife's Android phone.
"Freight train" is during a call, the Android phone sounds like the PinePhonePro is on a train, Android phone is extremely loud and full of noise.
"Echo" is during a call, the Android phone has a clear half second delay an echo. My wife would hear herself.
"DanctNIX VoiceCall.conf" also includes the DanctNIX HiFi.conf, PinePhone.conf
"Biktorgj VoiceCall.conf" also includes the DanctNIX PinePhone.conf and the Biktorgj HiFi.conf, EnableSeq.conf and DisableSeq.conf

In all situations I tested, the PinePhonePro always seamed to be OK. It was always the Android phone that showed the issues.

Scenario one:
OS: DanctNIX Arch with Phosh (archlinux-pinephone-pro-phosh-20230203.img.xz)
EG25 Firmware: Biktorgj 0.7.2
Audio: Pulseaudio (not pipewire)
DanctNIX VoiceCall.conf
With some slight edits of the VoiceCall.conf the "Freight train" was fixed and there was only a slight whisper of an "echo".

Scenario two:
OS: DanctNIX Arch with Phosh (archlinux-pinephone-pro-phosh-20240326.img.xz)
EG25 Firmware: Biktorgj 0.7.2
Audio: pipewire (not Pulseaudio)
DanctNIX VoiceCall.conf
With some slight edits of the VoiceCall.conf the "Freight train" was fixed and there was a clear and audible "echo".
Biktorgj VoiceCall.conf
With and without edits on  VoiceCall.conf the "Freight train" was an issue.

Scenario three:
OS: DanctNIX Arch with Phosh (archlinux-pinephone-pro-phosh-20240326.img.xz)
EG25 Firmware: Biktorgj 0.8.0
Audio: pipewire (not Pulseaudio)
DanctNIX VoiceCall.conf
With and without edits on VoiceCall.conf the "Freight train" was fixed and there was a clear and audible "echo".
Biktorgj VoiceCall.conf
Setting the PipeWire Mic volume to 0 with alsamixer.
Without edits on VoiceCall.conf the "Freight train" was fixed and the "echo" is fixed. Also, the side volume up and down buttons work during a phone call.
  Reply
#3
I want to verify that first you ran the 0.8.0 flashall script, second which ADSP Firmware did you use?
Lately Mobian has been having similar issues and I suspect phosh updates but I have not touched the modem firmware since having to redo everything including manual reloading the IMEI in this thread. https://forum.pine64.org/showthread.php?...light=imei
There is an issue with newer modem modules having a non standard stock firmware loaded and loading a Biktorgj firmware often leads to a non-functional modem which in my experience was still 100% flashable. The fix is described here https://themodemdistro.com/efs_recovery

I cant find in my notes the fastboot or AT command to get the firmware version on my EG25
  Reply
#4
(09-24-2024, 02:58 AM)biketool Wrote: I want to verify that first you ran the 0.8.0 flashall script, second which ADSP Firmware did you use?
I loaded 0.8.0 first.
see this post on how I did it.
https://forum.pine64.org/showthread.php?tid=19429
I am running ADSP Version: 01.003 (It works great with T-Mobile)

(09-24-2024, 02:58 AM)biketool Wrote: Lately Mobian has been having similar issues and ...
I think every OS on the PinePhonePro is having call issues. That is why I tried to give more information...

(09-24-2024, 02:58 AM)biketool Wrote: I suspect phosh updates but I have not touched the modem firmware since having to redo everything including manual reloading the IMEI in this thread. https://forum.pine64.org/showthread.php?...light=imei
There is an issue with newer modem modules having a non standard stock firmware loaded and loading a Biktorgj firmware often leads to a non-functional modem which in my experience was still 100% flashable.  The fix is described here https://themodemdistro.com/efs_recovery
I am running the latest Phosh version. 
The newer phone firmware issue should be fixed with the 0.8.0 version of the Biktorgj firmware
  Reply
#5
(09-24-2024, 07:33 AM)mikehenson Wrote: <snip>
The newer phone firmware issue should be fixed with the 0.8.0 version of the Biktorgj firmware

I will probably flash 0.8.0 and 1.003 soon then to fix my audio issues though FWIW it was loading ADSP 1.003 after flashall'ing 0.8.0 onto a newer PPP which caused the modem to boot-fail.  I am assuming that the rescue has permanently fixed the modem compatibility, if not I have the tools to repair it.
____________________________________________
<A bit later>
I ran flashall for 0.8.0, all good flashed as expected.
the modem wouldn't re-enter fastboot to load the ADSP; I was left waiting on < waiting for any device > so I fully powered down the PPP with no USB.
I booted up the PPP and ran
Code:
echo -ne "AT+QFASTBOOT\r" > /dev/ttyUSB2
then
Code:
fastboot flash modem NON-HLOS.ubi && fastboot reboot
ADSP Version 01.003.01.003 loaded correctly, after that quick call test and truck-sounding audio and no audio is fixed.

I am still having an issue where the dialler GUI crashes, the call continues with audio but the Gnome Calls app can be clicked and the gui comes back, though it makes one call appear to be two in the call history.

Thanks to mikehenson!!
_______________________________________________
<notices there is a new v of Gnome Calls dialler app on repo>
sudo apt update && sudo apt upgrade Let's see...
shutdown w/o USB cable power, boot (I have found the modem likes a full shutdown)
apt upgraded to GNome Calls v. 47.0 - 47.0 on Mobian Trixie no more dialler app crash(this has been an issue for ~two weeks)
reports of a moderate voice echo(caller's voice) on the other side by two testers which I do not hear.
the 'hold' and 'add call' virtual buttons in the dialler app do not work, the 'speakerphone' virtual button changes color but doesnt change the audio mode to speakerphone audio remains in phone's earpiece.
________
wired headset test, I can only hear through right earphone, caller receives loud static along with low quality voice, no audio for me and her(including static) if I un-jack the headset during call.
  Reply
#6
OK, to fix audio I am going to copy mikehenson's work from upthread...
Code:
sudo apt install alsa-utils pulsemixer
the pulsemixer command goes nowhere, alsamixer needs me to F6 and choose default0
Code:
mobianpro@mobian:~$ pulsemixer --id source-118 --change-volume -100
ERR: No such ID: source-118


In Mobian PinePhonePro.conf is found in a different dir than what DanctNIX Arch does
Code:
/usr/share/alsa/ucm2/Rockchip/PinePhonePro/PinePhonePro.conf
so
Code:
cd /usr/share/alsa/ucm2/Rockchip/PinePhonePro/
then I continue like mikehenson did, I understood the NOT THIS ONE to mean do NOT wget the PinePhonePro.conf from Biktorgj, so I didn't(changes below)
Code:
#backups are good

sudo mv VoiceCall.conf VoiceCall.conf.org

sudo cp PinePhonePro.conf PinePhonePro.conf.org

sudo mv HiFi.conf HiFi.conf.org

sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/VoiceCall.conf

sudo wget
https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/PinePhonePro.conf
(NOT THIS ONE, it points to a different folder, use the default
PinePhonePro.conf)

sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/HiFi.conf

sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/EnableSeq.conf

sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/DisableSeq.conf

#backups are good

sudo cp VoiceCall.conf VoiceCall.conf.biktorgj

sudo cp HiFi.conf HiFi.conf.biktorgj

sudo cp EnableSeq.conf EnableSeq.conf.biktorgj

sudo cp DisableSeq.conf DisableSeq.conf.biktorgj
documenting this here not only leaves fix steps for other users, I can also use it as notes if I have to backtrack self-fix my system.  Please help document your fixes in the forum and wiki!
_________________________________________________
so after all of the above my internal mic sounds good, if I use alsamixer I can fix the headset if I dial down the input to 65
some improvements but not enough to be a normal phone in all modes.
I will do more late if I have time.
  Reply
#7
(09-24-2024, 09:21 AM)biketool Wrote:
Code:
cd /usr/share/alsa/ucm2/Rockchip/PinePhonePro/
then I continue like XXX did, U understood the NOT THIS ONE to mean do NOT wget the PinePhonePro.conf from Biktorgj, so I didn't
sudo wget
https://raw.githubusercontent.com/Biktor...nePro.conf
(NOT THIS ONE, it points to a different folder, use the default
PinePhonePro.conf)

HAHA! Biktorgj PinePhonePro.conf points to the location you talked about for Mobian!
I guess Biktorgj is a Mobian user!

So, For Mobian I think you should be using folder location and wget Biktorgj PinePhonePro.conf
Code:
/usr/share/alsa/ucm2/Rockchip/PinePhonePro/
sudo wget
https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/PinePhonePro.conf

(09-24-2024, 09:21 AM)biketool Wrote: documenting this here not only leaves fix steps for other users, I can also use it as notes if I have to backtrack self-fix my system.  Please help document your fixes in the forum and wiki!

That is GREAT to hear! Thank you!
  Reply
#8
OK one more try for now Pinephone Pro Mobian Trixie
Code:
cd /usr/share/alsa/ucm2/Rockchip/PinePhonePro/
Code:
sudo wget https://raw.githubusercontent.com/Biktorgj/pine64-alsa-ucm/master/ucm2/PinePhonePro/PinePhonePro.conf

I dont have anyone to test for me but using my PPP to call a dumb Nokia phone the audio seems good:
-on internal earpiece/mic
-on wired headset/mic

It is still NOT possible to juck/unjack a 3.5mm headset during a call, audio doesn't switch and in/out audio is cut when state changes, but reverts to the previous usable state in the continuing phonecall when headset/no-headset state is returned.
The virtual in-call buttons in the GUI do nothing so at this version there is no speakerphone function.

a big improvement in several important aspects of telephone usability, we are pushing further into daily driver usability
  Reply
#9
Yet now 15-20 hours later I received a telephone call and ZERO audio...
Full shutdown and boot-up the in-call audio is fixed, for now I suppose, until it is a problem again.
__________________________________________________
and again today in the morning no modem audio, looks like the suspend issue still, which the latest firmware/ADSB is supposed to fix
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Flashing rk2aw to the PinePhonePro mikehenson 0 78 09-21-2024, 06:23 PM
Last Post: mikehenson
  Camera stops working after resume from suspend jchw 3 1,271 07-30-2024, 05:52 AM
Last Post: DrYak
Thumbs Up PinePhone Pro working adamfowleruk 2 2,694 02-16-2023, 06:47 AM
Last Post: Piotr
  Broke Screen and fix it - Up Swipe not working. iwm 2 1,732 02-12-2023, 03:44 PM
Last Post: iwm
  Can't make or receive calls 1G1R 1 1,875 02-10-2023, 01:10 AM
Last Post: Piotr
Heart Help, I want to buy pinephonepro in hong kong miaoish 7 4,060 01-18-2023, 01:19 AM
Last Post: Keetoo
  SMS Receive suddenly stopped working grinzie 6 4,093 10-01-2022, 12:44 PM
Last Post: grinzie
  Internet is not working on Pine Pro phone caroljames972022 0 1,047 09-16-2022, 06:25 AM
Last Post: caroljames972022
  Convergence Thread (PinephonePro) magdesign 6 5,253 07-14-2022, 07:27 AM
Last Post: wibble
  PinephonePro Explorer Edition for sale, link in the post. LinuXmarksTheSpot 0 1,094 05-29-2022, 12:15 PM
Last Post: LinuXmarksTheSpot

Forum Jump:


Users browsing this thread: 5 Guest(s)