Puck.js - Hardware Button

Ok this looks like fun -Puck.js

A BLE programmable (using Javascript) button - there are some example tutorials to give some ideas as well.

Personally I am going to add a button to the exercise bike to remotely change the page on the Kindle app on the IPad as its a pain to reach forward to change the page. Just tested the keyboard on the app and it seems the arrow keys navigate forward and back and it supports Bluetooth LE HID

Might get one for my nephew as it looks like a good gateway to programming, nothing beats having something physical happen when your program works!