Puck.js is a beacon that's very different in that it can be programmed via Javascript. The open source JavaScript interpreter Espruino is installed in the beacon that allows you to program what ends up in the advertising data based on the board’s NFC, temperature, battery level and MAG3110 magnetometer sensors. The red, green, blue leds, 8 0.1" pad GPIOs, 9 x SMD GPIOs and IR transmitter can also be controlled. Being advertising-data programmable it supports Eddystone, iBeacon or any other custom protocol you might wish to invent. As it's programmable you can send iBeacon followed by Eddystone or multiple advertising of the same type but different data.

The programming can be in Javascript or via a visual programming language in a web browser.

Another aspect of the beacon that’s different is that it can act as a Bluetooth master as well as slave. Most beacons are slaves in that things connect to them. The puck beacon can do the connecting and connect to other Bluetooth devices such as other Pucks. This might allow for mesh style networking or cause the beacon behaviour to change depending on the status of other Bluetooth devices in the vicinity.

Comes with silicone cover and case with tactile button and lanyard mount.

The hardware, software, libraries and documentation are all open source available on GitHub.

More Documentation

Getting Started

Puck.js and iBeacon

Puck.js and Eddystone

Beacons
Transmission iBeacon,Eddystone,any
Battery size CR2032
Number of batteries 1
Battery included yes
Size 36mm x 12.5mm (cased)
Weight 14g in case
Waterproofing no
Includes sticker no
Password to configure no
Buzzer no
Temperature sensor yes
Humidity sensor no
Button press yes
Chip nRF52832
Standby current 3uA
Working current 20uA
Transmit distance 80m
Android config app no
iOS config app no

Puck.js

  • Brand: Espruino
  • Product Code: Puck.js
  • Availability: 20
  • £31.80

  • Ex vat: £26.50

Tags: ibeacon, eddystone