kriswiner / MPU6050

Basic MPU6050 Arduino sketch of sensor function
716 stars 190 forks source link

LSM9DS1 vs. MPU-9250 vs. BMX055 #6

Open maziarzamani opened 9 years ago

maziarzamani commented 9 years ago

Hi.

I was wondering if you had made any comparison on these 3 chips, especially in terms of the magnetometer, which has been a big problem for me on the Invensense in terms of error.

kriswiner commented 4 years ago

No idea about this value for the MPU9250, sounds like a question for Invensense/TDK.

There is no standard method for this sort of high acceleration compensation that I know of.

On Wed, Aug 26, 2020 at 11:10 AM Userpc1010 notifications@github.com wrote:

In the sensor specification, for example ADIS 16470 for gyroscopes, the sensitivity to linear accelerations Linear Acceleration Effect is 0.015 ° / sec / g, which sensitivity of the mpu 9250, it is not in the specification?

Is there an efficient way to get an absolute orientation quaternion without being affected by linear acceleration? I tried to change the Mahoney filter so that at the moment of g-maneuvers, when the magnitude of the acceleration vector along all axes is more than 1G, to pause the merging of the gyroscope and accelerometer data, i.e. at the moment of acceleration, the quaternion rotates only with a gyroscope until the moment when the accelerations become less than 0.8G or more than 1.2G, but this gives an error of 5 - 10 degrees, or have to shift the frames closer to 1G (0.9 - 1.1G) But then the gyroscope drift compensation almost never happens in movment. Is it possible to somehow compensate linear acceleration within 0.2G - 0.3G?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-681039825, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKTJDPMQCCZYTAM3PKDSCVFZFANCNFSM4BDN6GYA .

console-beaver commented 3 years ago

I guess we never see you trying BNO080...

kriswiner commented 3 years ago

Not, since it uses Bosch sensors I have no interest....

On Wed, Sep 9, 2020 at 10:35 AM console-beaver notifications@github.com wrote:

I guess we never see you trying BNO080...

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-689712149, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKWBSDBOTQIBO63ZCSDSE64E7ANCNFSM4BDN6GYA .

Userpc1010 commented 3 years ago

BNO080 Shows the course slightly more accurately (for me at least shows the direction to the north) and is less susceptible to vibration and long term acceleration compared (Pitch and roll from vibration are not self-incrementing) to BNO055. I think this sensor can be installed on a quadcopter. May have to slightly fix the SparkFun library with the output of Euler angles, resetting the sensor, and the SHTP protocol is a little more difficult to understand.

saedelman commented 3 years ago

Hi Kris,

I'm looking at your code for the calibrating the LSM9DS1 accelerometer offsets (LSM9DS1::accelcal(...)) and it appears the accelerometer is being sampled over a period of time and then the individual X,Y,Z components averaged. However, it appears that these X,Y,Z components do not have their corresponding gravity vector removed. How can this then be used in the rest of the code to effectively remove the sensor offset?

