Commit Graph

387 Commits

Author SHA1 Message Date
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
Glenn Ruben Bakke b65553e57f nrf5/sdk: Successful device name advertisment. Added flags to advertisment packet and enable device name byte copy into the advertisment data. 2017-02-11 18:02:22 +01:00
Glenn Ruben Bakke 3a68e40102 nrf5/modules: Turning ubluepy peripheral advertisment function into a keyword argument function so that it would be possible to set device name, service uuids, or manually constructed data payload. 2017-02-11 17:43:47 +01:00
Glenn Ruben Bakke 1a3ae62fd1 nrf5/sdk: Updating softdevice driver with function to set advertisment data and start advertisment. Does not apply device name yet. Work in progress. 2017-02-11 17:41:16 +01:00
Glenn Ruben Bakke 8cc0eb23d9 nrf5/modules: Adding new structure to ubluepy in order to pass advertisment data information to the bluetooth le stack. 2017-02-11 17:37:48 +01:00
Glenn Ruben Bakke d6b12b63d0 nrf5/modules: Adding function function to add characteristics to the ubluepy service. Enable function in service's local dict table. 2017-02-11 16:04:48 +01:00
Glenn Ruben Bakke c9aa561aad nrf5/modules: Adding function in bluetooth le driver to add characteristic to the bluetooth le stack. 2017-02-11 16:01:50 +01:00
Glenn Ruben Bakke a43f5cdd4e nrf5/modules: Adding more members to ublue characteristic object structure. 2017-02-11 16:00:43 +01:00
Glenn Ruben Bakke c580633598 nrf5/modules: Adding characteristic class to ubluepy globals table. 2017-02-11 14:35:00 +01:00
Glenn Ruben Bakke c127938103 nrf5/modules: Updating ubluepy characteristic implementation. 2017-02-11 14:21:05 +01:00
Glenn Ruben Bakke 7f26704e27 nrf5/modules: Re-arranging includes in ubluepy_service.c 2017-02-11 14:20:01 +01:00
Glenn Ruben Bakke 5f19113c94 nrf5/modules: Adding ubluepy charactaristic type struct. 2017-02-11 14:19:08 +01:00
Glenn Ruben Bakke fad456d18f nrf5/modules: Updating ubluepy with more implementation in UUID and Service. Adding function in bluetooth le driver which adds services to the bluetooth stack. Making service take UUID object and Service type (primary/secondary) as constructor parameter in Service class. 2017-02-10 21:09:03 +01:00
Glenn Ruben Bakke 3223026764 nrf5: Adding ubluepy to include path. 2017-02-10 21:03:30 +01:00
Glenn Ruben Bakke f549c8df43 nrf5/modules: Updating ubluepy UUID class constructor with some naive parsing of 128-bit UUIDs, and pass this to the softdevice driver for registration. 2017-02-10 00:02:35 +01:00
Glenn Ruben Bakke b93644221e nrf5/sdk: Adding new function to the softdevice handler driver to add vendor specific uuids and return an index to the entry back by reference. 2017-02-09 23:57:30 +01:00
Glenn Ruben Bakke 8a551e1354 nrf5/modules: Updating ubluepy UUID class with constructor that can construct an object based on hex value of 16-bit or string of 16-bit prefixed with '0x'. 2017-02-09 23:05:12 +01:00
Glenn Ruben Bakke ddc31d4084 nrf5/modules: Adding Peripheral, Service and UUID class to the ubluepy module globals table. 2017-02-08 18:49:29 +01:00
Glenn Ruben Bakke 0264f68698 nrf5/modules: Extending the implementation of Peripheral class in ubluepy. 2017-02-08 18:48:35 +01:00
Glenn Ruben Bakke 9057fe550b nrf5/modules: Extending the implementation of UUID class in ubluepy. 2017-02-08 18:47:33 +01:00
Glenn Ruben Bakke 323533c3d3 nrf5/sdk: Adding configuration to enable the ubluepy peripheral class when using softdevice 132 from the SDK. 2017-02-08 18:45:49 +01:00
Glenn Ruben Bakke 35a7aa1331 nrf5: Adding ubluepy module to builtins if bluetooth stack is selected. Disable NUS profile by default. Adding source for ubluepy module into makefile to be included in build. The source is only linked if MICROPY_PY_UBLUEPY is set. 2017-02-08 00:05:37 +01:00
Glenn Ruben Bakke 0f609cd799 nrf5: Aligning code after upmerge with master. Mostly FAT FS related updates. Not tested after merge. 2017-02-07 23:30:54 +01:00
Glenn Ruben Bakke 723943abde nrf5/modules: Adding new and print function to ubluepy peripheral class. Template functions only. 2017-02-07 22:17:55 +01:00
Glenn Ruben Bakke b6779fa95a nrf5/modules: Adding ubluepy UUID class template. 2017-02-06 20:51:24 +01:00
Glenn Ruben Bakke ef5228ae57 nrf5/modules: Adding ubluepy characteristic class template. 2017-02-06 20:48:01 +01:00
Glenn Ruben Bakke 4cda1b37fd nrf5/modules: Adding missing #endif. Also adding to property templates to the lolcal dict. 2017-02-06 20:41:42 +01:00
Glenn Ruben Bakke c2fb8bf9c2 nrf5/modules: Adding ubluepy service class template. 2017-02-06 20:36:36 +01:00
Glenn Ruben Bakke 3cd518af3a nrf5/modules: Updating ubluepy with class function placeholders. 2017-02-06 20:19:06 +01:00
Glenn Ruben Bakke 73d00c98a0 nrf5/modules: Renaming ble module folder to ubluepy. 2017-02-05 21:10:44 +01:00
Glenn Ruben Bakke 21c4e4633b nrf5/modules: Adding new template file for ubluepy Peripheral class. 2017-02-05 21:10:06 +01:00
Glenn Ruben Bakke 2b1ceadfab nrf5/pyb: Moving pyb module into modules/pyb. 2017-02-05 20:30:58 +01:00
Glenn Ruben Bakke 2ad9426917 nrf5/utime: Moving utime module into modules/utime. 2017-02-05 20:28:26 +01:00
Glenn Ruben Bakke 65fb0c9829 nrf5/uos: Moving uos module into modules/uos. 2017-02-05 20:25:27 +01:00
Glenn Ruben Bakke 0983f43ae1 nrf5/network: Moving network module into modules/network. Adding include path to network as its needed by the usocket module. 2017-02-05 20:19:52 +01:00
Glenn Ruben Bakke 9fcef29dfa nrf5/usocket: Moving usocket module into modules/usocket. 2017-02-05 20:15:50 +01:00
Glenn Ruben Bakke 3c71e75461 nrf5/led: Moving led module into modules/machine. 2017-02-05 20:06:24 +01:00
Glenn Ruben Bakke 42e9b0f735 nrf5/led: Moving led module into modules/machine. 2017-02-05 20:06:06 +01:00
Glenn Ruben Bakke 8601963291 nrf5/pwm: Moving pwm module into modules/machine. 2017-02-05 20:03:52 +01:00
Glenn Ruben Bakke a7103ef551 nrf5/rtc: Moving rtc module into modules/machine. 2017-02-05 20:01:15 +01:00
Glenn Ruben Bakke 9295f2df29 nrf5/timer: Moving timer module into modules/machine. 2017-02-05 19:59:34 +01:00
Glenn Ruben Bakke 93eb533579 nrf5/pin: Moving pin module into modules/machine. 2017-02-05 19:56:24 +01:00
Glenn Ruben Bakke 616d76cb7a nrf5/adc: Moving adc module into modules/machine. 2017-02-05 16:17:12 +01:00
Glenn Ruben Bakke eea975cd25 nrf5/i2c: Moving i2c module into modules/machine. 2017-02-05 00:05:20 +01:00
Glenn Ruben Bakke ab1994b2b2 nrf5/spi: Moving spi module into modules/machine. 2017-02-05 00:03:49 +01:00
Glenn Ruben Bakke cb2d040726 nrf5/uart: Moving uart module into modules/machine to start converting it into machine module and not pyb. 2017-02-05 00:00:42 +01:00
Glenn Ruben Bakke 8c404909e1 nrf5/machine: Moving modmachine into modules/machine folder. Updating Makefile. 2017-02-04 23:56:42 +01:00
Glenn Ruben Bakke ab21a6a915 nrf5/drivers: Renaming folder to modules. 2017-02-04 23:51:11 +01:00
Glenn Ruben Bakke e68681804e nrf5: Renaming python modules folder to freeze to give the folder its right meaning. The scripts put into this folder will be frozen. 2017-02-04 23:46:29 +01:00
Glenn Ruben Bakke 357b21ae72 nrf5/drivers: Adding template for ubluepy module. 2017-02-04 19:32:40 +01:00
Glenn Ruben Bakke f8a71311ed nrf5/sdk: Adding compilation config whether to include BLE NUS implementation. Config found in sdk/nrf5_sdk_conf.h. NUS enabled for s132 targets by default. 2017-02-04 16:24:50 +01:00
Glenn Ruben Bakke b6d54cbcaf nrf5: Fallback to HW UART when not Bluetooth LE UART has been enabled. 2017-02-04 16:15:49 +01:00
Glenn Ruben Bakke e9e98e777d nrf5: Updating main.c to use MICROPY_PY_BLE_NUS as switch for regular uart initialization or bluetooth le uart initialization. 2017-02-04 16:08:42 +01:00
Glenn Ruben Bakke 918617d1eb nrf5/sdk: Adding work-in-progress script to connect to bluetooth le REPL using bluepy python module in linux. 2017-02-04 01:12:30 +01:00
Glenn Ruben Bakke 4ddc213d7f nrf5/boards: Updating board makefiles for s132 and s1xx target for pca10040 (nrf52832) by adding sub variant and device define to the makefiles. 2017-02-03 19:28:16 +01:00
Glenn Ruben Bakke 5ae960947c nrf5/examples: Updating ssd1306.py example with a comment describing proceedure on how to use the I2C variant of the driver. 2017-02-02 23:50:43 +01:00
Glenn Ruben Bakke e8b4a97d7d nrf5/hal: Line wrapping params in hal_spi.c to make it easier to read. 2017-02-02 23:47:30 +01:00
Glenn Ruben Bakke cd096f604e nrf5/hal: Updating hal_twi.c tx implementation to a working state. STARTTX only issued once, before looping bytes. 2017-02-02 23:45:44 +01:00
Glenn Ruben Bakke 2517ce48f8 nrf5/examples: Updating ssd1306.py driver to work with i2c master write implementation. 2017-02-02 23:43:52 +01:00
Glenn Ruben Bakke c7162720c1 nrf5/hal: Updating hal_twi.c with tx function. Gets multiple startup bytes for each clocked byte. 2017-02-02 22:55:25 +01:00
Glenn Ruben Bakke fed06e278b nrf5/hal: Updating hal_twi.c with tx function which partly works. Bytes are clocked out a bit out of order. 2017-02-02 20:51:43 +01:00
Glenn Ruben Bakke 0629abac53 nrf5/hal: Started implementation of hal_twi.c (non-DMA). Init function started. 2017-02-02 20:03:50 +01:00
Glenn Ruben Bakke 70d64e2892 nrf5: Removing hal_twie.c from being compiled in. 2017-02-02 19:37:29 +01:00
Glenn Ruben Bakke 5e9e48e9e3 nrf5: Renaming configuration define in board configs using i2c from MICROPY_PY_MACHINE_HW_I2C to MICROPY_PY_MACHINE_I2C as the config is overlapping with the latter. 2017-02-02 18:43:12 +01:00
Glenn Ruben Bakke 4cbdbc9a4b nrf5: Renaming configuration define in board configs using i2c from MICROPY_PY_MACHINE_HW_I2C to MICROPY_PY_MACHINE_I2C as the config is overlapping with the latter. 2017-02-02 18:41:44 +01:00
Glenn Ruben Bakke 14d4a8def8 nrf5: Making i2c configurable from board configuration in case board has to sacrifice the i2c machine module. 2017-02-02 18:33:03 +01:00
Glenn Ruben Bakke 0066f226aa nrf5/boards: Activating all display drivers in pca10056 board. 2017-02-02 18:29:51 +01:00
Glenn Ruben Bakke 44daeb7d94 nrf5/boards: Updating s110 SD linker script for micro:bit. 2017-02-02 18:08:28 +01:00
Glenn Ruben Bakke 9e6acda85c nrf5/i2c: Making use of hal twi tx function in writeto function. 2017-01-31 22:48:07 +01:00
Glenn Ruben Bakke 4b38644531 nrf5/hal: Updating twi driver with template functions. 2017-01-31 22:46:04 +01:00
Glenn Ruben Bakke 4a568ec1ed nrf5/hal: Updating TWI DMA implementation. Suspend not working on tx. Rx not implemented yet. 2017-01-31 22:36:47 +01:00
Glenn Ruben Bakke 5004a6f811 nrf5/hal: Updating twi master tx with stop parameter. 2017-01-30 23:05:27 +01:00
Glenn Ruben Bakke ed976e07fe nrf5/hal: Adding i2c master functions for tx and rx in hal header. 2017-01-30 21:32:20 +01:00
Glenn Ruben Bakke 8ffe804c24 nrf5/hal: Adding new macros functions to mphalport.h which are used by extmod i2c machine module. 2017-01-30 00:32:19 +01:00
Glenn Ruben Bakke 61c026e51f nrf5/i2c: Adopting use of extmod/machine_i2c module as base for port's machine i2c module. 2017-01-30 00:31:00 +01:00
Glenn Ruben Bakke bb9cd36314 nrf5/i2c: Backing up before trying out extmod i2c integration. 2017-01-29 17:53:01 +01:00
Glenn Ruben Bakke fec5c75068 nrf5: Adding i2c class to machine module globals table. 2017-01-29 16:41:18 +01:00
Glenn Ruben Bakke bfc67dd99c nrf5: Updating main.c to initialize the i2c machine module if selected. 2017-01-29 16:38:48 +01:00
Glenn Ruben Bakke f529aa9e67 nrf5/i2c: Updating i2c machine module with new constructor parameters to set scl and sda pins. Also updating print funciton to debug pin number and port number for the gpio set. 2017-01-29 16:38:13 +01:00
Glenn Ruben Bakke 1421ca4adc nrf5/i2c: Updating i2c module to new new hal api, as master is initialized with its own init function. 2017-01-28 23:46:31 +01:00
Glenn Ruben Bakke 97a3fd4f3a nrf5/hal: Adding members to TWI config struct, device address and scl/sda pin. Renaming and adding function such that twi slave and master has seperate init function. Started implementation of master init function for nrf52 using DMA (hal_twie.c). 2017-01-28 23:45:30 +01:00
Glenn Ruben Bakke 9787c4af7b nrf5/i2c: Updating module to use new struct layout from hal_twi.h 2017-01-28 22:55:35 +01:00
Glenn Ruben Bakke 1c778f020f nrf5/hal: Updating TWI with frequency enums. 2017-01-28 22:54:44 +01:00
Glenn Ruben Bakke 726fe1aa27 nrf5/examples: Updating game file to use ssd1305 display driver. 2017-01-26 23:37:19 +01:00
Glenn Ruben Bakke d37d799204 nrf5/drivers: Updating examples in comment in oled ssd1305 object to use the draw module. 2017-01-26 22:56:30 +01:00
Glenn Ruben Bakke 87e7ab8862 nrf5/hal: Fixing nrf51 SPI pin configuration to use pin member of struct. 2017-01-26 22:31:23 +01:00
Glenn Ruben Bakke 9009ad67b0 nrf5/boards: Updating boards to comply to new style of configuring pins for uart and spi. 2017-01-26 22:29:58 +01:00
Glenn Ruben Bakke 6387490e4a nrf5/boards: Updating board configuration for pca10056 (nrf52840) with new pin configuration scheme for SPI and UART. 2017-01-26 22:15:35 +01:00
Glenn Ruben Bakke 0b0cb19608 nrf5/hal: Updating hal QSPI header with define guard to filter out usage of undefined structures and names when compiling against non-52840 targets. 2017-01-26 22:10:36 +01:00
Glenn Ruben Bakke b4d53ad560 nrf5/drivers: Updating display objects to use new SPI pin configuration in print function. 2017-01-26 22:08:39 +01:00
Glenn Ruben Bakke 0254cab228 nrf5/hal: Updating SPI DMA variant with more frequencies, and allowing rx and tx buffers to be NULL. 2017-01-26 22:01:43 +01:00
Glenn Ruben Bakke 632afd1fa8 nrf5/uart: Updating uart module to use new config hal config structure members for pins. Changing board config provided pins to use const pointers from generated pins instead of pin name. 2017-01-26 21:59:37 +01:00
Glenn Ruben Bakke d87d0141b3 nrf5/hal: Updating uart hal to use pointers to Pin objects instead of uint pin and port number. 2017-01-26 21:58:12 +01:00
Glenn Ruben Bakke 3c6c6c6d05 nrf5/hal: Updating uart hal to use pointers to Pin objects instead of uint pin and port number. 2017-01-26 21:57:38 +01:00
Glenn Ruben Bakke afcf07ca76 nrf5: Updating modmachine to add SPI in globals dict when MICROPY_PY_MACHINE_HW_SPI define is set. This diverge from regular MICROPY_PY_MACHINE_SPI config. Fixes missing SPI in the machine module after renaming port SPI enable define. 2017-01-26 21:31:24 +01:00
Glenn Ruben Bakke f94836ef74 nrf5: Updating main.c to enable SPI if MICROPY_PY_MACHINE_HW_SPI is set. This diverge from regular MICROPY_PY_MACHINE_SPI config. Fixing missing init of SPI after renaming port SPI enable define. 2017-01-26 21:29:24 +01:00
Glenn Ruben Bakke 8653ac9ef8 nrf5/spi: Adding multiple instances of machine SPI depending on which chip is targeted (nrf51/nrf52832/nrf52540). Updating board config requirement to give variable name of const pointer to Pin instead of a Pin name. Adding support of giving keyword set mosi/miso/clk pin through constructor. 2017-01-26 21:27:59 +01:00
Glenn Ruben Bakke 437f3d2477 nrf5/hal: Updating SPI hal with full list of SPI interfaces as lookup tables for all devices. Updating init struct to pass Pin instance pointers instead of uint pin number and ports. 2017-01-26 21:24:31 +01:00