circuitpython/shared-bindings
Scott Shawcroft ae30a1e5aa
Refine _bleio
This PR refines the _bleio API. It was originally motivated by
the addition of a new CircuitPython service that enables reading
and modifying files on the device. Moving the BLE lifecycle outside
of the VM motivated a number of changes to remove heap allocations
in some APIs.

It also motivated unifying connection initiation to the Adapter class
rather than the Central and Peripheral classes which have been removed.
Adapter now handles the GAP portion of BLE including advertising, which
has moved but is largely unchanged, and scanning, which has been enhanced
to return an iterator of filtered results.

Once a connection is created (either by us (aka Central) or a remote
device (aka Peripheral)) it is represented by a new Connection class.
This class knows the current connection state and can discover and
instantiate remote Services along with their Characteristics and
Descriptors.

Relates to #586
2019-10-21 18:57:03 -07:00
..
_bleio Refine _bleio 2019-10-21 18:57:03 -07:00
_pew Refactor deinit check to reduce code size. 2019-06-12 11:36:43 -07:00
_pixelbuf Improve rST consistency for rst2pyi use 2019-05-30 19:02:47 -07:00
_stage Fix transactions in _stage after displayio changes 2019-09-04 16:41:58 +02:00
analogio Fix unsafe floating point comparison 2019-10-14 09:13:35 +02:00
audiobusio docs: correct audiomixer refs 2019-08-25 14:57:29 -05:00
audiocore enable Mixer backwards compatibility (when audiomixer is available) 2019-08-31 16:06:16 -05:00
audioio enable Mixer backwards compatibility (when audiomixer is available) 2019-08-31 16:06:16 -05:00
audiomixer doc cleanup 2019-09-03 22:44:43 -05:00
audiopwmio docs: correct audiomixer refs 2019-08-25 14:57:29 -05:00
bitbangio More size_t usage 2019-08-27 12:49:46 -07:00
board Merge latest 4.0.x fixes into master 2019-06-11 16:16:29 -04:00
busio More size_t usage 2019-08-27 12:49:46 -07:00
digitalio Fix docs in digitalio. 2019-06-18 16:59:05 -05:00
displayio Merge pull request #2101 from matthewnewberg/display_io_dither 2019-09-09 10:11:07 -07:00
fontio Fix reference to Bitmap in fontio.Glyph docs. 2019-06-18 18:44:50 -05:00
frequencyio Refactor deinit check to reduce code size. 2019-06-12 11:36:43 -07:00
gamepad When clearing gamepad buffer, use the last button state, not 0 2019-06-12 11:42:41 -07:00
gamepadshift When clearing gamepad buffer, use the last button state, not 0 2019-06-12 11:42:41 -07:00
i2cslave shared-bindings: Use RUN_BACKGROUND_TASKS 2019-08-11 08:53:02 -05:00
math Support internationalisation. 2018-08-07 14:58:57 -07:00
microcontroller return chip vcc value 2019-10-12 15:42:15 -04:00
multiterminal Support internationalisation. 2018-08-07 14:58:57 -07:00
neopixel_write Improve rST consistency for rst2pyi use 2019-05-30 19:02:47 -07:00
network Improve rST consistency for rst2pyi use 2019-05-30 19:02:47 -07:00
nvm Fix up single-byte access to nvm.ByteArray 2019-04-16 14:53:44 +10:00
os Compress all translated strings with Huffman coding. 2018-08-16 17:40:57 -07:00
ps2io Refactor deinit check to reduce code size. 2019-06-12 11:36:43 -07:00
pulseio Refactor deinit check to reduce code size. 2019-06-12 11:36:43 -07:00
random Support internationalisation. 2018-08-07 14:58:57 -07:00
rotaryio Refactor deinit check to reduce code size. 2019-06-12 11:36:43 -07:00
rtc Remove unnecessary MP_WEAK declarations 2019-04-02 13:33:22 +11:00
socket Improve rST consistency for rst2pyi use 2019-05-30 19:02:47 -07:00
storage Improve rST consistency for rst2pyi use 2019-05-30 19:02:47 -07:00
struct Improve rST consistency for rst2pyi use 2019-05-30 19:02:47 -07:00
supervisor Remove nRF52832 support 2018-12-30 22:49:20 -05:00
terminalio Fix up sphinx 2019-03-19 18:37:41 -07:00
time shared-bindings/time: style 2019-08-18 08:11:14 -05:00
touchio Detect lack of pulldown; check for pin in use 2019-08-19 23:40:34 -04:00
uheap Improve rST consistency for rst2pyi use 2019-05-30 19:02:47 -07:00
usb_hid A variety of displayio improvements 2019-02-11 20:55:05 -08:00
usb_midi Remove usb_midi.PortIn and PortOut constructors. 2019-02-06 22:22:15 -06:00
ustack Improve rST consistency for rst2pyi use 2019-05-30 19:02:47 -07:00
wiznet Improve rST consistency for rst2pyi use 2019-05-30 19:02:47 -07:00
help.c Improve rST consistency for rst2pyi use 2019-05-30 19:02:47 -07:00
index.rst update rST ref link for support matrix 2019-07-28 21:25:43 -05:00
support_matrix.rst update rST ref link for support matrix 2019-07-28 21:25:43 -05:00
util.c Refactor deinit check to reduce code size. 2019-06-12 11:36:43 -07:00
util.h Refactor deinit check to reduce code size. 2019-06-12 11:36:43 -07:00