[Sony Xperia XZ ROMs, Kernels, Recoveries, & Other ] franss62:
Hi ! Thanks for your great job LineageOS 17.1 really made my XPeria XZ young again !!

However I would like to see if I can make the GPS work do you have any idea where I should start ?

With GPS Toolbox I saw sattelites but it didn't get any location from it (they all appeared in grey on the constellation)

I flashed again the same ROM but now I don't have any satellite at all.

Here is my gps.conf file :

#Version check for XTRA

#DISABLE = 0

#AUTO = 1

#XTRA2 = 2

#XTRA3 = 3

#XTRA_VERSION_CHECK=1

XTRA_VERSION_CHECK=0

# XTRA_SERVER_QUERY (1=on, 0=off)

# If XTRA_SERVER_QUERY is on, the XTRA_SERVERs listed

# below will be ignored, and instead the servers will

# be queried from the modem.

XTRA_SERVER_QUERY=0

# XTRA_SERVERs below are used only if XTRA_SERVER_QUERY

# is off.

XTRA_SERVER_1=http://xtrapath1.izatcloud.net/xtra2.bin

XTRA_SERVER_2=http://xtrapath2.izatcloud.net/xtra2.bin

XTRA_SERVER_3=http://xtrapath3.izatcloud.net/xtra2.bin

# Error Estimate

# _SET = 1

# _CLEAR = 0

ERR_ESTIMATE=0

# NTP Server

# NTP_SERVER=time.gpsonextra.net

# Asia

# NTP_SERVER=asia.pool.ntp.org

# Europe

# NTP_SERVER=europe.pool.ntp.org

# North America

# NTP_SERVER=north-america.pool.ntp.org

NTP_SERVER = pool.ntp.org

# If NTP_SERVER is commented NTP_SERVER=time.izatcloud.net is used

# DEBUG LEVELS: 0 - none, 1 - Error, 2 - Warning, 3 - Info

# 4 - Debug, 5 - Verbose

# If DEBUG_LEVEL is commented, Android's logging levels will be used

DEBUG_LEVEL = 3

# Intermediate position report, 1=enable, 0=disable

INTERMEDIATE_POS=0

# Below bit mask configures how GPS functionalities

# should be locked when user turns off GPS on Settings

# Set bit 0x1 if MO GPS functionalities are to be locked

# Set bit 0x2 if NI GPS functionalities are to be locked

# default both MO and NI locked for maximal privacy

#GPS_LOCK = 3

# supl version 1.0

SUPL_VER=0x10000

# Emergency SUPL, 1=enable, 0=disable

SUPL_ES=0

#Choose PDN for Emergency SUPL

#1 - Use emergency PDN

#0 - Use regular SUPL PDN for Emergency SUPL

#USE_EMERGENCY_PDN_FOR_EMERGENCY_SUPL=0

# GPS Capabilities bit mask

# SCHEDULING = 0x01

# MSB = 0x02

# MSA = 0x04

# ON_DEMAND_TIME = 0x10

# GEOFENCE = 0x20

# default = ON_DEMAND_TIME | MSA | MSB | SCHEDULING | GEOFENCE

CAPABILITIES=0x17

#CAPABILITIES=0x35

# Accuracy threshold for intermediate positions

# less accurate positions are ignored, 0 for passing all positions

# ACCURACY_THRES=5000

################################

##### AGPS server settings #####

################################

# Bitmask of slots that are available

# for write/install to, where 1s indicate writable,

# and the default value is 0 where no slots

# are writable. For example, AGPS_CERT_WRITABLE_MASK

# of b1000001010 makes 3 slots available

# and the remaining 7 slots unwritable.

# AGPS_CERT_WRITABLE_MASK=0

# FOR SUPL SUPPORT, set the following

#SUPL_HOST=supl.sonyericsson.com

SUPL_HOST=supl.google.com

SUPL_PORT=7275

