def __init__(self, uuid128): self.bleio_uuid = _bleio.UUID(uuid128) self.size = 128
from adafruit_ble.characteristics import Characteristic from adafruit_ble.characteristics.int import Uint8Characteristic from adafruit_ble.uuid import StandardUUID from .. import Service __version__ = "0.0.0-auto.0" __repo__ = "https://github.com/adafruit/Adafruit_CircuitPython_BLE.git" _HID_SERVICE_UUID_NUM = const(0x1812) _REPORT_UUID_NUM = const(0x2A4D) _REPORT_MAP_UUID_NUM = const(0x2A4B) _HID_INFORMATION_UUID_NUM = const(0x2A4A) _HID_CONTROL_POINT_UUID_NUM = const(0x2A4C) _REPORT_REF_DESCR_UUID_NUM = const(0x2908) _REPORT_REF_DESCR_UUID = _bleio.UUID(_REPORT_REF_DESCR_UUID_NUM) _PROTOCOL_MODE_UUID_NUM = const(0x2A4E) _APPEARANCE_HID_KEYBOARD = const(961) _APPEARANCE_HID_MOUSE = const(962) _APPEARANCE_HID_JOYSTICK = const(963) _APPEARANCE_HID_GAMEPAD = const(964) # pylint: disable=line-too-long DEFAULT_HID_DESCRIPTOR = ( b"\x05\x01" # Usage Page (Generic Desktop Ctrls) b"\x09\x06" # Usage (Keyboard) b"\xA1\x01" # Collection (Application) b"\x85\x01" # Report ID (1) b"\x05\x07" # Usage Page (Kbrd/Keypad) b"\x19\xE0" # Usage Minimum (\xE0)
def __init__(self, uuid16): if not isinstance(uuid16, int): uuid16 = struct.unpack("<H", uuid16)[0] self.bleio_uuid = _bleio.UUID(uuid16) self.size = 16
# beavior. For example, a floating line will prevent the microphone from # sleeping. cs = digitalio.DigitalInOut(board.SPI_CSN) cs.switch_to_output(value=True) led = digitalio.DigitalInOut(board.LED) led.switch_to_output(value=False) # these pins are used as I2C on DVT, but are needed for EVT #i2s_lrck = digitalio.DigitalInOut(board.I2S_LRCK) #i2s_lrck.switch_to_output(value=False) #i2s_sck = digitalio.DigitalInOut(board.I2S_SCK) #i2s_sck.switch_to_output(value=False) bluetrace_uuid_bin = unhexlify(bluetrace_uuid) bluetrace_uuid = _bleio.UUID(bluetrace_uuid_bin) # Note that the txpower octet (02 0a 00) indicates we're transmitting at 0dBm, # which is the default transmission power on an nRF52833. There is not yet an # API available to change this parameter, so it is safe to hardcode it. advertising_data = b'' \ + unhexlify('1107') + bluetrace_uuid_bin \ + unhexlify('020106') \ + unhexlify('020a00') \ + unhexlify('06ffff03') + bytearray([ random.randint(0,256), random.randint(0,256), random.randint(0,256), ]) \ + b''