加速度范围不变

⚠️
大家好. .谢谢你来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台,它将提供更好的功能,包含在主对话网站中。所有岗位和账户都已迁移。我们现在只接受新论坛的流量-请在上面发布任何新帖子//www.xmece.com/support.我们将在未来几天修复bug /优化搜索和标记。
6个职位/ 0个新职位
最后发表
pureform
离线
最后看到:10个月2周之前
加入:2017-12-28 08:37
加速度范围不变

我们正在尝试将加速度计的范围从2G增加到8G/16G,但无论我们做什么,值仍然被限制在2G。我们看到了你之前发表的一篇文章,在bmi160.c的第477行添加了这些行:

s_bmi160.delay_msec (C_BMI160_ONE_UBX);
bmi160_set_accel_range (BMI_160_ACCEL_RANGE);

可以解决问题,但对我们还是不起作用。我们还尝试更改user_app_wrbl_config.h中的默认范围值,但似乎什么都不起作用。请提供加速度计范围增加到上城区8G/16G的解决方案,以便我们获得该范围内的原始数据值。

设备:
MT_dialog
离线
最后看到:4个月3天前
工作人员
加入:2015-06-08 34
嗨pureform,

嗨pureform,

该修复对物联网的SFL项目有效,我可以看到应用修复后的值发生变化,这取决于为加速度计设置的范围。您使用的项目版本是SFL还是RAW项目?

由于MT_dialog

pureform
离线
最后看到:10个月2周之前
加入:2017-12-28 08:37
我们正在使用RAW项目

我们正在使用RAW项目,而不是SFL项目。

MT_dialog
离线
最后看到:4个月3天前
工作人员
加入:2015-06-08 34
嗨pureform,

嗨pureform,

使用原始的项目我能看到改变的值根据accellerometer的范围从物联网传感器设置android / iOS应用程序,不需要添加额外的线路上使用这种原始项目(使用一个嗅探器为了检查,这样的价值观,我读了空气,我可以看到z轴是根据测量1G时的量程修改的)。关于你总是得到的值,就像设备被配置为在2G中运行一样,你确定这一点吗,可能会有一个机会,由于加速度计校准程序,你会在改变加速度计范围时得到错误的值。尝试禁用定义USE_FAST_ACC_VAL并检查。

由于MT_dialog

pureform
离线
最后看到:10个月2周之前
加入:2017-12-28 08:37
我们已经将数据范围设置为

我们已经将数据范围设置为16G,而不是从应用端获取命令,当我们按下'Read configuration from NV'时,应用配置页面识别16G。

由于我们没有嗅探器,这就是我们检查来自传感器的数据流的方法。

对于Xcode上的app项目(正式的物联网项目),我只是添加了一行来将加速度计的解析值打印到控制台。但如你所见,我们得到的数据仍然限制在2G。

我们已经附上了Keli和Xcode的截图。

MT_dialog
离线
最后看到:4个月3天前
工作人员
加入:2015-06-08 34
嗨pureform,

嗨pureform,

那么你提到的应该是iOS应用程序的问题,而不是物联网fw的问题,显然该应用程序试图阻止改变加速度计的范围,因为物联网的官方fw有这个问题。所以尝试在iOS源代码上执行以下mod,并检查是否有效。

SensorController.m
- (void)peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)特征错误:(nullable NSError *)错误{

//解决旧的物联网固件bug。范围设置无效。

//保持默认灵敏度,对应2G范围。

if ([self isIoTNewVersion]){//注释掉这个条件

自我。accelerometerSensitivity = [[ACCELEROMETER_SENSITIVITY objectForKey:[NSNumber numberWithInt: byte_accelerometer_range]] floatValue];

NSLog(@“加速度计参数:敏感性= %。2 f”,self.accelerometerSensitivity);

由于MT_dialog