One of the challenges with using the Z-Wave developers kit is trying to figure out which pin is connected to what. Every pin of the ZGM130S can perform multiple functions but some pins are best used for certain things. This guide provides general recommendations, but these are not hard-and-fast rules. The ZGM130S provides a great deal of flexibility so feel free to explore the many options each pin and peripheral has to offer. I’m hoping I can guide you with some initial suggestions but feel free to delve into the details to find your ideal solution.
This guide is a compilation of a number of documents and while I’ve been thorough, I could easily have made a typo here or there. Please use the online documentation as the official reference and send me an email pointing out my error and I’ll fix it. I couldn’t possibly include every feature for every pin but the details are available in the reference documents below. The Decoder Ring below is an overview of the most commonly used features. The table below contains a lot of information, so you’ll need to view it on a computer with a big screen.
Reference Documents
ZGM130S ZGM130S Datasheet – See section 6 for the pin definitions
EFR32XG13 Gecko Family Reference Manual – Each peripheral is detailed here
UG381 ZGM130S Zen Gecko DevKit Users Guide – Section 3 describes connectors
ZGM130S GPIO Decoder Table
ZGM130S | GPIO port as described in the ZGM130S data sheet |
Pin # | GPIO pin number of the ZGM130S SIP package |
BRD4202A | Zen Gecko Developers kit board for the ZGM130S |
BRD8029A | Button/LED board plugged into the WSTK EXP header for the sample apps |
WSTK EXP | Pin number of the main WSTK board expansion header |
WSTK | Main developers kit board with USB, LCD and Segger J-link debugger |
The Pxx pins are the holes across the long side of the board | |
The Fxx pins are secondary functions that typically connect to the isolators | |
MiniDBG | Small 20 pin ribbon cable used to connect WSTK to a target DUT |
ALT FUNCS | Alternate functions the GPIO can perform. All GPIOs can be simple digital 1/0s. |
Some pins have special analog or peripheral functions. | |
Comments | Brief comments describing special functions of the GPIO |
General Purpose IOs – Use these for your application first
ZGM 130S | Pin # | BRD 4202A | BRD 8029A | WSTK EXP | WSTK | Mini DBG | ALT FUNCs | Comments |
PD10 | 27 | LED_R P201-35 | P32 | LED ON=low, Pullup Ideal for PWM | ||||
PD11 | 28 | LED_G P201-37 | P34 | LED ON=low, Pullup | ||||
PD12 | 29 | LED_B P200-3 | P36 | LED ON=low, Pullup | ||||
PC6 | 58 | P201-4 P200-29 | EXP4 | P1 F16 | Easy to use with WSTK since they are on EXP | |||
PC7 | 59 | P201-6 | EXP6 | P3 | ||||
PF3 | 5 | P201-13 P200-16 | LED1 | EXP13 | P10 | JTAG_TDI | ||
PF4 | 6 | P201-11 P200-23 | LED0 | EXP11 | P8 | |||
PF6 | 8 | P201-7 P200-25 | BUTN0 | EXP7 | P4 F12 | |||
PC8 | 60 | P201-8 P200-28 | EXP8 | P5 F15 | ||||
PC9 | 61 | P201-10 | SW | EXP10 | P7 | |||
PB14 | 46 | P201-30 | P27 | LFXO – 32Khz osc crystal for accurate time | ||||
PB15 | 47 | P201-32 | P29 | LFXO | ||||
PD9 | 26 | P201-33 | P30 | |||||
PF5 | 7 | P201-28 P200-24 | P25 F11 | |||||
PD13 | 30 | P201-34 P200-31 | P31 F18 | OPA1P | Use for Analog functions | |||
PD15 | 34 | P201-38 | P35 | OPA1N | ||||
PA2 | 37 | P201-3 P200-21 | LED2 | EXP3 | P0 F8 | OPA0P | ||
PA4 | 39 | P201-17 | P14 | OPA0N | ||||
PA5 | 40 | P201-19 P200-18 | P16 F5 | VCOM_ENB Must be 1 for WSTK to pass USART0 to USB |
Special Function Pins – Use these for their alternate function
ZGM 130S | Pin # | BRD 4202A | BRD 8029A | WSTK EXP | WSTK | Mini DBG | ALT FUNCs | Comments |
PC10 | 62 | P201-15 | BUTN2 | EXP15 | P12 | EM4WU12 I2C1_SDA | EM4WU pins are the ONLY pins that will wakeup from EM4 | |
PC11 | 63 | P201-16 | BUTN3 | EXP16 | P13 | I2C1_SCL | Use for I2C, will NOT wakeup from EM4 | |
PD14 | 31 | P201-36 P200-30 | P33 F17 | OPA1 EM4WU4 | ||||
PF7 | 9 | P201-9 P200-26 | BUTN1 | EXP9 | P6 F13 | EM4WU1 | ||
PA3 | 38 | P201-5 P200-22 | LED3 | EXP5 | P2 F9 | VDAC0 OPA0 EM4WU8 | ||
PB11 | 41 | P201-21 P200-34 | P18 F21 | OPA2P | ||||
PB12 | 42 | P201-23 P200-33 | P20 F20 | 10 | OPA2 | PTI_DATA Future Packet Trace debug | ||
PB13 | 45 | P201-25 P200-32 | P22 F19 | 9 | OPA2N EM4WU9 | PTI_SYNC Always wire the 2 PTI pins on the ZG14 modem chip to GPIOs on your host CPU |
Fixed Function Pins – Reserved for debug
ZGM 130S | Pin # | BRD 4202A | BRD 8029A | WSTK EXP | WSTK | Mini DBG | ALT FUNCs | Comments |
PA0 | 35 | P201-12 P200-19 | EXP12 | P9 F6 | 5 | USART0 | VCOM_TX WSTK->ZGM130 | |
PA1 | 36 | P201-14 P200-20 | EXP14 | P11 F7 | 4 | USART0 | VCOM_RX ZGM130->WSTK | |
PF2 | 4 | P201-31 P200-15 | P28 F2 | 6 | EM4WU0 | SWO JTAG_TDO | ||
PF0 | 2 | P201-27 P200-14 | P24 F1 | 8 | BOOTTX | SWCLK JTAG_TCK | ||
PF1 | 3 | P201-29 P200-13 | P26 F0 | 7 | BOOTRX | SWDIO JTAG_TMS | ||
RST_N | 15 | P200-17 | F4 SW102 | 3 | RESET button next to EXP header | |||
ANT | 23 | SMA or PCB | Radio Antenna Move cap R2 for PCB |
Power Pins
ZGM 130S | Pin # | BRD 4202A | BRD 8029A | WSTK EXP | WSTK | Mini DBG | ALT FUNCs | Comments |
VSS GND | 1,10,11, 12,13,14, 16,17,18, 19,20,21, 22,24,25, 32,33,43, 48,49,51, 53,54,55, 64 | 2 | Ground 0 Volts | |||||
AVDD | 44 | Analog Power 1.8-3.8V | ||||||
1V8 | 50 | Leave unconnected | ||||||
VREG VDD | 52 | DCDC Reg input Tie to AVDD 2.4V min for DCDC | ||||||
DECO UPLE | 56 | No-Connect | ||||||
IOVDD | 57 | Digital IO Power 1.62V-VREGVDD AVDD>=IOVDD | ||||||
VAEM | 1 | DUT Power |
EXP Port on the WSTK
BRD8029A | WSTK | Pin # | Pin # | WSTK | BRD8029A |
GND | 1 | 2 | VMCU | VMCU | |
LED2 | P0 (PA2) | 3 | 4 | P1(PC6) | |
LED3 | P2(PA3) | 5 | 6 | P3(PC7) | |
BUTN0 | P4(PF6) | 7 | 8 | P5(PC8) | |
BUTN1 | P6(PF7) | 9 | 10 | P7(PC9) | SW Pull up/dn |
LED0 | P8(PF4) | 11 | 12 | P9(PA0) | |
LED1 | P10(PF3) | 13 | 14 | P11(PA1) | |
BUTN2 | P12(PC10) | 15 | 16 | P13(PC11) | BUTN3 |
BoardID_SCL | 17 | 18 | +5V | NC | |
BoardID_SDA | 19 | 20 | 3V3 | BRDID PWR |
Legend:
WSTK = hole name (ZGM130 GPIO)
EX: WSTK P100 pin 16 is hole P13, ZGM130S GPIO PC11, Button 3 on the BRD8029A
BRD8029A is the Button/LED board. Functionality is:
LEDs are ON when driven high
BUTN pins are pulled up and go low when the button is pressed
The SW can pull the pin either up or down depending on the slide setting
left/on is 1, right/off is 0 thru 1MOhm resistors
The VMCU powers the LEDs/Buttons but the board ID is powered via pin 20
Schematic is in Simplicity Studio
Mini-Simplicity Debug header: Top View
Name | Pin # | Pin # | Name |
VAEM (3V3) | 1 | 2 | GND |
RESET_N | 3 | 4 | VCOM_RX (PA1) |
VCOM_TX (PA0) | 5 | 6 | SWO(PF2) |
SWDIO(PF1) | 7 | 8 | SWCLK(PF0) |
PTI_SYNC(PB13) | 9 | 10 | PTI_DATA(PB12) |
On the DUT board with the ZGM130S on it, connect VCOM_RX to PA1 and VCOM_TX to PA0. The header is a 0.05” pitch 10 pin header. Typically use a Samtec FTSH-110 but to make the pads even smaller use just the pads for a thru-hole connector. See my post “700 series Debug Header” from October 2019 for more details on the debug header.
Recommendations
Remember that the GPIOs in all the Wireless Gecko chips from Silicon Labs are very flexible and most peripheral functions can be routed to almost any IO pin. That said, there are some pins that have fixed functions and some pins are best at certain other functions. Let’s start with the pins you can’t use.
Power Pins
Obviously, the power pins have to be connected to the proper voltage. The ZGM130 has a lot of ground pins so make sure every one of them is connected to a solid ground. The voltages for the power pins have a few rules but in most cases you’ll tie AVDD and VREGVDD to the same power source of 3.3V. The on-chip DC to DC regulator allows a wide voltage range on VREGVDD so there is some additional flexibility which requires careful consideration. But for most applications, tie these two power pins directly to the battery. Most of the time IOVDD is also tied to the battery though depending on other chips in your system you might need an LDO to keep the IOs at the proper voltage.
Debug Pins
The next set of pins you should not use for GPIOs are the debug pins. All ten IO pins on the Mini-Simplicity header should be wired up as shown in the table above. The UART pins are very important to print out debug information while the chip is running. The advantage here is that you can see things happening in real-time without using a scope or logic analyzer. And you can easily enable/disable blocks of debug statements as needed. The sample apps print all sorts of debug information so you’ll want to do the same in your code. The UART defaults to only 115200 baud but it’s easy to increase it up to roughly 1Mbaud to reduce the time impact of printing debug messages. Also, keep the messages short or else they may impact the timing so much that your code will fail. If you’re really in a pinch for one more IO, you could use the SWO or VCOM_RX pins as you probably don’t need them.
Special Function Pins
A number of pins have specific functions especially for certain analog functions. The ADC/DAC only have their primary and alternate IOs though you can route them thru the ABUS. Only a few of these pins can wake the chip from sleeping in EM4. Be very careful and utilize these pins for buttons or sensors that need to wake the chip up.
General Purpose IOs
The rest of the pins are available for any purpose. Most of the pins can be any digital IO function. Some pins are handy because of their connection on the DevKit. There are three IOs connected to an RGB LED on the 4202 board. These are really handy to visually observe PWM waveforms based on the color of the LED. The pins that are routed to the EXP header on the WSTK are easy to connect to a proto board. Be careful to avoid using PA5 as that is connected to the VCOM enable pin on the WSTK. PA5 has to be high to route the debug UART data to the USB bus. But this is a restriction only when using the DevKit 4202 board. If connecting to your own PCB via the Mini-Simplicity header you can freely use PA5.
Conclusion
The ZGM130S is a flexible chip with plenty of compute power, RAM and Flash. The GPIOs can largely be routed from any peripheral to any IO though there are some restrictions. The secret decoder ring given here maps out which pin can do what and which ones should be used for your application. This is only a guide and the chip has many more features than I can describe here. Refer to the Reference Documents for more in depth knowledge.