summaryrefslogtreecommitdiff
path: root/shared-bindings
diff options
context:
space:
mode:
authorScott Shawcroft <scott@tannewt.org>2019-12-12 13:46:51 -0800
committerScott Shawcroft <scott@tannewt.org>2019-12-12 13:46:59 -0800
commit9a3d45e7d0fd942201f4bb2102d9d5489bd7cb86 (patch)
treea39c757d04cf99c1975e966c1896cdba2c3dbdb9 /shared-bindings
parent10183d59246a1d266b9c5df11aabc105fbdb3178 (diff)
Add extended, connectable and scannable error.
Related to https://github.com/adafruit/Adafruit_CircuitPython_BLE/issues/44
Diffstat (limited to 'shared-bindings')
-rw-r--r--shared-bindings/_bleio/Adapter.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/shared-bindings/_bleio/Adapter.c b/shared-bindings/_bleio/Adapter.c
index 9772fa830..5d3211b0c 100644
--- a/shared-bindings/_bleio/Adapter.c
+++ b/shared-bindings/_bleio/Adapter.c
@@ -29,6 +29,7 @@
#include "py/objproperty.h"
#include "py/runtime.h"
+#include "shared-bindings/_bleio/__init__.h"
#include "shared-bindings/_bleio/Address.h"
#include "shared-bindings/_bleio/Adapter.h"
@@ -185,7 +186,12 @@ STATIC mp_obj_t bleio_adapter_start_advertising(mp_uint_t n_args, const mp_obj_t
ADV_INTERVAL_MIN_STRING, ADV_INTERVAL_MAX_STRING);
}
- common_hal_bleio_adapter_start_advertising(self, args[ARG_connectable].u_bool, interval,
+ bool connectable = args[ARG_connectable].u_bool;
+ if (data_bufinfo.len > 31 && connectable && scan_response_bufinfo.len > 0) {
+ mp_raise_bleio_BluetoothError(translate("Cannot have scan responses for extended, connectable advertisements."));
+ }
+
+ common_hal_bleio_adapter_start_advertising(self, connectable, interval,
&data_bufinfo, &scan_response_bufinfo);
return mp_const_none;