Original Espruino Board
- KEYWORDS: Espruino,Official Board,Original,Board,PCB,Pinout
- BUYFROM: £25,£18,https://shop.espruino.com/original,/Order#original
Just plug it into your computer and get started in seconds with the Web IDE - no software installation needed!
Just got your Espruino Board? Get started here!
- Less than half the size of a business card ( 54mm x 41mm )
- STM32F103RCT6 32-bit 72MHz ARM Cortex M3 CPU
- 256KB of Flash memory, 48KB of RAM
- Micro USB connector
- Input Voltage Range of 3.6v to 15v
- [[Battery]] connector (JST PHR-2 2 Pin)
- Built-in SD card connector
- Red, Green and Blue LEDs
- Pads to allow HC-05 Bluetooth modules to be added
- 0.1" Pin spacing
- 44 GPIO Pins, capable of: 26 PWM Pins, 16 ADC Pins, 3 USARTs, 2 SPI, 2 I2C and 2 DACs
- Prototype area which can be used in many different configurations, for example: Servo Headers, Up to 14x 500mA outputs, 2x .NET Gadgeteer connectors, or NRF24L01+ wireless transceiver modules
- Rev 1v4: CE and RoHS certification
- APPEND_PINOUT: ESPRUINOBOARD
|General Purpose IO Pins||See the pinout above for more information about the functionality of these|
|Status LEDs||Red, Green and Blue lights, controllable from Espruino. Access these using the pin names
|Buttons||Below SMD prototype area. Reset button (left) and general purpose button (right). Access this using the pin name
|SMD Prototype Area||Area that allows you to solder SMD Integrated Circuits such as (ULN2003) and (L293D)|
|[[Battery]]||Battery connector, allows any voltage from 3.6v to 15v|
|Bluetooth||Pads for mounting a [[Bluetooth]] module|
|Power||Gnd, 3.3v and Battery power pins (see below)|
|Micro SD||A connector for FAT32 formatted Micro SD cards|
|USB||A Micro SD USB connector, for programming and powering Espruino|
|#1||(r1.3 only) Unpopulated pads for 32kHz crystal. Without this, Espruino will use its internal RC oscillator for timekeeping, which is only accurate to 1-2%. (r1.4 has a 32k crystal preinstalled)|
|#2||Pin Headers. Each horizontal pair pins in this 2 x 13 area of pins is connected together, so you can solder on a single line of pin header and can then wire from the Prototype area to the other side|
|#3||cut the shorted link on the right-hand side, solder over the left-hand side, solder a 10k resistor to R17 and you can then use the RST button as a second general purpose button on pin C12|
|#4||(r1.3 only) An unpopulated resistor that can trickle-charge a battery when fitted (if the battery is less than 4.3v). See the [[Battery]] page for more information - only fit this if you're absolutely sure that your battery type can handle it.|
|#5||(r1.4 only) An unpopulated area for a MAX1551 LiPo charger IC|
- Circuit Diagram
- Board Layout
- Part library for Eagle CAD
- Part library for Fritzing
- STM32F103RCT6 Datasheet
- STM32F103RCT6 Reference Manual
Links to tutorials that you can do using just the Espruino board:
- APPEND_USES: Only Espruino Board
Tutorials using the Espruino Board:
- APPEND_USES: Espruino Board
Espruino has 3 ways of powering it - a JST PHR-2 [[Battery]] connector, Micro USB, or pin headers.
Both the Micro USB and [[Battery]] connector can power the device (and pin headers), and the source of power will be automatically switched. If you power Espruino via the Pin Headers, do not plug a battery in, and do not plug in USB unless you are powering it with 5v or more.
If you wish to power Espruino from mains, we'd suggest using a Micro USB phone charger. This are widely available as the majority of mobile phones (with the exception of iPhones and low-end Nokias) now use them.
In order to protect the Espruino board (and what it is connected to), a 1000mA thermal (self-resetting) fuse is on the board between the pins marked 'Bat' on the board and the power source (USB/Battery).
See Connecting Batteries below for information on connecting Batteries.
Note: On rev 1v3 the voltage regulator draws 80uA, which makes up the majority of the 110uA power draw when sleeping. rev 1v4 has a much more efficient regulator, which allows a power draw of just 30uA.
NOTE: The Espruino board has no case and so the USB connector is completely unsupported. This means it is relatively delicate (especially on rev 1v3 boards) and needs to be treated carefully. Try and pull the connector straight out, and do not push down on the board when the connector is inserted, or try and move the board around using the cable.
There's a [[Pin Strip]] page covering how to solder Pin Strip onto the Espruino Board
You can usually buy batteries with the PH-type 2 pin female JST (PHR-2) connector ready-soldered, see [[Battery]] for more details on battries and connectors.
See the [[Pin Strip]] page for ideas on how to connect servos, and the [[Servo Motors]] page on how to control them.
To drive motors there are two good options - both of which solder on to the prototype area (which is designed for SOIC-style chips). The surface mount versions of these will require some soldering skills, so if you only need to turn motors on and off (and not drive them at different speeds) then a Relay Module might be easier.
The [[L293D]] is slightly more expensive, but has four outputs, each of which can pull up to a voltage as well as down to 0v. This makes it ideal for driving motors in forwards and reverse, as each side of the motor can be connected to an output.
The [[ULN2003]] has 7 x 500mA outputs, but they can only pull down to 0v. This makes it great for powering relays, solenoids and stepper motors - but only useful for motors if you only need them to run in a single direction.
Espruino is designed for HC-05 modules. Have a look at the [[Bluetooth]] page for more information.
- PWM output (via
analogWrite) on B4 and A6 at the same time is not possible (as they share timer hardware)
- You can't setWatch on two pins with the same number (eg. A5 and C5) - this is a limitation of the STM32F1
- You can't use
setWatchon B11/C11/D11 and enable
setDeepSleep, as A11 is watched in order to wake when USB is plugged in
- The USB bootloader as shipped on Espruino KickStarter boards requires the APB1 clock frequency to be changed before it will work reliably. This is automatically handled by the Web IDE's flasher (diff), and also Espruino's version of stm32loader.py if you supply the
Please see the [[Troubleshooting]] section.
We'd strongly recommend that you use the Web IDE to update the firmware on this board - See The Download page for instructions.
In case you manage to erase all your board's flash memory you can use the on-chip bootloader though - see below.
If you're developing and you want to completely rewrite the bootloader, you can wire up the Espruino board to a USB-TTL convertor as follows:
|-||BOOT0 - 3.3V||BOOT0|
|GND||BOOT1 - 0V||B2|
Note: BOOT0 is in a group of two pins (RST and BOOT0) in the middle of the top edge of the board.
Then, dab reset to enter bootloader mode and use the STM32 flasher utility to flash the STM32 chip.
You might also want to see the Advanced Debug page for details on how to debug the Espruino Interpreter using an ST-link debugger.
Other Official Espruino Boards
- APPEND_KEYWORD: Official Board