问题描述
我尝试将 Shimmer3 (http://www.shimmersensing.com/products/shimmer3-imu-sensor) 与我的 Linux Mint 计算机连接,并尝试使用蓝牙传输数据。为此,我使用 git hub 代码: https://github.com/seemoo-lab/pyshimmer。 我做了所有如何在自述中解释的事情,但我仍然遇到这个错误并且无法修复它。 这是我的简短程序:
import time
from serial import Serial
from pyshimmer import ShimmerBluetooth,DEFAULT_BAUdratE,DataPacket,EChannelType
def handler(pkt: DataPacket) -> None:
cur_value = pkt[EChannelType.INTERNAL_ADC_13]
print(f'Received new data point: {cur_value}')
if __name__ == '__main__':
serial = Serial('/dev/rfcomm0',DEFAULT_BAUdratE)
shim_dev = ShimmerBluetooth(serial)
shim_dev.initialize()
dev_name = shim_dev.get_device_name()
print(f'My name is: {dev_name}')
shim_dev.add_stream_callback(handler)
shim_dev.start_streaming()
time.sleep(5.0)
shim_dev.stop_streaming()
shim_dev.shutdown()
My name is: Shimmer_86A5
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python3.7/threading.py",line 926,in _bootstrap_inner
self.run()
File "/usr/lib/python3.7/threading.py",line 870,in run
self._target(*self._args,**self._kwargs)
File "/home/zfcc/Dokumente/pyshimmer/pyshimmer/bluetooth/bt_api.py",line 294,in _run_readloop
self._bluetooth.process_single_input_event()
File "/home/zfcc/Dokumente/pyshimmer/pyshimmer/bluetooth/bt_api.py",line 206,in process_single_input_event
self._process_data_packet()
File "/home/zfcc/Dokumente/pyshimmer/pyshimmer/bluetooth/bt_api.py",line 148,in _process_data_packet
cb(packet)
File "/home/zfcc/Dokumente/pyshimmer/Untitled-3.py",line 14,in handler
cur_value = pkt[EChannelType.INTERNAL_ADC_13]
File "/home/zfcc/Dokumente/pyshimmer/pyshimmer/bluetooth/bt_commands.py",line 60,in __getitem__
return self._values[item]
KeyError: <EChannelType.INTERNAL_ADC_13: 19>
the value of pkt before the error is:
<pyshimmer.bluetooth.bt_commands.DataPacket object at 0x7f58b43a6e50>
value of pkt.channel:
[<EChannelType.TIMESTAMP: 42>,<EChannelType.ACCEL_LN_X: 1>,<EChannelType.ACCEL_LN_Y: 2>,<EChannelType.ACCEL_LN_Z: 3>,<EChannelType.VBATT: 4>,<EChannelType.GYRO_mpu9150_X: 11>,<EChannelType.GYRO_mpu9150_Y: 12>,<EChannelType.GYRO_mpu9150_Z: 13>,<EChannelType.MAG_LSM303DLHC_X: 8>,<EChannelType.MAG_LSM303DLHC_Y: 9>,<EChannelType.MAG_LSM303DLHC_Z: 10>]
value of channel_types:
[<pyshimmer.device.ChannelDataType object at 0x7ff4620ba5d0>,<pyshimmer.device.ChannelDataType object at 0x7ff4620b6810>,<pyshimmer.device.ChannelDataType object at 0x7ff46212b6d0>,<pyshimmer.device.ChannelDataType object at 0x7ff4620b6d50>,<pyshimmer.device.ChannelDataType object at 0x7ff4620b6d90>,<pyshimmer.device.ChannelDataType object at 0x7ff4620b6f50>,<pyshimmer.device.ChannelDataType object at 0x7ff4620b6f90>,<pyshimmer.device.ChannelDataType object at 0x7ff4620b6fd0>,<pyshimmer.device.ChannelDataType object at 0x7ff4620b6e90>,<pyshimmer.device.ChannelDataType object at 0x7ff4620b6ed0>,<pyshimmer.device.ChannelDataType object at 0x7ff4620b6f10>]
value of channels:
[<EChannelType.TIMESTAMP: 42>,<EChannelType.MAG_LSM303DLHC_Z: 10>]
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)