Skip to content

update BLE Getting Started for CircuitPython 5.0.0-beta.0 BLE API changes #941

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Nov 25, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 12 additions & 7 deletions Getting_Started_With_BLE_and_CP/button_presses.py
Original file line number Diff line number Diff line change
@@ -1,19 +1,24 @@
from adafruit_ble.uart import UARTServer
from adafruit_ble import BLERadio
from adafruit_ble.advertising.standard import ProvideServicesAdvertisement
from adafruit_ble.services.nordic import UARTService

from adafruit_bluefruit_connect.packet import Packet
from adafruit_bluefruit_connect.button_packet import ButtonPacket

uart_server = UARTServer()
ble = BLERadio()
uart = UARTService()
advertisement = ProvideServicesAdvertisement(uart)

while True:
uart_server.start_advertising()
while not uart_server.connected:
ble.start_advertising(advertisement)
while not ble.connected:
pass

# Now we're connected

while uart_server.connected:
if uart_server.in_waiting:
packet = Packet.from_stream(uart_server)
while ble.connected:
if uart.in_waiting:
packet = Packet.from_stream(uart)
if isinstance(packet, ButtonPacket):
if packet.pressed:
if packet.button == ButtonPacket.BUTTON_1:
Expand Down
20 changes: 13 additions & 7 deletions Getting_Started_With_BLE_and_CP/color_picker.py
Original file line number Diff line number Diff line change
@@ -1,23 +1,29 @@
import board
import neopixel
from adafruit_ble.uart import UARTServer

from adafruit_ble import BLERadio
from adafruit_ble.advertising.standard import ProvideServicesAdvertisement
from adafruit_ble.services.nordic import UARTService

from adafruit_bluefruit_connect.packet import Packet
from adafruit_bluefruit_connect.color_packet import ColorPacket

uart_server = UARTServer()
ble = BLERadio()
uart = UARTService()
advertisement = ProvideServicesAdvertisement(uart)

pixel = neopixel.NeoPixel(board.NEOPIXEL, 1)

while True:
uart_server.start_advertising()
while not uart_server.connected:
ble.start_advertising(advertisement)
while not ble.connected:
pass

# Now we're connected

while uart_server.connected:
if uart_server.in_waiting:
packet = Packet.from_stream(uart_server)
while ble.connected:
if uart.in_waiting:
packet = Packet.from_stream(uart)
if isinstance(packet, ColorPacket):
# Change the NeoPixel color.
pixel.fill(packet.color)
Expand Down
20 changes: 12 additions & 8 deletions Getting_Started_With_BLE_and_CP/location.py
Original file line number Diff line number Diff line change
@@ -1,20 +1,24 @@
from adafruit_ble.uart import UARTServer
from adafruit_ble import BLERadio
from adafruit_ble.advertising.standard import ProvideServicesAdvertisement
from adafruit_ble.services.nordic import UARTService

from adafruit_bluefruit_connect.packet import Packet
from adafruit_bluefruit_connect.location_packet import LocationPacket


uart_server = UARTServer()
ble = BLERadio()
uart = UARTService()
advertisement = ProvideServicesAdvertisement(uart)

while True:
uart_server.start_advertising()
while not uart_server.connected:
ble.start_advertising(advertisement)
while not ble.connected:
pass

# Now we're connected

while uart_server.connected:
if uart_server.in_waiting:
packet = Packet.from_stream(uart_server)
while ble.connected:
if uart.in_waiting:
packet = Packet.from_stream(uart)
if isinstance(packet, LocationPacket):
print("Latitude:", packet.latitude)
print("Longitude", packet.longitude)
Expand Down
20 changes: 12 additions & 8 deletions Getting_Started_With_BLE_and_CP/mobile_movement_data_streams.py
Original file line number Diff line number Diff line change
@@ -1,23 +1,27 @@
from adafruit_ble.uart import UARTServer
from adafruit_ble import BLERadio
from adafruit_ble.advertising.standard import ProvideServicesAdvertisement
from adafruit_ble.services.nordic import UARTService

from adafruit_bluefruit_connect.packet import Packet
from adafruit_bluefruit_connect.accelerometer_packet import AccelerometerPacket
from adafruit_bluefruit_connect.magnetometer_packet import MagnetometerPacket
from adafruit_bluefruit_connect.gyro_packet import GyroPacket
from adafruit_bluefruit_connect.quaternion_packet import QuaternionPacket


uart_server = UARTServer()
ble = BLERadio()
uart = UARTService()
advertisement = ProvideServicesAdvertisement(uart)

while True:
uart_server.start_advertising()
while not uart_server.connected:
ble.start_advertising(advertisement)
while not ble.connected:
pass

# Now we're connected

while uart_server.connected:
if uart_server.in_waiting:
packet = Packet.from_stream(uart_server)
while ble.connected:
if uart.in_waiting:
packet = Packet.from_stream(uart)
if isinstance(packet, AccelerometerPacket):
print("Acceleration:", packet.x, packet.y, packet.z)
if isinstance(packet, MagnetometerPacket):
Expand Down