LilyPad Arduino Simple


The LilyPad Arduino Simple is a microcontroller board designed for wearables and e-textiles. It can be sewn to fabric and similarly mounted power supplies, sensors and actuators with conductive thread. Unlike the LilyPad Arduino Main Board, the LilyPad Simple has only 9 pins for input/output. Additionally, it has a JST connector and a built in charging circuit for Lithium Polymer batteries. The board is based on the ATmega328.

The LilyPad Arduino Simple was designed and developed by Leah Buechley and SparkFun Electronics.


Schematic: LilyPadSimple_schematic.pdf

EAGLE (CAD) Files:


Warning: Don't power the LilyPad Arduino Simple with more than 5.5 volts, or plug the power in backwards: you'll kill it.

Operating Voltage2.7-5.5 V
Input Voltage2.7-5.5 V
Digital I/O Pins9 (of which 5 provide PWM output)
Analog Input Pins4
DC Current per I/O Pin40 mA
Flash Memory32 KB (of which 2 KB used by bootloader)
Clock Speed8 MHz


The LilyPad Arduino Simple can be programmed with the Arduino software (download). Select "LilyPad Arduino" from the Tools > Board menu (according to the microcontroller on your board). For details, see the see the LilyPad Arduino Getting Started Guide.

The ATmega328 on the LilyPad Arduino Simple comes preburned with a bootloader that allows you to upload new code to it with the Arduino software.

The LilyPad Simple does not have an onboard USBSerial adapter or USB connector. To program the board, you will need to use a FTDI compatible adapter like the USBSerial Light Adapter.


The LilyPad Arduino Simple can be powered with an external power supply or with an FTDI compatible adapter.

The board can be turned on and off with the on-board switch. When the board is unplugged from an FTDI adapter and powered via a battery, the switch turns the board on and off; with the switch in the ON position, the microcontroller receives power and the board runs and with the switch in the OFF position, the microcontroller doesn't receive power. When the board is powered via an FTDI adapter, the board remains on all of the time; with the switch in the ON position, the microcontroller receives power from the battery (or the FTDI board via the battery charging circuit if no battery is attached) and with the switch in the OFF position, the microcontroller receives power from the FTDI adapter.

An external power supply should provide between 2.7 and 5.5 volts. The Lilypad Simple is designed with battery use in mind; 3.7 volt Lithium Polymer batteries can be plugged directly into the on-board JST connector. Again, don't power the LilyPad Arduino Simple with more than 5.5 volts, or plug the power in backwards: you'll kill it.

The board contains a MCP73831 LiPo battery charging chip. If the board is connected to both a FTDI connection and a battery, the FTDI power will charge the battery. This is true regardless of the position of the switch. The LED adjacent to the switch lights up while the battery is being charged. The charging will stop automatically when the battery is fully charged.

Because of the battery charging circuit, it is not possible to power components like a bluetooth modem via the FTDI connector.

Inputs and Outputs

The LilyPad Simple has fewer inputs and outputs than the LilyPad Arduino Main Board. There are a total of 9 I/O pins on the Simple board, one exposed pin for +3.3VDC, and one pin for ground.

Each of the 9 digital I/O pins on the LilyPad Arduino Simple can be used as an input or output, using pinMode(), digitalWrite(), and digitalRead() functions. They operate at 5V volts. Each pin can provide or receive a maximum of 40 mA and has an internal pull-up resistor (disconnected by default) of 20 kOhms. In addition, some pins have specialized functions:

  • PWM: 5, 6, 9, 10, 11 Provide 8-bit PWM output with the analogWrite() function.

  • Analog Inputs: A2-A5. The LilyPad Simple Arduino has 4 analog inputs, labeled A2 through A5, all of which can also be used as digital I/O. Each analog input provide 10 bits of resolution (i.e. 1024 different values). By default the analog inputs measure from ground to 5 volts, though is it possible to change the upper end of their range using the analogReference() function.

Automatic (Software) Reset and Bootloader Initiation

Rather than requiring a physical press of the reset button before an upload, the LilyPad Simple Arduino is designed in a way that allows it to be reset by software running on a connected computer. The bootloader can also be initiated by pressing the reset button on the LilyPad Arduino Simple.

Because of the way the LilyPad Arduino Simple handles reset it's best to let the Arduino software try to initiate the reset before uploading. If the software can't reset the board you can always start the bootloader by pressing the reset button.

Physical Characteristics

The LilyPad Arduino Simple is a circle, approximately 50mm (2") in diameter. The board itself is .8mm (1/32") thick (approximately 3mm (1/8") where electronics are attached).


We recommend washing projects in cold water by hand with a mild detergent. Drip dry. Do not dry clean or dry in a dryer. Remove the battery before washing the board!

More Information

To get your LilyPad Arduino Simple working, see this guide.

SparkFun Electronics has a range of accessories for use with the LilyPad Arduino family.

Additional information on the LilyPad Arduino Simple, including detailed information about how to stitch it to fabric, can be found on the LilyPad Arduino Simple page on the LilyPad website.