How to correct for Sensor physical mis-alignment?

edited January 19 in General

Hello all
I am new to mbientlab and would appreciate comments on my development strategy and tech questions.

Planned App & Physical Deployment Model:
I need to develop an Android App to track the orientation of a User's head. The User will clip the sensor on top of her head (headband), perfectly aligned with real-world xyz orientation. I want to use the SensorFusion API and I have studied the "3D Cube" App - all ok there.

Issue: User Calibration to correct for misplacement of the physical sensor
I can't be sure that the User will position the physical sensor correctly, that is to say: perfectly flat on top of the head, perfectly aligned front/back with the front/back head centreline etc

So I plan a "Spatial Normalisation" step where I prompt the User "head level, face forward then press "Spatial Calibrate" button. At that point I will capture actual physical orientation data and subtract that from subsequent data to get my "normalised" data.

I have some questions:
1. I read about 'mbl_mw_sensor_fusion_reset_orientation()' - is this the one-line solution I need? I'm hoping I can call this when my User hits "Calibrate" in UI and thereafter automagically get data as if the sensor were perfectly physically positioned - am I right or close?
2. I can't find any API documentation for mbl_mw_sensor_fusion_reset_orientation() and I understand there's new firmware needed for this (1.5.1). When will mbl_mw_sensor_fusion_reset_orientation() be available for Java and is there some API doc I can look at to learn what it is and how to use it?

Thanks so much - all help much appreciated!

Comments

  • Thanks!
    And how can I access the updated SDK for Java/Android please?
    Thanks

  • You call that function?

  • edited January 19

    @Laura said:
    You call that function?

    Thanks you Laura

    I can't seem to call that function in my Android (Java) App.
    If I add the call to the mbientlab sensorfusion project I get the error: "Cannot resolve method 'mbl_mw_sensor_fusion_reset_orientation' in 'CubeActivity'"

    Is this new API mbl_mw_sensor_fusion_reset_orientation available for Android (Java)?
    If so, how do I update the sample projects and/or my own project to be able to use this?
    Thanks!

  • The Java/Android SDK hasn't been updated for that feature yet. All the others have been update. We expect to update Android by the end of the month.

  • @Laura said:
    The Java/Android SDK hasn't been updated for that feature yet. All the others have been update. We expect to update Android by the end of the month.

    Hello Laura
    Any update on Java/Android SDK yet please, so that we can try mbl_mw_sensor_fusion_reset_orientation ?
    Thanks

  • I am aiming for the end of the month.

  • Wonderful Laura that's great thanks.
    I have a related question: I want to be abel to offer mbientlab-powered products on Windows. I understand that you don't support Windows, but I guess I could create a Windows SDK by compiling your C++ source into a DLL and exporting the API + .h etc right? Can you offer some advice as to how one might go about that, any blockers, pitfalls etc?
    Thanks

  • Yes you are 100% correct but you also need to find a Bluetooth lib as well. We used to support windows so you can look at our old archives but I don't have the man power to support this right now.

  • Hello any news on availability of mbl_mw_sensor_fusion_reset_orientation() for Java?
    Thanks!

  • @Laura said:
    I am aiming for the end of the month.

    Hello any news on availability of mbl_mw_sensor_fusion_reset_orientation() for Java?
    Thanks!

  • Unfortunately I had to backlog it for now since we are releasing the MMS. I am hoping it will be done by the end of the month. I will keep you updated. Sorry about this.

  • @Laura said:
    Unfortunately I had to backlog it for now since we are releasing the MMS. I am hoping it will be done by the end of the month. I will keep you updated. Sorry about this.

    Thanks Laura - does that mean end of February then? (the month just changed)

Sign In or Register to comment.