Changes in module imu_mpu6000_hmc5883.xml

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Changes in module imu_mpu6000_hmc5883.xml

Helge Walle
Hi,

Back a couple of years Felix kindly helped me getting data from the onboard baro on Aspirin IMU 2.1 r1. To achieve this the subsystem mpu6000_hmc5883 was created.

Everything has worked fine up to, and including v5.8. Now when switching to v5.10 I couldn't get data from the IMU anymore. I'm on Ubuntu 16.04 LTS.

After scratching my head a bit I changed SPI_SLAVE0 to SPI_SLAVE2 in line 44 of conf/modules/imu_mpu6000_hmc5883.xml. Then I got data from the IMU again.

Note that I have removed two pullups and added two jumpers on the Aspirin to connect baro and mag directly to I2C2 on Lisa/M.

I am not sure if others use this subsystem. If this is the correct way to fix it, could it be made permanent in v5.10 onwards?

Thanks,
Helge.

_______________________________________________
Paparazzi-devel mailing list
[hidden email]
https://lists.nongnu.org/mailman/listinfo/paparazzi-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Changes in module imu_mpu6000_hmc5883.xml

flixr
Administrator
Hi Helge,

I don't remember the reason why you didn't end up using the "normal" imu_aspirin_v2.1 subsystem/module (where the mag is a slave of the MPU)...

In any case with the conversion from subsystems to modules [1] we decided to not provide different defaults for LPC and STM based boards anymore, as that was causing quite a bit of confusion.
So now we only have one default (See http://docs.paparazziuav.org/v5.10/module__imu_mpu6000_hmc5883.html), in that case the default IMU_MPU_SPI_SLAVE_IDX is now SPI_SLAVE0 for all boards (where formerly it was SPI_SLAVE2 only for STM boards).
And as SPI_SLAVE2 doesn't exist on all boards, SLAVE0 was a better default...

And you don't have to change the module xml file, you can configure it from your airframe file:
<module name="imu_mpu6000_hmc5883">
  <configure name="IMU_MPU_SPI_SLAVE_IDX" value="SPI_SLAVE2"/>
</module>

[1] https://github.com/paparazzi/paparazzi/pull/1788

Cheers, Felix

On Sat, Jan 7, 2017 at 2:50 PM, Helge Walle <[hidden email]> wrote:
Hi,

Back a couple of years Felix kindly helped me getting data from the onboard baro on Aspirin IMU 2.1 r1. To achieve this the subsystem mpu6000_hmc5883 was created.

Everything has worked fine up to, and including v5.8. Now when switching to v5.10 I couldn't get data from the IMU anymore. I'm on Ubuntu 16.04 LTS.

After scratching my head a bit I changed SPI_SLAVE0 to SPI_SLAVE2 in line 44 of conf/modules/imu_mpu6000_hmc5883.xml. Then I got data from the IMU again.

Note that I have removed two pullups and added two jumpers on the Aspirin to connect baro and mag directly to I2C2 on Lisa/M.

I am not sure if others use this subsystem. If this is the correct way to fix it, could it be made permanent in v5.10 onwards?

Thanks,
Helge.

_______________________________________________
Paparazzi-devel mailing list
[hidden email]
https://lists.nongnu.org/mailman/listinfo/paparazzi-devel



_______________________________________________
Paparazzi-devel mailing list
[hidden email]
https://lists.nongnu.org/mailman/listinfo/paparazzi-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Changes in module imu_mpu6000_hmc5883.xml

Helge Walle
Thank you Felix,

I was so focused on getting it to work today that I didn't even think of configuring the slave index via the airframe file.
Sorry for that, now I'll add the configure to my airframe file.

Back then, when everything was working with mpu6000_hmc5883 I didn't try another subsystem.
I'll try the "normal" one again and see how that works.

Thanks again,
Helge.



2017-01-07 20:13 GMT+01:00 Felix Ruess <[hidden email]>:
Hi Helge,

I don't remember the reason why you didn't end up using the "normal" imu_aspirin_v2.1 subsystem/module (where the mag is a slave of the MPU)...

In any case with the conversion from subsystems to modules [1] we decided to not provide different defaults for LPC and STM based boards anymore, as that was causing quite a bit of confusion.
So now we only have one default (See http://docs.paparazziuav.org/v5.10/module__imu_mpu6000_hmc5883.html), in that case the default IMU_MPU_SPI_SLAVE_IDX is now SPI_SLAVE0 for all boards (where formerly it was SPI_SLAVE2 only for STM boards).
And as SPI_SLAVE2 doesn't exist on all boards, SLAVE0 was a better default...

And you don't have to change the module xml file, you can configure it from your airframe file:
<module name="imu_mpu6000_hmc5883">
  <configure name="IMU_MPU_SPI_SLAVE_IDX" value="SPI_SLAVE2"/>
</module>

[1] https://github.com/paparazzi/paparazzi/pull/1788

Cheers, Felix

On Sat, Jan 7, 2017 at 2:50 PM, Helge Walle <[hidden email]> wrote:
Hi,

Back a couple of years Felix kindly helped me getting data from the onboard baro on Aspirin IMU 2.1 r1. To achieve this the subsystem mpu6000_hmc5883 was created.

Everything has worked fine up to, and including v5.8. Now when switching to v5.10 I couldn't get data from the IMU anymore. I'm on Ubuntu 16.04 LTS.

After scratching my head a bit I changed SPI_SLAVE0 to SPI_SLAVE2 in line 44 of conf/modules/imu_mpu6000_hmc5883.xml. Then I got data from the IMU again.

Note that I have removed two pullups and added two jumpers on the Aspirin to connect baro and mag directly to I2C2 on Lisa/M.

I am not sure if others use this subsystem. If this is the correct way to fix it, could it be made permanent in v5.10 onwards?

Thanks,
Helge.

_______________________________________________
Paparazzi-devel mailing list
[hidden email]
https://lists.nongnu.org/mailman/listinfo/paparazzi-devel



_______________________________________________
Paparazzi-devel mailing list
[hidden email]
https://lists.nongnu.org/mailman/listinfo/paparazzi-devel



_______________________________________________
Paparazzi-devel mailing list
[hidden email]
https://lists.nongnu.org/mailman/listinfo/paparazzi-devel
Loading...