AI agents & screen readers: for a machine-readable, text-only catalogue, start at /llms.txt. Products are available as Markdown (/products.md, /products/{handle}.md) and JSON (/products.json, /products/{handle}.json).
Store

Adafruit

$100.35 |
In stock
No reviews yet

The Espruino Puck.js is a low energy Bluetooth smart button that can be programmed and debugged wirelessly with JavaScript. It is both multi-funct...

Stock availability

Ready to ship from Sydney
1 in stock
Available with leadtime
100 available
Estimated Delivery
Arrives
Disclaimer
View Markdown
Secure checkout

The Espruino Puck.js is a low energy Bluetooth smart button that can be programmed and debugged wirelessly with JavaScript. It is both multi-functional and easy to use, with a custom circuit board, the latest Nordic chip, Bluetooth LE, NFC, magnetometer, temperature sensor, RGB LEDs, infrared and much more, all enclosed in a tiny silicone case. You get all the joy of an interpreted language, with some great sensors and wireless functionality!

Puck.js comes with the Open Source JavaScript interpreter Espruino pre-installed, which makes it incredibly easy to use and means you can get started in just seconds, without any prior programming experience. You can start programming straight out of the box - no wires or software required!

Features:

  • Espruino JavaScript interpreter pre-installed
  • nRF52832 SoC - Cortex M4, 64kB RAM, 512kB Flash
  • 8 x 0.1" GPIO (capable of PWM, SPI, I2C, UART, Analog Input)
  • 9 x SMD GPIO (capable of PWM, SPI, I2C, UART)
  • ABS plastic rear case with lanyard mount
  • Silicone cover with tactile button
  • MAG3110 Magnetometer
  • IR Transmitter
  • Built in thermometer, light and battery level sensors
  • Red, Green and Blue LEDs
  • NFC tag programmable from JavaScript
  • Pin capable of capacitive sensing
  • Includes x1 Lithium Coin Cell 3V Battery

Note: Do not re-fit the PCB upside-down or force it into the case. If positioned correctly it should slide in. Forcing the PCB or fitting it upside-down could damage the aerial which will stop your Puck's Bluetooth from working correctly.

The Espruino family interacts well with our NeoPixels. For more info, check out Espruino's page on the WS2811 and WS2812.

While the main advantage of the Espruino is its instant execution, it can also be used as a traditional board through a Web-based IDE hosted on your computer. The microcontroller also uses less power than Linux Boards (although its of course a lot less powerful as well) so will run longer on battery power. Simply take the Puck out of its packaging and get started! There's also much more info on the Espruino Puck.js page including tutorials, code examples, manuals, datasheets, and more!

For other great embedded Javascript development boards from Espruino, check out the classic Espruino and the little Espruino Pico.

 

Jargon buster

Plain-language definitions for the technical terms used above.

capacitive sensing
Capacitive sensing detects changes in electrical capacitance caused by a nearby object or material, such as a finger, water, or moisture in soil. It is used for touch buttons, proximity detection, and liquid or moisture-level sensing, and it matters because it can work without exposed metal contacts, avoiding the corrosion that bare probes suffer in damp conditions.
GPIO
General-purpose input/output pins are microcontroller pins you can set in software to read signals, switch devices on and off, or connect to peripherals. The number of GPIO pins matters because it limits how many buttons, LEDs, sensors, and other parts you can wire directly to the board.
I2C
I2C is a two-wire communication bus used by many sensors and small modules. It matters because several I2C devices can share the same two wires, but each device needs a compatible address and your controller must support I2C.
IDE
Short for Integrated Development Environment, a program used to write, run and manage code. It matters because some learners prefer a traditional coding workspace instead of a guided notebook-style lesson.
magnetometer
A sensor that measures magnetic fields, often used to work out compass direction. It matters because nearby magnets, motors, or metal objects can affect readings and may require calibration.
microcontroller
A microcontroller is a small computer on a single chip that runs a stored program and controls connected inputs and outputs such as buttons, sensors, displays and communication interfaces. In a device built around one, it is the part that executes the code and coordinates the device's behaviour.
PCB
A printed circuit board (PCB) is a board, usually rigid, with etched copper tracks that connect electronic components together without loose wiring. Components are mounted on the board and signals route between them through the copper layout.
PWM
Pulse Width Modulation is a way for a digital pin to simulate variable output power by switching on and off very quickly. It matters for controlling things like LED brightness, motor speed, or servo-style signals from a microcontroller pin.
RAM
RAM (random-access memory) is fast, temporary memory a device uses for working data while it is running; in its common volatile form, its contents are lost when power is removed. Some devices offer a mode that applies settings to RAM only, which is handy for testing changes temporarily because they are not stored permanently and disappear at power-off.
RGB
Short for red, green and blue, the three primary colours of light that are mixed in varying amounts to make a wide range of colours. In electronics RGB can refer to an LED or pixel that blends these three colours, or to a colour signal or interface that carries separate red, green and blue channels.
SMD
SMD means surface-mount device, a component style designed to be soldered directly onto the surface of a circuit board rather than through holes. SMD parts are compact and mounted flat on the board, which suits smaller and mass-produced designs.
SPI
A fast serial communication bus often used for displays, memory cards, and sensors. It matters because SPI devices need specific pins for clock and data, plus a separate chip-select line for each device.
UART
UART is a simple asynchronous serial interface that sends data over separate transmit and receive wires, usually labelled TX and RX, with both ends set to the same baud rate. It is a common way for microcontrollers and other serial devices to exchange data.

Related Tutorials

Free guides on learn.littlebird.com.au

Stella
Stella Expert

Ask me anything about this product

Maddy, co-founder of Little Bird

Need help? We're here for you!

Hi, I'm Maddy. My team and I are ready to help with your order or any questions.