Commit graph

173 commits

Author SHA1 Message Date
Michal Moskal 11c99d0b84 Make the reference count always odd to make it possible to distinguish it from a vtable 2015-10-25 08:30:05 -07:00
Michal Moskal 5df59c2f7e Remove VirtualRefCounted class; non-virtual <-> virtual casts are not no-ops. 2015-10-24 21:52:51 -07:00
Michal Moskal 4f82a6c37c Use RefCounted also for MicroBitImage. 2015-10-24 20:58:03 -07:00
Michal Moskal 9330b401d5 Move RefCounted class to a separate file 2015-10-24 20:30:15 -07:00
Michal Moskal 5a10bda561 First stab at more memory efficient strings 2015-10-24 19:34:04 -07:00
Michal Moskal 057158c9f3 Cache getSerial(); otherwise BLE information device initalization may crash 2015-10-24 19:28:36 -07:00
bluetooth-mdw 8924cab6da Merge branch 'master' of https://github.com/lancaster-university/microbit-dal 2015-10-23 13:12:13 +01:00
bluetooth-mdw 4b6cd6ed52 Corrected "Status of...." section prior to publication. 2015-10-23 13:11:51 +01:00
Joe Finney 03214f9a0c version v1.2.4 2015-10-21 11:45:11 +01:00
Joe Finney ad398033ba Merge branch 'bluezone-fix' 2015-10-21 11:39:34 +01:00
Joe Finney bfe1b4db53 microbit: some work on tightening the API return codes.
still work in progress.
2015-10-21 11:35:59 +01:00
bluetooth-mdw 6cc19fd6e8 Added Pin AD Configuration values to description of the characteristic. 2015-10-20 11:39:41 +01:00
bluetooth-mdw 01ec1bb159 All services except Generic Access and Generic Attribute designated "optional" to allow subset profiles to be assembled easily. 2015-10-20 10:15:25 +01:00
bluetooth-mdw 523800935f Updated following final(?) profile adjustments 2015-10-19 17:39:03 +01:00
bluetooth-mdw eba76ecae4 Documented new mapping of LED matrix state data to display rows and LEDs 2015-10-19 17:29:26 +01:00
Joe Finney 613f524bab microbit: BUGFIX: micro:bit not entering BLUEZONE mode cleanly
Fixed bug in GAP advertisement configuration.
2015-10-19 14:42:13 +01:00
bluetooth-mdw 4e90c4a273 Documented supported values of Accelerometer Period and Magnetometer Period 2015-10-19 12:35:17 +01:00
Joe Finney 72e5a9a6a6 microbit: BUGFIX - post merge fixes
- MicroBitDisplay::scroll() timing bug
  - MicroBitDisplay::print() timing bug
  - MicroBitFiber wait/notify bug
2015-10-18 19:09:54 +01:00
Joe Finney 424b825185 Merge branch 'master' into simplified-eventing
Conflicts:
	inc/MicroBitMessageBus.h
2015-10-18 18:20:03 +01:00
Joe Finney 7fb3fc02c4 version v1.2.3 2015-10-18 17:59:26 +01:00
Joe Finney e3f0c7d6e5 Merge branch 'ble-profile' 2015-10-18 17:57:47 +01:00
Joe Finney 80f79f7faf Merge branch 'master' into ble-profile
Conflicts:
	source/CMakeLists.txt
	source/MicroBit.cpp
	source/MicroBitFiber.cpp
	source/MicroBitMessageBus.cpp
	source/MicroBitSuperMain.cpp
2015-10-18 17:54:37 +01:00
Joe Finney 464cf6cb51 Merge branch 'ble-profile' of https://github.com/lancaster-university/microbit-dal into ble-profile 2015-10-18 14:55:17 +01:00
Joe Finney db3eccf6ff microbit: Final updates to BLE profile
Minor changes to BLE profile services (cleanup prior to merge with master branch):

  - Added temperature period characteristic to match design pattern of other sensors.
  - Updated endinaness of MicroBitLEDService Matrix to be more intuitive.
  - Cleaned up Microbit.cpp by removing unused reference to BLE services.
  - Exposed serial number and naming information thr BLE DeviceInformation and API.
  - Updated BLE advertisement period to be alightly more repsonsive (200ms vs 1000ms).
  - BUGFIX: micro:bit name is now always generated, regardless of BLE services.
  - BUGFIX: Scroll Period data length.
2015-10-18 14:46:42 +01:00
Joe Finney aca544677e microbit: Updates to enable queing of display animation calls
Updates to change the behaviour of the scroll/print/animate faily of function away
from being pre-emtive and instead prroviding queing behaviour.

Minor updates to provide complete sets of async equivalent operations