void LSM9DS1::accelcal(float * dest)
{
uint8_t data[6] = {0, 0, 0, 0, 0, 0};
int32_t accel_bias[3] = {0, 0, 0};
uint16_t samples, ii;

// enable the three axes of the accelerometer
writeByte(LSM9DS1XG_ADDRESS, LSM9DS1XG_CTRL_REG5_XL, 0x38);
// configure the accelerometer-specify bandwidth selection with Abw
writeByte(LSM9DS1XG_ADDRESS, LSM9DS1XG_CTRL_REG6_XL, AODR_952Hz << 5 | AFS_4G << 3 | 0x04 | ABW_408Hz);
wait_ms(200);
// enable block data update, allow auto-increment during multiple byte read
writeByte(LSM9DS1XG_ADDRESS, LSM9DS1XG_CTRL_REG8, 0x44);

// now get the accelerometer bias
uint8_t c = readByte(LSM9DS1XG_ADDRESS, LSM9DS1XG_CTRL_REG9);
writeByte(LSM9DS1XG_ADDRESS, LSM9DS1XG_CTRL_REG9, c | 0x02);     // Enable accel FIFO
wait_ms(50);                                                       // Wait for change to take effect
writeByte(LSM9DS1XG_ADDRESS, LSM9DS1XG_FIFO_CTRL, 0x20 | 0x1F);  // Enable accel FIFO stream mode and set watermark at 32 samples
wait_ms(1000);  // delay 1000 milliseconds to collect FIFO samples

samples = (readByte(LSM9DS1XG_ADDRESS, LSM9DS1XG_FIFO_SRC) & 0x2F); // Read number of stored samples

for(ii = 0; ii < samples ; ii++) {            // Read the accel data stored in the FIFO
    int16_t accel_temp[3] = {0, 0, 0};
    readBytes(LSM9DS1XG_ADDRESS, LSM9DS1XG_OUT_X_L_XL, 6, &data[0]);
    accel_temp[0] = (int16_t) (((int16_t)data[1] << 8) | data[0]); // Form signed 16-bit integer for each sample in FIFO
    accel_temp[1] = (int16_t) (((int16_t)data[3] << 8) | data[2]);
    accel_temp[2] = (int16_t) (((int16_t)data[5] << 8) | data[4]);

    accel_bias[0] += (int32_t) accel_temp[0]; // Sum individual signed 16-bit biases to get accumulated signed 32-bit biases
    accel_bias[1] += (int32_t) accel_temp[1];
    accel_bias[2] += (int32_t) accel_temp[2];
  }

accel_bias[0] /= samples; // average the data
accel_bias[1] /= samples;
accel_bias[2] /= samples;
...

`

kriswiner commented 3 years ago

Not sure which sketch this is but yes you do need to add something to subtract off gravity.

On Fri, Oct 30, 2020 at 8:55 AM Stephan Edelman notifications@github.com wrote:

Hi Kris,

I'm looking at your code for the calibrating the LSM9DS1 accelerometer offsets (LSM9DS1::accelcal(...)) and it appears the accelerometer is being sampled over a period of time and then the individual X,Y,Z components averaged. However, it appears that these X,Y,Z components do not have their corresponding gravity vector removed. How can this then be used in the rest of the code to effectively remove the sensor offset?

void LSM9DS1::accelcal(float * dest) { uint8_t data[6] = {0, 0, 0, 0, 0, 0}; int32_t accel_bias[3] = {0, 0, 0}; uint16_t samples, ii;

// enable the three axes of the accelerometer writeByte(LSM9DS1XG_ADDRESS, LSM9DS1XG_CTRL_REG5_XL, 0x38); // configure the accelerometer-specify bandwidth selection with Abw writeByte(LSM9DS1XG_ADDRESS, LSM9DS1XG_CTRL_REG6_XL, AODR_952Hz << 5 | AFS_4G << 3 | 0x04 | ABW_408Hz); wait_ms(200); // enable block data update, allow auto-increment during multiple byte read writeByte(LSM9DS1XG_ADDRESS, LSM9DS1XG_CTRL_REG8, 0x44);

// now get the accelerometer bias uint8_t c = readByte(LSM9DS1XG_ADDRESS, LSM9DS1XG_CTRL_REG9); writeByte(LSM9DS1XG_ADDRESS, LSM9DS1XG_CTRL_REG9, c | 0x02); // Enable accel FIFO wait_ms(50); // Wait for change to take effect writeByte(LSM9DS1XG_ADDRESS, LSM9DS1XG_FIFO_CTRL, 0x20 | 0x1F); // Enable accel FIFO stream mode and set watermark at 32 samples wait_ms(1000); // delay 1000 milliseconds to collect FIFO samples

samples = (readByte(LSM9DS1XG_ADDRESS, LSM9DS1XG_FIFO_SRC) & 0x2F); // Read number of stored samples

for(ii = 0; ii < samples ; ii++) { // Read the accel data stored in the FIFO int16_t accel_temp[3] = {0, 0, 0}; readBytes(LSM9DS1XG_ADDRESS, LSM9DS1XG_OUT_X_L_XL, 6, &data[0]); accel_temp[0] = (int16_t) (((int16_t)data[1] << 8) | data[0]); // Form signed 16-bit integer for each sample in FIFO accel_temp[1] = (int16_t) (((int16_t)data[3] << 8) | data[2]); accel_temp[2] = (int16_t) (((int16_t)data[5] << 8) | data[4]);

accel_bias[0] += (int32_t) accel_temp[0]; // Sum individual signed 16-bit biases to get accumulated signed 32-bit biases
accel_bias[1] += (int32_t) accel_temp[1];
accel_bias[2] += (int32_t) accel_temp[2];

}

accel_bias[0] /= samples; // average the data accel_bias[1] /= samples; accel_bias[2] /= samples; ...


`

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<https://github.com/kriswiner/MPU6050/issues/6#issuecomment-719637077>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABTDLKTSLRLWZHMK7YUTNEDSNLOXHANCNFSM4BDN6GYA>
.
saedelman commented 3 years ago

OK, so I need to position the sensor (exactly) along an axis so I have the gravity vector in only one component (and only the offsets in the other components). I don't think I can use a fusion algorithm to estimate the gravity vector, as this will include the offsets that I am trying to eliminate. Any other suggestions on how to create a robust process to determine offsets?

kriswiner commented 3 years ago

No, this will suffice:

if (dest2[0] > 0.75f) { dest2[0] -= 1.0f; // Remove gravity from the x-axis accelerometer bias calculation } if (dest2[0] < -0.75f) { dest2[0] += 1.0f; // Remove gravity from the x-axis accelerometer bias calculation } if (dest2[1] > 0.75f) { dest2[1] -= 1.0f; // Remove gravity from the y-axis accelerometer bias calculation } if (dest2[1] < -0.75f) { dest2[1] += 1.0f; // Remove gravity from the y-axis accelerometer bias calculation } if (dest2[2] > 0.75f) { dest2[2] -= 1.0f; // Remove gravity from the z-axis accelerometer bias calculation } if (dest2[2] < -0.75f) { dest2[2] += 1.0f; // Remove gravity from the z-axis accelerometer bias calculation }

On Fri, Oct 30, 2020 at 10:30 AM Stephan Edelman notifications@github.com wrote:

OK, so I need to position the sensor (exactly) along an axis so I have the gravity vector in only one component (and only the offsets in the other components). I don't think I can use a fusion algorithm to estimate the gravity vector, as this will include the offsets that I am trying to eliminate. Any other suggestions on how to create a robust process to determine offsets?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-719691668, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKROMXWV2O6N53ZHXHTSNLZ3ZANCNFSM4BDN6GYA .

saedelman commented 3 years ago

This appears non-ideal. It means that I must have the sensor aligned perfectly on at least one axis, otherwise gravity influences the other components and I can't be sure what proportion is the gravity component and what is the offset. It is actually exceedingly difficult to align the sensor with one axis due to the shape of our enclosure. I'm going to have to build some kind of tumbling jig that can rotate the device so that I can identify the min value for the other two components (or the max for the gravity component).

kriswiner commented 3 years ago

No, it means that at least one axis must be mostly aligned (within ~30 degrees or so, depending on the criterion) with gravity in order for the biases to be applied correctly. I use this successfully in all of my sensor fusion work, although we also use more sophisticated methods for sensor calibration.

The point is, fancy algebra is not needed, just straightforward math methods that you should be able to manage.

So if this doesn't work for your application, I am sure you can think of a variant that will.

On Fri, Oct 30, 2020 at 4:08 PM Stephan Edelman notifications@github.com wrote:

This appears non-ideal. It means that I must have the sensor aligned perfectly on at least one axis, otherwise gravity influences the other components and I can't be sure what proportion is the gravity component and what is the offset. It is actually exceedingly difficult to align the sensor with one axis due to the shape of our enclosure. I'm going to have to build some kind of tumbling jig that can rotate the device so that I can identify the min value for the other two components (or the max for the gravity component).

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-719838226, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKVO3FH4I5KLWRJDP3DSNNBPLANCNFSM4BDN6GYA .

batuuhnk commented 3 years ago

Hi, I want to model my magnetometer in Matlab. I need to use the 'magparam' function for modeling. To use the magparam function, we need to enter certain magnetometer parameters. Some parameters are missing in the datasheets. I have listed these parameters below.

kriswiner commented 3 years ago

The MPU6050 does not have a magnetometer...

On Thu, Dec 3, 2020 at 2:45 AM batuuhnk notifications@github.com wrote:

Hi, I want to model my magnetometer in Matlab. I need to use the 'magparam' function for modeling. To use the magparam function, we need to enter certain magnetometer parameters. Some parameters are missing in the datasheets. I have listed these parameters below.

  • ConstantBias - Constant sensor offset deviation (μT)
  • NoiseDensity - Power spectral density of sensor noise (μT / √Hz)
  • BiasInstability - Instability of bias offset (μT)
  • RandomWalk - Integrated white noise of the sensor (μT / √Hz)
  • TemperatureBias - Sensor deviation from temperature (μT / ℃)
  • TemperatureScaleFactor - Scale factor error from temperature (% / ℃) When I review the literature, there is no information about the inference of these parameters. These parameters for the accelerometer and gyroscope are found with the Allan Variance plot. However, according to my research, Allan Variance is not applied for magnetometer. Can you help on how to extract these parameters? Thank you very much in advance.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-737861059, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKQDP4SXOUV2ECINGSDSS5T3TANCNFSM4BDN6GYA .

batuuhnk commented 3 years ago

Sorry I forgot to mention the name of the sensor. The sensor I want to model is MMC5983.

kriswiner commented 3 years ago

If you can't find the info in the data sheet then please contact the manufacturer...

On Thu, Dec 3, 2020 at 10:00 AM batuuhnk notifications@github.com wrote:

Sorry I forgot to mention the name of the sensor. The sensor I want to model is MMC5983.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-738181425, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKRFQ4O2J3X3FFTAJLTSS7G5VANCNFSM4BDN6GYA .

kdervis commented 3 years ago

Hi @kriswiner , What do you think about using MPU9250 for Model Rocket(will reach about 10.000 feet alt.). Which will reach about 10G acceleration. MPU9250's accelerometer can handle until 16g acceleration but in terms of other sub sensors(in the MPU9250) it will be usefull to hear your opinion. Do you know any other İMU's that will usefull fo me.

kriswiner commented 3 years ago

MPU9250 might be a good choice if accel is limited to <16 g. However, you won't get accurate orientation once the accel is more than ~1 g since you will have lost the gravity reference.. But if you just want to measure inertial forces, then this is fine.

On Wed, Feb 10, 2021 at 12:48 PM Kemran Dervishov notifications@github.com wrote:

Hi @kriswiner https://github.com/kriswiner , What do you think about using MPU9250 for Model Rocket(will reach about 10.000 feet alt.). Which will reach about 10G acceleration. MPU9250's accelerometer can handle until 16g acceleration but in terms of other sub sensors(in the MPU9250) it will be usefull to hear your opinion. Do you know any other İMU's that will usefull fo me.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-777025249, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKXTBV4YCVKCCWM37Y3S6LWLDANCNFSM4BDN6GYA .

slavkovukelic commented 3 years ago

Hi @kriswiner , ICM-42688-P + MMC34160PJ or single ICM-20948. We want to use it in the elevator to detect some interesting things. Any suggestion, opinion, reflection etc??

kriswiner commented 3 years ago

Depends on what you want to measure, power constraints, size of pcb etc.

We use LSM6DSM and MMC5983 for accurate, low-power AHRS.

On Tue, Feb 23, 2021 at 8:55 AM slavkovukelic notifications@github.com wrote:

Hi @kriswiner https://github.com/kriswiner , ICM-42688-P + MMC34160PJ or single ICM-20948. We want to use it in the elevator to detect some interesting things. Any suggestion, opinion, reflection etc??

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-784347299, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKTM5RWEMDFLYMDNBW3TAPMXJANCNFSM4BDN6GYA .

slavkovukelic commented 3 years ago

Space on PCB is not a problem for us. The power supply is strong enough and the PCB has a permanent power supply. STM has generally had a problem for the last year to deliver sensors and micro controllers, permanently short stocks. In France, STM employees are on strike. For example the last offer for 500 pieces of LSM9DS1TR is 31 usd. Funny. No one wants to pay that much for that sensor. We also have LSM6DSM implemented on the board. We want to replace it with another vendor and have a revision of the PCB that can overcome supplier dependency. It may even be better to use the MMC5983, the chip is bigger and easier to implement.

kriswiner commented 3 years ago

ICM20689 is just fine then

On Tue, Feb 23, 2021 at 10:38 AM slavkovukelic notifications@github.com wrote:

Space on PCB is not a problem for us. The power supply is strong enough and the PCB has a permanent power supply. STM has generally had a problem for the last year to deliver sensors and micro controllers, permanently short stocks. In France, STM employees are on strike. For example the last offer for 500 pieces of LSM9DS1TR is 31 usd. Funny. No one wants to pay that much for that sensor. We also have LSM6DSM implemented on the board. We want to replace it with another vendor and have a revision of the PCB that can overcome supplier dependency. It may even be better to use the MMC5983, the chip is bigger and easier to implement.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-784422066, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKQFC2H2SZ5ILKEP7XLTAPY3TANCNFSM4BDN6GYA .

saedelman commented 3 years ago

Kris,

We’re dealing with the same supply issues with the LSM9DS1 and are ready to dump this sensor in favour of another manufacturer.

Do you have any suggestions on which sensors we should evaluate that have a similar sized foot print with compatible voltage supply and as good or better sensors as the LSM9DS1? We’re not currently using the magnetometer.

Any suggestions would be greatly appreciated.

Regards,

Stephan.

--

Stephan A. Edelman

NewAce Corporation

Toll Free: 866 779 1518 x221

Tel: +1 416 848 1985 x221

Fax:+1 416 479 0570

From: Kris Winer [mailto:notifications@github.com] Sent: Tuesday, February 23, 2021 1:47 PM To: kriswiner/MPU6050 Cc: Stephan A. Edelman; Comment Subject: Re: [kriswiner/MPU6050] LSM9DS1 vs. MPU-9250 vs. BMX055 (#6)

ICM20689 is just fine then

On Tue, Feb 23, 2021 at 10:38 AM slavkovukelic notifications@github.com wrote:

Space on PCB is not a problem for us. The power supply is strong enough and the PCB has a permanent power supply. STM has generally had a problem for the last year to deliver sensors and micro controllers, permanently short stocks. In France, STM employees are on strike. For example the last offer for 500 pieces of LSM9DS1TR is 31 usd. Funny. No one wants to pay that much for that sensor. We also have LSM6DSM implemented on the board. We want to replace it with another vendor and have a revision of the PCB that can overcome supplier dependency. It may even be better to use the MMC5983, the chip is bigger and easier to implement.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-784422066, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKQFC2H2SZ5ILKEP7XLTAPY3TANCNFSM4BDN6GYA .

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-784427159 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ABIBIW3AGDBTZOCMFAI3BOTTAPZ2DANCNFSM4BDN6GYA .Image removed by sender.

kriswiner commented 3 years ago

There is no better accel/gyro than the LSM6DSM right now. You could use instead the ICM20689 or some TDK varian thereof. Not as good but not bad...

On Tue, Feb 23, 2021 at 11:37 AM Stephan Edelman notifications@github.com wrote:

Kris,

We’re dealing with the same supply issues with the LSM9DS1 and are ready to dump this sensor in favour of another manufacturer.

Do you have any suggestions on which sensors we should evaluate that have a similar sized foot print with compatible voltage supply and as good or better sensors as the LSM9DS1? We’re not currently using the magnetometer.

Any suggestions would be greatly appreciated.

Regards,

Stephan.

--

Stephan A. Edelman

NewAce Corporation

Toll Free: 866 779 1518 x221

Tel: +1 416 848 1985 x221

Fax:+1 416 479 0570

From: Kris Winer [mailto:notifications@github.com] Sent: Tuesday, February 23, 2021 1:47 PM To: kriswiner/MPU6050 Cc: Stephan A. Edelman; Comment Subject: Re: [kriswiner/MPU6050] LSM9DS1 vs. MPU-9250 vs. BMX055 (#6)

ICM20689 is just fine then

On Tue, Feb 23, 2021 at 10:38 AM slavkovukelic notifications@github.com wrote:

Space on PCB is not a problem for us. The power supply is strong enough and the PCB has a permanent power supply. STM has generally had a problem for the last year to deliver sensors and micro controllers, permanently short stocks. In France, STM employees are on strike. For example the last offer for 500 pieces of LSM9DS1TR is 31 usd. Funny. No one wants to pay that much for that sensor. We also have LSM6DSM implemented on the board. We want to replace it with another vendor and have a revision of the PCB that can overcome supplier dependency. It may even be better to use the MMC5983, the chip is bigger and easier to implement.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-784422066, or unsubscribe < https://github.com/notifications/unsubscribe-auth/ABTDLKQFC2H2SZ5ILKEP7XLTAPY3TANCNFSM4BDN6GYA

.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub < https://github.com/kriswiner/MPU6050/issues/6#issuecomment-784427159> , or unsubscribe < https://github.com/notifications/unsubscribe-auth/ABIBIW3AGDBTZOCMFAI3BOTTAPZ2DANCNFSM4BDN6GYA> .Image removed by sender.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-784458776, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKRSYRN3DKEVCL6RFK3TAP7WXANCNFSM4BDN6GYA .

hpmax commented 3 years ago

@kriswiner The LSM6DSM seems to be 100% unavailable for at least several months. How is the LSM6DSO as a substitute?

kriswiner commented 3 years ago

As an accel/gyro about the same, but its register map is completely different so you will need to use a different driver https://github.com/kriswiner/LSM6DSO. It is really intended for use as a sensor hub to manage other sensors (like a mag) and for machine learning, and therefore costs a bit more. But I guess in a pinch, since it is footprint and pinmap compatible, you could use the LSM6DSO.

On Mon, Mar 8, 2021 at 10:21 PM hpmax notifications@github.com wrote:

@kriswiner https://github.com/kriswiner The LSM6DSM seems to be 100% unavailable for at least several months. How is the LSM6DSO as a substitute?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-793448727, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKUKJBSBARGM2VLLUJLTCW46RANCNFSM4BDN6GYA .

hpmax commented 3 years ago

@kriswiner Great... :( Like I said, ST claims they don't have stock, Digikey and Mouser don't have stock. ST lists three distributors as having stock, but none actually do. Lead times are into August or even later.

kriswiner commented 3 years ago

Although LCSC seems to have quite a few available:

https://lcsc.com/product-detail/Specialized-Sensors_STMicroelectronics_LSM6DSMTR_STMicroelectronics-LSM6DSMTR_C94048.html

At a good price too.

On Mon, Mar 8, 2021 at 10:32 PM Tlera Corporation tleracorp@gmail.com wrote:

As an accel/gyro about the same, but its register map is completely different so you will need to use a different driver https://github.com/kriswiner/LSM6DSO. It is really intended for use as a sensor hub to manage other sensors (like a mag) and for machine learning, and therefore costs a bit more. But I guess in a pinch, since it is footprint and pinmap compatible, you could use the LSM6DSO.

On Mon, Mar 8, 2021 at 10:21 PM hpmax notifications@github.com wrote:

@kriswiner https://github.com/kriswiner The LSM6DSM seems to be 100% unavailable for at least several months. How is the LSM6DSO as a substitute?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-793448727, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKUKJBSBARGM2VLLUJLTCW46RANCNFSM4BDN6GYA .

saedelman commented 3 years ago

Lowest price for the LSM9DS1TR that I have seen is $49 USD/piece (SierraIC – no more stock, last sold 200 pieces on Friday) and highest is $239.63 USD/piece (UTSource).

DigiKey indicates stock will be available October 20, 2021. This is not just a labour dispute issue with STM, but a larger issue around COVID-19.

It looks like a large number of parts manufacturers have blown through their inventory stock piles and demand has outpaced supply.

This is just the tip of the iceberg. We’re in for a world of hurt in the coming months.

Regards,

Stephan.

--

Stephan A. Edelman

NewAce Corporation

Toll Free: 866 779 1518 x221

Tel: +1 416 848 1985 x221

Fax:+1 416 479 0570

From: Kris Winer @.*** Sent: Tuesday, March 09, 2021 1:37 AM To: kriswiner/MPU6050 Cc: Stephan A. Edelman; Comment Subject: Re: [kriswiner/MPU6050] LSM9DS1 vs. MPU-9250 vs. BMX055 (#6)

Although LCSC seems to have quite a few available:

https://lcsc.com/product-detail/Specialized-Sensors_STMicroelectronics_LSM6DSMTR_STMicroelectronics-LSM6DSMTR_C94048.html

At a good price too.

On Mon, Mar 8, 2021 at 10:32 PM Tlera Corporation @.***> wrote:

As an accel/gyro about the same, but its register map is completely different so you will need to use a different driver https://github.com/kriswiner/LSM6DSO. It is really intended for use as a sensor hub to manage other sensors (like a mag) and for machine learning, and therefore costs a bit more. But I guess in a pinch, since it is footprint and pinmap compatible, you could use the LSM6DSO.

On Mon, Mar 8, 2021 at 10:21 PM hpmax @.***> wrote:

@kriswiner https://github.com/kriswiner The LSM6DSM seems to be 100% unavailable for at least several months. How is the LSM6DSO as a substitute?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-793448727, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKUKJBSBARGM2VLLUJLTCW46RANCNFSM4BDN6GYA .

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-793455682 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ABIBIWYGTI75FAGNPYCQOTTTCW6XZANCNFSM4BDN6GYA .Image removed by sender.

kriswiner commented 3 years ago

Did you try LCSC? They claim to have 9000 LSM6DSM in stock.

On Tue, Mar 9, 2021 at 9:51 AM Stephan Edelman notifications@github.com wrote:

Lowest price for the LSM9DS1TR that I have seen is $49 USD/piece (SierraIC – no more stock, last sold 200 pieces on Friday) and highest is $239.63 USD/piece (UTSource).

DigiKey indicates stock will be available October 20, 2021. This is not just a labour dispute issue with STM, but a larger issue around COVID-19.

It looks like a large number of parts manufacturers have blown through their inventory stock piles and demand has outpaced supply.

This is just the tip of the iceberg. We’re in for a world of hurt in the coming months.

Regards,

Stephan.

--

Stephan A. Edelman

NewAce Corporation

Toll Free: 866 779 1518 x221

Tel: +1 416 848 1985 x221

Fax:+1 416 479 0570

From: Kris Winer @.*** Sent: Tuesday, March 09, 2021 1:37 AM To: kriswiner/MPU6050 Cc: Stephan A. Edelman; Comment Subject: Re: [kriswiner/MPU6050] LSM9DS1 vs. MPU-9250 vs. BMX055 (#6)

Although LCSC seems to have quite a few available:

https://lcsc.com/product-detail/Specialized-Sensors_STMicroelectronics_LSM6DSMTR_STMicroelectronics-LSM6DSMTR_C94048.html

At a good price too.

On Mon, Mar 8, 2021 at 10:32 PM Tlera Corporation @.***> wrote:

As an accel/gyro about the same, but its register map is completely different so you will need to use a different driver https://github.com/kriswiner/LSM6DSO. It is really intended for use as a sensor hub to manage other sensors (like a mag) and for machine learning, and therefore costs a bit more. But I guess in a pinch, since it is footprint and pinmap compatible, you could use the LSM6DSO.

On Mon, Mar 8, 2021 at 10:21 PM hpmax @.***> wrote:

@kriswiner https://github.com/kriswiner The LSM6DSM seems to be 100% unavailable for at least several months. How is the LSM6DSO as a substitute?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-793448727, or unsubscribe < https://github.com/notifications/unsubscribe-auth/ABTDLKUKJBSBARGM2VLLUJLTCW46RANCNFSM4BDN6GYA

.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub < https://github.com/kriswiner/MPU6050/issues/6#issuecomment-793455682> , or unsubscribe < https://github.com/notifications/unsubscribe-auth/ABIBIWYGTI75FAGNPYCQOTTTCW6XZANCNFSM4BDN6GYA> .Image removed by sender.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-794228664, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKWIRVEWIXOOOS7VFVTTCZN3FANCNFSM4BDN6GYA .

saedelman commented 3 years ago

Yes, but our design is around the LSM9DS1. I am hesitant to design anything around STM for the moment.

Have you evaluated the ICM-20602? It appears to be 3.3V compatible for both supply and I/O.

Regards,

Stephan.

--

Stephan A. Edelman

NewAce Corporation

Toll Free: 866 779 1518 x221

Tel: +1 416 848 1985 x221

Fax:+1 416 479 0570

From: Kris Winer @.*** Sent: Tuesday, March 09, 2021 12:54 PM To: kriswiner/MPU6050 Cc: Stephan A. Edelman; Comment Subject: Re: [kriswiner/MPU6050] LSM9DS1 vs. MPU-9250 vs. BMX055 (#6)

Did you try LCSC? They claim to have 9000 LSM6DSM in stock.

On Tue, Mar 9, 2021 at 9:51 AM Stephan Edelman @.***> wrote:

Lowest price for the LSM9DS1TR that I have seen is $49 USD/piece (SierraIC – no more stock, last sold 200 pieces on Friday) and highest is $239.63 USD/piece (UTSource).

DigiKey indicates stock will be available October 20, 2021. This is not just a labour dispute issue with STM, but a larger issue around COVID-19.

It looks like a large number of parts manufacturers have blown through their inventory stock piles and demand has outpaced supply.

This is just the tip of the iceberg. We’re in for a world of hurt in the coming months.

Regards,

Stephan.

--

Stephan A. Edelman

NewAce Corporation

Toll Free: 866 779 1518 x221

Tel: +1 416 848 1985 x221

Fax:+1 416 479 0570

From: Kris Winer @.*** Sent: Tuesday, March 09, 2021 1:37 AM To: kriswiner/MPU6050 Cc: Stephan A. Edelman; Comment Subject: Re: [kriswiner/MPU6050] LSM9DS1 vs. MPU-9250 vs. BMX055 (#6)

Although LCSC seems to have quite a few available:

https://lcsc.com/product-detail/Specialized-Sensors_STMicroelectronics_LSM6DSMTR_STMicroelectronics-LSM6DSMTR_C94048.html

At a good price too.

On Mon, Mar 8, 2021 at 10:32 PM Tlera Corporation @.***> wrote:

As an accel/gyro about the same, but its register map is completely different so you will need to use a different driver https://github.com/kriswiner/LSM6DSO. It is really intended for use as a sensor hub to manage other sensors (like a mag) and for machine learning, and therefore costs a bit more. But I guess in a pinch, since it is footprint and pinmap compatible, you could use the LSM6DSO.

On Mon, Mar 8, 2021 at 10:21 PM hpmax @.***> wrote:

@kriswiner https://github.com/kriswiner The LSM6DSM seems to be 100% unavailable for at least several months. How is the LSM6DSO as a substitute?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-793448727, or unsubscribe < https://github.com/notifications/unsubscribe-auth/ABTDLKUKJBSBARGM2VLLUJLTCW46RANCNFSM4BDN6GYA

.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub < https://github.com/kriswiner/MPU6050/issues/6#issuecomment-793455682> , or unsubscribe < https://github.com/notifications/unsubscribe-auth/ABIBIWYGTI75FAGNPYCQOTTTCW6XZANCNFSM4BDN6GYA> .Image removed by sender.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-794228664, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKWIRVEWIXOOOS7VFVTTCZN3FANCNFSM4BDN6GYA .

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-794231563 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ABIBIW2MLX3FPT3R3J3BNJ3TCZOD5ANCNFSM4BDN6GYA .Image removed by sender.

kriswiner commented 3 years ago

LSM6DSM is simply the best performing accel/gyro available now, but ICM20602 is pretty close. If you don't like ST then use the TDK accel/gyro.

LSM6DS1 is way, way downrev...

On Tue, Mar 9, 2021 at 10:23 AM Stephan Edelman notifications@github.com wrote:

Yes, but our design is around the LSM9DS1. I am hesitant to design anything around STM for the moment.

Have you evaluated the ICM-20602? It appears to be 3.3V compatible for both supply and I/O.

Regards,

Stephan.

--

Stephan A. Edelman

NewAce Corporation

Toll Free: 866 779 1518 x221

Tel: +1 416 848 1985 x221

Fax:+1 416 479 0570

From: Kris Winer @.*** Sent: Tuesday, March 09, 2021 12:54 PM To: kriswiner/MPU6050 Cc: Stephan A. Edelman; Comment Subject: Re: [kriswiner/MPU6050] LSM9DS1 vs. MPU-9250 vs. BMX055 (#6)

Did you try LCSC? They claim to have 9000 LSM6DSM in stock.

On Tue, Mar 9, 2021 at 9:51 AM Stephan Edelman @.***> wrote:

Lowest price for the LSM9DS1TR that I have seen is $49 USD/piece (SierraIC – no more stock, last sold 200 pieces on Friday) and highest is $239.63 USD/piece (UTSource).

DigiKey indicates stock will be available October 20, 2021. This is not just a labour dispute issue with STM, but a larger issue around COVID-19.

It looks like a large number of parts manufacturers have blown through their inventory stock piles and demand has outpaced supply.

This is just the tip of the iceberg. We’re in for a world of hurt in the coming months.

Regards,

Stephan.

--

Stephan A. Edelman

NewAce Corporation

Toll Free: 866 779 1518 x221

Tel: +1 416 848 1985 x221

Fax:+1 416 479 0570

From: Kris Winer @.*** Sent: Tuesday, March 09, 2021 1:37 AM To: kriswiner/MPU6050 Cc: Stephan A. Edelman; Comment Subject: Re: [kriswiner/MPU6050] LSM9DS1 vs. MPU-9250 vs. BMX055 (#6)

Although LCSC seems to have quite a few available:

https://lcsc.com/product-detail/Specialized-Sensors_STMicroelectronics_LSM6DSMTR_STMicroelectronics-LSM6DSMTR_C94048.html

At a good price too.

On Mon, Mar 8, 2021 at 10:32 PM Tlera Corporation @.***> wrote:

As an accel/gyro about the same, but its register map is completely different so you will need to use a different driver https://github.com/kriswiner/LSM6DSO. It is really intended for use as a sensor hub to manage other sensors (like a mag) and for machine learning, and therefore costs a bit more. But I guess in a pinch, since it is footprint and pinmap compatible, you could use the LSM6DSO.

On Mon, Mar 8, 2021 at 10:21 PM hpmax @.***> wrote:

@kriswiner https://github.com/kriswiner The LSM6DSM seems to be 100% unavailable for at least several months. How is the LSM6DSO as a substitute?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <https://github.com/kriswiner/MPU6050/issues/6#issuecomment-793448727 , or unsubscribe <

https://github.com/notifications/unsubscribe-auth/ABTDLKUKJBSBARGM2VLLUJLTCW46RANCNFSM4BDN6GYA

.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub < https://github.com/kriswiner/MPU6050/issues/6#issuecomment-793455682> , or unsubscribe <

https://github.com/notifications/unsubscribe-auth/ABIBIWYGTI75FAGNPYCQOTTTCW6XZANCNFSM4BDN6GYA

.Image removed by sender.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-794228664, or unsubscribe < https://github.com/notifications/unsubscribe-auth/ABTDLKWIRVEWIXOOOS7VFVTTCZN3FANCNFSM4BDN6GYA

.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub < https://github.com/kriswiner/MPU6050/issues/6#issuecomment-794231563> , or unsubscribe < https://github.com/notifications/unsubscribe-auth/ABIBIW2MLX3FPT3R3J3BNJ3TCZOD5ANCNFSM4BDN6GYA> .Image removed by sender.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-794267100, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKXX7JME3XD6YHHLRD3TCZRSNANCNFSM4BDN6GYA .

darwineq13 commented 3 years ago

Hello everyone, I am looking for an IMU that has accelerometer + magnetometer + gyroscope to measure the range of motion of the fingers of the hand. I have found ICM-20948 (upgrade from MPU-9250), BNO055 and BNO080. What do you recomend me? Thanks

kriswiner commented 3 years ago

https://www.tindie.com/products/onehorse/max32660-motion-co-processor/

or

https://www.tindie.com/products/onehorse/usfsmax-module-and-carrier/

On Mon, Mar 29, 2021 at 10:16 AM darwineq13 @.***> wrote:

Hello everyone, I am looking for an IMU that has accelerometer + magnetometer + gyroscope to measure the range of motion of the fingers of the hand. I have found ICM-20948 (upgrade from MPU-9250), BNO055 and BNO080. What do you recomend me? Thanks

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-809555967, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKSH67OSEACDG6ZCEW3TGCYW5ANCNFSM4BDN6GYA .

sezgink commented 2 years ago

Hi Kris, while looking documents of USFSMAX was written that upper part of sensor should look to up, forward side to direction of movement etc. which probably define system for flying drone. Is this situation is a problem for a motion capture system that using USFSMAX for getting absolute orientation of needed joints? Or ascend error for orientation?

kriswiner commented 2 years ago

Sorry I missed this.

The USFSMax should work in almost any orientation. There are exceptions, like when pitch is near/at 90 degrees wrt horizontal but there is no reason this absolute orientation solution should not work well for tracking limb and joint movements. Hope this helps. If you have any trouble let me know.

Kris

On Sat, Oct 23, 2021 at 5:54 AM sezgink @.***> wrote:

Hi Kris, while looking documents of USFSMAX was written that upper part of sensor should look to up, forward side to direction of movement etc. which probably define system for flying drone. Is this situation is a problem for a motion capture system that using USFSMAX for getting absolute orientation of needed joints? Or ascend error for orientation?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-950148448, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKQ7RNESSVF3KVOUWOLUIKV7NANCNFSM4BDN6GYA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

zeeblaze commented 2 years ago

Hi Kris...I want to confirm if this is the store you are talking about on AliExpress?

https://a.aliexpress.com/_mP7n4pC

kriswiner commented 2 years ago

Yep, have had good luck ordering from New Hope...

On Wed, Oct 27, 2021 at 12:48 PM zeeblaze @.***> wrote:

Hi Kris...I want to confirm if this is the store you are talking about on AliExpress?

https://a.aliexpress.com/_mP7n4pC

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-953256640, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKX5C2HUB3P6E7SRHVTUJBJRRANCNFSM4BDN6GYA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

zeeblaze commented 2 years ago

Ok thanks Kris...there is another thing...am working on a drone project...so am looking to use the mpu6500 used in mpu9250...is it okay to use in a drone without a magnetometer?

kriswiner commented 2 years ago

If you don't need headless flight or absolute orientation estimation, then yes. Wouldn't be my choice but it is a valid choice. I think LSM6DSM is a (much) better accel/gyro than the MPU6500.

On Wed, Oct 27, 2021 at 1:19 PM zeeblaze @.***> wrote:

Ok thanks Kris...there is another thing...am working on a drone project...so am looking to use the mpu6500 used in mpu9250...is it okay to use in a drone without a magnetometer?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-953278525, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKTFGFXSWSE4CQNA3NDUJBNGTANCNFSM4BDN6GYA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

zeeblaze commented 2 years ago

But the LSM6DSM is very scarce and pricey😩

kriswiner commented 2 years ago

$3.50 each is not pricey....

https://www.aliexpress.com/item/1005002957388048.html?spm=a2g0o.productlist.0.0.75f86702E4IJeP&algo_pvid=0b3f6494-d436-44a2-ab27-6fb33b427460&algo_exp_id=0b3f6494-d436-44a2-ab27-6fb33b427460-6&pdp_ext_f=%7B%22sku_id%22%3A%2212000022954699360%22%7D

On Wed, Oct 27, 2021 at 1:29 PM zeeblaze @.***> wrote:

But the LSM6DSM is very scarce and pricey😩

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-953285314, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKXQCIGWWY6ALZIWTGTUJBOLVANCNFSM4BDN6GYA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

zeeblaze commented 2 years ago

Wow...I didn't see this seller before...and have you tried the store and the chips are genuine?

kriswiner commented 2 years ago

No idea, buyer beware...

On Wed, Oct 27, 2021 at 1:41 PM zeeblaze @.***> wrote:

Wow...I didn't see this seller before...and have you tried the store and the chips are genuine?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-953294535, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKV7YLEWZHBTGKSRFGDUJBPXLANCNFSM4BDN6GYA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

zeeblaze commented 2 years ago

Where do you buy your chips from?😌

kriswiner commented 2 years ago

Mouser or Digikey, sometimes LSCS.com or futureelectronics. Sometimes from Arrow, etc None of these have any LSM6DSM in stock. That is why I usually buy 100 or more when I do buy them.

On Wed, Oct 27, 2021 at 1:54 PM zeeblaze @.***> wrote:

Where do you buy your chips from?😌

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-953302956, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKVLNVBHCE4YPDS2IHDUJBRIPANCNFSM4BDN6GYA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

zeeblaze commented 2 years ago

Ok... thanks... Is LSM6DSM that superior to MPU6500?... Because I can't seem to find any store with LSM6DSM like you said😩

And

I don't think I will need headless mode... because I want to use them for indoor swarms...and the heading might change completely if they move close to a metal object or a computer...so...am afraid that might happen...

oziqus commented 2 years ago

Hi Kris, Could you have a look at the mmc5983 library written in python? I have a problem because the measurement heading differs by some 60-80 degrees with the actual reading:

https://github.com/bluerobotics/mmc5983-python/blob/master/mmc5983/mmc5983.py

Thanks for help !

kriswiner commented 2 years ago

Sorry, I have no idea how python works.

On Mon, Nov 15, 2021 at 2:19 PM oziqus @.***> wrote:

Hi Kris, Could you have a look at the mmc5983 library written in python? I have a problem because the measurement heading differs by some 60-80 degrees with the actual reading:

https://github.com/bluerobotics/mmc5983-python/blob/master/mmc5983/mmc5983.py

Thanks for help !

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-969376250, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKQLQQVKY7PTNRH3NDDUMGBQ3ANCNFSM4BDN6GYA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

oziqus commented 2 years ago

I understand, I don't know what I'm doing wrong, after calc the heading and calibrates mag - the north is always shifted by 60-80. Should the mag raw result be multiplied by the scales?

kriswiner commented 2 years ago

raw mag data needs to be properly cast as int16_t integers, then scaled. Ten the mag needs to be properly calibrated and checked, by comparing with the values of the local magnetic field as published by the USGS, for example. Accel and gyro need to be calibrated too, otherwise your heading will be poor.

On Mon, Nov 15, 2021 at 2:57 PM oziqus @.***> wrote:

I understand, I don't know what I'm doing wrong, after calc the heading - the north is always shifted by 60-80. Should the mag raw result be multiplied by the scales?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kriswiner/MPU6050/issues/6#issuecomment-969402575, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABTDLKXGOEWNQWNGFNPQK3TUMGF6RANCNFSM4BDN6GYA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

oziqus commented 2 years ago

Thank you Kris. I still have a question how to calculate degaussing offsets? Do I have to set / reset every time? To do degausing properly, it is enough to set / reset and restart the device? Do the results need to be recalculated ? Why is a self test performed?