Commit Graph

7869 Commits

Author SHA1 Message Date
Glenn Ruben Bakke 2af06bd3fa nrf5/boards: Adding BLUETOOTH_LFCLK_RC to CFLAGS in microbit s110 makefile. 2017-03-03 23:21:47 +01:00
Glenn Ruben Bakke e95ec1a285 nrf5/sdk: Adding support for initializing the bluetooth stack using RC oscillator instead of crystal. If BLUETOOTH_LFCLK_RC is set in CFLAGS, this variant of softdevice enable will be activated. 2017-03-03 23:20:38 +01:00
Glenn Ruben Bakke c300e3f196 nrf5: Initialize repl_display_debugging_info in pyexec.c for cortex-m0 targets. 2017-03-03 00:40:44 +01:00
Glenn Ruben Bakke 159202ad00 lib/utils: Expose pyb_set_repl_info function public
The patch enables the possibility to disable or initialize the repl
info from outside of the module. Can also be used to initialize the
repl_display_debugging_info in pyexec.c if not startup file is clearing
.bss segment.
2017-03-03 00:36:25 +01:00
Glenn Ruben Bakke 235c0edacb nrf5/sdk: Updating ringbuffer.h to use volatile variables for start and end. 2017-03-03 00:11:42 +01:00
Glenn Ruben Bakke d057a93675 nrf5/sdk: Rename cccd_enable variable to m_cccd_enable in bluetooth le UART driver. Also made the variable volatile. 2017-03-03 00:06:51 +01:00
Glenn Ruben Bakke df31508d6f nrf5/modules: Updating example in ubluepy header to use handle instead of data length upon reception of an event. 2017-03-03 00:05:09 +01:00
Glenn Ruben Bakke db3dd8bc8b nrf5/modules: Updating ubluepy peripheral to pass handle value to python event handler instead of data length. Data length can be derived from the bytearray structure. 2017-03-03 00:04:13 +01:00
Glenn Ruben Bakke 22f66e274d nrf5/sdk: Updating bluetooth le driver to handle SEC PARAM REQUEST by replying that pairing is not supported. Moving initialization of adv and tx in progress state variables to stack enable function. 2017-03-02 22:48:04 +01:00
Glenn Ruben Bakke 4efedb67b6 nrf5/modules: Enable ubluepy constants for CONNECT and DISCONNECT for other bluetooth stacks than s132. 2017-03-02 22:43:06 +01:00
Glenn Ruben Bakke e60fa9b3e1 nrf5/sdk: Fixing unaligned access issues for nrf51 (cortex-m0) in bluetooth le driver 2017-03-02 21:25:51 +01:00
Glenn Ruben Bakke 44c9888511 nrf5/sdk: Removing SDK dependant BLE UART Service implementation
The sdk_12.1.0 nrf52_ble.c implementation was dependent on SDK components.
This has been replaced with the ble_uart.c implementation using a standalone
bluetooth driver implementation without need of SDK components.

Also, sdk.mk has been updated to not use a special linker script.
2017-03-01 00:05:04 +01:00
Glenn Ruben Bakke f88ad9f5ab nrf52: Removing folder to not confuse which folder is in development 2017-02-28 23:57:08 +01:00
Glenn Ruben Bakke 58cc59cfbe nrf5/sdk: Removing ble_repl_linux.py
Script does not really work very well with blocking char read and
async ble notifications printing data when terminal stdout is blocked
by readchar. Bluetooth UART profile implemented in ble_uart.c is
now working with tralamazza's nus_console nodejs script.

Ref: https://github.com/tralamazza/nus_console
2017-02-28 23:40:46 +01:00
Glenn Ruben Bakke ac677efb8b nrf5: Add default config for MICROPY_PY_BLE_NUS (0)
Disable Bluetooth UART to be used for REPL by default. Can be overridden
in nrf5_sdk_conf.h. It is defined in  mpconfigport.h as it is connected to
mphalport.c, where the config is used to determine whether default print
functions should be using HW UART or Bluetooth UART.
2017-02-28 23:33:54 +01:00
Glenn Ruben Bakke e8761682b7 nrf5/sdk: Add ble_uart.c to source list
ble_uart.c implements UART Bluetooth service on top of the
bluetooth stack driver api calls. Can be enabled to be compiled
in by defining MICROPY_PY_BLE_NUS = 1 in nrf5_sdk_conf.h.
2017-02-28 23:30:36 +01:00
Glenn Ruben Bakke 84313b0261 nrf5/sdk: Removing include of sdk_12.1.0's build.mk
As no sources are needed from the SDK this build makefile
can be deleted.
2017-02-28 23:28:09 +01:00
Glenn Ruben Bakke 9472196ee7 nrf5: Force implementation of tx_str_cooked function if BLE NUS enabled.
If BLE UART service has been enabled, the mp_hal_stdout_tx_strn_cooked
is not defined by default anymore, and has to be implemented by the
UART driver (in this case BLE).
2017-02-28 23:18:31 +01:00
Glenn Ruben Bakke 216c97ff9a nrf5/sdk: Adding compiler guard around exchange MTU request event.
As s110 is not having this event or function call to answer on a MTU
exchange request, this is excluded for all other version than s132
for now.
2017-02-28 23:13:02 +01:00
glennrub c1ffac9998 Merge pull request #1 from ajbaabf/nrf5_no_sdk
added support for hardware temperature sensor
2017-02-28 08:33:11 +01:00
Bander Ajba 0e723091f9 minor documentation and extra tabs removal fixes 2017-02-28 09:34:13 +03:00
Glenn Ruben Bakke 382f718cfc nrf5/sdk: Updating BLE UART implementation by swapping TX and RX uuid and characterisitic handling. Removed dummy write delay of 10 ms. 2017-02-27 23:47:47 +01:00
Glenn Ruben Bakke b032d765ff nrf5/sdk: Backing up progress in bluetooth le driver. Adding new gap and gatts handlers. Added handling of tx complete events when using notification, responding to MTU request, and setting of default connection parameters. 2017-02-27 23:40:39 +01:00
Bander Ajba 12a6cb0fbf fixed temp module to allow for instance support 2017-02-27 21:46:53 +03:00
Bander Ajba e52ebb095c fixed temp module to allow for instance support 2017-02-27 21:37:32 +03:00
glennrub 56cf514627 Merge pull request #2 from dhylands/fix-makefile
Fix up Makefile dependencies
2017-02-26 17:39:09 +01:00
Bander Ajba 66542c34b9 did required modification to merge the temperature sensore module 2017-02-26 11:17:07 +03:00
Bander Ajba 378c40b4da did required modification to merge the temperature sensore module 2017-02-26 11:14:17 +03:00
Dave Hylands d3c3fa4a74 Fix up Makefile dependencies
I also didn't see any real reason for mkrules.mk to exist,
so I merged the contents into Makefile.

