bumble 0.0.200__tar.gz → 0.0.201__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (600) hide show
  1. {bumble-0.0.200 → bumble-0.0.201}/PKG-INFO +1 -1
  2. {bumble-0.0.200 → bumble-0.0.201}/bumble/_version.py +2 -2
  3. {bumble-0.0.200 → bumble-0.0.201}/bumble/att.py +1 -1
  4. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/android_netsim.py +28 -11
  5. {bumble-0.0.200/bumble/transport/grpc_protobuf → bumble-0.0.201/bumble/transport/grpc_protobuf/netsim}/common_pb2.py +9 -8
  6. {bumble-0.0.200/bumble/transport/grpc_protobuf → bumble-0.0.201/bumble/transport/grpc_protobuf/netsim}/common_pb2.pyi +11 -5
  7. bumble-0.0.201/bumble/transport/grpc_protobuf/netsim/hci_packet_pb2.py +29 -0
  8. {bumble-0.0.200/bumble/transport/grpc_protobuf → bumble-0.0.201/bumble/transport/grpc_protobuf/netsim}/hci_packet_pb2.pyi +13 -7
  9. bumble-0.0.201/bumble/transport/grpc_protobuf/netsim/model_pb2.py +63 -0
  10. bumble-0.0.201/bumble/transport/grpc_protobuf/netsim/model_pb2.pyi +238 -0
  11. bumble-0.0.201/bumble/transport/grpc_protobuf/netsim/packet_streamer_pb2.py +32 -0
  12. {bumble-0.0.200/bumble/transport/grpc_protobuf → bumble-0.0.201/bumble/transport/grpc_protobuf/netsim}/packet_streamer_pb2.pyi +6 -6
  13. {bumble-0.0.200/bumble/transport/grpc_protobuf → bumble-0.0.201/bumble/transport/grpc_protobuf/netsim}/packet_streamer_pb2_grpc.py +7 -7
  14. bumble-0.0.201/bumble/transport/grpc_protobuf/netsim/startup_pb2.py +41 -0
  15. bumble-0.0.201/bumble/transport/grpc_protobuf/netsim/startup_pb2.pyi +76 -0
  16. bumble-0.0.201/bumble/transport/grpc_protobuf/netsim/startup_pb2_grpc.py +4 -0
  17. bumble-0.0.201/bumble/transport/grpc_protobuf/rootcanal/configuration_pb2.py +39 -0
  18. bumble-0.0.201/bumble/transport/grpc_protobuf/rootcanal/configuration_pb2.pyi +78 -0
  19. bumble-0.0.201/bumble/transport/grpc_protobuf/rootcanal/configuration_pb2_grpc.py +4 -0
  20. {bumble-0.0.200 → bumble-0.0.201}/bumble.egg-info/PKG-INFO +1 -1
  21. {bumble-0.0.200 → bumble-0.0.201}/bumble.egg-info/SOURCES.txt +20 -12
  22. bumble-0.0.201/extras/android/RemoteHCI/lib/consumer-rules.pro +0 -0
  23. bumble-0.0.201/scripts/process_android_netsim_protos.sh +23 -0
  24. bumble-0.0.201/tools/__init__.py +0 -0
  25. bumble-0.0.200/bumble/transport/grpc_protobuf/hci_packet_pb2.py +0 -28
  26. bumble-0.0.200/bumble/transport/grpc_protobuf/packet_streamer_pb2.py +0 -31
  27. bumble-0.0.200/bumble/transport/grpc_protobuf/startup_pb2.py +0 -32
  28. bumble-0.0.200/bumble/transport/grpc_protobuf/startup_pb2.pyi +0 -46
  29. bumble-0.0.200/scripts/process_android_netsim_protos.sh +0 -14
  30. {bumble-0.0.200 → bumble-0.0.201}/.devcontainer/devcontainer.json +0 -0
  31. {bumble-0.0.200 → bumble-0.0.201}/.git-blame-ignore-revs +0 -0
  32. {bumble-0.0.200 → bumble-0.0.201}/.github/workflows/code-check.yml +0 -0
  33. {bumble-0.0.200 → bumble-0.0.201}/.github/workflows/codeql-analysis.yml +0 -0
  34. {bumble-0.0.200 → bumble-0.0.201}/.github/workflows/python-avatar.yml +0 -0
  35. {bumble-0.0.200 → bumble-0.0.201}/.github/workflows/python-build-test.yml +0 -0
  36. {bumble-0.0.200 → bumble-0.0.201}/.github/workflows/python-publish.yml +0 -0
  37. {bumble-0.0.200 → bumble-0.0.201}/.gitignore +0 -0
  38. {bumble-0.0.200 → bumble-0.0.201}/.vscode/settings.json +0 -0
  39. {bumble-0.0.200 → bumble-0.0.201}/CONTRIBUTING.md +0 -0
  40. {bumble-0.0.200 → bumble-0.0.201}/LICENSE +0 -0
  41. {bumble-0.0.200 → bumble-0.0.201}/README.md +0 -0
  42. {bumble-0.0.200 → bumble-0.0.201}/apps/README.md +0 -0
  43. {bumble-0.0.200 → bumble-0.0.201}/apps/__init__.py +0 -0
  44. {bumble-0.0.200 → bumble-0.0.201}/apps/auracast.py +0 -0
  45. {bumble-0.0.200 → bumble-0.0.201}/apps/bench.py +0 -0
  46. {bumble-0.0.200 → bumble-0.0.201}/apps/ble_rpa_tool.py +0 -0
  47. {bumble-0.0.200 → bumble-0.0.201}/apps/console.py +0 -0
  48. {bumble-0.0.200 → bumble-0.0.201}/apps/controller_info.py +0 -0
  49. {bumble-0.0.200 → bumble-0.0.201}/apps/controller_loopback.py +0 -0
  50. {bumble-0.0.200 → bumble-0.0.201}/apps/controllers.py +0 -0
  51. {bumble-0.0.200 → bumble-0.0.201}/apps/device_info.py +0 -0
  52. {bumble-0.0.200 → bumble-0.0.201}/apps/gatt_dump.py +0 -0
  53. {bumble-0.0.200 → bumble-0.0.201}/apps/gg_bridge.py +0 -0
  54. {bumble-0.0.200 → bumble-0.0.201}/apps/hci_bridge.py +0 -0
  55. {bumble-0.0.200 → bumble-0.0.201}/apps/l2cap_bridge.py +0 -0
  56. {bumble-0.0.200 → bumble-0.0.201}/apps/lea_unicast/app.py +0 -0
  57. {bumble-0.0.200 → bumble-0.0.201}/apps/lea_unicast/index.html +0 -0
  58. {bumble-0.0.200 → bumble-0.0.201}/apps/lea_unicast/liblc3.wasm +0 -0
  59. {bumble-0.0.200 → bumble-0.0.201}/apps/link_relay/__init__.py +0 -0
  60. {bumble-0.0.200 → bumble-0.0.201}/apps/link_relay/link_relay.py +0 -0
  61. {bumble-0.0.200 → bumble-0.0.201}/apps/link_relay/logging.yml +0 -0
  62. {bumble-0.0.200 → bumble-0.0.201}/apps/pair.py +0 -0
  63. {bumble-0.0.200 → bumble-0.0.201}/apps/pandora_server.py +0 -0
  64. {bumble-0.0.200 → bumble-0.0.201}/apps/player/player.py +0 -0
  65. {bumble-0.0.200 → bumble-0.0.201}/apps/rfcomm_bridge.py +0 -0
  66. {bumble-0.0.200 → bumble-0.0.201}/apps/scan.py +0 -0
  67. {bumble-0.0.200 → bumble-0.0.201}/apps/show.py +0 -0
  68. {bumble-0.0.200 → bumble-0.0.201}/apps/speaker/__init__.py +0 -0
  69. {bumble-0.0.200 → bumble-0.0.201}/apps/speaker/logo.svg +0 -0
  70. {bumble-0.0.200 → bumble-0.0.201}/apps/speaker/speaker.css +0 -0
  71. {bumble-0.0.200 → bumble-0.0.201}/apps/speaker/speaker.html +0 -0
  72. {bumble-0.0.200 → bumble-0.0.201}/apps/speaker/speaker.js +0 -0
  73. {bumble-0.0.200 → bumble-0.0.201}/apps/speaker/speaker.py +0 -0
  74. {bumble-0.0.200 → bumble-0.0.201}/apps/unbond.py +0 -0
  75. {bumble-0.0.200 → bumble-0.0.201}/apps/usb_probe.py +0 -0
  76. {bumble-0.0.200 → bumble-0.0.201}/bumble/__init__.py +0 -0
  77. {bumble-0.0.200 → bumble-0.0.201}/bumble/a2dp.py +0 -0
  78. {bumble-0.0.200 → bumble-0.0.201}/bumble/at.py +0 -0
  79. {bumble-0.0.200 → bumble-0.0.201}/bumble/avc.py +0 -0
  80. {bumble-0.0.200 → bumble-0.0.201}/bumble/avctp.py +0 -0
  81. {bumble-0.0.200 → bumble-0.0.201}/bumble/avdtp.py +0 -0
  82. {bumble-0.0.200 → bumble-0.0.201}/bumble/avrcp.py +0 -0
  83. {bumble-0.0.200 → bumble-0.0.201}/bumble/bridge.py +0 -0
  84. {bumble-0.0.200 → bumble-0.0.201}/bumble/codecs.py +0 -0
  85. {bumble-0.0.200 → bumble-0.0.201}/bumble/colors.py +0 -0
  86. {bumble-0.0.200 → bumble-0.0.201}/bumble/company_ids.py +0 -0
  87. {bumble-0.0.200 → bumble-0.0.201}/bumble/controller.py +0 -0
  88. {bumble-0.0.200 → bumble-0.0.201}/bumble/core.py +0 -0
  89. {bumble-0.0.200 → bumble-0.0.201}/bumble/crypto.py +0 -0
  90. {bumble-0.0.200 → bumble-0.0.201}/bumble/decoder.py +0 -0
  91. {bumble-0.0.200 → bumble-0.0.201}/bumble/device.py +0 -0
  92. {bumble-0.0.200 → bumble-0.0.201}/bumble/drivers/__init__.py +0 -0
  93. {bumble-0.0.200 → bumble-0.0.201}/bumble/drivers/common.py +0 -0
  94. {bumble-0.0.200 → bumble-0.0.201}/bumble/drivers/intel.py +0 -0
  95. {bumble-0.0.200 → bumble-0.0.201}/bumble/drivers/rtk.py +0 -0
  96. {bumble-0.0.200 → bumble-0.0.201}/bumble/gap.py +0 -0
  97. {bumble-0.0.200 → bumble-0.0.201}/bumble/gatt.py +0 -0
  98. {bumble-0.0.200 → bumble-0.0.201}/bumble/gatt_client.py +0 -0
  99. {bumble-0.0.200 → bumble-0.0.201}/bumble/gatt_server.py +0 -0
  100. {bumble-0.0.200 → bumble-0.0.201}/bumble/hci.py +0 -0
  101. {bumble-0.0.200 → bumble-0.0.201}/bumble/helpers.py +0 -0
  102. {bumble-0.0.200 → bumble-0.0.201}/bumble/hfp.py +0 -0
  103. {bumble-0.0.200 → bumble-0.0.201}/bumble/hid.py +0 -0
  104. {bumble-0.0.200 → bumble-0.0.201}/bumble/host.py +0 -0
  105. {bumble-0.0.200 → bumble-0.0.201}/bumble/keys.py +0 -0
  106. {bumble-0.0.200 → bumble-0.0.201}/bumble/l2cap.py +0 -0
  107. {bumble-0.0.200 → bumble-0.0.201}/bumble/link.py +0 -0
  108. {bumble-0.0.200 → bumble-0.0.201}/bumble/pairing.py +0 -0
  109. {bumble-0.0.200 → bumble-0.0.201}/bumble/pandora/__init__.py +0 -0
  110. {bumble-0.0.200 → bumble-0.0.201}/bumble/pandora/config.py +0 -0
  111. {bumble-0.0.200 → bumble-0.0.201}/bumble/pandora/device.py +0 -0
  112. {bumble-0.0.200 → bumble-0.0.201}/bumble/pandora/host.py +0 -0
  113. {bumble-0.0.200 → bumble-0.0.201}/bumble/pandora/l2cap.py +0 -0
  114. {bumble-0.0.200 → bumble-0.0.201}/bumble/pandora/py.typed +0 -0
  115. {bumble-0.0.200 → bumble-0.0.201}/bumble/pandora/security.py +0 -0
  116. {bumble-0.0.200 → bumble-0.0.201}/bumble/pandora/utils.py +0 -0
  117. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/__init__.py +0 -0
  118. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/aics.py +0 -0
  119. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/ascs.py +0 -0
  120. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/asha.py +0 -0
  121. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/bap.py +0 -0
  122. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/bass.py +0 -0
  123. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/battery_service.py +0 -0
  124. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/cap.py +0 -0
  125. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/csip.py +0 -0
  126. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/device_information_service.py +0 -0
  127. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/gap.py +0 -0
  128. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/hap.py +0 -0
  129. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/heart_rate_service.py +0 -0
  130. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/le_audio.py +0 -0
  131. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/mcp.py +0 -0
  132. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/pacs.py +0 -0
  133. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/pbp.py +0 -0
  134. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/py.typed +0 -0
  135. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/tmap.py +0 -0
  136. {bumble-0.0.200 → bumble-0.0.201}/bumble/profiles/vcp.py +0 -0
  137. {bumble-0.0.200 → bumble-0.0.201}/bumble/py.typed +0 -0
  138. {bumble-0.0.200 → bumble-0.0.201}/bumble/rfcomm.py +0 -0
  139. {bumble-0.0.200 → bumble-0.0.201}/bumble/rtp.py +0 -0
  140. {bumble-0.0.200 → bumble-0.0.201}/bumble/sdp.py +0 -0
  141. {bumble-0.0.200 → bumble-0.0.201}/bumble/smp.py +0 -0
  142. {bumble-0.0.200 → bumble-0.0.201}/bumble/snoop.py +0 -0
  143. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/__init__.py +0 -0
  144. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/android_emulator.py +0 -0
  145. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/common.py +0 -0
  146. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/file.py +0 -0
  147. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/__init__.py +0 -0
  148. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/emulated_bluetooth_device_pb2.py +0 -0
  149. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/emulated_bluetooth_device_pb2.pyi +0 -0
  150. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/emulated_bluetooth_device_pb2_grpc.py +0 -0
  151. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/emulated_bluetooth_packets_pb2.py +0 -0
  152. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/emulated_bluetooth_packets_pb2.pyi +0 -0
  153. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/emulated_bluetooth_packets_pb2_grpc.py +0 -0
  154. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/emulated_bluetooth_pb2.py +0 -0
  155. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/emulated_bluetooth_pb2.pyi +0 -0
  156. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/emulated_bluetooth_pb2_grpc.py +0 -0
  157. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/emulated_bluetooth_vhci_pb2.py +0 -0
  158. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/emulated_bluetooth_vhci_pb2.pyi +0 -0
  159. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/emulated_bluetooth_vhci_pb2_grpc.py +0 -0
  160. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/grpc_endpoint_description_pb2.py +0 -0
  161. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/grpc_endpoint_description_pb2.pyi +0 -0
  162. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/grpc_protobuf/grpc_endpoint_description_pb2_grpc.py +0 -0
  163. {bumble-0.0.200/bumble/vendor → bumble-0.0.201/bumble/transport/grpc_protobuf/netsim}/__init__.py +0 -0
  164. {bumble-0.0.200/bumble/transport/grpc_protobuf → bumble-0.0.201/bumble/transport/grpc_protobuf/netsim}/common_pb2_grpc.py +0 -0
  165. {bumble-0.0.200/bumble/transport/grpc_protobuf → bumble-0.0.201/bumble/transport/grpc_protobuf/netsim}/hci_packet_pb2_grpc.py +0 -0
  166. /bumble-0.0.200/bumble/transport/grpc_protobuf/startup_pb2_grpc.py → /bumble-0.0.201/bumble/transport/grpc_protobuf/netsim/model_pb2_grpc.py +0 -0
  167. {bumble-0.0.200/bumble/vendor/android → bumble-0.0.201/bumble/transport/grpc_protobuf/rootcanal}/__init__.py +0 -0
  168. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/hci_socket.py +0 -0
  169. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/pty.py +0 -0
  170. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/py.typed +0 -0
  171. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/pyusb.py +0 -0
  172. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/serial.py +0 -0
  173. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/tcp_client.py +0 -0
  174. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/tcp_server.py +0 -0
  175. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/udp.py +0 -0
  176. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/unix.py +0 -0
  177. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/usb.py +0 -0
  178. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/vhci.py +0 -0
  179. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/ws_client.py +0 -0
  180. {bumble-0.0.200 → bumble-0.0.201}/bumble/transport/ws_server.py +0 -0
  181. {bumble-0.0.200 → bumble-0.0.201}/bumble/utils.py +0 -0
  182. {bumble-0.0.200/bumble/vendor/zephyr → bumble-0.0.201/bumble/vendor}/__init__.py +0 -0
  183. {bumble-0.0.200/tools → bumble-0.0.201/bumble/vendor/android}/__init__.py +0 -0
  184. {bumble-0.0.200 → bumble-0.0.201}/bumble/vendor/android/hci.py +0 -0
  185. /bumble-0.0.200/extras/android/RemoteHCI/lib/consumer-rules.pro → /bumble-0.0.201/bumble/vendor/zephyr/__init__.py +0 -0
  186. {bumble-0.0.200 → bumble-0.0.201}/bumble/vendor/zephyr/hci.py +0 -0
  187. {bumble-0.0.200 → bumble-0.0.201}/bumble.egg-info/dependency_links.txt +0 -0
  188. {bumble-0.0.200 → bumble-0.0.201}/bumble.egg-info/entry_points.txt +0 -0
  189. {bumble-0.0.200 → bumble-0.0.201}/bumble.egg-info/requires.txt +0 -0
  190. {bumble-0.0.200 → bumble-0.0.201}/bumble.egg-info/top_level.txt +0 -0
  191. {bumble-0.0.200 → bumble-0.0.201}/docs/README.md +0 -0
  192. {bumble-0.0.200 → bumble-0.0.201}/docs/images/favicon.ico +0 -0
  193. {bumble-0.0.200 → bumble-0.0.201}/docs/images/logo.png +0 -0
  194. {bumble-0.0.200 → bumble-0.0.201}/docs/images/logo.svg +0 -0
  195. {bumble-0.0.200 → bumble-0.0.201}/docs/images/logo.vectornator/Artboard0.json +0 -0
  196. {bumble-0.0.200 → bumble-0.0.201}/docs/images/logo.vectornator/Document.json +0 -0
  197. {bumble-0.0.200 → bumble-0.0.201}/docs/images/logo.vectornator/Manifest.json +0 -0
  198. {bumble-0.0.200 → bumble-0.0.201}/docs/images/logo.vectornator/Thumbnail.png +0 -0
  199. {bumble-0.0.200 → bumble-0.0.201}/docs/images/logo.vectornator/UndoHistory.json +0 -0
  200. {bumble-0.0.200 → bumble-0.0.201}/docs/images/logo_framed.png +0 -0
  201. {bumble-0.0.200 → bumble-0.0.201}/docs/images/logo_framed.svg +0 -0
  202. {bumble-0.0.200 → bumble-0.0.201}/docs/images/logo_framed.vectornator/Artboard0.json +0 -0
  203. {bumble-0.0.200 → bumble-0.0.201}/docs/images/logo_framed.vectornator/Document.json +0 -0
  204. {bumble-0.0.200 → bumble-0.0.201}/docs/images/logo_framed.vectornator/Manifest.json +0 -0
  205. {bumble-0.0.200 → bumble-0.0.201}/docs/images/logo_framed.vectornator/Thumbnail.png +0 -0
  206. {bumble-0.0.200 → bumble-0.0.201}/docs/images/logo_framed.vectornator/UndoHistory.json +0 -0
  207. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/mkdocs.yml +0 -0
  208. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/requirements.txt +0 -0
  209. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/api/examples.md +0 -0
  210. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/api/guide.md +0 -0
  211. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/api/reference.md +0 -0
  212. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/apps_and_tools/bench.md +0 -0
  213. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/apps_and_tools/console.md +0 -0
  214. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/apps_and_tools/gatt_dump.md +0 -0
  215. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/apps_and_tools/gg_bridge.md +0 -0
  216. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/apps_and_tools/hci_bridge.md +0 -0
  217. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/apps_and_tools/index.md +0 -0
  218. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/apps_and_tools/link_relay.md +0 -0
  219. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/apps_and_tools/pair.md +0 -0
  220. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/apps_and_tools/show.md +0 -0
  221. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/apps_and_tools/speaker.md +0 -0
  222. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/apps_and_tools/unbond.md +0 -0
  223. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/apps_and_tools/usb_probe.md +0 -0
  224. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/components/controller.md +0 -0
  225. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/components/gatt.md +0 -0
  226. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/components/host.md +0 -0
  227. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/components/security_manager.md +0 -0
  228. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/development/code_style.md +0 -0
  229. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/development/contributing.md +0 -0
  230. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/development/python_environments.md +0 -0
  231. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/downloads/zephyr/hci_usb.zip +0 -0
  232. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/drivers/index.md +0 -0
  233. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/drivers/realtek.md +0 -0
  234. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/examples/index.md +0 -0
  235. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/extras/android_bt_bench.md +0 -0
  236. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/extras/android_remote_hci.md +0 -0
  237. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/extras/index.md +0 -0
  238. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/getting_started.md +0 -0
  239. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hardware/index.md +0 -0
  240. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/index.md +0 -0
  241. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/index.toml +0 -0
  242. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/web/bumble.js +0 -0
  243. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/web/heart_rate_monitor/heart_rate_monitor.html +0 -0
  244. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/web/heart_rate_monitor/heart_rate_monitor.js +0 -0
  245. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/web/heart_rate_monitor/heart_rate_monitor.py +0 -0
  246. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/web/scanner/scanner.css +0 -0
  247. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/web/scanner/scanner.html +0 -0
  248. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/web/scanner/scanner.js +0 -0
  249. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/web/scanner/scanner.py +0 -0
  250. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/web/speaker/logo.svg +0 -0
  251. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/web/speaker/speaker.css +0 -0
  252. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/web/speaker/speaker.html +0 -0
  253. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/web/speaker/speaker.js +0 -0
  254. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/web/speaker/speaker.py +0 -0
  255. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/hive/web/ui.js +0 -0
  256. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/images/bumble_layers.svg +0 -0
  257. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/images/console_screenshot.png +0 -0
  258. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/images/favicon.ico +0 -0
  259. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/images/logo.png +0 -0
  260. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/images/logo_framed.png +0 -0
  261. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/images/speaker_screenshot.png +0 -0
  262. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/index.md +0 -0
  263. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/platforms/android.md +0 -0
  264. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/platforms/index.md +0 -0
  265. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/platforms/linux.md +0 -0
  266. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/platforms/macos.md +0 -0
  267. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/platforms/windows.md +0 -0
  268. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/platforms/winusb_driver.png +0 -0
  269. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/platforms/zephyr.md +0 -0
  270. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/transports/android_emulator.md +0 -0
  271. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/transports/file.md +0 -0
  272. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/transports/hci_socket.md +0 -0
  273. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/transports/index.md +0 -0
  274. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/transports/pty.md +0 -0
  275. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/transports/serial.md +0 -0
  276. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/transports/tcp_client.md +0 -0
  277. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/transports/tcp_server.md +0 -0
  278. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/transports/udp.md +0 -0
  279. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/transports/usb.md +0 -0
  280. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/transports/vhci.md +0 -0
  281. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/transports/ws_client.md +0 -0
  282. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/transports/ws_server.md +0 -0
  283. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/use_cases/index.md +0 -0
  284. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/use_cases/use_case_1.md +0 -0
  285. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/use_cases/use_case_2.md +0 -0
  286. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/use_cases/use_case_3.md +0 -0
  287. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/use_cases/use_case_4.md +0 -0
  288. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/use_cases/use_case_5.md +0 -0
  289. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/src/use_cases/use_case_6.md +0 -0
  290. {bumble-0.0.200 → bumble-0.0.201}/docs/mkdocs/theme/partials/footer.html +0 -0
  291. {bumble-0.0.200 → bumble-0.0.201}/environment.yml +0 -0
  292. {bumble-0.0.200 → bumble-0.0.201}/examples/README.md +0 -0
  293. {bumble-0.0.200 → bumble-0.0.201}/examples/a2dp_sink1.json +0 -0
  294. {bumble-0.0.200 → bumble-0.0.201}/examples/asha_sink.html +0 -0
  295. {bumble-0.0.200 → bumble-0.0.201}/examples/asha_sink1.json +0 -0
  296. {bumble-0.0.200 → bumble-0.0.201}/examples/asha_sink2.json +0 -0
  297. {bumble-0.0.200 → bumble-0.0.201}/examples/async_runner.py +0 -0
  298. {bumble-0.0.200 → bumble-0.0.201}/examples/avrcp_as_sink.html +0 -0
  299. {bumble-0.0.200 → bumble-0.0.201}/examples/battery_client.py +0 -0
  300. {bumble-0.0.200 → bumble-0.0.201}/examples/battery_server.py +0 -0
  301. {bumble-0.0.200 → bumble-0.0.201}/examples/classic1.json +0 -0
  302. {bumble-0.0.200 → bumble-0.0.201}/examples/classic2.json +0 -0
  303. {bumble-0.0.200 → bumble-0.0.201}/examples/device1.json +0 -0
  304. {bumble-0.0.200 → bumble-0.0.201}/examples/device2.json +0 -0
  305. {bumble-0.0.200 → bumble-0.0.201}/examples/device3.json +0 -0
  306. {bumble-0.0.200 → bumble-0.0.201}/examples/device_information_client.py +0 -0
  307. {bumble-0.0.200 → bumble-0.0.201}/examples/device_information_server.py +0 -0
  308. {bumble-0.0.200 → bumble-0.0.201}/examples/device_with_rpa.json +0 -0
  309. {bumble-0.0.200 → bumble-0.0.201}/examples/heart_rate_client.py +0 -0
  310. {bumble-0.0.200 → bumble-0.0.201}/examples/heart_rate_server.py +0 -0
  311. {bumble-0.0.200 → bumble-0.0.201}/examples/hfp_gateway.html +0 -0
  312. {bumble-0.0.200 → bumble-0.0.201}/examples/hfp_gateway.json +0 -0
  313. {bumble-0.0.200 → bumble-0.0.201}/examples/hfp_handsfree.html +0 -0
  314. {bumble-0.0.200 → bumble-0.0.201}/examples/hfp_handsfree.json +0 -0
  315. {bumble-0.0.200 → bumble-0.0.201}/examples/hid_key_map.py +0 -0
  316. {bumble-0.0.200 → bumble-0.0.201}/examples/hid_keyboard.json +0 -0
  317. {bumble-0.0.200 → bumble-0.0.201}/examples/hid_report_parser.py +0 -0
  318. {bumble-0.0.200 → bumble-0.0.201}/examples/keyboard.html +0 -0
  319. {bumble-0.0.200 → bumble-0.0.201}/examples/keyboard.json +0 -0
  320. {bumble-0.0.200 → bumble-0.0.201}/examples/keyboard.py +0 -0
  321. {bumble-0.0.200 → bumble-0.0.201}/examples/leaudio.json +0 -0
  322. {bumble-0.0.200 → bumble-0.0.201}/examples/leaudio_with_classic.json +0 -0
  323. {bumble-0.0.200 → bumble-0.0.201}/examples/mcp_server.html +0 -0
  324. {bumble-0.0.200 → bumble-0.0.201}/examples/run_a2dp_info.py +0 -0
  325. {bumble-0.0.200 → bumble-0.0.201}/examples/run_a2dp_sink.py +0 -0
  326. {bumble-0.0.200 → bumble-0.0.201}/examples/run_a2dp_source.py +0 -0
  327. {bumble-0.0.200 → bumble-0.0.201}/examples/run_advertiser.py +0 -0
  328. {bumble-0.0.200 → bumble-0.0.201}/examples/run_asha_sink.py +0 -0
  329. {bumble-0.0.200 → bumble-0.0.201}/examples/run_avrcp.py +0 -0
  330. {bumble-0.0.200 → bumble-0.0.201}/examples/run_cig_setup.py +0 -0
  331. {bumble-0.0.200 → bumble-0.0.201}/examples/run_classic_connect.py +0 -0
  332. {bumble-0.0.200 → bumble-0.0.201}/examples/run_classic_discoverable.py +0 -0
  333. {bumble-0.0.200 → bumble-0.0.201}/examples/run_classic_discovery.py +0 -0
  334. {bumble-0.0.200 → bumble-0.0.201}/examples/run_connect_and_encrypt.py +0 -0
  335. {bumble-0.0.200 → bumble-0.0.201}/examples/run_controller.py +0 -0
  336. {bumble-0.0.200 → bumble-0.0.201}/examples/run_controller_with_scanner.py +0 -0
  337. {bumble-0.0.200 → bumble-0.0.201}/examples/run_csis_servers.py +0 -0
  338. {bumble-0.0.200 → bumble-0.0.201}/examples/run_device_with_snooper.py +0 -0
  339. {bumble-0.0.200 → bumble-0.0.201}/examples/run_esco_connection.py +0 -0
  340. {bumble-0.0.200 → bumble-0.0.201}/examples/run_extended_advertiser.py +0 -0
  341. {bumble-0.0.200 → bumble-0.0.201}/examples/run_extended_advertiser_2.py +0 -0
  342. {bumble-0.0.200 → bumble-0.0.201}/examples/run_gatt_client.py +0 -0
  343. {bumble-0.0.200 → bumble-0.0.201}/examples/run_gatt_client_and_server.py +0 -0
  344. {bumble-0.0.200 → bumble-0.0.201}/examples/run_gatt_server.py +0 -0
  345. {bumble-0.0.200 → bumble-0.0.201}/examples/run_hap_server.py +0 -0
  346. {bumble-0.0.200 → bumble-0.0.201}/examples/run_hfp_gateway.py +0 -0
  347. {bumble-0.0.200 → bumble-0.0.201}/examples/run_hfp_handsfree.py +0 -0
  348. {bumble-0.0.200 → bumble-0.0.201}/examples/run_hid_device.py +0 -0
  349. {bumble-0.0.200 → bumble-0.0.201}/examples/run_hid_host.py +0 -0
  350. {bumble-0.0.200 → bumble-0.0.201}/examples/run_mcp_client.py +0 -0
  351. {bumble-0.0.200 → bumble-0.0.201}/examples/run_notifier.py +0 -0
  352. {bumble-0.0.200 → bumble-0.0.201}/examples/run_rfcomm_client.py +0 -0
  353. {bumble-0.0.200 → bumble-0.0.201}/examples/run_rfcomm_server.py +0 -0
  354. {bumble-0.0.200 → bumble-0.0.201}/examples/run_scanner.py +0 -0
  355. {bumble-0.0.200 → bumble-0.0.201}/examples/run_unicast_server.py +0 -0
  356. {bumble-0.0.200 → bumble-0.0.201}/examples/run_vcp_renderer.py +0 -0
  357. {bumble-0.0.200 → bumble-0.0.201}/examples/speaker.json +0 -0
  358. {bumble-0.0.200 → bumble-0.0.201}/examples/vcp_renderer.html +0 -0
  359. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/.gitignore +0 -0
  360. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/.gitignore +0 -0
  361. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/build.gradle.kts +0 -0
  362. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/proguard-rules.pro +0 -0
  363. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/AndroidManifest.xml +0 -0
  364. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/ic_launcher-playstore.png +0 -0
  365. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/java/com/github/google/bumble/btbench/L2capClient.kt +0 -0
  366. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/java/com/github/google/bumble/btbench/L2capServer.kt +0 -0
  367. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/java/com/github/google/bumble/btbench/MainActivity.kt +0 -0
  368. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/java/com/github/google/bumble/btbench/Model.kt +0 -0
  369. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/java/com/github/google/bumble/btbench/Packet.kt +0 -0
  370. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/java/com/github/google/bumble/btbench/Receiver.kt +0 -0
  371. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/java/com/github/google/bumble/btbench/RfcommClient.kt +0 -0
  372. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/java/com/github/google/bumble/btbench/RfcommServer.kt +0 -0
  373. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/java/com/github/google/bumble/btbench/Scan.kt +0 -0
  374. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/java/com/github/google/bumble/btbench/Sender.kt +0 -0
  375. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/java/com/github/google/bumble/btbench/SocketClient.kt +0 -0
  376. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/java/com/github/google/bumble/btbench/SocketServer.kt +0 -0
  377. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/java/com/github/google/bumble/btbench/ui/theme/Color.kt +0 -0
  378. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/java/com/github/google/bumble/btbench/ui/theme/Theme.kt +0 -0
  379. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/java/com/github/google/bumble/btbench/ui/theme/Type.kt +0 -0
  380. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/drawable/ic_launcher_background.xml +0 -0
  381. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/drawable/ic_launcher_foreground.xml +0 -0
  382. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +0 -0
  383. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml +0 -0
  384. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp +0 -0
  385. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp +0 -0
  386. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp +0 -0
  387. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp +0 -0
  388. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp +0 -0
  389. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp +0 -0
  390. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp +0 -0
  391. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp +0 -0
  392. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.webp +0 -0
  393. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp +0 -0
  394. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/values/colors.xml +0 -0
  395. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/values/ic_launcher_background.xml +0 -0
  396. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/values/strings.xml +0 -0
  397. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/values/themes.xml +0 -0
  398. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/xml/backup_rules.xml +0 -0
  399. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/app/src/main/res/xml/data_extraction_rules.xml +0 -0
  400. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/build.gradle.kts +0 -0
  401. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/gradle/libs.versions.toml +0 -0
  402. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/gradle/wrapper/gradle-wrapper.jar +0 -0
  403. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/gradle/wrapper/gradle-wrapper.properties +0 -0
  404. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/gradle.properties +0 -0
  405. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/gradlew +0 -0
  406. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/gradlew.bat +0 -0
  407. {bumble-0.0.200 → bumble-0.0.201}/extras/android/BtBench/settings.gradle.kts +0 -0
  408. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/.gitignore +0 -0
  409. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/.gitignore +0 -0
  410. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/build.gradle.kts +0 -0
  411. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/proguard-rules.pro +0 -0
  412. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/AndroidManifest.xml +0 -0
  413. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/aidl/android/hardware/bluetooth/IBluetoothHci.aidl +0 -0
  414. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/aidl/android/hardware/bluetooth/IBluetoothHciCallbacks.aidl +0 -0
  415. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/aidl/android/hardware/bluetooth/Status.aidl +0 -0
  416. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/hidl/bluetooth/1.1/IBluetoothHci.hal +0 -0
  417. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/hidl/bluetooth/1.1/IBluetoothHciCallbacks.hal +0 -0
  418. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/ic_launcher-playstore.png +0 -0
  419. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/android/hardware/bluetooth/IBluetoothHci.java +0 -0
  420. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/android/hardware/bluetooth/IBluetoothHciCallbacks.java +0 -0
  421. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/android/hardware/bluetooth/Status.java +0 -0
  422. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/android/hardware/bluetooth/V1_0/IBluetoothHci.java +0 -0
  423. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/android/hardware/bluetooth/V1_0/IBluetoothHciCallbacks.java +0 -0
  424. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/android/hardware/bluetooth/V1_0/Status.java +0 -0
  425. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/android/hardware/bluetooth/V1_1/IBluetoothHci.java +0 -0
  426. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/android/hardware/bluetooth/V1_1/IBluetoothHciCallbacks.java +0 -0
  427. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/com/github/google/bumble/remotehci/CommandLineInterface.kt +0 -0
  428. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/com/github/google/bumble/remotehci/HciHal.java +0 -0
  429. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/com/github/google/bumble/remotehci/HciHalCallback.java +0 -0
  430. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/com/github/google/bumble/remotehci/HciPacket.java +0 -0
  431. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/com/github/google/bumble/remotehci/HciParser.java +0 -0
  432. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/com/github/google/bumble/remotehci/HciProxy.java +0 -0
  433. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/com/github/google/bumble/remotehci/HciServer.java +0 -0
  434. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/com/github/google/bumble/remotehci/MainActivity.kt +0 -0
  435. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/com/github/google/bumble/remotehci/ui/theme/Color.kt +0 -0
  436. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/com/github/google/bumble/remotehci/ui/theme/Theme.kt +0 -0
  437. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/java/com/github/google/bumble/remotehci/ui/theme/Type.kt +0 -0
  438. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +0 -0
  439. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml +0 -0
  440. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-hdpi/ic_launcher.webp +0 -0
  441. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp +0 -0
  442. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp +0 -0
  443. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-mdpi/ic_launcher.webp +0 -0
  444. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp +0 -0
  445. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp +0 -0
  446. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-xhdpi/ic_launcher.webp +0 -0
  447. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp +0 -0
  448. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp +0 -0
  449. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp +0 -0
  450. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp +0 -0
  451. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp +0 -0
  452. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp +0 -0
  453. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.webp +0 -0
  454. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp +0 -0
  455. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/values/colors.xml +0 -0
  456. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/values/ic_launcher_background.xml +0 -0
  457. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/values/strings.xml +0 -0
  458. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/values/themes.xml +0 -0
  459. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/xml/backup_rules.xml +0 -0
  460. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/app/src/main/res/xml/data_extraction_rules.xml +0 -0
  461. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/build.gradle.kts +0 -0
  462. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/gradle/libs.versions.toml +0 -0
  463. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/gradle/wrapper/gradle-wrapper.jar +0 -0
  464. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/gradle/wrapper/gradle-wrapper.properties +0 -0
  465. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/gradle.properties +0 -0
  466. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/gradlew +0 -0
  467. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/gradlew.bat +0 -0
  468. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/lib/.gitignore +0 -0
  469. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/lib/build.gradle.kts +0 -0
  470. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/lib/proguard-rules.pro +0 -0
  471. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/lib/src/main/AndroidManifest.xml +0 -0
  472. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/lib/src/main/java/android/internal/hidl/base/V1_0/DebugInfo.java +0 -0
  473. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/lib/src/main/java/android/internal/hidl/base/V1_0/IBase.java +0 -0
  474. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/lib/src/main/java/android/os/HidlSupport.java +0 -0
  475. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/lib/src/main/java/android/os/HwBinder.java +0 -0
  476. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/lib/src/main/java/android/os/HwBlob.java +0 -0
  477. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/lib/src/main/java/android/os/HwParcel.java +0 -0
  478. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/lib/src/main/java/android/os/IHwBinder.java +0 -0
  479. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/lib/src/main/java/android/os/IHwInterface.java +0 -0
  480. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/lib/src/main/java/android/os/NativeHandle.java +0 -0
  481. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/lib/src/main/java/android/os/ServiceManager.java +0 -0
  482. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/scripts/generate_java_from_aidl.sh +0 -0
  483. {bumble-0.0.200 → bumble-0.0.201}/extras/android/RemoteHCI/settings.gradle.kts +0 -0
  484. {bumble-0.0.200 → bumble-0.0.201}/noxfile.py +0 -0
  485. {bumble-0.0.200 → bumble-0.0.201}/pyproject.toml +0 -0
  486. {bumble-0.0.200 → bumble-0.0.201}/rust/.gitignore +0 -0
  487. {bumble-0.0.200 → bumble-0.0.201}/rust/CHANGELOG.md +0 -0
  488. {bumble-0.0.200 → bumble-0.0.201}/rust/Cargo.lock +0 -0
  489. {bumble-0.0.200 → bumble-0.0.201}/rust/Cargo.toml +0 -0
  490. {bumble-0.0.200 → bumble-0.0.201}/rust/README.md +0 -0
  491. {bumble-0.0.200 → bumble-0.0.201}/rust/examples/battery_client.rs +0 -0
  492. {bumble-0.0.200 → bumble-0.0.201}/rust/examples/broadcast.rs +0 -0
  493. {bumble-0.0.200 → bumble-0.0.201}/rust/examples/scanner.rs +0 -0
  494. {bumble-0.0.200 → bumble-0.0.201}/rust/pytests/assigned_numbers.rs +0 -0
  495. {bumble-0.0.200 → bumble-0.0.201}/rust/pytests/pytests.rs +0 -0
  496. {bumble-0.0.200 → bumble-0.0.201}/rust/pytests/wrapper/drivers.rs +0 -0
  497. {bumble-0.0.200 → bumble-0.0.201}/rust/pytests/wrapper/hci.rs +0 -0
  498. {bumble-0.0.200 → bumble-0.0.201}/rust/pytests/wrapper/mod.rs +0 -0
  499. {bumble-0.0.200 → bumble-0.0.201}/rust/pytests/wrapper/transport.rs +0 -0
  500. {bumble-0.0.200 → bumble-0.0.201}/rust/resources/test/firmware/realtek/README.md +0 -0
  501. {bumble-0.0.200 → bumble-0.0.201}/rust/resources/test/firmware/realtek/rtl8723b_fw_structure.bin +0 -0
  502. {bumble-0.0.200 → bumble-0.0.201}/rust/resources/test/firmware/realtek/rtl8761bu_fw_structure.bin +0 -0
  503. {bumble-0.0.200 → bumble-0.0.201}/rust/src/adv.rs +0 -0
  504. {bumble-0.0.200 → bumble-0.0.201}/rust/src/cli/firmware/mod.rs +0 -0
  505. {bumble-0.0.200 → bumble-0.0.201}/rust/src/cli/firmware/rtk.rs +0 -0
  506. {bumble-0.0.200 → bumble-0.0.201}/rust/src/cli/l2cap/client_bridge.rs +0 -0
  507. {bumble-0.0.200 → bumble-0.0.201}/rust/src/cli/l2cap/mod.rs +0 -0
  508. {bumble-0.0.200 → bumble-0.0.201}/rust/src/cli/l2cap/server_bridge.rs +0 -0
  509. {bumble-0.0.200 → bumble-0.0.201}/rust/src/cli/mod.rs +0 -0
  510. {bumble-0.0.200 → bumble-0.0.201}/rust/src/cli/usb/mod.rs +0 -0
  511. {bumble-0.0.200 → bumble-0.0.201}/rust/src/internal/drivers/mod.rs +0 -0
  512. {bumble-0.0.200 → bumble-0.0.201}/rust/src/internal/drivers/rtk.rs +0 -0
  513. {bumble-0.0.200 → bumble-0.0.201}/rust/src/internal/hci/mod.rs +0 -0
  514. {bumble-0.0.200 → bumble-0.0.201}/rust/src/internal/hci/packets.pdl +0 -0
  515. {bumble-0.0.200 → bumble-0.0.201}/rust/src/internal/hci/tests.rs +0 -0
  516. {bumble-0.0.200 → bumble-0.0.201}/rust/src/internal/mod.rs +0 -0
  517. {bumble-0.0.200 → bumble-0.0.201}/rust/src/lib.rs +0 -0
  518. {bumble-0.0.200 → bumble-0.0.201}/rust/src/main.rs +0 -0
  519. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/assigned_numbers/company_ids.rs +0 -0
  520. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/assigned_numbers/mod.rs +0 -0
  521. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/assigned_numbers/services.rs +0 -0
  522. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/common.rs +0 -0
  523. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/controller.rs +0 -0
  524. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/core.rs +0 -0
  525. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/device/mod.rs +0 -0
  526. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/device/tests.rs +0 -0
  527. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/drivers/mod.rs +0 -0
  528. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/drivers/rtk.rs +0 -0
  529. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/gatt_client.rs +0 -0
  530. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/hci.rs +0 -0
  531. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/host.rs +0 -0
  532. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/l2cap.rs +0 -0
  533. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/link.rs +0 -0
  534. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/logging.rs +0 -0
  535. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/mod.rs +0 -0
  536. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/profile.rs +0 -0
  537. {bumble-0.0.200 → bumble-0.0.201}/rust/src/wrapper/transport.rs +0 -0
  538. {bumble-0.0.200 → bumble-0.0.201}/rust/tools/file_header.rs +0 -0
  539. {bumble-0.0.200 → bumble-0.0.201}/rust/tools/gen_assigned_numbers.rs +0 -0
  540. {bumble-0.0.200 → bumble-0.0.201}/scripts/process_android_emulator_protos.sh +0 -0
  541. {bumble-0.0.200 → bumble-0.0.201}/setup.cfg +0 -0
  542. {bumble-0.0.200 → bumble-0.0.201}/setup.py +0 -0
  543. {bumble-0.0.200 → bumble-0.0.201}/tasks.py +0 -0
  544. {bumble-0.0.200 → bumble-0.0.201}/tests/__init__.py +0 -0
  545. {bumble-0.0.200 → bumble-0.0.201}/tests/a2dp_test.py +0 -0
  546. {bumble-0.0.200 → bumble-0.0.201}/tests/aics_test.py +0 -0
  547. {bumble-0.0.200 → bumble-0.0.201}/tests/asha_test.py +0 -0
  548. {bumble-0.0.200 → bumble-0.0.201}/tests/at_test.py +0 -0
  549. {bumble-0.0.200 → bumble-0.0.201}/tests/avdtp_test.py +0 -0
  550. {bumble-0.0.200 → bumble-0.0.201}/tests/avrcp_test.py +0 -0
  551. {bumble-0.0.200 → bumble-0.0.201}/tests/bap_test.py +0 -0
  552. {bumble-0.0.200 → bumble-0.0.201}/tests/bass_test.py +0 -0
  553. {bumble-0.0.200 → bumble-0.0.201}/tests/cap_test.py +0 -0
  554. {bumble-0.0.200 → bumble-0.0.201}/tests/codecs_test.py +0 -0
  555. {bumble-0.0.200 → bumble-0.0.201}/tests/core_test.py +0 -0
  556. {bumble-0.0.200 → bumble-0.0.201}/tests/csip_test.py +0 -0
  557. {bumble-0.0.200 → bumble-0.0.201}/tests/decoder_test.py +0 -0
  558. {bumble-0.0.200 → bumble-0.0.201}/tests/device_test.py +0 -0
  559. {bumble-0.0.200 → bumble-0.0.201}/tests/g722_sample.g722 +0 -0
  560. {bumble-0.0.200 → bumble-0.0.201}/tests/gatt_test.py +0 -0
  561. {bumble-0.0.200 → bumble-0.0.201}/tests/hap_test.py +0 -0
  562. {bumble-0.0.200 → bumble-0.0.201}/tests/hci_data_001.bin +0 -0
  563. {bumble-0.0.200 → bumble-0.0.201}/tests/hci_test.py +0 -0
  564. {bumble-0.0.200 → bumble-0.0.201}/tests/hfp_test.py +0 -0
  565. {bumble-0.0.200 → bumble-0.0.201}/tests/host_test.py +0 -0
  566. {bumble-0.0.200 → bumble-0.0.201}/tests/import_test.py +0 -0
  567. {bumble-0.0.200 → bumble-0.0.201}/tests/keystore_test.py +0 -0
  568. {bumble-0.0.200 → bumble-0.0.201}/tests/l2cap_test.py +0 -0
  569. {bumble-0.0.200 → bumble-0.0.201}/tests/le_audio_test.py +0 -0
  570. {bumble-0.0.200 → bumble-0.0.201}/tests/mcp_test.py +0 -0
  571. {bumble-0.0.200 → bumble-0.0.201}/tests/pytest.ini +0 -0
  572. {bumble-0.0.200 → bumble-0.0.201}/tests/rfcomm_test.py +0 -0
  573. {bumble-0.0.200 → bumble-0.0.201}/tests/sdp_test.py +0 -0
  574. {bumble-0.0.200 → bumble-0.0.201}/tests/self_test.py +0 -0
  575. {bumble-0.0.200 → bumble-0.0.201}/tests/smp_test.py +0 -0
  576. {bumble-0.0.200 → bumble-0.0.201}/tests/test_utils.py +0 -0
  577. {bumble-0.0.200 → bumble-0.0.201}/tests/transport_tcp_server_test.py +0 -0
  578. {bumble-0.0.200 → bumble-0.0.201}/tests/transport_test.py +0 -0
  579. {bumble-0.0.200 → bumble-0.0.201}/tests/utils_test.py +0 -0
  580. {bumble-0.0.200 → bumble-0.0.201}/tests/vcp_test.py +0 -0
  581. {bumble-0.0.200 → bumble-0.0.201}/tools/generate_company_id_list.py +0 -0
  582. {bumble-0.0.200 → bumble-0.0.201}/tools/rtk_fw_download.py +0 -0
  583. {bumble-0.0.200 → bumble-0.0.201}/tools/rtk_util.py +0 -0
  584. {bumble-0.0.200 → bumble-0.0.201}/web/.gitignore +0 -0
  585. {bumble-0.0.200 → bumble-0.0.201}/web/README.md +0 -0
  586. {bumble-0.0.200 → bumble-0.0.201}/web/bumble.js +0 -0
  587. {bumble-0.0.200 → bumble-0.0.201}/web/favicon.ico +0 -0
  588. {bumble-0.0.200 → bumble-0.0.201}/web/heart_rate_monitor/heart_rate_monitor.html +0 -0
  589. {bumble-0.0.200 → bumble-0.0.201}/web/heart_rate_monitor/heart_rate_monitor.js +0 -0
  590. {bumble-0.0.200 → bumble-0.0.201}/web/heart_rate_monitor/heart_rate_monitor.py +0 -0
  591. {bumble-0.0.200 → bumble-0.0.201}/web/scanner/scanner.css +0 -0
  592. {bumble-0.0.200 → bumble-0.0.201}/web/scanner/scanner.html +0 -0
  593. {bumble-0.0.200 → bumble-0.0.201}/web/scanner/scanner.js +0 -0
  594. {bumble-0.0.200 → bumble-0.0.201}/web/scanner/scanner.py +0 -0
  595. {bumble-0.0.200 → bumble-0.0.201}/web/speaker/logo.svg +0 -0
  596. {bumble-0.0.200 → bumble-0.0.201}/web/speaker/speaker.css +0 -0
  597. {bumble-0.0.200 → bumble-0.0.201}/web/speaker/speaker.html +0 -0
  598. {bumble-0.0.200 → bumble-0.0.201}/web/speaker/speaker.js +0 -0
  599. {bumble-0.0.200 → bumble-0.0.201}/web/speaker/speaker.py +0 -0
  600. {bumble-0.0.200 → bumble-0.0.201}/web/ui.js +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: bumble
