私は、私のLinuxボードにbluezに付属のexample-gatt-server.pyスクリプトを使って作業しています。私は私のカスタム特性の1つに通知を追加したいと思います。そのためには、クライアント特性設定記述子を定義してそれを私のカスタム特性に追加する必要があります。ここで私はこれをやっている方法です -bluezのクライアント特性設定記述子を書く方法
クラスClientCharacteristicConfigurationDescriptor(記述子):
CCCD_UUID = '2902'
def __init__(self, bus, index, characteristic):
self.value = array.array('B')
self.value = self.value.tolist()
#self.value = []
Descriptor.__init__(
self, bus, index,
self.CCCD_UUID,
['read', 'write'],
characteristic)
def ReadValue(self):
print("I am reading CCCD value")
print(self.value)
return self.value
def WriteValue(self, value):
print("I am writing CCCD value")
print type(value)
#self.value = value
print(value)
このコードは、すでに例-GATT・サーバー・ファイルに定義されていますCharacteristicUserDescriptionDescriptorクラスに触発されました。 上記のコードは、読み書き中にエラーが表示されます。それは "私はCCCDの価値を読んでいる"声明を印刷しません。私はここで何が欠けていますか?
ありがとうございます!
bluezのバージョンは何ですか? LEへのpython dbusアクセスの場合、少なくとも5.37 – Kiran
ありがとうございます。私は5.34を使用し、この通知事項を除いて他のすべての特性と連携します。だから私はそれが問題かどうか分からない。 – Pallavi