Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    BMA423 Step Counter

    BMA423 Step Counter

    katie7
    New Poster

    Hello,

    I am working with the BMA423 accelerometer and trying to use the step counter feature.I was able to get the chip id and have verified the chip by running the self test.I am using the driver from github and doing the following  to enable and get output of the step counter feature. 

    rslt |= bma4_set_accel_enable(BMA4_ENABLE, &dev);
    rslt |=bma4_set_accel_config(&accel_conf, &dev);
    rslt |= bma423_feature_enable(BMA423_STEP_CNTR,BMA4_ENABLE,&dev);
    rslt |= bma423_reset_step_counter(&dev);
    rslt |= bma423_step_counter_output(&step_count , &dev);

    The step counter output for the first time is 00 which is correct.After this, I am trying to get the step counter output in a loop while moving the accelerometer.I get random values out of the Step_counter registers.I am not sure why. Is there anything that looks incorrect for using the step counter feature?

     

    Thank you.

     

     

     

    5 REPLIES 5

    Vincent
    Community Moderator
    Community Moderator

    Did you call the following API funciton in your code:

    1. bma423_init

    2.  bma423_write_config_file

    3.   bma423_select_platform

    4.   bma423_stepcounter_set_parameter

    Those functions should be called before the  "bma423_feature_enable(BMA423_STEP_CNTR,BMA4_ENABLE,&dev);"

    Hello Vincent,

    Thank you for the reply. Since the default setting is wrist, I was not setting them.I will set them and try again. My issue is the step counter outputs 0x1E after reset without any movements.

    shellywang
    Occasional Contributor

    Please refer to BMA423 API README file to configure:

    https://github.com/BoschSensortec/BMA423-Sensor-API/blob/master/README.md

     

     

     

    Thank you for the replies.

    I have followed the git-hub instruction and this time I have set the param and platform.The value of the 32bit stepcounter is 0x00010000 without any motion. Does this value look correct? Do I need process this data or the stepcounter suppose to give the actual step counts?

    Icon--AD-black-48x48Icon--address-consumer-data-black-48x48Icon--appointment-black-48x48Icon--back-left-black-48x48Icon--calendar-black-48x48Icon--center-alignedIcon--Checkbox-checkIcon--clock-black-48x48Icon--close-black-48x48Icon--compare-black-48x48Icon--confirmation-black-48x48Icon--dealer-details-black-48x48Icon--delete-black-48x48Icon--delivery-black-48x48Icon--down-black-48x48Icon--download-black-48x48Ic-OverlayAlertIcon--externallink-black-48x48Icon-Filledforward-right_adjustedIcon--grid-view-black-48x48IC_gd_Check-Circle170821_Icons_Community170823_Bosch_Icons170823_Bosch_Icons170821_Icons_CommunityIC-logout170821_Icons_Community170825_Bosch_Icons170821_Icons_CommunityIC-shopping-cart2170821_Icons_CommunityIC-upIC_UserIcon--imageIcon--info-i-black-48x48Icon--left-alignedIcon--Less-minimize-black-48x48Icon-FilledIcon--List-Check-grennIcon--List-Check-blackIcon--List-Cross-blackIcon--list-view-mobile-black-48x48Icon--list-view-black-48x48Icon--More-Maximize-black-48x48Icon--my-product-black-48x48Icon--newsletter-black-48x48Icon--payment-black-48x48Icon--print-black-48x48Icon--promotion-black-48x48Icon--registration-black-48x48Icon--Reset-black-48x48Icon--right-alignedshare-circle1Icon--share-black-48x48Icon--shopping-bag-black-48x48Icon-shopping-cartIcon--start-play-black-48x48Icon--store-locator-black-48x48Ic-OverlayAlertIcon--summary-black-48x48tumblrIcon-FilledvineIc-OverlayAlertwhishlist