Adafruit Industries

Deep Dive w/Scott: BLE GATT on ESP32-S3


Listen Later

Join Scott as he continues bluetooth low energy (BLE) GATT client code on the ESP32-S3.
Chat on the Adafruit Discord at https://adafru.it/discord.
Deep Dive happens every week. Normally Fridays at 2pm Pacific. Next week is on Friday.
All notes are available on GitHub with links into the videos. Thanks to @askpatrickw and @dcd for making and maintaining the notes. https://github.com/adafruit/deep-dive-notes/
0:00 Cat cam in main window
1:00 hello
3:50 introduction and housekeeping
4:40 introduce Vin and Spook
6:55 linkedin and restream streams as well
7:20 https://github.com/adafruit/deep-dive-notes
8:29 did you ever cover how the compiler works in CP on one of these deep dives?
10:40 Did you see that Zephyr now has support for RP2040?
11:03 Linker was for the actual linking of the CP core (and just general knowledge). The compiler for more how the internal Python compiler works
12:02 Smokey Brights / https://www.smokeybrights.com/
12:50 https://docs.micropython.org/en/latest/develop/compiler.html
13:40 # 5881Thank you for an example how to use DeviceInfoService for connections
15:55 continue CP 2022 discussion
18:22 Axel -
19:00 crashes that happen after several days are very hard to debug
19:13 Does Adafruit have any plans to support a 5 GHz wifi chip? Espressif c6
20:25 kattni’s #circuitpython2022
22:30 https://blog.adafruit.com/2022/02/01/the-circuitpython-community-a-round-up-and-a-look-forward-to-2022/
28:15 “it takes a village”
32:45 thank you Kattni for reminding us that CircuitPython requires its community
33:05 PlatformIO?
33:40 How does the CP2022 resolve? Are you going to publish a manifesto or something?
37:06 Does anyone know about a driver for Windows to make a Bluetooth COM-Port to the adafruit_ble.services.nordic UARTService accessible
37:50 Kattni will be my first guest on Paul Cutler’s CP podcast, too, which will give a chance for people to hear her March 1st -
39:35 BlueTooth - review last week / broadcast and observer roles
43:28 next step - initiating the connection
45:04 BatteryService
46:45 Declarative form of python used
47:22 BLE - GAP advertising
47:39 GATT - use to build this library upon
48:35 github BLE example uart examples (client )
50:55 Can you point me to a CP joystick hid example that uses analog inputs for pi pico?
57:00 what makes up a service
59:30 where is serial_number?
1:00:20 Bluetooth.com specifications and more BLE service api and espressif/common-hal/bleio/Connetion.c
1:09:10 Nimble callbacks *_cb / FreeRTOS
1:12:35 Discover by UUID will be faster
1:13:05 Discover all characteristics
1:15:35 nRF 52840 with BLE
1:16:09 esp s3 board - client board
1:17:14 nimble screen - demo
1:18:35 and example code - Unhandled connection event 12
1:19:20 uart.read(4) is not reading - how does it work…
1:20:00 NUX Nordic Uart Service
1:21:08 passing up the lower level services
1:22:20 StreamIn and StreamOut
1:24:35 Characteristics_buffer - native
1:28:00 This is a deep dive ( notify vs indicate )
1:28:41 two ways to write ( write and write without response )
1:30:30 then there is the security stuff
1:32:10 how do we go about building circuitpython uf2 files for missing boards? https://learn.adafruit.com/building-circuitpython and https://learn.adafruit.com/how-to-add-a-new-board-to-circuitpython
1:37:35 “there’s no software engineering problem that can’t be solved with another layer of abstraction.” - ( in the right place )
1:39:02 implementation for nRF version
1:39:48 *GATTS - server, and *GATTC client
1:40:39 adding event handler in constructor, need to add to espressif version also
1:42:28 need an event handler system
1:42:40 this is all BLE workflow stuff you're working on now right, not just "standard BLE" support for S3?
1:45:10 HVX is short for “Handle Value Notification or Indication”
1:47:30 CP joystick hid example that uses analog inputs for pi pico? https://learn.adafruit.com/customizing-usb-devices-in-circuitpython/hid-devices and https://learn.adafruit.com/getting-started-with-raspberry-pi-pico-circuitpython/potentiometer-and-pwm-led and of course - reach out on discord https://adafru.it/discord
1:50:15 again - take the the nRF code, and change it for the espressif version
1:52:40 we need two callbacks here for espressif and review ble_gap.h
1:56:12 could be more complicated due to non-consecutive buffers
1:57:22 Has there been any discussion of doing BLE Mesh support
1:59:06 Need to figure out how to split apart the om buffer os_mbuf
2:01:44 "Apache Mynewt offers the world’s first fully open-source Bluetooth Low Energy (BLE) or Bluetooth Smart stack fully compliant with Bluetooth 5 specifications with support for Bluetooth Mesh. It is called NimBLE."
https://mynewt.apache.org/latest/network/index.html#
2:02:00 Check out the git repos
2:03:03 circuit-python dev channel
2:03:59 Next week on Friday
2:04:19 Pet the cat
2:05:02 have a great weekend
...more
View all episodesView all episodes
Download on the App Store

Adafruit IndustriesBy Adafruit Industries

  • 4.8
  • 4.8
  • 4.8
  • 4.8
  • 4.8

4.8

13 ratings


More shows like Adafruit Industries

View all
3D Printing Projects by Adafruit Industries

3D Printing Projects

11 Listeners

Raspberry Pi by Adafruit Industries

Raspberry Pi

23 Listeners

Ask an Engineer by Adafruit Industries

Ask an Engineer

2 Listeners

Collin's Lab by Adafruit Industries

Collin's Lab

3 Listeners

New Products by Adafruit Industries

New Products

3 Listeners

Show and Tell by Adafruit Industries

Show and Tell

0 Listeners

3D Hangouts by Adafruit Industries

3D Hangouts

1 Listeners

Circuit Playground by Adafruit Industries

Circuit Playground

0 Listeners