Giter Club home page Giter Club logo

Comments (4)

kriswiner avatar kriswiner commented on September 23, 2024

Hi Matthias,

Bosch is very tight-lipped about their products. I asked for info about the BMX-055 and they sent me their API. From that I was able to figure out how to do the temperature-compensated magnetic field construction from the sensor data. They would not discuss the actual formula not give me any additional info about the magnetometer. I would suggest you contact Bosch with your request, but don’t get your hopes up. Of course, you are welcome to use my code as you like.

I’m not sure what you mean by “any data stored in the registers’ changing with time. Certainly the sensor data will change with time, and the magnetic fields calculated in software are not stored in the device registers. Please explain.

Kris

From: moonjumper
Sent: Friday, November 28, 2014 5:13 AM
To: kriswiner/BMX-055
Subject: [BMX-055] Magnetometer temperature compensation (#2)

I'm required to use the BMA-055 in a project as a compass module. I tried to figure out how the temperature compensation of its magnetometer works, but couldn’t find any official documentation about it.
In your code line 802 starting with // calculate temperature compensated 16-bit magnetic fields your performing it somehow. Can you give me a hint, were I can get further information.
Do you know if any of the data stored in the registers will change during time?

Regards,
Matthias


Reply to this email directly or view it on GitHub.

from bmx-055.

moonjumper avatar moonjumper commented on September 23, 2024

Hi Kris,

thanks for your quick response. I was referring to the registers 0x5D - 0x71. Your named them Trim Extended Registers and the data sheet describes them only as "reserved".
In case this registers contain only constant calibration data, my biggest problem is to explain/understand there functionality. If the stored data change (e.g. due to temperature changes) between different measurements, it would make my data management more complex. My program is a pure post-processing tool, which is not able to communicate with the sensor directly. Therefore all changing data has to be transmitted and stored.

P.S. The temperature variations in my use case are high (approx. -40 - +10°C)

Regards,
Matthias

from bmx-055.

kriswiner avatar kriswiner commented on September 23, 2024

AFAIK, the data in these reserved registers are constants that allow the sensor data to be converted into temperature-compensated magnetic field output. The temperature compensation info is embedded in the Hall resistance measurement, which is an input to the temperature compensation algorithm. In my program, I read these reserved registers once, and then use the constants to get magnetic field. Since Bosch won’t say any more to me, this is all I know about how the magnetometer works. I just used the Bosch API as a guide and this is what they do to.

You may look at the formula for construction of the temperature-compensated magnetic fields in the Bosch API or my code and infer what the functionality is. I can’t really understand what is happening there and Bosch won’t tell me.

Kris

From: moonjumper
Sent: Sunday, November 30, 2014 1:23 PM
To: kriswiner/BMX-055
Cc: Kris Winer
Subject: Re: [BMX-055] Magnetometer temperature compensation (#2)

Hi Kris,

thanks for your quick response. I was referring to the registers 0x5D - 0x71. Your named them Trim Extended Registers and the data sheet describes them only as "reserved".
In case this registers contain only constant calibration data, my biggest problem is to explain/understand there functionality. If the stored data change (e.g. due to temperature changes) between different measurements, it would make my data management more complex. My program is a pure post-processing tool, which is not able to communicate with the sensor directly. Therefore all changing data has to be transmitted and stored.

P.S. The temperature variations in my use case are high (approx. -40 - +10°C)

Regards,
Matthias


Reply to this email directly or view it on GitHub.

from bmx-055.

moonjumper avatar moonjumper commented on September 23, 2024

Thanks again, you was a great support.

Regards,
Matthias

from bmx-055.

Related Issues (5)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.