A library for easier setup and prototyping of IoT devices (pucks), by collecting everything that is common for all pucks in one place.

Dependencies:   BLE_API nRF51822

Dependents:   ir-puck display-puck ir-puck2 BLE_ScoringDevice ... more



Raspberry Pi took the maker community by storm when it launched in 2012. With its internet access it allowed small projects to be internet-of-things enabled. We have created a platform to take this one step further.

Our platform, called the Puck platform, is an internet of things platform for mbed. mbed makes it easy to program embedded hardware for people new to embedded systems. Our platform is built upon the first mbed chip with Bluetooth, the nRF51822 created by Nordic Semiconductor. We hope to create a community around these BLE devices where people contribute to the project, and share their designs with each other. Everything is open-source, of course, with lots of supporting materials.

We make it easy to rapidly prototype and develop Bluetooth LE enabled devices - get up and running in under 10 lines of code.

Tutorials and in-depth documentation is available at the project's GitHub page


We've developed a handful of awesome examples to demonstrate the platform. These examples are named 'Pucks'. By talking to the internet through your smartphone, the barrier to creating your own Internet of Things device is lower than ever.

Revisions of Puck.h

Revision Date Message Actions
25:5ac5f1d1a11e 2015-07-24 Update for latest nRF51822 repo. File  Diff  Annotate
23:21b5ecbc84ea 2015-03-09 Correctly advertise Bluetooth LE connectivity.; ; Now pucks are connectable in master control panel for android again :D File  Diff  Annotate
22:7d728fed55ab 2015-03-03 Add CharacteristicWriteCallback documentation File  Diff  Annotate
21:00a3567124e3 2015-03-03 Uncomment accidental commenting File  Diff  Annotate
20:29b0143f3af3 2015-03-03 Add setting of device name to puck init File  Diff  Annotate
18:4c95a470d778 2015-03-01 Merge documentation File  Diff  Annotate
17:23a05bd2fe2b 2014-08-01 More documentation. File  Diff  Annotate
16:fb8678ee25b0 2014-08-01 Document puck library. File  Diff  Annotate
15:bfc682889c15 2015-02-27 Update data write callbacks to use new BLE_API flow File  Diff  Annotate
14:9eda2d99fc1d 2015-02-23 Update Puck library to newest versions of BLE_API.h, mbed.h. File  Diff  Annotate
13:93d3574e9e36 2014-08-11 Upgrade to newest BLE_API and nRF library. File  Diff  Annotate
12:8a8cc109f048 2014-08-05 Add license File  Diff  Annotate
10:67e4694f2d74 2014-08-01 Merge 'Update display puck to use new lib' File  Diff  Annotate
9:ba0527c6b6d0 2014-07-29 Update display puck to use new puck lib File  Diff  Annotate
8:49ffd38fb401 2014-07-24 Add support for characteristic value updating from the mbed File  Diff  Annotate
7:c07c01c2a741 2014-07-24 Hoist logging out of Puck.h; ; There was a problem with multiple definitions of functions in Puck.h if; used in two different files. The logger has been moved out so that we; have independent loggers for each file, which can have different verbosity. File  Diff  Annotate
6:211ffef3b88e 2014-07-23 merge File  Diff  Annotate
5:2f2a2ac6b231 2014-07-23 return reference to ble instead of copy File  Diff  Annotate
4:91506772210d 2014-07-23 Fix memory issue File  Diff  Annotate
3:5432b38585ea 2014-07-23 Add ble handling File  Diff  Annotate