Updates to the scheduler to provide wait/notify/waitone semantics.
2015-10-17 20:35:16 +01:00
bluetooth-mdw 4fd6052720 Changed LED Matrix State representation (1 octet per LED row) and added Temperature Period characteristic. 2015-10-17 19:27:04 +01:00
Joe Finney 85b2b1e09e version v1.2.2 2015-10-14 09:43:57 +01:00
Joe Finney ac5685acb2 Merge branch 'dpgeorge-matrix-point-optimisation' 2015-10-14 09:41:52 +01:00
Joe Finney 068822ff12 Merge branch 'matrix-point-optimisation' of https://github.com/dpgeorge/microbit-dal into dpgeorge-matrix-point-optimisation 2015-10-14 09:38:13 +01:00
bluetooth-mdw c1acdfdb5b Final tweaks after successful profile testing 2015-10-11 08:48:18 +01:00
Joe Finney 2011886e64 microbot: Cleanup of #ifdef in MicroBitHeapAllocator
Removed compiler warning if MICROBIT_HEAP_REUSE_SD is not defined.
2015-10-09 16:58:10 +01:00
bluetooth-mdw 8ef6dba587 Removed redundant issue tracker file. Now using github Issues to track... issues. 2015-10-09 14:45:53 +01:00
bluetooth-mdw 9cdd69b937 Merge branch 'ble-profile' of https://github.com/lancaster-university/microbit-dal into ble-profile 2015-10-09 13:37:08 +01:00
bluetooth-mdw e838ef1075 Updated with latest position wrt testing 2015-10-09 13:36:42 +01:00
Joe Finney 6764c732ea microbit: BUGFIX to MicroBtDFU Service
- Updates to UI handling to avoid starving out the processor.
  - Clears screen before entering DFU bootloader
2015-10-09 01:14:36 +01:00
Joe Finney 122d885ee8 microbit: Updated Bluetooth device name from MicroBit to micro:bit to match brand guidelines 2015-10-09 00:03:01 +01:00
Joe Finney ce2cc57bf1 microbit: Optimisation of internal Message Bus listeners
All message bus listeners with the micro:bit runtie are non blocking, and safe to be called
in an interrupt context. As such, these have now all been declared MESSAGE_BUS_LISTENER_IMMEDIATE
which should mitigate all unbounded event queueing effects.
2015-10-08 23:49:14 +01:00
Joe Finney d4b4f70cb2 Merge branch 'ble-profile' of https://github.com/lancaster-university/microbit-dal into ble-profile 2015-10-08 23:25:34 +01:00
Joe Finney 1d76def8fa microbit: BLE service bugfixes
Updates to BLE interface to match specification following testing by Bluetooth SIG.

Accelerometer Period: now supports READ and WRITE
Magnetometer Period: now supports READ and WRITE
LED Matrix State: now supports READ and WRITE.

UUIDs of Temperature Service characteristic corrected.
2015-10-08 23:23:00 +01:00
Joe Finney 85a26dc8e1 microbit: Updates to enable semantic versioning of the micro:bit runtime DAL
More specifically, the build system now uses the semantic versioning meta-data
held in module.json to define a major.minor.patch version. Additionally, is the branch
being compiled is *not* the master branch, the version is appended with <branchname><githash>.

Specific updates:

- Updates to CMake files to expose this to the micro:bit runtime code.
- Addition of uBit.systemVersion() to expose this to application code.
- Displaying of version string over serial if MICROBIT_DBG is enabled.
- Distribution of version string over BLE via the firmware revision characteristic.
2015-10-08 14:37:35 +01:00
bluetooth-mdw e79903e464 Tweaked following failed test 2015-10-06 10:26:21 +01:00
bluetooth-mdw 6d9e64fbc6 Minor tweaks to resolve failed tests 2015-10-05 21:08:45 +01:00
bluetooth-mdw 3bb76f6089 Changed event service UUIDs to match code 2015-10-04 16:45:36 +01:00
bluetooth-mdw 9a415f62cb Device Information Service characteristics had wrong UUID (BDS issue) 2015-10-04 16:09:47 +01:00
bluetooth-mdw a0bcf7912f UUID for Generic Access Service was incorrect (BDS issue). Corrected. 2015-10-04 15:56:04 +01:00
Joe Finney 2230e39340 microbit: BUGFIX: #1291 ManagedString(INT_MIN) does not work properly
Corner case error in serialization code for INT_MIN only - corrected.
2015-09-29 23:51:20 +01:00
bluetooth-mdw 7459213d10 Merge branch 'ble-profile' of https://github.com/lancaster-university/microbit-dal into ble-profile 2015-09-29 11:14:18 +01:00
bluetooth-mdw 3f4a7cf5f1 Removed redundant HTML files 2015-09-29 11:13:59 +01:00
bluetooth-mdw 393cb25bc0 Updated Profile Design section 2015-09-29 11:12:37 +01:00
Joe Finney 5da263db81 Merge branch 'ble-profile' of https://github.com/lancaster-university/microbit-dal into ble-profile 2015-09-28 21:58:37 +01:00