gopro / gpmf-parser

Parser for GPMF™ formatted telemetry data used within GoPro® cameras.
Apache License 2.0
535 stars 112 forks source link

GoPro Max Very Wrong Magnetometer Readings #175

Open joshi-bharat opened 1 year ago

joshi-bharat commented 1 year ago

I am using GoPro Max with firmware v2.0. The scaled raw magnetometer readings are very wrong. I am using scaled data. I took the GoPro outside with minimal ferromagnetic materials and even then the data is too much biased.

I am getting values such as [-129, 82, 10] microteslas. This does not make sense.

dnewman-gpsw commented 1 year ago

Little high, but it is working? Rotate the camera through a short capture, is the data is good.

gbanfill commented 1 year ago

Hi @dnewman-gpsw , I'm looking at the raw magnetometer readings too. I recorded 6 video clips in different directions (N, E, S, W Up and Down) the gopro was stationary while I recorded. I extracted the data below it seems reasonably stable. ( think these are μT).

Direction X Y Z
North 172 26 50
East 158 15 50
South 141 22 51
West 145 34 50
Down 195 26 -12
Up 90 30 -11

According to wikipedia, the earths magnetic field is between 25 to 65 μT (https://en.wikipedia.org/wiki/Earth's_magnetic_field#Intensity) so these values seem a high?

What I really want to do is convert these values into Yaw, Pitch, Roll, but that's a different ticket.

dnewman-gpsw commented 1 year ago

Just assume the data is not calibrated. X has a bias in this data. Range 90 to 172, so subtract 131, and your range for x is -41 to 41. Very crude, but it will get you data in the expected range.

As for yaw, pitch and roll, calculations, that outside the scope of this project. This is all about the retrieval of stored sensor data, the calculated meaning of this data is something else.