AIOBLE - ScanResult only returns first service when multiple are present in advertisement

オープン
#475 コメント 2 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
45/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
python
領域
embedded-iot

調査の方向性

aioble.scan() エントリポイントと result.services() メソッドから始め、広告パケット 020106050318182618 で問題を再現します。複数のサービス UUID を含むスキャン結果が、最初のサービスだけでなく 0x1818 と 0x1826 の両方を返すことを確認します。

索引モデルが issue の本文から書いたものです。

説明

When a device advertises multiple service UUIDs, it seems only the first one gets decoded.

I'm doing something like:

async with aioble.scan(5000, interval_us=30000, window_us=30000, active=True) as scanner:
    async for result in scanner:
        for service in result.services():
            print(service)

With an advertising packet like this:
020106050318182618
I think result.services() should yield both 0x1818 and 0x1826, but it only seems to decode the first one.

主要言語
Python
スター
2.9k
フォーク
1.1k
平均マージ
7日 6時間
マージ済み PR(30日)
3

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

micropython/micropython-lib のほかの issue

micropython/micropython-lib の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。