# FOR C2K PDE SUPPORT, set the following

# C2K_HOST=c2k.pde.com or IP

# C2K_PORT=1234

####################################

# LTE Positioning Profile Settings

####################################

# 0: Enable RRLP on LTE(Default)

# 1: Enable LPP_User_Plane on LTE

# 2: Enable LPP_Control_Plane

# 3: Enable both LPP_User_Plane and LPP_Control_Plane

LPP_PROFILE = 1

################################

# EXTRA SETTINGS

################################

# NMEA provider (1=Modem Processor, 0=Application Processor)

NMEA_PROVIDER=0

# Mark if it is a SGLTE target (1=SGLTE, 0=nonSGLTE)

SGLTE_TARGET=0

##################################################

# Select Positioning Protocol on A-GLONASS system

##################################################

# 0x1: RRC CPlane

# 0x2: RRLP UPlane

# 0x4: LLP Uplane

A_GLONASS_POS_PROTOCOL_SELECT = 0x4

##################################################

# Select technology for LPPe Control Plane

##################################################

# 0x1: DBH for LPPe CP

# 0x2: WLAN AP Measurements for LPPe CP

LPPE_CP_TECHNOLOGY = 0

##################################################

# Select technology for LPPe User Plane

##################################################

# 0x1: DBH for LPPe UP

# 0x2: WLAN AP Measurements for LPPe UP

LPPE_UP_TECHNOLOGY = 0

##################################################

# AGPS_CONFIG_INJECT

##################################################

# enable/disable injection of AGPS configurations:

# SUPL_VER

# SUPL_HOST

# SUPL_PORT

# SUPL_MODE

# SUPL_ES

# C2K_HOST

# C2K_PORT

# LPP_PROFILE

# A_GLONASS_POS_PROTOCOL_SELECT

# USE_EMERGENCY_PDN_FOR_EMERGENCY_SUPL

# GPS_LOCK

# 0: disable

# 1: enable

AGPS_CONFIG_INJECT = 1

##################################################

# AP Coarse Timestamp Uncertainty

##################################################

# default : 10

# AP time stamp uncertainty, until GNSS receiver

# is able to acquire better timing information

AP_TIMESTAMP_UNCERTAINTY = 10

#####################################

#DR_SYNC Pulse Availability

#####################################

# 0 : DR_SYNC pulse not available (default)

# 1 : DR_SYNC pulse available

# This configuration enables the driver to make use

# of PPS events generated by DR_SYNC pulse

# Standard Linux PPS driver needs to be enabled

DR_SYNC_ENABLED = 0

#####################################

#PPS Device name

#####################################

PPS_DEVICENAME = /dev/pps0

#####################################

# Ignore PPS at Startup and after long outage

#####################################

IGNORE_PPS_PULSE_COUNT = 1

#####################################

# Long GNSS RF outage in seconds

#####################################

GNSS_OUTAGE_DURATION = 10

#####################################

#AP Clock Accuracy

#####################################

# Quality of APPS processor clock (in PPM).

# Value specified is used for calculation of

# APPS time stamp uncertainty

AP_CLOCK_PPM = 100

#####################################

# MAX ms difference to detect missing pulse

#####################################

# Specifies time threshold in ms to validate any missing PPS pulses

MISSING_PULSE_TIME_DELTA = 900

#####################################

#Propagation time uncertainty

#####################################

# This settings enables time uncertainty propagation

# logic incase of missing PPS pulse

PROPAGATION_TIME_UNCERTAINTY = 1

CURRENT_CARRIER=common

DEFAULT_AGPS_ENABLE=TRUE

DEFAULT_SSL_ENABLE=FALSE

DEFAULT_USER_PLANE=TRUE

And here is my /etc/vintf/manifest.xml :

<!--

Input:

manifest.xml

framework_manifest.xml

-->

<manifest version="1.0" type="framework">

<hal format="hidl">

