Project Description

Control Electronics quickly and easily with a USB key that runs JavaScript

What is Espruino Pico?

It’s a tiny microcontroller board that runs JavaScript, making it easier than ever to control electronics in the real world.

Espruino Pico has everything you need pre-installed. It can be used from virtually any device with a USB port so you can get started in seconds.

Why is it special?

This is the first time you’ve been able to get a scripting language in such a small package, and it opens a whole world of possibilities. Rather than just writing code, deploying it to a board and hoping it works, you can now interact with the hardware directly – querying and changing voltage levels and interacting with external components until you get everything just as you want it.

This is all made possible by the Espruino firmware, which is so compact that it can fit inside a single chip – reducing power consumption, cost, and size. An Espruino Pico board can run for over 10 years on a single AA-sized 3v lithium cell!

What’s it like to use?

Check out the video below – you can be writing your first code in just a minute or two!

But I don’t know electronics!

No problem! Digital Electronics isn’t like Analog Electronics. There are no high voltages, no complex calculations, and no scary arrangements of components.

Most modern digital components need just a few wires to work, which can be connected straight to the Espruino Pico. We’ve documented all the common components – with instructions on how to wire them up and the software you need to use them – it’s almost as easy as Lego!

What can I use it for?

Anything and everything! Have a look at the video below to see just how easy it is to make things with Espruino Pico:

Why JavaScript?

Every day JavaScript is used by hundreds of millions of people. Almost every website you visit needs it. It’s well known, but also very easy to learn. There are loads of tutorials online, and it’s available for almost every platform.

It also contains built-in support for Strings, Objects, Maps, Dynamic Arrays and Garbage Collection – making it much easier for you to develop complex applications quickly.

The event-based nature of JavaScript code is also perfectly suited to embedded systems. It allows the Espruino firmware to puts parts of the CPU to sleep when they’re not needed – producing power savings that would take weeks of work to achieve using other systems.

Why use a Scripting Language?

Virtually all microcontroller boards use compiled code, which means that the text you write has to be converted to special binary code before it can be run by the microcontroller. Espruino Pico doesn’t do this – it executes JavaScript on-board.

This means:
  • You don’t need to install complicated tools on your computer – everything you need is inside the Espruino Pico
  • Changes take effect instantly, letting you iterate quickly to get the finished product that you want
  • The interpreter provides a lot of built-in functionality, so for simple tasks you need to write a lot less code to get the job done
  • It’s much easier to debug, as you can inspect and change variables while your code is running
  • If you run into problems with your hardware, you can write JavaScript to debug it – turning the Espruino board into a voltmeter, logic analyser, protocol analyser, and oscilloscope all at once!
  • You can send any JavaScript command to Espruino Pico, and it will execute it straight away – making it a great way to control electronics from your computer
  • If you come back to a project a year after you made it, the chip will still contain your source code so you can easily tweak it (you can always obfuscate your code if you’re rather hide it)

Internet of Things

Everyone’s excited about the Internet of Things right now, for good reason. There’s one big problem though – fragmentation. There are a huge amount of wireless networking standards, and they don’t generally work together.
Some companies are trying to solve this with ‘hubs’ that support several different networking standards, however very little innovation is happening for wireless devices themselves.

Espruino Pico is different. Instead of picking a radio standard, it is flexible. Using third party modules you can already interface to Ethernet, WiFi, NRF24, Bluetooth, BLE and 315/433Mhz already, and more support will be added in the future (and can be by the community).

If you develop your IoT device with Espruino, you won’t be tied to a wireless communication standard that may become obsolete.

Pins or no Pins?


We’re offering the Espruino Pico board in two forms – one with Pins soldered on and one without.

If you’re not happy soldering and just want to use Espruino Pico with breadboard then we’d suggest getting Espruino Pico with pins.

However if you’re a bit more confident you can save some money and get the Espruino Pico without pins. You can then choose whether you install pins or sockets, or whether you want to take advantage of how thin the bare Espruino Pico board is!

Starter Kit


We listened after our last KickStarter and this time we’re giving a no-solder starter kit as a reward – so you can just plug things together and get started right away! We’ll also be providing a special online getting started guide.

With this kit you’ll be able to receive and transmit infra-red signals, log and display temperature, create different coloured patterns of light, and much more!

This contents of this kit aren’t 100% final, but we’ll make sure it’s a fun way to get started with electronics!

Geek’s Toy Kit


The Geek’s toy kit is a fun set of parts that you can use to create projects. We’re assuming that you are happy soldering a few wires together for this, and that you have a few basics such as wire and solder.

This contents of this kit aren’t 100% final, but it will contain 3 Espruino Pico boards, an LCD, servo, relay module, and enough different sensors for a great selection of projects.

Ultimate Toy Kit

This kit will include 10 Espruino Pico boards (2 with pins), all the stuff from the Starter and Geek’s Toy Kits above, as well as at least:

  • ESP8266 WiFi
  • WIZnet WIZ550io Ethernet module

So there will be plenty of ways for you to get started without soldering, but a few of the more complex parts will still need you to solder them.

As with the other kits, the contents aren’t 100% final but I’ll be making sure there’s a great selection of parts, all of which are documented and have at least one tutorial on the Espruino website.



This layout isn’t final, but the specifications are currently:

  • 32mm x 15mm (1.26 x 0.6 inch)
  • 22 GPIO pins : 9 Analogs inputs, 21 PWM, 2 Serial, 3 SPI, 3 I2C
  • All GPIO is 5 volt tolerant (Arduino compatible)
  • 2 rows of 8 pins, with 12 pins on double-sided end connector
  • On-board USB Type A connector
  • STM32F401 CPU – ARM Cortex M4, 384kb flash, 96kb RAM
  • On-board 3.3v 150mA voltage regulator, accepts voltages from 3.5v to 16v
  • Current draw in sleep: <0.05mA – over 2.5 years on a 2500mAh battery
  • On-board FET can be used to drive high-current outputs