summaryrefslogtreecommitdiff
path: root/ports
diff options
context:
space:
mode:
authorYihui Xiong <yihui.xiong@hotmail.com>2020-08-07 23:01:49 +0800
committerYihui Xiong <yihui.xiong@hotmail.com>2020-08-13 16:54:29 +0800
commite7da652711f8d7ccdffce1a4da2a25aaf61ae150 (patch)
treeccc698f2a53547f1c13809d2a39a2ff8b005f220 /ports
parent7ffa2a103cd0f00a4626b5cbae8b8d1c048342b3 (diff)
able to change ble mac address
Diffstat (limited to 'ports')
-rw-r--r--ports/nrf/common-hal/_bleio/Adapter.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/ports/nrf/common-hal/_bleio/Adapter.c b/ports/nrf/common-hal/_bleio/Adapter.c
index 0b23bb7bf..d34f5d287 100644
--- a/ports/nrf/common-hal/_bleio/Adapter.c
+++ b/ports/nrf/common-hal/_bleio/Adapter.c
@@ -386,6 +386,15 @@ bleio_address_obj_t *common_hal_bleio_adapter_get_address(bleio_adapter_obj_t *s
return address;
}
+uint32_t common_hal_bleio_adapter_set_address(bleio_adapter_obj_t *self, bleio_address_obj_t *address)
+{
+ ble_gap_addr_t local_address;
+ local_address.addr_type = address->type;
+ const char *data = mp_obj_str_get_str(address->bytes);
+ memcpy(local_address.addr, data, NUM_BLEIO_ADDRESS_BYTES);
+ return sd_ble_gap_addr_set(&local_address);
+}
+
mp_obj_str_t* common_hal_bleio_adapter_get_name(bleio_adapter_obj_t *self) {
uint16_t len = 0;
sd_ble_gap_device_name_get(NULL, &len);