3
- Version: 0.0.200
3
+ Version: 0.0.201
4
4
  Summary: Bluetooth Stack for Apps, Emulation, Test and Experimentation
5
5
  Home-page: https://github.com/google/bumble
6
6
  Author: Google
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '0.0.200'
16
- __version_tuple__ = version_tuple = (0, 0, 200)
15
+ __version__ = version = '0.0.201'
16
+ __version_tuple__ = version_tuple = (0, 0, 201)
@@ -710,7 +710,7 @@ class ATT_Prepare_Write_Response(ATT_PDU):
710
710
 
711
711
 
712
712
  # -----------------------------------------------------------------------------
713
- @ATT_PDU.subclass([])
713
+ @ATT_PDU.subclass([("flags", 1)])
714
714
  class ATT_Execute_Write_Request(ATT_PDU):
715
715
  '''
716
716
  See Bluetooth spec @ Vol 3, Part F - 3.4.6.3 Execute Write Request
@@ -20,12 +20,14 @@ import atexit
20
20
  import logging
21
21
  import os
22
22
  import pathlib
23
+ import platform
23
24
  import sys
24
25
  from typing import Dict, Optional
25
26
 
26
27
  import grpc.aio
27
28
 
28
- from .common import (
29
+ import bumble
30
+ from bumble.transport.common import (
29
31
  ParserSource,
30
32
  PumpedTransport,
31
33
  PumpedPacketSource,
@@ -36,15 +38,15 @@ from .common import (
36
38
  )
37
39
 
38
40
  # pylint: disable=no-name-in-module
39
- from .grpc_protobuf.packet_streamer_pb2_grpc import (
41
+ from .grpc_protobuf.netsim.packet_streamer_pb2_grpc import (
40
42
  PacketStreamerStub,
41
43
  PacketStreamerServicer,
42
44
  add_PacketStreamerServicer_to_server,
43
45
  )
44
- from .grpc_protobuf.packet_streamer_pb2 import PacketRequest, PacketResponse
45
- from .grpc_protobuf.hci_packet_pb2 import HCIPacket
46
- from .grpc_protobuf.startup_pb2 import Chip, ChipInfo
47
- from .grpc_protobuf.common_pb2 import ChipKind
46
+ from .grpc_protobuf.netsim.packet_streamer_pb2 import PacketRequest, PacketResponse
47
+ from .grpc_protobuf.netsim.hci_packet_pb2 import HCIPacket
48
+ from .grpc_protobuf.netsim.startup_pb2 import Chip, ChipInfo, DeviceInfo
49
+ from .grpc_protobuf.netsim.common_pb2 import ChipKind
48
50
 
49
51
 
50
52
  # -----------------------------------------------------------------------------
@@ -58,6 +60,7 @@ logger = logging.getLogger(__name__)
58
60
  # -----------------------------------------------------------------------------
59
61
  DEFAULT_NAME = 'bumble0'
60
62
  DEFAULT_MANUFACTURER = 'Bumble'
63
+ DEFAULT_VARIANT = ''
61
64
 
62
65
 
63
66
  # -----------------------------------------------------------------------------
@@ -199,7 +202,6 @@ async def open_android_netsim_controller_transport(
199
202
  data = (
200
203
  bytes([request.hci_packet.packet_type]) + request.hci_packet.packet
201
204
  )
202
- logger.debug(f'<<< PACKET: {data.hex()}')
203
205
  self.on_data_received(data)
204
206
 
205
207
  async def send_packet(self, data):
@@ -253,7 +255,7 @@ async def open_android_netsim_controller_transport(
253
255
 
254
256
  # Check that we don't already have a device
255
257
  if self.device:
256
- logger.debug('busy, already serving a device')
258
+ logger.debug('Busy, already serving a device')
257
259
  return PacketResponse(error='Busy')
258
260
 
259
261
  # Instantiate a new device
@@ -312,16 +314,24 @@ async def open_android_netsim_host_transport_with_channel(
312
314
  ):
313
315
  # Wrapper for I/O operations
314
316
  class HciDevice:
315
- def __init__(self, name, manufacturer, hci_device):
317
+ def __init__(self, name, variant, manufacturer, hci_device):
316
318
  self.name = name
319
+ self.variant = variant
317
320
  self.manufacturer = manufacturer
318
321
  self.hci_device = hci_device
319
322
 
320
323
  async def start(self): # Send the startup info
321
- chip_info = ChipInfo(
324
+ device_info = DeviceInfo(
322
325
  name=self.name,
323
- chip=Chip(kind=ChipKind.BLUETOOTH, manufacturer=self.manufacturer),
326
+ kind='BUMBLE',
327
+ version=bumble.__version__,
328
+ sdk_version=platform.python_version(),
329
+ build_id=platform.platform(),
330
+ arch=platform.machine(),
331
+ variant=self.variant,
324
332
  )
333
+ chip = Chip(kind=ChipKind.BLUETOOTH, manufacturer=self.manufacturer)
334
+ chip_info = ChipInfo(name=self.name, chip=chip, device_info=device_info)
325
335
  logger.debug(f'Sending chip info to netsim: {chip_info}')
326
336
  await self.hci_device.write(PacketRequest(initial_info=chip_info))
327
337
 
@@ -349,12 +359,16 @@ async def open_android_netsim_host_transport_with_channel(
349
359
  )
350
360
 
351
361
  name = DEFAULT_NAME if options is None else options.get('name', DEFAULT_NAME)
362
+ variant = (
363
+ DEFAULT_VARIANT if options is None else options.get('variant', DEFAULT_VARIANT)
364
+ )
352
365
  manufacturer = DEFAULT_MANUFACTURER
353
366
 
354
367
  # Connect as a host
355
368
  service = PacketStreamerStub(channel)
356
369
  hci_device = HciDevice(
357
370
  name=name,
371
+ variant=variant,
358
372
  manufacturer=manufacturer,
359
373
  hci_device=service.StreamPackets(),
360
374
  )
@@ -404,6 +418,9 @@ async def open_android_netsim_transport(spec: Optional[str]) -> Transport:
404
418
  The "chip" name, used to identify the "chip" instance. This
405
419
  may be useful when several clients are connected, since each needs to use a
406
420
  different name.
421
+ variant=<variant>
422
+ The device info variant field, which may be used to convey a device or
423
+ application type (ex: "virtual-speaker", or "keyboard")
407
424
 
408
425
  In `controller` mode:
409
426
  The <host>:<port> part is required. <host> may be the address of a local network
@@ -1,11 +1,12 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  # Generated by the protocol buffer compiler. DO NOT EDIT!
3
- # source: common.proto
3
+ # source: netsim/common.proto
4
+ # Protobuf Python Version: 4.25.1
4
5
  """Generated protocol buffer code."""
5
- from google.protobuf.internal import builder as _builder
6
6
  from google.protobuf import descriptor as _descriptor
7
7
  from google.protobuf import descriptor_pool as _descriptor_pool
8
8
  from google.protobuf import symbol_database as _symbol_database
9
+ from google.protobuf.internal import builder as _builder
9
10
  # @@protoc_insertion_point(imports)
10
11
 
11
12
  _sym_db = _symbol_database.Default()
@@ -13,13 +14,13 @@ _sym_db = _symbol_database.Default()
13
14
 
14
15
 
15
16
 
16
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0c\x63ommon.proto\x12\rnetsim.common*=\n\x08\x43hipKind\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\r\n\tBLUETOOTH\x10\x01\x12\x08\n\x04WIFI\x10\x02\x12\x07\n\x03UWB\x10\x03\x62\x06proto3')
17
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x13netsim/common.proto\x12\rnetsim.common*S\n\x08\x43hipKind\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\r\n\tBLUETOOTH\x10\x01\x12\x08\n\x04WIFI\x10\x02\x12\x07\n\x03UWB\x10\x03\x12\x14\n\x10\x42LUETOOTH_BEACON\x10\x04\x62\x06proto3')
17
18
 
18
- _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
19
- _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'common_pb2', globals())
19
+ _globals = globals()
20
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
21
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'netsim.common_pb2', _globals)
20
22
  if _descriptor._USE_C_DESCRIPTORS == False:
21
-
22
23
  DESCRIPTOR._options = None
23
- _CHIPKIND._serialized_start=31
24
- _CHIPKIND._serialized_end=92
24
+ _globals['_CHIPKIND']._serialized_start=38
25
+ _globals['_CHIPKIND']._serialized_end=121
25
26
  # @@protoc_insertion_point(module_scope)
@@ -2,11 +2,17 @@ from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
2
2
  from google.protobuf import descriptor as _descriptor
3
3
  from typing import ClassVar as _ClassVar
4
4
 
5
- BLUETOOTH: ChipKind
6
5
  DESCRIPTOR: _descriptor.FileDescriptor
7
- UNSPECIFIED: ChipKind
8
- UWB: ChipKind
9
- WIFI: ChipKind
10
6
 
11
7
  class ChipKind(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
12
- __slots__ = []
8
+ __slots__ = ()
9
+ UNSPECIFIED: _ClassVar[ChipKind]
10
+ BLUETOOTH: _ClassVar[ChipKind]
11
+ WIFI: _ClassVar[ChipKind]
12
+ UWB: _ClassVar[ChipKind]
13
+ BLUETOOTH_BEACON: _ClassVar[ChipKind]
14
+ UNSPECIFIED: ChipKind
15
+ BLUETOOTH: ChipKind
16
+ WIFI: ChipKind
17
+ UWB: ChipKind
18
+ BLUETOOTH_BEACON: ChipKind
@@ -0,0 +1,29 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: netsim/hci_packet.proto
4
+ # Protobuf Python Version: 4.25.1
5
+ """Generated protocol buffer code."""
6
+ from google.protobuf import descriptor as _descriptor
7
+ from google.protobuf import descriptor_pool as _descriptor_pool
8
+ from google.protobuf import symbol_database as _symbol_database
9
+ from google.protobuf.internal import builder as _builder
10
+ # @@protoc_insertion_point(imports)
11
+
12
+ _sym_db = _symbol_database.Default()
13
+
14
+
15
+
16
+
17
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17netsim/hci_packet.proto\x12\rnetsim.packet\"\xb2\x01\n\tHCIPacket\x12\x38\n\x0bpacket_type\x18\x01 \x01(\x0e\x32#.netsim.packet.HCIPacket.PacketType\x12\x0e\n\x06packet\x18\x02 \x01(\x0c\"[\n\nPacketType\x12\x1a\n\x16HCI_PACKET_UNSPECIFIED\x10\x00\x12\x0b\n\x07\x43OMMAND\x10\x01\x12\x07\n\x03\x41\x43L\x10\x02\x12\x07\n\x03SCO\x10\x03\x12\t\n\x05\x45VENT\x10\x04\x12\x07\n\x03ISO\x10\x05\x42J\n\x1f\x63om.android.emulation.bluetoothP\x01\xf8\x01\x01\xa2\x02\x03\x41\x45\x42\xaa\x02\x1b\x41ndroid.Emulation.Bluetoothb\x06proto3')
18
+
19
+ _globals = globals()
20
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
21
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'netsim.hci_packet_pb2', _globals)
22
+ if _descriptor._USE_C_DESCRIPTORS == False:
23
+ _globals['DESCRIPTOR']._options = None
24
+ _globals['DESCRIPTOR']._serialized_options = b'\n\037com.android.emulation.bluetoothP\001\370\001\001\242\002\003AEB\252\002\033Android.Emulation.Bluetooth'
25
+ _globals['_HCIPACKET']._serialized_start=43
26
+ _globals['_HCIPACKET']._serialized_end=221
27
+ _globals['_HCIPACKET_PACKETTYPE']._serialized_start=130
28
+ _globals['_HCIPACKET_PACKETTYPE']._serialized_end=221
29
+ # @@protoc_insertion_point(module_scope)
@@ -6,17 +6,23 @@ from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
6
6
  DESCRIPTOR: _descriptor.FileDescriptor
7
7
 
8
8
  class HCIPacket(_message.Message):
9
- __slots__ = ["packet", "packet_type"]
9
+ __slots__ = ("packet_type", "packet")
10
10
  class PacketType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
11
- __slots__ = []
12
- ACL: HCIPacket.PacketType
11
+ __slots__ = ()
12
+ HCI_PACKET_UNSPECIFIED: _ClassVar[HCIPacket.PacketType]
13
+ COMMAND: _ClassVar[HCIPacket.PacketType]
14
+ ACL: _ClassVar[HCIPacket.PacketType]
15
+ SCO: _ClassVar[HCIPacket.PacketType]
16
+ EVENT: _ClassVar[HCIPacket.PacketType]
17
+ ISO: _ClassVar[HCIPacket.PacketType]
18
+ HCI_PACKET_UNSPECIFIED: HCIPacket.PacketType
13
19
  COMMAND: HCIPacket.PacketType
20
+ ACL: HCIPacket.PacketType
21
+ SCO: HCIPacket.PacketType
14
22
  EVENT: HCIPacket.PacketType
15
- HCI_PACKET_UNSPECIFIED: HCIPacket.PacketType
16
23
  ISO: HCIPacket.PacketType
17
- PACKET_FIELD_NUMBER: _ClassVar[int]
18
24
  PACKET_TYPE_FIELD_NUMBER: _ClassVar[int]
19
- SCO: HCIPacket.PacketType
20
- packet: bytes
25
+ PACKET_FIELD_NUMBER: _ClassVar[int]
21
26
  packet_type: HCIPacket.PacketType
27
+ packet: bytes
22
28
  def __init__(self, packet_type: _Optional[_Union[HCIPacket.PacketType, str]] = ..., packet: _Optional[bytes] = ...) -> None: ...
@@ -0,0 +1,63 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: netsim/model.proto
4
+ # Protobuf Python Version: 4.25.1
5
+ """Generated protocol buffer code."""
6
+ from google.protobuf import descriptor as _descriptor
7
+ from google.protobuf import descriptor_pool as _descriptor_pool
8
+ from google.protobuf import symbol_database as _symbol_database
9
+ from google.protobuf.internal import builder as _builder
10
+ # @@protoc_insertion_point(imports)
11
+
12
+ _sym_db = _symbol_database.Default()
13
+
14
+
15
+ from bumble.transport.grpc_protobuf.netsim import common_pb2 as netsim_dot_common__pb2
16
+ from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
17
+ from bumble.transport.grpc_protobuf.rootcanal import configuration_pb2 as rootcanal_dot_configuration__pb2
18
+
19
+
20
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x12netsim/model.proto\x12\x0cnetsim.model\x1a\x13netsim/common.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1drootcanal/configuration.proto\"+\n\x08Position\x12\t\n\x01x\x18\x01 \x01(\x02\x12\t\n\x01y\x18\x02 \x01(\x02\x12\t\n\x01z\x18\x03 \x01(\x02\"7\n\x0bOrientation\x12\x0b\n\x03yaw\x18\x01 \x01(\x02\x12\r\n\x05pitch\x18\x02 \x01(\x02\x12\x0c\n\x04roll\x18\x03 \x01(\x02\"\x84\x0c\n\x04\x43hip\x12%\n\x04kind\x18\x01 \x01(\x0e\x32\x17.netsim.common.ChipKind\x12\n\n\x02id\x18\x02 \x01(\r\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x14\n\x0cmanufacturer\x18\x04 \x01(\t\x12\x14\n\x0cproduct_name\x18\x05 \x01(\t\x12*\n\x02\x62t\x18\x06 \x01(\x0b\x32\x1c.netsim.model.Chip.BluetoothH\x00\x12\x32\n\nble_beacon\x18\t \x01(\x0b\x32\x1c.netsim.model.Chip.BleBeaconH\x00\x12\'\n\x03uwb\x18\x07 \x01(\x0b\x32\x18.netsim.model.Chip.RadioH\x00\x12(\n\x04wifi\x18\x08 \x01(\x0b\x32\x18.netsim.model.Chip.RadioH\x00\x12+\n\x06offset\x18\x0f \x01(\x0b\x32\x16.netsim.model.PositionH\x01\x88\x01\x01\x1aX\n\x05Radio\x12\x12\n\x05state\x18\x01 \x01(\x08H\x00\x88\x01\x01\x12\r\n\x05range\x18\x02 \x01(\x02\x12\x10\n\x08tx_count\x18\x03 \x01(\x05\x12\x10\n\x08rx_count\x18\x04 \x01(\x05\x42\x08\n\x06_state\x1a\xb1\x01\n\tBluetooth\x12,\n\nlow_energy\x18\x01 \x01(\x0b\x32\x18.netsim.model.Chip.Radio\x12)\n\x07\x63lassic\x18\x02 \x01(\x0b\x32\x18.netsim.model.Chip.Radio\x12\x0f\n\x07\x61\x64\x64ress\x18\x03 \x01(\t\x12:\n\rbt_properties\x18\x04 \x01(\x0b\x32#.rootcanal.configuration.Controller\x1a\x8d\x07\n\tBleBeacon\x12(\n\x02\x62t\x18\x01 \x01(\x0b\x32\x1c.netsim.model.Chip.Bluetooth\x12\x0f\n\x07\x61\x64\x64ress\x18\x02 \x01(\t\x12@\n\x08settings\x18\x03 \x01(\x0b\x32..netsim.model.Chip.BleBeacon.AdvertiseSettings\x12<\n\x08\x61\x64v_data\x18\x04 \x01(\x0b\x32*.netsim.model.Chip.BleBeacon.AdvertiseData\x12\x41\n\rscan_response\x18\x05 \x01(\x0b\x32*.netsim.model.Chip.BleBeacon.AdvertiseData\x1a\xaa\x03\n\x11\x41\x64vertiseSettings\x12V\n\x0e\x61\x64vertise_mode\x18\x01 \x01(\x0e\x32<.netsim.model.Chip.BleBeacon.AdvertiseSettings.AdvertiseModeH\x00\x12\x16\n\x0cmilliseconds\x18\x02 \x01(\x04H\x00\x12Y\n\x0etx_power_level\x18\x03 \x01(\x0e\x32?.netsim.model.Chip.BleBeacon.AdvertiseSettings.AdvertiseTxPowerH\x01\x12\r\n\x03\x64\x62m\x18\x04 \x01(\x05H\x01\x12\x11\n\tscannable\x18\x05 \x01(\x08\x12\x0f\n\x07timeout\x18\x06 \x01(\x04\"=\n\rAdvertiseMode\x12\r\n\tLOW_POWER\x10\x00\x12\x0c\n\x08\x42\x41LANCED\x10\x01\x12\x0f\n\x0bLOW_LATENCY\x10\x02\"@\n\x10\x41\x64vertiseTxPower\x12\r\n\tULTRA_LOW\x10\x00\x12\x07\n\x03LOW\x10\x01\x12\n\n\x06MEDIUM\x10\x02\x12\x08\n\x04HIGH\x10\x03\x42\n\n\x08intervalB\n\n\x08tx_power\x1a\xd4\x01\n\rAdvertiseData\x12\x1b\n\x13include_device_name\x18\x01 \x01(\x08\x12\x1e\n\x16include_tx_power_level\x18\x02 \x01(\x08\x12\x19\n\x11manufacturer_data\x18\x03 \x01(\x0c\x12\x44\n\x08services\x18\x04 \x03(\x0b\x32\x32.netsim.model.Chip.BleBeacon.AdvertiseData.Service\x1a%\n\x07Service\x12\x0c\n\x04uuid\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\x42\x06\n\x04\x63hipB\t\n\x07_offset\"\xea\x03\n\nChipCreate\x12%\n\x04kind\x18\x01 \x01(\x0e\x32\x17.netsim.common.ChipKind\x12\x0f\n\x07\x61\x64\x64ress\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x14\n\x0cmanufacturer\x18\x04 \x01(\t\x12\x14\n\x0cproduct_name\x18\x05 \x01(\t\x12>\n\nble_beacon\x18\x06 \x01(\x0b\x32(.netsim.model.ChipCreate.BleBeaconCreateH\x00\x12:\n\rbt_properties\x18\x07 \x01(\x0b\x32#.rootcanal.configuration.Controller\x1a\xe5\x01\n\x0f\x42leBeaconCreate\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12@\n\x08settings\x18\x03 \x01(\x0b\x32..netsim.model.Chip.BleBeacon.AdvertiseSettings\x12<\n\x08\x61\x64v_data\x18\x04 \x01(\x0b\x32*.netsim.model.Chip.BleBeacon.AdvertiseData\x12\x41\n\rscan_response\x18\x05 \x01(\x0b\x32*.netsim.model.Chip.BleBeacon.AdvertiseDataB\x06\n\x04\x63hip\"\xc1\x01\n\x06\x44\x65vice\x12\n\n\x02id\x18\x01 \x01(\r\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x14\n\x07visible\x18\x03 \x01(\x08H\x00\x88\x01\x01\x12(\n\x08position\x18\x04 \x01(\x0b\x32\x16.netsim.model.Position\x12.\n\x0borientation\x18\x05 \x01(\x0b\x32\x19.netsim.model.Orientation\x12!\n\x05\x63hips\x18\x06 \x03(\x0b\x32\x12.netsim.model.ChipB\n\n\x08_visible\"\x9f\x01\n\x0c\x44\x65viceCreate\x12\x0c\n\x04name\x18\x01 \x01(\t\x12(\n\x08position\x18\x02 \x01(\x0b\x32\x16.netsim.model.Position\x12.\n\x0borientation\x18\x03 \x01(\x0b\x32\x19.netsim.model.Orientation\x12\'\n\x05\x63hips\x18\x04 \x03(\x0b\x32\x18.netsim.model.ChipCreate\".\n\x05Scene\x12%\n\x07\x64\x65vices\x18\x01 \x03(\x0b\x32\x14.netsim.model.Device\"\xd1\x01\n\x07\x43\x61pture\x12\n\n\x02id\x18\x01 \x01(\r\x12*\n\tchip_kind\x18\x02 \x01(\x0e\x32\x17.netsim.common.ChipKind\x12\x13\n\x0b\x64\x65vice_name\x18\x03 \x01(\t\x12\x12\n\x05state\x18\x04 \x01(\x08H\x00\x88\x01\x01\x12\x0c\n\x04size\x18\x05 \x01(\x05\x12\x0f\n\x07records\x18\x06 \x01(\x05\x12-\n\ttimestamp\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\r\n\x05valid\x18\x08 \x01(\x08\x42\x08\n\x06_state*e\n\x07PhyKind\x12\x08\n\x04NONE\x10\x00\x12\x15\n\x11\x42LUETOOTH_CLASSIC\x10\x01\x12\x18\n\x14\x42LUETOOTH_LOW_ENERGY\x10\x02\x12\x08\n\x04WIFI\x10\x03\x12\x07\n\x03UWB\x10\x04\x12\x0c\n\x08WIFI_RTT\x10\x05\x62\x06proto3')
21
+
22
+ _globals = globals()
23
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
24
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'netsim.model_pb2', _globals)
25
+ if _descriptor._USE_C_DESCRIPTORS == False:
26
+ DESCRIPTOR._options = None
27
+ _globals['_PHYKIND']._serialized_start=2877
28
+ _globals['_PHYKIND']._serialized_end=2978
29
+ _globals['_POSITION']._serialized_start=121
30
+ _globals['_POSITION']._serialized_end=164
31
+ _globals['_ORIENTATION']._serialized_start=166
32
+ _globals['_ORIENTATION']._serialized_end=221
33
+ _globals['_CHIP']._serialized_start=224
34
+ _globals['_CHIP']._serialized_end=1764
35
+ _globals['_CHIP_RADIO']._serialized_start=565
36
+ _globals['_CHIP_RADIO']._serialized_end=653
37
+ _globals['_CHIP_BLUETOOTH']._serialized_start=656
38
+ _globals['_CHIP_BLUETOOTH']._serialized_end=833
39
+ _globals['_CHIP_BLEBEACON']._serialized_start=836
40
+ _globals['_CHIP_BLEBEACON']._serialized_end=1745
41
+ _globals['_CHIP_BLEBEACON_ADVERTISESETTINGS']._serialized_start=1104
42
+ _globals['_CHIP_BLEBEACON_ADVERTISESETTINGS']._serialized_end=1530
43
+ _globals['_CHIP_BLEBEACON_ADVERTISESETTINGS_ADVERTISEMODE']._serialized_start=1379
44
+ _globals['_CHIP_BLEBEACON_ADVERTISESETTINGS_ADVERTISEMODE']._serialized_end=1440
45
+ _globals['_CHIP_BLEBEACON_ADVERTISESETTINGS_ADVERTISETXPOWER']._serialized_start=1442
46
+ _globals['_CHIP_BLEBEACON_ADVERTISESETTINGS_ADVERTISETXPOWER']._serialized_end=1506
47
+ _globals['_CHIP_BLEBEACON_ADVERTISEDATA']._serialized_start=1533
48
+ _globals['_CHIP_BLEBEACON_ADVERTISEDATA']._serialized_end=1745
49
+ _globals['_CHIP_BLEBEACON_ADVERTISEDATA_SERVICE']._serialized_start=1708
50
+ _globals['_CHIP_BLEBEACON_ADVERTISEDATA_SERVICE']._serialized_end=1745
51
+ _globals['_CHIPCREATE']._serialized_start=1767
52
+ _globals['_CHIPCREATE']._serialized_end=2257
53
+ _globals['_CHIPCREATE_BLEBEACONCREATE']._serialized_start=2020
54
+ _globals['_CHIPCREATE_BLEBEACONCREATE']._serialized_end=2249
55
+ _globals['_DEVICE']._serialized_start=2260
56
+ _globals['_DEVICE']._serialized_end=2453
57
+ _globals['_DEVICECREATE']._serialized_start=2456
58
+ _globals['_DEVICECREATE']._serialized_end=2615
59
+ _globals['_SCENE']._serialized_start=2617
60
+ _globals['_SCENE']._serialized_end=2663
61
+ _globals['_CAPTURE']._serialized_start=2666
62
+ _globals['_CAPTURE']._serialized_end=2875
63
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,238 @@
1
+ from bumble.transport.grpc_protobuf.netsim import common_pb2 as _common_pb2
2
+ from google.protobuf import timestamp_pb2 as _timestamp_pb2
3
+ from bumble.transport.grpc_protobuf.rootcanal import configuration_pb2 as _configuration_pb2
4
+ from google.protobuf.internal import containers as _containers
5
+ from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
6
+ from google.protobuf import descriptor as _descriptor
7
+ from google.protobuf import message as _message
8
+ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union
9
+
10
+ DESCRIPTOR: _descriptor.FileDescriptor
11
+
12
+ class PhyKind(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
13
+ __slots__ = ()
14
+ NONE: _ClassVar[PhyKind]
15
+ BLUETOOTH_CLASSIC: _ClassVar[PhyKind]
16
+ BLUETOOTH_LOW_ENERGY: _ClassVar[PhyKind]
17
+ WIFI: _ClassVar[PhyKind]
18
+ UWB: _ClassVar[PhyKind]
19
+ WIFI_RTT: _ClassVar[PhyKind]
20
+ NONE: PhyKind
21
+ BLUETOOTH_CLASSIC: PhyKind
22
+ BLUETOOTH_LOW_ENERGY: PhyKind
23
+ WIFI: PhyKind
24
+ UWB: PhyKind
25
+ WIFI_RTT: PhyKind
26
+
27
+ class Position(_message.Message):
28
+ __slots__ = ("x", "y", "z")
29
+ X_FIELD_NUMBER: _ClassVar[int]
30
+ Y_FIELD_NUMBER: _ClassVar[int]
31
+ Z_FIELD_NUMBER: _ClassVar[int]
32
+ x: float
33
+ y: float
34
+ z: float
35
+ def __init__(self, x: _Optional[float] = ..., y: _Optional[float] = ..., z: _Optional[float] = ...) -> None: ...
36
+
37
+ class Orientation(_message.Message):
38
+ __slots__ = ("yaw", "pitch", "roll")
39
+ YAW_FIELD_NUMBER: _ClassVar[int]
40
+ PITCH_FIELD_NUMBER: _ClassVar[int]
41
+ ROLL_FIELD_NUMBER: _ClassVar[int]
42
+ yaw: float
43
+ pitch: float
44
+ roll: float
45
+ def __init__(self, yaw: _Optional[float] = ..., pitch: _Optional[float] = ..., roll: _Optional[float] = ...) -> None: ...
46
+
47
+ class Chip(_message.Message):
48
+ __slots__ = ("kind", "id", "name", "manufacturer", "product_name", "bt", "ble_beacon", "uwb", "wifi", "offset")
49
+ class Radio(_message.Message):
50
+ __slots__ = ("state", "range", "tx_count", "rx_count")
51
+ STATE_FIELD_NUMBER: _ClassVar[int]
52
+ RANGE_FIELD_NUMBER: _ClassVar[int]
53
+ TX_COUNT_FIELD_NUMBER: _ClassVar[int]
54
+ RX_COUNT_FIELD_NUMBER: _ClassVar[int]
55
+ state: bool
56
+ range: float
57
+ tx_count: int
58
+ rx_count: int
59
+ def __init__(self, state: bool = ..., range: _Optional[float] = ..., tx_count: _Optional[int] = ..., rx_count: _Optional[int] = ...) -> None: ...
60
+ class Bluetooth(_message.Message):
61
+ __slots__ = ("low_energy", "classic", "address", "bt_properties")
62
+ LOW_ENERGY_FIELD_NUMBER: _ClassVar[int]
63
+ CLASSIC_FIELD_NUMBER: _ClassVar[int]
64
+ ADDRESS_FIELD_NUMBER: _ClassVar[int]
65
+ BT_PROPERTIES_FIELD_NUMBER: _ClassVar[int]
66
+ low_energy: Chip.Radio
67
+ classic: Chip.Radio
68
+ address: str
69
+ bt_properties: _configuration_pb2.Controller
70
+ def __init__(self, low_energy: _Optional[_Union[Chip.Radio, _Mapping]] = ..., classic: _Optional[_Union[Chip.Radio, _Mapping]] = ..., address: _Optional[str] = ..., bt_properties: _Optional[_Union[_configuration_pb2.Controller, _Mapping]] = ...) -> None: ...
71
+ class BleBeacon(_message.Message):
72
+ __slots__ = ("bt", "address", "settings", "adv_data", "scan_response")
73
+ class AdvertiseSettings(_message.Message):
74
+ __slots__ = ("advertise_mode", "milliseconds", "tx_power_level", "dbm", "scannable", "timeout")
75
+ class AdvertiseMode(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
76
+ __slots__ = ()
77
+ LOW_POWER: _ClassVar[Chip.BleBeacon.AdvertiseSettings.AdvertiseMode]
78
+ BALANCED: _ClassVar[Chip.BleBeacon.AdvertiseSettings.AdvertiseMode]
79
+ LOW_LATENCY: _ClassVar[Chip.BleBeacon.AdvertiseSettings.AdvertiseMode]
80
+ LOW_POWER: Chip.BleBeacon.AdvertiseSettings.AdvertiseMode
81
+ BALANCED: Chip.BleBeacon.AdvertiseSettings.AdvertiseMode
82
+ LOW_LATENCY: Chip.BleBeacon.AdvertiseSettings.AdvertiseMode
83
+ class AdvertiseTxPower(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
84
+ __slots__ = ()
85
+ ULTRA_LOW: _ClassVar[Chip.BleBeacon.AdvertiseSettings.AdvertiseTxPower]
86
+ LOW: _ClassVar[Chip.BleBeacon.AdvertiseSettings.AdvertiseTxPower]
87
+ MEDIUM: _ClassVar[Chip.BleBeacon.AdvertiseSettings.AdvertiseTxPower]
88
+ HIGH: _ClassVar[Chip.BleBeacon.AdvertiseSettings.AdvertiseTxPower]
89
+ ULTRA_LOW: Chip.BleBeacon.AdvertiseSettings.AdvertiseTxPower
90
+ LOW: Chip.BleBeacon.AdvertiseSettings.AdvertiseTxPower
91
+ MEDIUM: Chip.BleBeacon.AdvertiseSettings.AdvertiseTxPower
92
+ HIGH: Chip.BleBeacon.AdvertiseSettings.AdvertiseTxPower
93
+ ADVERTISE_MODE_FIELD_NUMBER: _ClassVar[int]
94
+ MILLISECONDS_FIELD_NUMBER: _ClassVar[int]
95
+ TX_POWER_LEVEL_FIELD_NUMBER: _ClassVar[int]
96
+ DBM_FIELD_NUMBER: _ClassVar[int]
97
+ SCANNABLE_FIELD_NUMBER: _ClassVar[int]
98
+ TIMEOUT_FIELD_NUMBER: _ClassVar[int]
99
+ advertise_mode: Chip.BleBeacon.AdvertiseSettings.AdvertiseMode
100
+ milliseconds: int
101
+ tx_power_level: Chip.BleBeacon.AdvertiseSettings.AdvertiseTxPower
102
+ dbm: int
103
+ scannable: bool
104
+ timeout: int
105
+ def __init__(self, advertise_mode: _Optional[_Union[Chip.BleBeacon.AdvertiseSettings.AdvertiseMode, str]] = ..., milliseconds: _Optional[int] = ..., tx_power_level: _Optional[_Union[Chip.BleBeacon.AdvertiseSettings.AdvertiseTxPower, str]] = ..., dbm: _Optional[int] = ..., scannable: bool = ..., timeout: _Optional[int] = ...) -> None: ...
106
+ class AdvertiseData(_message.Message):
107
+ __slots__ = ("include_device_name", "include_tx_power_level", "manufacturer_data", "services")
108
+ class Service(_message.Message):
109
+ __slots__ = ("uuid", "data")
110
+ UUID_FIELD_NUMBER: _ClassVar[int]
111
+ DATA_FIELD_NUMBER: _ClassVar[int]
112
+ uuid: str
113
+ data: bytes
114
+ def __init__(self, uuid: _Optional[str] = ..., data: _Optional[bytes] = ...) -> None: ...
115
+ INCLUDE_DEVICE_NAME_FIELD_NUMBER: _ClassVar[int]
116
+ INCLUDE_TX_POWER_LEVEL_FIELD_NUMBER: _ClassVar[int]
117
+ MANUFACTURER_DATA_FIELD_NUMBER: _ClassVar[int]
118
+ SERVICES_FIELD_NUMBER: _ClassVar[int]
119
+ include_device_name: bool
120
+ include_tx_power_level: bool
121
+ manufacturer_data: bytes
122
+ services: _containers.RepeatedCompositeFieldContainer[Chip.BleBeacon.AdvertiseData.Service]
123
+ def __init__(self, include_device_name: bool = ..., include_tx_power_level: bool = ..., manufacturer_data: _Optional[bytes] = ..., services: _Optional[_Iterable[_Union[Chip.BleBeacon.AdvertiseData.Service, _Mapping]]] = ...) -> None: ...
124
+ BT_FIELD_NUMBER: _ClassVar[int]
125
+ ADDRESS_FIELD_NUMBER: _ClassVar[int]
126
+ SETTINGS_FIELD_NUMBER: _ClassVar[int]
127
+ ADV_DATA_FIELD_NUMBER: _ClassVar[int]
128
+ SCAN_RESPONSE_FIELD_NUMBER: _ClassVar[int]
129
+ bt: Chip.Bluetooth
130
+ address: str
131
+ settings: Chip.BleBeacon.AdvertiseSettings
132
+ adv_data: Chip.BleBeacon.AdvertiseData
133
+ scan_response: Chip.BleBeacon.AdvertiseData
134
+ def __init__(self, bt: _Optional[_Union[Chip.Bluetooth, _Mapping]] = ..., address: _Optional[str] = ..., settings: _Optional[_Union[Chip.BleBeacon.AdvertiseSettings, _Mapping]] = ..., adv_data: _Optional[_Union[Chip.BleBeacon.AdvertiseData, _Mapping]] = ..., scan_response: _Optional[_Union[Chip.BleBeacon.AdvertiseData, _Mapping]] = ...) -> None: ...
135
+ KIND_FIELD_NUMBER: _ClassVar[int]
136
+ ID_FIELD_NUMBER: _ClassVar[int]
137
+ NAME_FIELD_NUMBER: _ClassVar[int]
138
+ MANUFACTURER_FIELD_NUMBER: _ClassVar[int]
139
+ PRODUCT_NAME_FIELD_NUMBER: _ClassVar[int]
140
+ BT_FIELD_NUMBER: _ClassVar[int]
141
+ BLE_BEACON_FIELD_NUMBER: _ClassVar[int]
142
+ UWB_FIELD_NUMBER: _ClassVar[int]
143
+ WIFI_FIELD_NUMBER: _ClassVar[int]
144
+ OFFSET_FIELD_NUMBER: _ClassVar[int]
145
+ kind: _common_pb2.ChipKind
146
+ id: int
147
+ name: str
148
+ manufacturer: str
149
+ product_name: str
150
+ bt: Chip.Bluetooth
151
+ ble_beacon: Chip.BleBeacon
152
+ uwb: Chip.Radio
153
+ wifi: Chip.Radio
154
+ offset: Position
155
+ def __init__(self, kind: _Optional[_Union[_common_pb2.ChipKind, str]] = ..., id: _Optional[int] = ..., name: _Optional[str] = ..., manufacturer: _Optional[str] = ..., product_name: _Optional[str] = ..., bt: _Optional[_Union[Chip.Bluetooth, _Mapping]] = ..., ble_beacon: _Optional[_Union[Chip.BleBeacon, _Mapping]] = ..., uwb: _Optional[_Union[Chip.Radio, _Mapping]] = ..., wifi: _Optional[_Union[Chip.Radio, _Mapping]] = ..., offset: _Optional[_Union[Position, _Mapping]] = ...) -> None: ...
156
+
157
+ class ChipCreate(_message.Message):
158
+ __slots__ = ("kind", "address", "name", "manufacturer", "product_name", "ble_beacon", "bt_properties")
159
+ class BleBeaconCreate(_message.Message):
160
+ __slots__ = ("address", "settings", "adv_data", "scan_response")
161
+ ADDRESS_FIELD_NUMBER: _ClassVar[int]
162
+ SETTINGS_FIELD_NUMBER: _ClassVar[int]
163
+ ADV_DATA_FIELD_NUMBER: _ClassVar[int]
164
+ SCAN_RESPONSE_FIELD_NUMBER: _ClassVar[int]
165
+ address: str
166
+ settings: Chip.BleBeacon.AdvertiseSettings
167
+ adv_data: Chip.BleBeacon.AdvertiseData
168
+ scan_response: Chip.BleBeacon.AdvertiseData
169
+ def __init__(self, address: _Optional[str] = ..., settings: _Optional[_Union[Chip.BleBeacon.AdvertiseSettings, _Mapping]] = ..., adv_data: _Optional[_Union[Chip.BleBeacon.AdvertiseData, _Mapping]] = ..., scan_response: _Optional[_Union[Chip.BleBeacon.AdvertiseData, _Mapping]] = ...) -> None: ...
170
+ KIND_FIELD_NUMBER: _ClassVar[int]
171
+ ADDRESS_FIELD_NUMBER: _ClassVar[int]
172
+ NAME_FIELD_NUMBER: _ClassVar[int]
173
+ MANUFACTURER_FIELD_NUMBER: _ClassVar[int]
174
+ PRODUCT_NAME_FIELD_NUMBER: _ClassVar[int]
175
+ BLE_BEACON_FIELD_NUMBER: _ClassVar[int]
176
+ BT_PROPERTIES_FIELD_NUMBER: _ClassVar[int]
177
+ kind: _common_pb2.ChipKind
178
+ address: str
179
+ name: str
180
+ manufacturer: str
181
+ product_name: str
182
+ ble_beacon: ChipCreate.BleBeaconCreate
183
+ bt_properties: _configuration_pb2.Controller
184
+ def __init__(self, kind: _Optional[_Union[_common_pb2.ChipKind, str]] = ..., address: _Optional[str] = ..., name: _Optional[str] = ..., manufacturer: _Optional[str] = ..., product_name: _Optional[str] = ..., ble_beacon: _Optional[_Union[ChipCreate.BleBeaconCreate, _Mapping]] = ..., bt_properties: _Optional[_Union[_configuration_pb2.Controller, _Mapping]] = ...) -> None: ...
185
+
186
+ class Device(_message.Message):
187
+ __slots__ = ("id", "name", "visible", "position", "orientation", "chips")
188
+ ID_FIELD_NUMBER: _ClassVar[int]
189
+ NAME_FIELD_NUMBER: _ClassVar[int]
190
+ VISIBLE_FIELD_NUMBER: _ClassVar[int]
191
+ POSITION_FIELD_NUMBER: _ClassVar[int]
192
+ ORIENTATION_FIELD_NUMBER: _ClassVar[int]
193
+ CHIPS_FIELD_NUMBER: _ClassVar[int]
194
+ id: int
195
+ name: str
196
+ visible: bool
197
+ position: Position
198
+ orientation: Orientation
199
+ chips: _containers.RepeatedCompositeFieldContainer[Chip]
200
+ def __init__(self, id: _Optional[int] = ..., name: _Optional[str] = ..., visible: bool = ..., position: _Optional[_Union[Position, _Mapping]] = ..., orientation: _Optional[_Union[Orientation, _Mapping]] = ..., chips: _Optional[_Iterable[_Union[Chip, _Mapping]]] = ...) -> None: ...
201
+
202
+ class DeviceCreate(_message.Message):
203
+ __slots__ = ("name", "position", "orientation", "chips")
204
+ NAME_FIELD_NUMBER: _ClassVar[int]
205
+ POSITION_FIELD_NUMBER: _ClassVar[int]
206
+ ORIENTATION_FIELD_NUMBER: _ClassVar[int]
207
+ CHIPS_FIELD_NUMBER: _ClassVar[int]
208
+ name: str
209
+ position: Position
210
+ orientation: Orientation
211
+ chips: _containers.RepeatedCompositeFieldContainer[ChipCreate]
212
+ def __init__(self, name: _Optional[str] = ..., position: _Optional[_Union[Position, _Mapping]] = ..., orientation: _Optional[_Union[Orientation, _Mapping]] = ..., chips: _Optional[_Iterable[_Union[ChipCreate, _Mapping]]] = ...) -> None: ...
213
+
214
+ class Scene(_message.Message):
215
+ __slots__ = ("devices",)
216
+ DEVICES_FIELD_NUMBER: _ClassVar[int]
217
+ devices: _containers.RepeatedCompositeFieldContainer[Device]
218
+ def __init__(self, devices: _Optional[_Iterable[_Union[Device, _Mapping]]] = ...) -> None: ...
219
+
220
+ class Capture(_message.Message):
221
+ __slots__ = ("id", "chip_kind", "device_name", "state", "size", "records", "timestamp", "valid")
222
+ ID_FIELD_NUMBER: _ClassVar[int]
223
+ CHIP_KIND_FIELD_NUMBER: _ClassVar[int]
224
+ DEVICE_NAME_FIELD_NUMBER: _ClassVar[int]
225
+ STATE_FIELD_NUMBER: _ClassVar[int]
226
+ SIZE_FIELD_NUMBER: _ClassVar[int]
227
+ RECORDS_FIELD_NUMBER: _ClassVar[int]
228
+ TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
229
+ VALID_FIELD_NUMBER: _ClassVar[int]
230
+ id: int
231
+ chip_kind: _common_pb2.ChipKind
232
+ device_name: str
233
+ state: bool
234
+ size: int
235
+ records: int
236
+ timestamp: _timestamp_pb2.Timestamp
237
+ valid: bool
238
+ def __init__(self, id: _Optional[int] = ..., chip_kind: _Optional[_Union[_common_pb2.ChipKind, str]] = ..., device_name: _Optional[str] = ..., state: bool = ..., size: _Optional[int] = ..., records: _Optional[int] = ..., timestamp: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., valid: bool = ...) -> None: ...
@@ -0,0 +1,32 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: netsim/packet_streamer.proto
4
+ # Protobuf Python Version: 4.25.1
5
+ """Generated protocol buffer code."""
6
+ from google.protobuf import descriptor as _descriptor
7
+ from google.protobuf import descriptor_pool as _descriptor_pool
8
+ from google.protobuf import symbol_database as _symbol_database
9
+ from google.protobuf.internal import builder as _builder
10
+ # @@protoc_insertion_point(imports)
11
+
12
+ _sym_db = _symbol_database.Default()
13
+
14
+
15
+ from bumble.transport.grpc_protobuf.netsim import hci_packet_pb2 as netsim_dot_hci__packet__pb2
16
+ from bumble.transport.grpc_protobuf.netsim import startup_pb2 as netsim_dot_startup__pb2
17
+
18
+
19
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1cnetsim/packet_streamer.proto\x12\rnetsim.packet\x1a\x17netsim/hci_packet.proto\x1a\x14netsim/startup.proto\"\x93\x01\n\rPacketRequest\x12\x30\n\x0cinitial_info\x18\x01 \x01(\x0b\x32\x18.netsim.startup.ChipInfoH\x00\x12.\n\nhci_packet\x18\x02 \x01(\x0b\x32\x18.netsim.packet.HCIPacketH\x00\x12\x10\n\x06packet\x18\x03 \x01(\x0cH\x00\x42\x0e\n\x0crequest_type\"t\n\x0ePacketResponse\x12\x0f\n\x05\x65rror\x18\x01 \x01(\tH\x00\x12.\n\nhci_packet\x18\x02 \x01(\x0b\x32\x18.netsim.packet.HCIPacketH\x00\x12\x10\n\x06packet\x18\x03 \x01(\x0cH\x00\x42\x0f\n\rresponse_type2b\n\x0ePacketStreamer\x12P\n\rStreamPackets\x12\x1c.netsim.packet.PacketRequest\x1a\x1d.netsim.packet.PacketResponse(\x01\x30\x01\x62\x06proto3')
20
+
21
+ _globals = globals()
22
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
23
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'netsim.packet_streamer_pb2', _globals)
24
+ if _descriptor._USE_C_DESCRIPTORS == False:
25
+ DESCRIPTOR._options = None
26
+ _globals['_PACKETREQUEST']._serialized_start=95
27
+ _globals['_PACKETREQUEST']._serialized_end=242
28
+ _globals['_PACKETRESPONSE']._serialized_start=244
29
+ _globals['_PACKETRESPONSE']._serialized_end=360
30
+ _globals['_PACKETSTREAMER']._serialized_start=362
31
+ _globals['_PACKETSTREAMER']._serialized_end=460
32
+ # @@protoc_insertion_point(module_scope)
@@ -1,5 +1,5 @@
1
- from . import hci_packet_pb2 as _hci_packet_pb2
2
- from . import startup_pb2 as _startup_pb2
1
+ from bumble.transport.grpc_protobuf.netsim import hci_packet_pb2 as _hci_packet_pb2
2
+ from bumble.transport.grpc_protobuf.netsim import startup_pb2 as _startup_pb2
3
3
  from google.protobuf import descriptor as _descriptor
4
4
  from google.protobuf import message as _message
5
5
  from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Optional, Union as _Union
@@ -7,17 +7,17 @@ from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Opti
7
7
  DESCRIPTOR: _descriptor.FileDescriptor
8
8
 
9
9
  class PacketRequest(_message.Message):
10
- __slots__ = ["hci_packet", "initial_info", "packet"]
11
- HCI_PACKET_FIELD_NUMBER: _ClassVar[int]
10
+ __slots__ = ("initial_info", "hci_packet", "packet")
12
11
  INITIAL_INFO_FIELD_NUMBER: _ClassVar[int]
12
+ HCI_PACKET_FIELD_NUMBER: _ClassVar[int]
13
13
  PACKET_FIELD_NUMBER: _ClassVar[int]
14
- hci_packet: _hci_packet_pb2.HCIPacket
15
14
  initial_info: _startup_pb2.ChipInfo
15
+ hci_packet: _hci_packet_pb2.HCIPacket
16
16
  packet: bytes
17
17
  def __init__(self, initial_info: _Optional[_Union[_startup_pb2.ChipInfo, _Mapping]] = ..., hci_packet: _Optional[_Union[_hci_packet_pb2.HCIPacket, _Mapping]] = ..., packet: _Optional[bytes] = ...) -> None: ...
18
18
 
19
19
  class PacketResponse(_message.Message):
20
- __slots__ = ["error", "hci_packet", "packet"]
20
+ __slots__ = ("error", "hci_packet", "packet")
21
21
  ERROR_FIELD_NUMBER: _ClassVar[int]
22
22
  HCI_PACKET_FIELD_NUMBER: _ClassVar[int]
23
23
  PACKET_FIELD_NUMBER: _ClassVar[int]