Share this project

Done

Share this project

Done
Control Electronics quickly and easily with a USB key that runs JavaScript
Control Electronics quickly and easily with a tiny USB stick that runs JavaScript
Control Electronics quickly and easily with a tiny USB stick that runs JavaScript
1,448 backers pledged £67,531 to help bring this project to life.

About this project

Espruino Pico: JavaScript on a USB Stick project video thumbnail
Replay with sound
Play with
sound

Espruino Pico: JavaScript on a USB Stick

£67,531

1,448

This KickStarter has now finished. Please see www.espruino.com/Pico for up to date information

Stretch Goals

Features added for the Stretch Goals won't just be added to the Espruino Pico, but to the original Espruino Board as well!

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.

Rewards

Exchange rates will vary, but as a rough guide: £1 is $1.6 or €1.25

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 W550io 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.

Specifications

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

Manufacturing Plan

As soon as we get the funds from KickStarter (2 weeks after the campaign finishes) we'll place an order for the STM32 CPUs that we need in order to make sure that it won't delay production.

November
Final testing of design
Readying for production
December
Final changes
Final check of production board prototypes
January
Ordering Kit Contents
Production starts
February
Production finishes
March
Packing and Shipping
April
You get your board!

Risks and challenges

Since we launched a KickStarter last year (and delivered the rewards on time!) we’ve got a good idea of what we’re letting ourselves in for this time around.

On the software side, the Espruino firmware has been available for download for 2 years already, so it’s pretty mature now. It required only minor modifications to work with the new chip in the Espruino Pico, and those have been done already so the only things left to do are optimisations, a few bug fixes, and extra features.

For the hardware, we have prototypes which we’re currently testing. The biggest risk for us is getting the board produced on time, but we have been talking to two different manufacturers, both of whom are capable of producing the board for us.

The biggest single point of delay is the new microcontroller chip, which could take up to 15 weeks to be delivered after it is ordered. In order to minimize the delay, we’ll be placing the order right after the KickStarter finishes.

Learn about accountability on Kickstarter

FAQ

  • No. Once programmed you can connect Espruino to a battery or other power source and it’ll run on its own.

    Last updated:
  • Check out our website, http://www.espruino.com

    Because we’ve already launched the larger Espruino board, it’s got loads of documentation, tutorials, and example projects already! There is very little documentation specific to the Pico board at the moment, but most of it applies to both boards.

    Last updated:
  • We’ve made several different prototypes of Espruino Pico - there are longer ones with holes at either end, and there’s the latest which just has holes down the sides and pads on the end.

    All of these feature in the video, however the latter is the one that we will be producing.

    Last updated:
  • Yes! The board contains an STM32F4 chip with a built-in bootloader. If you want, you can use freely available tools to program it in C or C++. You’ll find it a lot easier to get started with JavaScript though!

    Last updated:
  • We have plans for some after the KickStarter, but we don’t want to lock you into our ecosystem. We want you to be able to use boards from a variety of manufacturers - keeping your options open while saving you money.

    Last updated:
  • Short answer: It’s fast enough.

    Long answer: An empty ‘for’ loop runs at 10kHz, and a simple on/off toggle loop will run at around 3 kHz, however all built-in functionality (SPI, watches on Pins, Sorting, Graphics, Network, etc) is performed in native code so is very fast. You can also use inline assembly for areas where you need raw speed.

    Last updated:
  • The original Apple II had just 4kB of RAM and was still a usable computer. Espruino has 16 times that, and is very frugal with its RAM usage.

    While it’s easy to create large arrays that won’t fit in memory, you’ll find that by writing code considerately you can build very complex devices with file IO, graphics, and WiFi, without exhausting your available memory.

    Last updated:
  • Arduino boards run C code, which is harder to write and debug. They also require specialist software on a computer to program them.

    Most Arduino boards are also not designed for low power consumption. While with some effort you can explicitly put the microcontroller into power saving modes where it won’t use much power, due to the choice of voltage regulators most Arduino boards will always use at least 4mA!

    Last updated:
  • The Rasperry Pi is basically a full PC. You can connect a monitor and keyboard to it and it has a Web Browser - it’s very powerful, but because of that it’s complex and it draws so much power that it won’t run off a battery for more than a few hours.

    Espruino Pico is the opposite - it’s not as powerful, but it’s simple, small, and can run off a battery for years.

    Last updated:
  • Espruino boards use our own JavaScript engine that is specially designed to fit into microcontrollers.

    Microcontrollers have so little memory (around 1,000,000 times less than a desktop) that existing engines such as SpiderMoney, Rhino, or V8 just don’t stand a chance.

    Last updated:
  • It doesn’t. There is so little memory that there isn’t room for a traditional operating system, so Espruino’s firmware handles all the hardware access and scheduling.

    Last updated:
  • If we manage to get funded, then yes - although the boards are unlikely to be as cheap as they are on KickStarter! We’ll also be making sure that our KickStarter backers get priority, so if you don’t back us now then be prepared to wait a while!

    Last updated:
  • Unfortunately KickStarter doesn’t make this easy for us, but after the KickStarter finishes we’ll give you the option to buy other things. Please don’t increase your pledge to cover other things you’d like to buy - you’ll be able to pay separately after the KickStarter!

    Last updated:

