├── .gitattributes ├── .gitignore ├── LICENSE ├── MicroPython_WebBluetooth_REPL.gif ├── README.md ├── bluetooth_low_energy ├── __init__.py ├── api │ ├── __init__.py │ ├── central.py │ ├── characteristic.py │ ├── constants.py │ ├── delegate.py │ ├── descriptor.py │ ├── peripheral.py │ ├── scan_entry.py │ ├── scanner.py │ ├── service.py │ ├── util.py │ └── uuid.py ├── modules │ ├── __init__.py │ ├── base_hci.py │ └── st_microelectronics │ │ ├── __init__.py │ │ ├── bluenrg_ms.py │ │ └── spbtle_rf.py └── protocols │ ├── __init__.py │ ├── at │ └── __init__.py │ └── hci │ ├── __init__.py │ ├── acl.py │ ├── att.py │ ├── cmd.py │ ├── event.py │ ├── l2cap.py │ ├── sco.py │ ├── smp.py │ ├── status.py │ ├── uart.py │ └── vendor_specifics │ ├── __init__.py │ └── st_microelectronics │ ├── __init__.py │ └── bluenrg_ms │ ├── __init__.py │ ├── cmd.py │ ├── constant.py │ ├── event.py │ └── status.py ├── examples ├── api │ ├── api_eddystone.py │ ├── api_hid_over_gatt.py │ ├── api_repl.py │ ├── api_scan.py │ └── api_sensor_demo.py ├── basic.py ├── bluest_protocol.py ├── discovery.py ├── eddystone.py ├── firmware_update │ ├── BlueNRG-MS_firmware_update_upy.py │ ├── README.txt │ ├── bluenrg_7_2_c_Mode_2-32MHz-XO32K_4M.csv │ └── firmware_update.py └── sensor_demo.py ├── hardware ├── MicroPython_SPBTLERF_Breakout_v03 │ ├── MicroPython_SPBTLERF_Breakout_v03_mod.fzz │ ├── MicroPython_SPBTLERF_Breakout_v03_mod.zip │ ├── MicroPython_SPBTLERF_Breakout_v03_mod_BOTTOM.png │ ├── MicroPython_SPBTLERF_Breakout_v03_mod_TOP.png │ └── MicroPython_SPBTLERF_Breakout_v03_mod_TOP_and_BOTTOM.jpg └── X_Nucleo_IDB05A1 │ └── X_Nucleo_IDB05A1_mbed_pinout_v1.jpg ├── micropython-lib ├── collections │ ├── __init__.py │ ├── defaultdict.py │ └── deque.py └── logging.py └── tests ├── test_hci_cmd.py └── test_hci_uart.py /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/.gitattributes -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/LICENSE -------------------------------------------------------------------------------- /MicroPython_WebBluetooth_REPL.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/MicroPython_WebBluetooth_REPL.gif -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/README.md -------------------------------------------------------------------------------- /bluetooth_low_energy/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/__init__.py -------------------------------------------------------------------------------- /bluetooth_low_energy/api/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bluetooth_low_energy/api/central.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # pylint: disable=C0111 3 | -------------------------------------------------------------------------------- /bluetooth_low_energy/api/characteristic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/api/characteristic.py -------------------------------------------------------------------------------- /bluetooth_low_energy/api/constants.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/api/constants.py -------------------------------------------------------------------------------- /bluetooth_low_energy/api/delegate.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # pylint: disable=C0111 3 | -------------------------------------------------------------------------------- /bluetooth_low_energy/api/descriptor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/api/descriptor.py -------------------------------------------------------------------------------- /bluetooth_low_energy/api/peripheral.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/api/peripheral.py -------------------------------------------------------------------------------- /bluetooth_low_energy/api/scan_entry.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/api/scan_entry.py -------------------------------------------------------------------------------- /bluetooth_low_energy/api/scanner.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/api/scanner.py -------------------------------------------------------------------------------- /bluetooth_low_energy/api/service.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/api/service.py -------------------------------------------------------------------------------- /bluetooth_low_energy/api/util.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/api/util.py -------------------------------------------------------------------------------- /bluetooth_low_energy/api/uuid.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/api/uuid.py -------------------------------------------------------------------------------- /bluetooth_low_energy/modules/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bluetooth_low_energy/modules/base_hci.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/modules/base_hci.py -------------------------------------------------------------------------------- /bluetooth_low_energy/modules/st_microelectronics/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bluetooth_low_energy/modules/st_microelectronics/bluenrg_ms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/modules/st_microelectronics/bluenrg_ms.py -------------------------------------------------------------------------------- /bluetooth_low_energy/modules/st_microelectronics/spbtle_rf.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/modules/st_microelectronics/spbtle_rf.py -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/at/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/protocols/hci/__init__.py -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/acl.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/protocols/hci/acl.py -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/att.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/protocols/hci/att.py -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/cmd.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/protocols/hci/cmd.py -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/event.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/protocols/hci/event.py -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/l2cap.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/protocols/hci/l2cap.py -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/sco.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/protocols/hci/sco.py -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/smp.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/protocols/hci/smp.py -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/status.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/protocols/hci/status.py -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/uart.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/protocols/hci/uart.py -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/vendor_specifics/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/vendor_specifics/st_microelectronics/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/vendor_specifics/st_microelectronics/bluenrg_ms/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/vendor_specifics/st_microelectronics/bluenrg_ms/cmd.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/protocols/hci/vendor_specifics/st_microelectronics/bluenrg_ms/cmd.py -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/vendor_specifics/st_microelectronics/bluenrg_ms/constant.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/protocols/hci/vendor_specifics/st_microelectronics/bluenrg_ms/constant.py -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/vendor_specifics/st_microelectronics/bluenrg_ms/event.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/protocols/hci/vendor_specifics/st_microelectronics/bluenrg_ms/event.py -------------------------------------------------------------------------------- /bluetooth_low_energy/protocols/hci/vendor_specifics/st_microelectronics/bluenrg_ms/status.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/bluetooth_low_energy/protocols/hci/vendor_specifics/st_microelectronics/bluenrg_ms/status.py -------------------------------------------------------------------------------- /examples/api/api_eddystone.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/examples/api/api_eddystone.py -------------------------------------------------------------------------------- /examples/api/api_hid_over_gatt.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/examples/api/api_hid_over_gatt.py -------------------------------------------------------------------------------- /examples/api/api_repl.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/examples/api/api_repl.py -------------------------------------------------------------------------------- /examples/api/api_scan.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/examples/api/api_scan.py -------------------------------------------------------------------------------- /examples/api/api_sensor_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/examples/api/api_sensor_demo.py -------------------------------------------------------------------------------- /examples/basic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/examples/basic.py -------------------------------------------------------------------------------- /examples/bluest_protocol.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/examples/bluest_protocol.py -------------------------------------------------------------------------------- /examples/discovery.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/examples/discovery.py -------------------------------------------------------------------------------- /examples/eddystone.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/examples/eddystone.py -------------------------------------------------------------------------------- /examples/firmware_update/BlueNRG-MS_firmware_update_upy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/examples/firmware_update/BlueNRG-MS_firmware_update_upy.py -------------------------------------------------------------------------------- /examples/firmware_update/README.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/examples/firmware_update/README.txt -------------------------------------------------------------------------------- /examples/firmware_update/bluenrg_7_2_c_Mode_2-32MHz-XO32K_4M.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/examples/firmware_update/bluenrg_7_2_c_Mode_2-32MHz-XO32K_4M.csv -------------------------------------------------------------------------------- /examples/firmware_update/firmware_update.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/examples/firmware_update/firmware_update.py -------------------------------------------------------------------------------- /examples/sensor_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/examples/sensor_demo.py -------------------------------------------------------------------------------- /hardware/MicroPython_SPBTLERF_Breakout_v03/MicroPython_SPBTLERF_Breakout_v03_mod.fzz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/hardware/MicroPython_SPBTLERF_Breakout_v03/MicroPython_SPBTLERF_Breakout_v03_mod.fzz -------------------------------------------------------------------------------- /hardware/MicroPython_SPBTLERF_Breakout_v03/MicroPython_SPBTLERF_Breakout_v03_mod.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/hardware/MicroPython_SPBTLERF_Breakout_v03/MicroPython_SPBTLERF_Breakout_v03_mod.zip -------------------------------------------------------------------------------- /hardware/MicroPython_SPBTLERF_Breakout_v03/MicroPython_SPBTLERF_Breakout_v03_mod_BOTTOM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/hardware/MicroPython_SPBTLERF_Breakout_v03/MicroPython_SPBTLERF_Breakout_v03_mod_BOTTOM.png -------------------------------------------------------------------------------- /hardware/MicroPython_SPBTLERF_Breakout_v03/MicroPython_SPBTLERF_Breakout_v03_mod_TOP.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/hardware/MicroPython_SPBTLERF_Breakout_v03/MicroPython_SPBTLERF_Breakout_v03_mod_TOP.png -------------------------------------------------------------------------------- /hardware/MicroPython_SPBTLERF_Breakout_v03/MicroPython_SPBTLERF_Breakout_v03_mod_TOP_and_BOTTOM.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/hardware/MicroPython_SPBTLERF_Breakout_v03/MicroPython_SPBTLERF_Breakout_v03_mod_TOP_and_BOTTOM.jpg -------------------------------------------------------------------------------- /hardware/X_Nucleo_IDB05A1/X_Nucleo_IDB05A1_mbed_pinout_v1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/hardware/X_Nucleo_IDB05A1/X_Nucleo_IDB05A1_mbed_pinout_v1.jpg -------------------------------------------------------------------------------- /micropython-lib/collections/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/micropython-lib/collections/__init__.py -------------------------------------------------------------------------------- /micropython-lib/collections/defaultdict.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/micropython-lib/collections/defaultdict.py -------------------------------------------------------------------------------- /micropython-lib/collections/deque.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/micropython-lib/collections/deque.py -------------------------------------------------------------------------------- /micropython-lib/logging.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/micropython-lib/logging.py -------------------------------------------------------------------------------- /tests/test_hci_cmd.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/tests/test_hci_cmd.py -------------------------------------------------------------------------------- /tests/test_hci_uart.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dmazzella/uble/HEAD/tests/test_hci_uart.py --------------------------------------------------------------------------------