<name>android.frameworks.displayservice</name>

<transport>hwbinder</transport>

<version>1.0</version>

<interface>

<name>IDisplayService</name>

<instance>default</instance>

</interface>

<fqname>@1.0::IDisplayService/default</fqname>

</hal>

<hal format="hidl">

<name>android.frameworks.schedulerservice</name>

<transport>hwbinder</transport>

<version>1.0</version>

<interface>

<name>ISchedulingPolicyService</name>

<instance>default</instance>

</interface>

<fqname>@1.0::ISchedulingPolicyService/default</fqname>

</hal>

<hal format="hidl">

<name>android.frameworks.sensorservice</name>

<transport>hwbinder</transport>

<version>1.0</version>

<interface>

<name>ISensorManager</name>

<instance>default</instance>

</interface>

<fqname>@1.0::ISensorManager/default</fqname>

</hal>

<hal format="hidl">

<name>android.hardware.biometrics.fingerprint</name>

<transport>hwbinder</transport>

<version>2.1</version>

<interface>

<name>IBiometricsFingerprint</name>

<instance>default</instance>

</interface>

<fqname>@2.1::IBiometricsFingerprint/default</fqname>

</hal>

<hal format="hidl">

<name>android.hardware.wifi.hostapd</name>

<transport>hwbinder</transport>

<version>1.0</version>

<interface>

<name>IHostapd</name>

<instance>default</instance>

</interface>

<fqname>@1.0::IHostapd/default</fqname>

</hal>

<hal format="hidl">

<name>android.hidl.manager</name>

<transport>hwbinder</transport>

<version>1.2</version>

<interface>

<name>IServiceManager</name>

<instance>default</instance>

</interface>

<fqname>@1.2::IServiceManager/default</fqname>

</hal>

<hal format="hidl">

<name>android.hidl.memory</name>

<transport arch="32+64">passthrough</transport>

<version>1.0</version>

<interface>

<name>IMapper</name>

<instance>ashmem</instance>

</interface>

<fqname>@1.0::IMapper/ashmem</fqname>

</hal>

<hal format="hidl">

<name>android.hidl.token</name>

<transport>hwbinder</transport>

<version>1.0</version>

<interface>

<name>ITokenManager</name>

<instance>default</instance>

</interface>

<fqname>@1.0::ITokenManager/default</fqname>

</hal>

<hal format="hidl">

<name>android.system.net.netd</name>

<transport>hwbinder</transport>

<version>1.1</version>

<interface>

<name>INetd</name>

<instance>default</instance>

</interface>

<fqname>@1.1::INetd/default</fqname>

</hal>

<hal format="hidl">

<name>android.system.wifi.keystore</name>

<transport>hwbinder</transport>

<version>1.0</version>

<interface>

<name>IKeystore</name>

<instance>default</instance>

</interface>

<fqname>@1.0::IKeystore/default</fqname>

</hal>

<hal format="native">

<name>netutils-wrapper</name>

<transport></transport>

<version>1.0</version>

</hal>

<vendor-ndk>

<version>29</version>

</vendor-ndk>

<vendor-ndk>

<version>28</version>

</vendor-ndk>

<vendor-ndk>

<version>27</version>

</vendor-ndk>

<system-sdk>

<version>28</version>

<version>29</version>

</system-sdk>

</manifest>

I tried to see if I could find anything interesting in logcat and dmesg but no error and no warning by searchin lines including gps, gnss, or Location

It can get the location on Google Maps, but I have no GPS signal with Waze.

I've tried :

- modifying the gps.conf file with other NTP servers

- wiping Dalvik Cache

- Resetting and downloading again A-GPS XTRA data (btw when I prompt a find / -name xtra2.bin on a shell it finds absolutely nothing...)

Any idea what else I can do ?

EDIT : I can have a location on Google Maps as long as I don't set any destination on Google Maps, otherwise nothing will move anymore