Skip to end of metadata
Go to start of metadata


The purpose of this page is to provide documentation and tutorials for a custom expansion board designed to connect to the STK3700 Starter Kit from Silicon Labs.



Silicon Labs has a number of Starter Kits available to evaluate their EFM32 microcontrollers.  These Starter Kits all have a right-angle expansion connector that allows you to connect a custom board to the EFM32 microcontroller.  Although this connector doesn't provide access to all of the microcontroller pins, it does provide access to SPI, USART, LE UART, and I2C communication ports as well as multiple ADC and Analog Comparator channels.  It also provides access to the 3.3V, 5.0V, MCU Voltage, and Ground planes.  The custom board presented on this page was designed specifically for the EFM32GG-STK3700 evaluation board.  It provides the user with an analog source, a SPI target, an I2C target, and a UART connector, as well as 2 user LEDs.  The board only uses the 3.3V voltage plane from the STK3700.  The 5.0V and MCU Voltage planes are not available.

Custom Board Features



  • Access to Expansion Port pins through two 10-pin breakout headers
  • 10k thumbwheel potentiometer for analog evaluation
  • Small breadboard for use with breakout headers
  • 2 user LEDs
  • 2MB SPI Flash target
  • 8KB I2C EEPROM target
  • UART connector for external device (for use with FTDI cable TTL-232R-3V3)


The schematic for the custom board is shown below.

Functional Description

Connecting/Powering the Board

To connect the board to the STK3700 Starter Kit, simply plug the 20-pin right angle side connector into the expansion port of the STK3700.  If the STK3700 is powered up, the custom board will draw power from the 3.3V plane of the STK3700. 

Analog Source

The thumbwheel potentiometer provides a controllable analog voltage source that varies between 0~3.3V.  The center tap of the potentiometer is connected to PD6 which is Channel 6 of ADC0 on the microcontroller.  Since the analog voltage range is 0~3.3V, the reference voltage of the MCU should be set to Vdd (3.3V) when using this potentiometer as the ADC source.

Flash Memory

The board uses W25X20CL from Winbond as an onboard SPI target.  The SPI port of the Flash IC is mapped to pins PD[3:0] through the Expansion header.  PD5 controls the active low Write Protect pin, and PD4 controls the active low Hold pin.  The Hold signal also has an onboard pull-up so you don't need to actively set PD4 high.  A 2-pin jumper, JP1, allows the user to disconnect power from the IC if desired.  This can be helpful since these pins are shared with the breakout headers.  If you wish to use any of the pins PD[5:0] for breadboarding purposes, you can disengage the SPI Flash from the circuit by opening JP1.


The board uses 24AA08 from Microchip as an onboard I2C target.  The I2C port of the EEPROM IC is mapped to pins PC[5:4] through the Expansion header.  The SCL and SDA lines have onboard 10k pull-up resistors already connected.  A 2-pin jumper, JP2, is also available to remove power from the EEPROM in the event the user wishes to use PC[5:4] for breadboarding purposes.

UART / FTDI Connector

J3 makes the UART port (Location #1 - PD0, PD1) available to the outside world and works great with the TTL-232R-3V3 smart cable from FTDI.  The FTDI cable creates an interface between the USB port of a PC and the UART port of the micro, enabling direct communication through a terminal emulator program (like Tera Term).  The UART port shares data lines with the SPI port – PD[1:0].  The slide switch allows the user to decide which target to connect to the microcontroller – either the SPI Flash, or the external UART device.

Using the LEDs

The LEDs are not hard-wired to any pin of the expansion port.  They can be accessed by running a jumper wire from the LED pins of the Breakout headers (pin 10 of each header) to any other pin of the Breakout headers.  These LEDs are active high and have 165 Ohm series resistors which limit the current to 20mA.

Tutorials/Example Code

See the Getting Started with EFM32 Giant Gecko Arm Cortex-M3 page for tutorials using this expansion board.  The page includes tutorials for:

  • Using the UART port
  • Communicating with the SPI Flash IC
  • Communicating with the I2C EEPROM
  • Taking ADC readings from the thumbwheel potentiometer

Project Files

The entire board (Schematic/Layout) was designed using KiCad.  The following .zip file includes Gerber files for the top and bottom copper layers, top and bottom silkscreen, top and bottom soldermask, and board outline, as well as the NC drill file and drill map (pdf) for the custom expansion board.  OSH Park is a very inexpensive PCB supplier with quick turn around and could very easily build this board for you.  This board meets all design requirements for OSH Park.  However, this board has a blank silkscreen on the bottom side.  Therefore, if ordering from OSH Park, you may need to remove the bottom silkscreen file from the .zip folder before uploading.

Bill of Materials

The following table is a complete listing of the components needed for the board, as well as some additional helpful items.

Ref DesBoard FunctionQuantityDK Part NumberPart Description


Solderless Breadboard1700-00012-NDBREADBOARD SOLDERLESS
C1Vin Cap1490-7201-1-NDCAP CER 10UF 16V 20% X5R 0603
C2, C3Decoupling caps for ICs2587-1248-1-NDCAP CER 1UF 25V 10% X5R 0603
D1, D2User LEDs2475-2558-1-NDLED CHIPLED 587NM YLW 0603 SMD
D3Reverse Cable Protection1DZ2W03300LCT-NDDIODE ZENER 3.3V 1W MINI2
J1, J210-pin B/O Headers2S7008-NDCONN HEADER FEMALE 10POS.1" TIN
J3FTDI Connector1S1111EC-06-NDCONN HEADER .100" SNGL R/A 6POS
J4EFM32 Exp Header1S5563-NDCONN FMALE 20POS DL .1" R/A GOLD
JP1, JP2IC power jumpers2609-3500-NDBERGSTIK II .100" SR STRAIGHT
SH1, SH2shunts for the jumpers23M9580-NDSHUNT JUMPER .1" BLACK GOLD
R1, R4, R510k pull-ups3RMCF0603FT10K0CT-NDRES 10K OHM 1/10W 1% 0603
R2, R3LED current setting res2RMCF0603FT165RCT-NDRES 165 OHM 1/10W 1% 0603
RV1User potentiometer13352T-103LF-NDPOT 10K OHM THUMBWHEEL CERM ST
SW1Slide switch1401-2001-NDSW SLIDE DPDT 6VDC 0.3A PCMNT

Important Notes

  • All of the components on this board use the 3.3V supply from the STK3700.  MCU voltage should be set to 3.3V when using this expansion board.
  • If using FTDI cable TTL-232R-3V3 for external UART communication, this cable should only be connected after the MCU is powered up.  Otherwise, the PD0 and PD1 (UART RX and TX) on the MCU will see 3.3V while the MCU supply voltage is 0.  When disconnecting power from the MCU, be sure to disconnect the FTDI cable first.
  • The flow control pins (CTS and RTS) and Vcc of the FTDI cable are not routed.
  • The Zener diode (D3) is meant to protect against backwards FTDI cable connection.  If connected backwards, 5.0V will be connected to UART TX pin.  The Zener protects PD1 against this overvoltage condition.
  • The thumbwheel potentiometer outputs a variable voltage in the range 0~3.3V.  If using this as the source to the ADC, the reference voltage of the ADC should be set to Vdd (3.3V).


This board provides a number of ways to expand functionality of the STK3700 development board at minimal cost. Feel free to use the Gerber files above to build this board for your own application development.  It works great if you follow the precautions I mentioned above, but the project falls under the umbrella of "use at your own risk".  Feel free to contact me with any feedback, questions, or concerns at  I hope you are successful in your project development!

    -    Scott


  • No labels