You have probably ever heard Spurine, as this project has been baptized with the name of a politician and military man of the Roman Republic. Or maybe you have come to this article looking for more information because you already know it and want to start using it.
Be that as it may, I will try to give you the keys about what Espurino is and what it could do for you for your future projects, as well as some recommendations to learn how to program it in a simple way.
A while ago we told you about Anaconda, another interesting project for Python lovers who wanted program arduino boards with this programming language that has become so popular. Something similar to what it does MicroPython, but this time, with Espurino, it brings you another new opportunity using a different language ...
Table of Contents
What is Espurino?
The Espurino project was created by Gordon Williams in 2012, as an attempt to allow the development of microcontrollers on multiple platforms. Initially it was not open source, it simply offered a free firmware download for STM32 MCUs.
In 2013 the project would take a very important step, becoming open source after a very successful funding campaign on the Kickstarter crowdfunding platform. This campaign went beyond the initial development environment, seeking funds to also manufacture boards that could support this software.Espurino's firmware is now licensed under the Mozilla Public License 2.0, while the sample codes are under the MIT License, the documentation under Creative Commons Attribution-ShareAlike 3.0, and the hardware design files under the latter as well.
This is how the Espurino official badge, which would be followed by numerous releases of other versions as has happened with other similar projects such as Arduino. In addition, these boards also featured compatibility for Arduino-compatible shields, which gives them some really interesting capabilities for makers and DIYers.
Currently the project has some popularity, with an important development community and a multitude of tutorials and help that you can find on the Internet. Therefore, if you like JS and programming microcontrollers, you have never had it so easy ...
Project source code - GitHub
Official Web site - Spurine
Firmware - Download (for the different plates)
Un microcontroller, also called MCU (Micro Controller Unit), is a programmable chip capable of executing certain orders from memory. This may also match the definition of a CPU, but in the case of an MCU, they are usually less advanced and powerful, targeting certain specific tasks, such as embedded devices.
In addition, a difference from a CPU, the microcontroller is an integrated circuit that includes the CPU itself, as well as other functional blocks such as memory and the I / O system. I mean, it's basically a complete computer on a single chip ...
Therefore, you will have a cheap and simple device that you can program so that its inputs and outputs act as you want and thus generate actions. You can make it receive information from external sensors or actuators, and based on that send certain signals through its outputs to others Electronic components connected.
By the way, for get started with Espurino IDE, you will not have to install anything in your operating system, it is a web-based environment that you can use from right here in your favorite web browser.Although various web browsers can be used, to flash the firmware of these boards it is recommended to use Chrome and a plugin called Espurino Web IDE that is recommended from the official website and that you can get for your Chrome at this link.
I am referring to the videogames that help you learn to program with certain programming languages, including JS. With these games, instead of using the keyboard or mouse to direct the character or interact with the virtual environment, what you will have is an interpreter of this language on one side of the screen and where you will begin to enter code (starting with the simplest even the most advanced).
In this way, you will control the game using programming language, so during your games you will go learning almost without realizing it and as you advance in the missions your knowledge will grow.
Official Espurino plates
After the first development of the plate Espurino's original came more projects available to use with the IDE and JS. If you want to know more about them, here is an introduction to each one:
- Espurino (original): it is the original plate, the first to be designed under this project. Their characteristics are:
- STM32F103RCT6 32-bit 72Mhz ARM Cortex-M3 MCU
- 256Kb of flash memory, 28Kb of RAM
- microUSB, SD connector, and JST PHR-2 external battery connector
- Red, blue and green LEDs
- Pads that allow the connection of Bluetooth modules HC-05
- 44 GPIO with 26 PWM, 16 ADC, 3 UARTS, 2 SPI, 2 I2C and 2 DACs.
- Dimensions: 54x41mm
- 22 GPIO (9 analog input, 21 PWM, 2 serial, 3 SPI and 3 I2C).
- USB-A connector on board.
- 2 LEDs and 1 button on the PCB.
- STM32F401CDU6 32-bit 84Mhz ARM Cortex-M4 MCU
- Memory: 384 Kb of flash and 96Kb of RAM
- 33x15mm dimensions
- Spurino WiFi: It is a practically twin board to the previous one, only that some improvements have been added. For example, its size is 30x23mm, growing to make room for an ESP8266 WiFi chip. In addition, USB has been changed to microUSB, the number of GPIOs has been reduced to 21 (8 analog, 20 PWM, 1 serial, 3 SPI and 3 I2C). On the other hand, the microcontroller has also been boosted, now it is a STM32F411CEU6 32-bit 100Mhz ARM Cortex-M4 with 512kb of flash memory and 128 kb of RAM.
- Espurino Puck.js: It is basically a Bluetooth smart button that you can program thanks to its internal microcontroller and the interpreter (pre-installed) with JS. In addition, it has a 52832Mhz ARM Cortex-M4 nRF64 SoC with 64kB of RAM and 512Kb of flash, GPIO, NFC tag, MAG3110 magnetometer, IR transmitter, built-in thermometer, as well as light and battery level sensors.
- Spurino Pixl.js: It is a device similar to the previous one, but instead of a button it is a programmable Bluetooth LE smart screen. Its screen has dimensions of 128 × 64 monochrome, while the rest of the characteristics are similar to the Puck.js.
- MDBT42Q: it is the same module as Pixl.js and Puck.js, but with a ceramic antenna. The rest of the technical characteristics coincide with the previous two, but without screen or button in this case ...
If you need buy some of these Espurino plates you can find them in the official website store From this project. You can also find it through a series of distributors officials assigned to the project, such as some famous groceries like Adafruit, etc.