Support this project

  1. Reward no longer available

    Pledge £12 or more About $19

    SUPER EARLY BIRD - ONE Espruino Pico without pins (see 'Rewards' below)

    Less
    Estimated delivery
    Ships to Anywhere in the world
    Reward no longer available 50 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  2. Reward no longer available

    Pledge £13 or more About $21

    EARLY BIRD - ONE Espruino Pico without pins (see 'Rewards' below)

    Less
    Estimated delivery
    Ships to Anywhere in the world
    Reward no longer available 100 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  3. Select this reward

    Pledge £15 or more About $24

    ONE Espruino Pico without pins (see 'Rewards' below)

    Less
    Estimated delivery
    Ships to Anywhere in the world
    346 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  4. Select this reward

    Pledge £17 or more About $27

    ONE Espruino Pico WITH pre-soldered pins (see 'Rewards' below)

    Less
    Estimated delivery
    Ships to Anywhere in the world
    214 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  5. Select this reward

    Pledge £39 or more About $63

    STARTER KIT - Get Started without soldering! A fun kit of parts to introduce you to the world of digital electronics (see 'Rewards' below)

    Less
    Estimated delivery
    Ships to Anywhere in the world
    212 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  6. Select this reward

    Pledge £44 or more About $71

    THREE Espruino Pico boards. ONE with pins, TWO without.

    Less
    Estimated delivery
    Ships to Anywhere in the world
    178 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  7. Select this reward

    Pledge £69 or more About $111

    FIVE Espruino Pico boards without pins

    Less
    Estimated delivery
    Ships to Anywhere in the world
    86 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  8. Select this reward

    Pledge £79 or more About $127

    GEEK'S TOY KIT: THREE Espruino Pico boards without pins, and a great selection of parts to start creating with (see 'Rewards' below)

    Less
    Estimated delivery
    Ships to Anywhere in the world
    178 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  9. Select this reward

    Pledge £129 or more About $207

    TEN Espruino Pico boards without pins - perfect for including in your next projects!

    Less
    Estimated delivery
    Ships to Anywhere in the world
    26 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  10. Select this reward

    Pledge £219 or more About $351

    ULTIMATE TOY KIT: TEN Espruino Pico boards (2 with pins) and a great selection of parts to start creating with, including internet connectivity (see 'Rewards' below)

    Less
    Estimated delivery
    Ships to Anywhere in the world
    46 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  11. Select this reward

    Pledge £5,000 or more About $8,024

    CORPORATE SPONSOR - Support us today and have your company logo displayed on the Espruino Website. Also includes 10 boards and a selection of devices to connect to them.

    Less
    Estimated delivery
    Ships to Anywhere in the world
    Limited 0 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.

Funding period

- (30 days)