DrawQuick , OK, here’s what is happening. While you GPS transmits coordinates in EPGS:9989, QField doesn’t yet support custom CRSes from GPS devices. At the moment, QField hardcodes all coordinates coming from GPS devices as being EPGS:4326.
In your case, what it means is that the dynamic epoch of the 9989 CRS is not considered, and the coordinates are transformed using the fixed WGS84 EPSG:4326.
You can confirm this using the python console in QGIS. When handling your lat lon height point projected in EPSG:4326 using the simple script below, we end up with the “wrong” result when transforming to EPSG:22717:
point = QgsPoint(
-80.09282190216666,
43.91879931791666,
387.6080522460936
)
crsFrom = QgsCoordinateReferenceSystem('EPSG:4326')
crsTo = QgsCoordinateReferenceSystem('EPSG:22717')
transform = QgsCoordinateTransform(
crsFrom,
crsTo,
QgsProject.instance().transformContext()
)
point.transform(transform, transformZ=True)
print(point.asWkt())
>> PointZ (572831.4387031098594889 4863254.07845740206539631 387.60805224609362085)
However, if we project your point using the EPGS:9989 CRS and set the proper epoch (say June 2024, i.e. 2024.6), we get results that essentially agree with NRCan:
point = QgsPoint(
-80.09282190216666,
43.91879931791666,
387.6080522460936
)
crsFrom = QgsCoordinateReferenceSystem('EPSG:9989')
crsFrom.setCoordinateEpoch(2024.6)
crsTo = QgsCoordinateReferenceSystem('EPSG:22717')
transform = QgsCoordinateTransform(
crsFrom,
crsTo,
QgsProject.instance().transformContext()
)
point.transform(transform, transformZ=True)
print(point.asWkt())
>> PointZ (572832.23591925122309476 4863253.03488864377140999 388.70384873077273369)
The solution here is for QField to gain support for customizing the CRS for external GPS devices. See this enhancement request by fellow QField users (Add way to set CRS of data from GNSS receiver · Issue #2855 · opengisch/QField · GitHub).
This is a functionality I’m really hoping to implement on day. The wait period can be greatly shorten if this gets sponsored of course. If you are interested, let us know.
Imported from GitHub comment by @nirvn on 2024-08-11T06:04:51Z