Now you can do:
```
make BOARD=pca10028 clean
make BOARD=pca10028 flash
```
and it will work properly.
2017-02-25 16:52:46 -08:00
Glenn Ruben Bakke dcd980381d nrf5: Updating Makefile to use correct variable for setting directory of file to freeze as mpy. 2017-02-26 01:30:33 +01:00
Glenn Ruben Bakke 65f3e16775 nrf5: Setting stack top in main.c. Thanks dhylands for pointing this out. 2017-02-26 01:29:13 +01:00
Glenn Ruben Bakke 64b23e1127 nrf5/sdk: Backing up progress in BLE UART driver. Adding ringbuffer in order to poll bytes from recieved data in REPL main loop. 2017-02-24 15:14:12 +01:00
Glenn Ruben Bakke bfda169dfe nrf5/modules: Updating ubluepy example to print out gatts write events with data. 2017-02-24 15:08:32 +01:00
Glenn Ruben Bakke e60a06563e nrf5/boards: Updating pca10028 bluetooth stack targets to have a MCU_SUB_VARIANT. 2017-02-24 15:03:53 +01:00
Bander Ajba 3882b0e2ff added support for hardware temperature sensor 2017-02-24 00:38:08 +03:00
Glenn Ruben Bakke 6b898d1d67 nrf5/sdk: Adding macro based ringbuffer written by Philip Thrasher. source: https://github.com/pthrasher/c-generic-ring-buffer/blob/master/ringbuffer.h. Copyright noticed copied into the file, and file reviewed by Philip. 2017-02-23 21:52:23 +01:00
Glenn Ruben Bakke f10abda60a nrf5/sdk: Updating bluetooth le driver to extract data length and pointer from the event structure upon gatts write operation. 2017-02-22 19:54:02 +01:00
Glenn Ruben Bakke 7fee0cdde1 nrf5/modules: Expose ubluepy characteristic and peripheral types as external declaration in ublupy header. 2017-02-22 19:10:18 +01:00
Glenn Ruben Bakke 09fd2b86d1 nrf5: Updating main to initialize bluetooth le uart module right before bluetooth REPL is started. 2017-02-21 23:38:35 +01:00
Glenn Ruben Bakke 3e66898c37 nrf5/sdk: Updating bluetooth le uart implemenatation to block until cccd is written. 2017-02-21 23:37:52 +01:00
Glenn Ruben Bakke 80b2d7e4ad nrf5/sdk: Backing up ubluepy version of ble uart service for Bluetooth LE REPL. 2017-02-21 00:15:51 +01:00
Glenn Ruben Bakke acb5c7b4ee nrf5/modules: Updating ubluepy example in header to align with bluetooth uart service characteristic's. 2017-02-20 21:28:07 +01:00
Glenn Ruben Bakke c9bfcb5bc5 nrf5/modules: Implementing characteristic write method. Possible to use write for both write and notifications. 2017-02-20 21:27:21 +01:00
Glenn Ruben Bakke 7223950864 nrf5/sdk: Remaning bluetooth driver function ble_drv_attr_notif to *_notify. 2017-02-20 21:26:19 +01:00
Glenn Ruben Bakke 601f07cbf2 nrf5/modules: Adding props and attrs parameter to ubluepy characteristic constructor to override default values. Adding method for reading characteristic properties. Adding values to the local dict table that gives possibility to OR together a configuration of properties and attributes in the keyword argument during construction. 2017-02-20 20:28:19 +01:00
Glenn Ruben Bakke a973dde603 nrf5/sdk: Adding parsing of characteristic properties and attributes (extra descriptions for the characteristic, for now cccd). 2017-02-20 20:24:27 +01:00
Glenn Ruben Bakke 89fc67a9f8 nrf5/modules: Adding new members to ubluepy characteristic object, props and attrs. Adding enum typedefs for various properties and attributes. 2017-02-20 20:22:23 +01:00
Glenn Ruben Bakke 7c0195da6c nrf5/modules: Syncing uart module code after upmerge with upstream master. 2017-02-19 19:06:12 +01:00
Glenn Ruben Bakke f69c1acbbe Merge branch 'nrf52' into nrf5_no_sdk 2017-02-19 19:03:20 +01:00
Glenn Ruben Bakke 05ec4f64e2 Merge branch 'master' into nrf52 2017-02-19 19:02:29 +01:00