Commit Graph

384 Commits

Author SHA1 Message Date
Glenn Ruben Bakke
1da82b2aeb nrf5/modules: Updating ubluepy service. Creating empty characteristic list in constructor. Appending characteristic to the list when added. 2017-02-18 18:06:58 +01:00
Glenn Ruben Bakke
15d7353cb3 nrf5/modules: Changed return in ubluepy addService() function to return mp_const_none instead of boolean. 2017-02-18 17:59:10 +01:00
Glenn Ruben Bakke
63ed32ecaa nrf5/modules: Correcting tabbing in ubluepy periheral impl. 2017-02-18 17:57:59 +01:00
Glenn Ruben Bakke
577bf0724a nrf5/modules: Updating ubluepy peripheral. Creating empty service list in constructor. Appending services to the list when added. Added new function for retreiving the service list; getServices(). 2017-02-18 17:57:10 +01:00
Glenn Ruben Bakke
8ffd167d4b nrf5/modules: Adding new members in ubluepy peripheral and service object to keep track of child elements. Peripheral will have a list of services, and service will have a list of charactaristics. 2017-02-18 17:54:47 +01:00
Glenn Ruben Bakke
852dde6747 nrf5/modules: Removing connection handle from python gap event handler callback function. 2017-02-18 14:41:46 +01:00
Glenn Ruben Bakke
f800f22a79 nrf5/modules: Updating ubluepy example in the header file with new function call to add service to a peripheral instance. 2017-02-18 13:20:03 +01:00
Glenn Ruben Bakke
04f8891dc9 nrf5/modules: Updating peripheral class to assign periopheral parent pointer to service's thats added. Also added a hook in the bluetooth le event handler to store the connection handle value, to prevent any services or characteristics to handle this value themselves. 2017-02-18 13:17:31 +01:00
Glenn Ruben Bakke
f956947c23 nrf5/modules: Updating service object to clear pointer to parent peripheral instance. Also assinging pointer to the service when adding a new characteristic. 2017-02-18 13:15:08 +01:00
Glenn Ruben Bakke
f3d8fc830e nrf5/modules: Updating print to also include peripheral's connection handle. Setting pointer to service parent instance to NULL. 2017-02-18 13:11:39 +01:00
Glenn Ruben Bakke
f5324060cc nrf5/modules: Correcting event id numbers for connect and disconnect event in ubluepy_constants.py 2017-02-18 13:07:00 +01:00
Glenn Ruben Bakke
292c15bf1a nrf5/modules: Shuffle order of typedef in ubluepy header. Adding service pointer in characteristic object. Adding peripheral pointer to the service structure. When populated, the characteristic would get access to conn_handle and service handle through pointers. Also service would get access to peripheral instance. 2017-02-18 01:19:43 +01:00
Glenn Ruben Bakke
e0fc8b88c1 nrf5/modules: adding template functions for characteristic read and write. 2017-02-18 01:17:57 +01:00
Glenn Ruben Bakke
af2f32ed6a nrf5/modules: Adding constants class to ubluepy which will contain easy access to common bluetooth le numbers and definitions for the bluetooth stack. 2017-02-18 00:11:10 +01:00
Glenn Ruben Bakke
f0f6ad20b2 nrf5/modules: Updating example in ubluepy header with 16-bit uuid's commented out, to show usage. 2017-02-17 21:50:50 +01:00
Glenn Ruben Bakke
c81b606b01 nrf5/sdk: Adding support for adding 16-bit uuid's in advertisment packet. The services in paramter list can mix 16-bit and 128-bit. 2017-02-17 21:47:38 +01:00
Glenn Ruben Bakke
9befd776fa nrf5/sdk: Updating sdk_common.mk with new filename of bluetooth le driver. 2017-02-17 19:13:49 +01:00
Glenn Ruben Bakke
21f1d8c640 nrf5: Updating all includes of softdevice.h to ble_drv.h 2017-02-17 19:10:24 +01:00
Glenn Ruben Bakke
793cf991ad nrf5/sdk: renaming softdevice.* to ble_drv.* 2017-02-17 19:06:11 +01:00
Glenn Ruben Bakke
5f4c464f29 nrf5/sdk: Renaming bluetooth driver functions to have ble_drv* prefix. Updating modules using it. 2017-02-17 19:02:24 +01:00
Glenn Ruben Bakke
3ff245f667 nrf5/sdk: Enable ubluepy module if s110 bluetooth stack is enabled. 2017-02-17 18:11:22 +01:00
Glenn Ruben Bakke
86c900313c nrf5/sdk: Updating bluetooth driver to only set periph and central count if s132 bluetooth stack. These parameters does not exist in older stacks. 2017-02-17 18:09:23 +01:00
Glenn Ruben Bakke
bba8221aa2 nrf5/modules: Updating bluetooth driver and ubluepy to use explicit gap event handler. Adding connection handle parameter to the gap handler from ubluepy. Resetting advertisment flag if connection event is recieved, in order to allow for subsequent advertisment if disconnected again. Example in ublupy header updated. 2017-02-17 17:32:42 +01:00
Glenn Ruben Bakke
7ce31444a0 nrf5: Adding target to flash bluetooth stack when using pyocd-flashtool. 2017-02-16 23:18:07 +01:00
Glenn Ruben Bakke
2fd55feb0c nrf5/modules: Guarding callback to python event handler before issue the call in case it is not set. 2017-02-16 18:49:47 +01:00
Glenn Ruben Bakke
18365135f7 nrf5/modules: Updating ubluepy example to turn led2 on and off when receiving connected and disconnect bluetooth event. 2017-02-15 23:58:23 +01:00
Glenn Ruben Bakke
d88320b5b3 nrf5/sdk: Updating bluetooth driver to have configurable logs. 2017-02-15 23:57:23 +01:00
Glenn Ruben Bakke
832a7ffd14 nrf5/modules: updating ubluepy and bluetooth driver to support python created event handler. Added registration of callback from ubluepy against the bluetooth driver and dispatching of events to the user supplied python function. 2017-02-15 23:32:42 +01:00
Glenn Ruben Bakke
d29539a395 nrf5/modules: Splitting includes to be inside or outside of the compile guard in ubluepy. This way, all micropython specific includes will be outside, and internal will be inside. This way, there will not be any dependency towards ubluepy headers if not compiled in. 2017-02-15 19:33:11 +01:00
Glenn Ruben Bakke
db75b5535c nrf5/modules: Adding two new functions to ubluepy peripheral class to set specific handlers for notificaitons and connection related events. 2017-02-15 19:30:45 +01:00
Glenn Ruben Bakke
ec517a37f6 nrf5: Set ubluepy to disabled by default in mpconfigport.h if not configured. 2017-02-15 19:13:55 +01:00
Glenn Ruben Bakke
8d1b05563c nrf5/modules: Moving includes inside config defines to make non-ubluepy targets compile again. 2017-02-15 00:26:39 +01:00
Glenn Ruben Bakke
b493bfda64 nrf5/modules: Adding 'withDelegate' function to peripheral class. 2017-02-15 00:22:00 +01:00
Glenn Ruben Bakke
fd4e659da7 nrf5/modules: Adding ubluepy delegate type to modubluepy globals table. 2017-02-15 00:18:32 +01:00
Glenn Ruben Bakke
4f6e235c68 nrf5: Adding ubluepy_delegate.c to list of source files to compile. 2017-02-15 00:17:47 +01:00
Glenn Ruben Bakke
8b21ee762e nrf5/modules: Adding new object struct for delegate class and adding a delegate struct member to Peripheral class to bookeep callback object when event occurs. 2017-02-15 00:17:04 +01:00
Glenn Ruben Bakke
881e90f7b5 nrf5/modules: Adding template for ubluepy delegate class. 2017-02-15 00:15:48 +01:00
Glenn Ruben Bakke
66223b4285 nrf5/sdk: Fixing debug print in bluetooth driver to not use >>> prefix. Adding one more print for connection parameter update. 2017-02-14 20:18:53 +01:00
Glenn Ruben Bakke
44f701946b nrf5/sdk: Correcting advertisment packet in bluetooth driver in order to make the device connectable. 2017-02-13 17:06:13 +01:00
Glenn Ruben Bakke
a79c5ca7ab nrf5/sdk: Implementing simple event handler for bluetooth stack driver. 2017-02-13 00:18:47 +01:00
Glenn Ruben Bakke
7a43228a2d nrf5/sdk: Disable all sdk components from being included in the build while implementing ubluepy, overlap in IRQ handler symbol. 2017-02-13 00:16:45 +01:00
Glenn Ruben Bakke
c4b60e6cf8 nrf5/modules: Shortening down the device name to be advertised in the example to make it fit with a 128-bit complete UUID. 2017-02-12 23:05:32 +01:00
Glenn Ruben Bakke
e432ab4842 nrf5/modules: Bugfix in ubluepy_uuid_make_new. Used wrong buffer to register vendor specific uuid to the bluetooth stack. 2017-02-12 23:04:48 +01:00
Glenn Ruben Bakke
0a0ab8344e nrf5/sdk: Updating advertisment function in bluetooth le driver to add 128-bit complete service UUID provided in service list to the advertisment packet. 2017-02-12 23:03:55 +01:00
Glenn Ruben Bakke
2d58fc6625 nrf5/sdk: Updating advertisment funciton in bluetooth le driver to iterate through services passed in and calculate individiual uuid sizes. 2017-02-12 15:20:41 +01:00
Glenn Ruben Bakke
18aab4a6b9 nrf5/modules: Updating advertisment method in peripheral class to memset advertisment structure. Also applying service list if set to the advertisment structure. 2017-02-12 15:17:30 +01:00
Glenn Ruben Bakke
2d72fe8518 nrf5/modules: Updating ubluepy module header usage example. Correcting enum for UUID types to start index from 1. Expanding advertisment data structure to also include service list members. 2017-02-12 15:14:41 +01:00
Glenn Ruben Bakke
90523d6ae0 nrf5/sdk: Adding static boolean for keeping track of whether advertisment is in progress in the bluetooth driver. Now, advertisment can be restarted with new data any time. 2017-02-12 14:24:15 +01:00
Glenn Ruben Bakke
9d24742351 nrf5/modules: Updating ubluepy peripheral class to use mp_const_none instead of MP_OBJ_NULL for unset values in advertisment method parameter list. Adding extraction of the service list in the advertisment method. The list is not yet handled. 2017-02-12 14:23:13 +01:00
Glenn Ruben Bakke
ff9cefa6b2 nrf5/modules: Adding a few examples in the modubluepy.h to get easier copy paste when implementing. 2017-02-11 18:09:22 +01:00