Hello nafihahmd,
1.The address should be shifted like this in I2C read or write function. uint8_t dev_addr = *(uint8_t*)intf_ptr; uint8_t DevAddress = dev_addr << 1;
2. Could you find any error return init_BMA()?
3. You should enable step counter before you read step value.
rslt = bma456_feature_enable(BMA456_STEP_CNTR, BMA4_ENABLE, &bma); bma4_error_codes_print_result("bma456_feature_enable status", rslt);
https://github.com/BoschSensortec/BMA456-Sensor-API/blob/master/examples/bma456/generic/step_counter.c
... View more