UG171: ZigBee® Smart Outlet Reference Design (RD-0051-0201) Kit User's Guide
Introduction
Silicon Labs' compact and cost-effective smart outlet reference design is based on the ZigBee HA (Home Automation) 1.2 standard. It can be used in conjunction with a ZigBee HA 1.2 home automation system.
This reference design kit features Silicon Labs' EFR32MG1P232F256GM48 ZigBee Pro Wireless Microcontroller (MCU), the Si7021 temperature and relative humidity sensor, and the Si1141 ambient light sensor. The outlet also includes voltage, current, and power measurement capabilities, along with current and thermal overload shutdown features.
This document provides instructions and guidelines for a quick-start demonstration, next steps, system overview, operations, hardware and firmware considerations, and engineering and manufacturing testing. This guide applies to EmberZNet PRO 5.8 and later.
Key Points:
- Quick start demonstration
- Recommended next steps
- Kit overview
- Device operation
- HA 1.2 and FCC certifiable
- Hardware and Firmware Considerations
- Ecosystem considerations
- Engineering and Manufacturing Testing
Image: ZigBee Smart Outlet Reference Design. This is a visual representation of the smart outlet device.
Diagram: ZigBee Home Automation with Smart Outlets. This diagram illustrates a ZigBee HA 1.2 Gateway connected to multiple ZigBee Smart Outlets, depicting a typical home automation system setup.
1. Introduction
There is a growing market demand for standards-driven, low-cost, and low-power wireless home automation systems. Smart outlets are commonly used to remotely control power to devices like lamps, fans, and consumer electronics. Additionally, low-cost sensors enhance home automation autonomy.
Silicon Labs has developed this smart outlet reference design for these applications. It integrates the EFR32MG1P232F256GM48 ZigBee Pro Wireless Microcontroller (MCU), the Si7021 temperature and relative humidity sensor, and the Si1141 ambient light sensor. The design also supports voltage, current, and power measurement, plus current and thermal overload shutdown.
The reference design can be directly integrated into ZigBee home automation applications. It comes preprogrammed and fully functional out-of-the-box. All hardware design files and firmware application source code are available.
2. Quick Start Demonstration
A video demonstrating the quick-start procedure is available at www.silabs.com/zigbeesmartoutlet.
- Set up an HA 1.2 ZigBee gateway.
- Supply power to the ZigBee Smart Outlet:
- Ensure the reference design is connected to a main power source. Note: The outlet power supply is rated to 240 VAC, but the North American plug is rated to 120 VAC.
- The reference design is powered when the green LED momentarily flashes at least once.
- Connect the ZigBee Smart Outlet to the ZigBee network:
- Follow the gateway's instructions to enable the smart outlet to join its ZigBee network.
- Press and hold the external front button for more than three seconds, then release to initiate the network join procedure.
- The outlet has joined the ZigBee network when the green LED blinks six times.
- Demonstrate ZigBee Smart Outlet functionality:
- Send an "on" command from the gateway. This should trigger an audible click (from the internal relay), the red LED will blink once, and power will be applied to the front female plug outlet.
- Send an "off" command from the gateway. This should also trigger an audible click, the red LED will blink once, and power will be removed from the front female plug outlet.
- To manually toggle power to the female front outlet, press and hold the front button for more than half a second but less than two seconds.
- If supported by the gateway, the on-board sensors can be viewed via the gateway's user interface.
3. Recommended Next Steps
A video outlining recommended next steps is available at www.silabs.com/zigbeesmartoutlet.
3.1 Evaluate the Smart Outlet
The ZigBee smart outlet reference design supports most smart power outlet application requirements. Typical evaluation areas include:
- ZigBee network behavior (e.g., network join and leave).
- Deploying on-off commands remotely.
- Measuring energy consumption of the controlled load.
- Monitoring ambient temperature, humidity, and ambient light.
- RF performance, such as range.
3.2 Evaluate the Firmware
If firmware modification is needed for your application:
- Visit the ZigBee Getting Started page and order a development kit.
- Refer to Section 7. Firmware in this document.
3.3 Build Proof of Concept
The smart outlet reference design can be used for rapid proof-of-concept demonstrations, showcasing the look, feel, and function of a final product. Refer to Section 7. Firmware for details on changing functional behavior, such as LED blinking or button functionality.
3.4 System Integration
Section 6. Hardware describes considerations for integrating the reference design into typical applications. Often, the design can be integrated without modification. If changes are required, the hardware section provides modification guidelines.
3.5 Engineering and Manufacturing Tests
Section 9. Engineering Tests provides information for UL, FCC, and HA 1.2 testing. Section 10. Manufacturing Tests offers considerations for simplified manufacturing tests.
3.6 Manufacturing
Contact Silicon Labs to access their manufacturing partner network for the reference design or a modified version.
4. Overview
4.1 Part Numbers
The part number convention is RD-XXXX-YYYY, where:
- RD: Reference Design
- XXXX: Reference Design Number
- YYYY: Reference Design Component
This document uses RD-XXXX for the complete design and RD-XXXX-YYYY for specific components.
Note: Due to space constraints on the PCB, an internal "IST" marking may appear instead of the "RD" part number.
Part Number | PCB Marking | Description |
---|---|---|
RD-0051-0201 | NA | ZigBee Smart Outlet Reference Design Kit with North America plug using EFR32MG1P232F256GM48, Si7021, Si1141 and PCB Antenna. |
RD-0051-0101 | IST-A0081 rev 2.0 (Power Board) IST-A0074 rev 4.0 (Radio Board) IST-A0075 rev 2.0 (Sensor Board) |
ZigBee Smart Outlet Reference Design Evaluation Board with North America plug using EFR32MG1P232F256GM48, Si7021, Si1141 and PCB Antenna. |
4.2 ZigBee Smart Outlet Reference Design Kit
Kit Contents:
- ZigBee smart outlet reference design.
- Quick start card for obtaining the latest reference design collateral.
4.3 ZigBee Smart Outlet Reference Design Features
Reference Design Features | Benefit |
---|---|
15 A power relay | Allows for power control of most household electronic products. |
Energy monitoring circuit | Provides power, voltage, and current status of a device being powered by the reference design. |
Temperature and relative humidity sensor | Provides room environmental sensing capability. |
Ambient light sensor | Provides room lighting status information in proximity to the reference design. |
Network status LED | Provides feedback on the RF network status. |
Power status LED | Provides feedback on the power circuitry. |
10-pin Mini Simplicity Connector | Facilitates ZigBee packet trace and debugging. |
User button | Eases network commissioning (join/leave) and manual power override. |
Test points | Simplifies hardware-level debugging. |
4.4 Hardware Features
The smart outlet hardware reference design includes:
- Silicon Labs EFR32MG1P232F256GM48 ZigBee Pro Radio:
- 32-bit ARM® Cortex®-M4 with DSP and FPU
- 2.4-GHz IEEE 802.15.4-2003 transceiver & lower MAC.
- Hardware Cryptographic Acceleration for AES 128/256, SHA-1, SHA-2 (SHA-224 and SHA-256) and ECC.
- 256 kB user programmable flash with 64 kB RAM.
- Flexible ADC, UART/SPI/I2C serial communications, and general purpose timers.
- Highly efficient Thumb-2 instruction set.
- Silicon Labs Si7021 relative humidity and temperature sensor:
- Temperature sensor accuracy: ±0.4 °C
- Humidity sensor accuracy: ±3% RH
- I2C interface
- Silicon Labs Si1141 ambient light sensor:
- Ambient light sensor range: 1 to 128 kilo lux
- I2C interface
- Additional hardware features:
- Integrated PCB antenna.
- Energy monitoring device.
- Full packet trace port for RF communications debugging.
- Pushbutton for manual on-off power and network join.
- Green Network/status LED.
- Red power status LED.
- Fully qualified BOM for 0 to 55 °C operation.
- Pre-certified FCC Part 15.
- Pre-certified UL.
4.5 Firmware Features
The reference design firmware application includes:
- Pre-compiled and source application firmware.
- Over-the-Air (OTA) upgradable.
- ZigBee HA 1.2 pre-certifiable clusters: Basic, Identify, On/Off, Metering, Temperature Measurement, Electrical Measurement, Diagnostics, and OTA Cluster.
- Application firmware (source code) available in the EmberZNet™ PRO stack library 5.8.0 and later.
5. Operation
Three types of button presses are defined: short (< 500ms), medium (500ms to 2 seconds), and long (> 3 seconds). Multiple short presses require no more than two seconds between each press.
5.1 Outlet Behavior
5.1.1 Remote Control
The ZigBee smart outlet uses a 15A controllable relay to toggle power to a connected device. An "on" command from the gateway closes the relay, supplying power. An "off" command opens the relay, preventing power. When the outlet state changes from off to on, the red LED turns on for one second. When changing from on to off, the red LED turns on for 250 ms.
5.1.2 Manual Control
The outlet state can be toggled with a medium button press. Similar to remote control, the red LED indicates the state change: one second for on, 250 ms for off.
5.1.3 Overload Protection and Indication
The switch features current and thermal overload protection. If detected, power is disabled. For current overload, the red LED blinks 250 ms on and 750 ms off for two minutes. For thermal overload, it blinks 250 ms on and 250 ms off for two minutes. The cycle repeats if the condition persists.
5.1.4 AC Power Sensing and Energy Measurements
A Cirrus Logic CS5463 power/energy IC measures mains power input attributes relevant for a low-cost smart outlet, including:
- RMS Voltage
- RMS Current
- Active Power
- AC Alarms Mask
- AC Voltage Overload
- AC Current Overload
- AC Active Power Overload
5.2 ZigBee Network Behavior
This section describes the operational states of the smart outlet as it joins and leaves a ZigBee network, using the external push button for input and green/red LEDs for output signaling.
Diagram: Device Operation State Diagram. This diagram illustrates the various states of the ZigBee smart outlet, including OFF NETWORK, ACTIVE NTWK SEARCH, NETWORK JOIN, ON NETWORK, IDENTIFY, NETWORK STATUS, SEND IDENTIFY, and LEAVE NETWORK. Transitions between states are shown, triggered by button presses (short, medium, long) or power events.
5.2.1 Power-up
Upon initial power-up, the device enters the ACTIVE NTWK SEARCH state. If it was previously powered off while connected to a network, it returns to the ON NETWORK state upon re-powering.
5.2.2 OFF NETWORK State
The device is not connected to or searching for a network. A single button press transitions it to the ACTIVE NTWK SEARCH state.
5.2.3 ACTIVE NTWK SEARCH State
The device actively searches for a network. The green LED flashes once every two seconds. This search lasts for approximately 160 seconds (20 scans). If no network is found, it returns to the OFF NETWORK state. Power cycling or a button press resets the timer. If a joinable network is found, it transitions to the NETWORK JOIN state.
5.2.4 NETWORK JOIN State
After leaving ACTIVE NTWK SEARCH, the green LED flashes six times in three seconds to indicate successful network joining. This state is temporary, transitioning to the ON NETWORK state.
5.2.5 ON-NETWORK State
The device is connected to a ZigBee network and not searching for others. If power is lost and restored, it remains on the network unless the user forces it to leave.
- A long button press (> 3 seconds) enters the LEAVE NETWORK state.
- Two short button presses temporarily enter the IDENTIFY state.
- Three short button presses temporarily enter the NETWORK STATUS state.
- Five short button presses enter the NETWORK IDENTIFY state.
5.2.6 IDENTIFY State
Helps identify the device by flashing the green LED twice every two seconds for two minutes. Returns to ON-NETWORK state after the timer expires.
5.2.7 NETWORK STATUS State
Helps verify network connectivity. The green LED flashes six times in three seconds if on a network. Returns to ON-NETWORK state after the timer expires.
5.2.8 SEND IDENTIFY State
Sends an identify request to the gateway, which then reacts as desired.
5.2.9 LEAVE NETWORK State
The device leaves the joined network, indicated by the green LED flashing three times in three seconds. This state is temporary, transitioning to ACTIVE NTWK SEARCH.
6. Hardware
This section details the key hardware aspects of the reference design.
6.1 ZigBee Smart Outlet Reference Design
The reference design consists of three printed circuit boards:
- RF board
- Sensor board
- Power board
The RF board mounts on the power board via connectors. The sensor board connects to the power board using a ribbon cable.
6.1.1 RF Board Highlights
- ERF32MG ZigBee Pro radio with embedded flash.
- Cirrus Logic CS5463 energy monitoring IC.
- Printed circuit board antenna.
- Mini-simplicity header debug connector.
6.1.2 Sensor Board Highlights
- Si7021 temperature and humidity sensor.
- Si1141 ambient light sensor.
- Momentary push button.
6.1.3 Power Board Highlights
- TI UCC28700DBV constant voltage, constant current, fly-back controller.
- TI LM3671MF switching regulator 3.3 V, 600 mA.
- TE Connectivity 8-1393239-5 SPDT relay 250 VAC, 16 A.
- Diodes Incorporated RH06-T bridge rectifier 600 V, 0.5 A.
- Renco RLTI-1072 transformer 40:3, 2A.
- Bel Fuse slow blow fuse 250 V, 0.5A.
- Green and red LEDs.
6.2 Hardware Modification Guidelines
Guidelines for modifying the reference design:
6.2.1 Avoid Modification
Changes to the following may significantly impact performance or certification (FCC/UL):
- Spacing between the EM3587, FEM, and PCB antenna.
- High voltage sections of the power board.
- PCB antenna length/shape.
- Ground pour area.
6.2.2 Bill of Material Cost-saving Options
To reduce BOM cost, consider removing the following items and their supporting circuitry:
- Mini-simplicity programming header.
- CS5463 and its supporting energy monitoring circuitry.
- Si1141 ambient light sensor.
- Si7021 temperature and humidity sensor.
7. Firmware
This section describes the smart outlet reference design application firmware.
7.1 Obtaining the Firmware Application
The firmware is loaded during manufacturing. Source code is part of EmberZNet PRO, available to development kit users. Visit the ZigBee Getting Started page for more information.
7.2 Programming the Reference Design
Two methods are available to reprogram the demo board:
- Using the mini-Simplicity header with an .s37 or .hex image file.
- Using the over-the-air (OTA) upgrade feature with an .ota image file.
7.2.1 Board Header Reprogramming
Reprogramming uses an .s37 or .hex file and a wireless starter kit with a Mini Simplicity header (U1 header on the reference design). Ensure correct connector orientation.
SHOCK HAZARD: Do not connect the U1 header while the smart outlet is plugged into AC mains power, as this can damage the programmer or the reference design. An isolation transformer can be used for safe operation.
7.2.2 Over-the-Air Reprogramming
Reprogramming can be done with an .ota file and a device capable of OTA upgrades, such as the RD-0001 or RD-0002 ZigBee USB Gateway Kit. Refer to the gateway documentation for details.
7.3 Build Instructions
To build the device firmware:
- Install EmberZNet PRO 5.7.4.1 or later.
- Create a new Application Framework Configuration in AppBuilder, selecting the 5.7.4.1 SoC stack release.
- Create a project using the HaSmartOutlet sample application.
- Verify the correct chip (EFR32MG1P232F256GM48) is selected during Project Setup.
- In AppBuilder, under the "hal configuration tab", verify the architecture and Board header (ist_a0051: Smart Outlet Reference Design) are correct.
- Generate the project and note the creation directory.
- Save the project file into the created directory.
- Compile using IAR version 7.80.2 or later.
The compiled image can then be loaded onto the Smart Outlet reference design using the Board Header Reprogramming method.
7.4 General Configuration
The device ID is 0x0051 (occupancy sensor device), and the ZigBee Device Type is set to Sleepy End Device. The board header is ist_a0051: Smart Outlet Reference Design.
7.5 Cluster Support
This section details implemented clusters:
Cluster Name | Cluster Hex Value |
---|---|
Basic | 0x0000 |
Identify | 0x0003 |
On/Of | 0x0006 |
Over The Air Boot Loading | 0x0019 |
Illumination Measurement | 0x0400 |
Temperature Measurement | 0x0402 |
Relative Humidity Measurement | 0x0405 |
Electrical Measurement | 0x0B04 |
Diagnostics | 0x0B05 |
Simple Metering | 0x0702 |
Configuration Cluster | 0xFC01 |
Details are available in the Appbuilder ZCL clusters configuration tab within Simplicity Studio.
7.6 Command Line Interface Support
In addition to General CLI, the following CLI command summaries are supported. Details are in the Appbuilder Printing and CLI tab within Simplicity Studio:
- Address Table
- Connection Manager
- Counters
- EEPROM
- EZ-Mode Commissioning
- Electrical Measurement Server commands
- Identify
- Illuminance Measurement Server commands
- Manufacturing Library
- Manufacturing Library CLI
- OTA Bootload
- OTA Client
- OTA Simple Storage EEPROM
- OTA Storage Common
- Relative Humidity Measurement Server commands
- Reporting
- Simple Metering Server
- Temperature Measurement Server commands
7.7 Included Plugin Options
Numerous plugins are available from the EmberZNET PRO stack. Notable ones include:
Manufacturing Library CLI
This library assists with manufacturing processes, enabling radio measurements on the factory floor. The CLI plugin allows access to commands that put the radio into test mode.
Theory of Operation: The mfg-lib CLI plugin allows access to commands for radio testing during manufacturing.
CLI Command | Notes |
---|---|
plugin mfglib mfgenable <0|1> |
Sets a token to pause scanning for channels, allowing the manufacturing library to start before the stack operation begins. 0 clears the token, 1 sets the token. The effect of setting the token is that you will have 10 seconds after the next power-up to preempt the stack from resuming normal operation and start the mfglib. |
plugin mfglib start <0|1> |
Starts the manufacturing library, which will prevent network activity as well as enable the rest of the manufacturing library commands. The argument dictates whether or not to track incoming messages and provide receiver statistics on the incoming packets. |
plugin mfglib stop |
Stops the manufacturing library. |
plugin mfglib set-channel <channel> |
Set the radio to the specified channel. Note: channel must be between 11 and 26 inclusive. |
plugin mfglib set-power <power> <mode> |
Sets the radio power to be used for manufacturing library transmit commands. The mode enables or disables boost mode for the EM35x series of chips. |
plugin mfglib stream <start|stop> |
|
plugin mfglib tone <start|stop> |
Note: Additional CLI commands are available. For example, to start the manufacturing library:
- Connect to the reference design and issue:
plugin mfglib mfgenable 1
- Power cycle the reference design.
- Within 10 seconds, issue:
plugin mfglib start 0
Manufacturing Library OTA:
This plugin implements a custom ZigBee cluster for RF testing mode via radio messages. It allows devices to be put into test mode without physical alteration.
Theory of operation: A custom ZigBee cluster sends RF commands to put the device into manufacturing test mode, enabling transmission of unmodulated or modulated tones, or receiving packets for TX/RX path checks.
OTA Command | Notes |
---|---|
zcl mfg-code 0x1002 |
Sets the manufacturing code to 0x1002 (Silicon Labs code). |
zcl mfg-code 0 |
Unsets the manufacturing code. |
zcl mfglib rx-mode <channel> <power> <time> |
Puts the device into RX mode, tracking received packets, RSSI, and LQI. A non-zero timeout is recommended. |
zcl mfglib stream <channel> <power> <time> |
Sets the radio to transmit a modulated carrier with random characters. |
zcl mfglib tone <channel> <power> <time> |
Sets the radio to transmit a modulated carrier. |
Example commands for transmitting a modulated carrier:
zcl mfg-code 0x1002
zcl mfglib-stream 15 13 0
send 0x1234 1 1
8. Ecosystem Considerations
The firmware examples are ZigBee HA certifiable and should work with most ZigBee-certified Home Automation gateways. Individual gateways may have specific requirements beyond standard HA. Contact gateway providers for support.
Many gateway manufacturers require end devices to support optional attributes in the Basic cluster: manufacturer name and model identifier. While reference designs have default values, customers are expected to customize these for their products.
Some gateways use manufacturer name and model identifier for whitelisting. If your device is not on the whitelist, it may not join the network. Contact the gateway platform provider to add your device.
9. Engineering Tests
This reference design completed the following product testing for pre-certification purposes:
- ZigBee Home Automation (HA) v1.2
- FCC Emissions
- Antenna Radiation Patterns
- Underwriter's Laboratory (UL)
9.1 ZigBee Home Automation HA v1.2
The outlet reference design underwent preliminary HA 1.2 testing for compliance with the ZigBee standard.
9.2 FCC Emissions Testing
A preliminary FCC pre-scan was performed to verify compliance with FCC Part 15 restrictions. This ensures customers receive a design capable of passing FCC tests. FCC compliance does not automatically transfer to modules built from this reference design, even if copied exactly.
9.3 Antenna Radiation Patterns
Tests were conducted to verify the efficiency of the antenna design, ensuring near-isotropic radiation.
9.4 Underwriter's Laboratory
The design underwent a UL review. Note that while the internal power supply is rated to 240 VAC, the North American plug is rated only for 120 VAC.
10. Manufacturing Tests
This section describes developing a low-cost manufacturing test methodology for products using this reference design, including recommended test equipment and procedures.
10.1 Test Coverage
Following these guidelines, the following will be tested and verified:
- RF TX/RX performance
- Power relay control functionality
- Current consumption
- Energy monitoring functionality
- Temperature functionality
- Humidity functionality
- Ambient light functionality
- Common ZigBee operations
- Frequency offset (with optional spectrum analyzer)
10.2 Test Equipment List
The test system comprises:
- Desktop PC
- RF Shielded Box
- Isolated AC Mains power supply
- 2x WSTK with debug adapter board
- Golden Node (Silicon Labs ZigBee coordinator device)
- Spectrum Analyzer (Agilent E4407B)
- Device Under Test (DUT)
10.3 Test System Diagram
Diagram: Test System Diagram. This diagram shows the interconnection of a PC, WSTK, Power Supply, DUT within a Shielded Box, Golden Node, and Spectrum Analyzer for manufacturing tests.
10.4 Test System Connection Procedure
Wire the system as indicated. All WSTK adapters connect to the PC via USB. One adapter interacts with the DUT, while the second connects to the Golden Node for network testing. DUT adapters should remain powered on. The DUT is powered from the isolated supply for current measurements.
Within the shielded box, only connectors for the DUT and 50 Ω antennas should protrude inward. A spectrum analyzer can be integrated for frequency offset measurements.
10.5 Configuring the WSTKS
The PC communicates with the WSTK via a serial connection. The WSTK enumerates as a COM Port device when connected via USB.
10.6 Communicating with Targets
For testing, the NodeTest firmware is used on the DUT. The PC communicates via the WSTK's COM port using a serial tool (e.g., PuTTY) with these settings:
- Speed (baud): 115200
- Hardware flow control: enabled
- Data bits: 8
- Parity: none
- Stop bits: 1
Pressing Enter or sending '\n' results in a prompt ending with '>'. Type "help" for available test functions.
Disclaimer
Silicon Labs provides documentation for peripherals and modules to system and software implementers. Characterization data, memory sizes, and addresses refer to specific devices, and typical parameters may vary. Application examples are for illustration only. Silicon Labs reserves the right to make changes without notice and does not warrant the accuracy or completeness of information. Silicon Labs is not liable for consequences of using this information. This document does not grant copyright licenses for integrated circuits. Products are not authorized for use in Life Support Systems without written consent. Life Support Systems are products intended to support life or health, where failure could result in significant injury or death. Silicon Labs products are not authorized for military applications and shall not be used in weapons of mass destruction (nuclear, biological, chemical weapons, or missiles).
Trademark Information
Silicon Laboratories Inc.®, Silicon Laboratories®, Silicon Labs®, SiLabs® and the Silicon Labs logo®, Bluegiga®, Bluegiga Logo®, Clockbuilder®, CMEMS®, DSPLL®, EFM®, EFM32®, EFR, Ember®, Energy Micro, Energy Micro logo and combinations thereof, "the world's most energy friendly microcontrollers", Ember®, EZLink®, EZRadio®, EZRadioPRO®, Gecko®, ISOmodem®, Precision32®, ProSLIC®, Simplicity Studio®, SiPHY®, Telegesis, the Telegesis Logo®, USBXpress® and others are trademarks or registered trademarks of Silicon Labs. ARM, CORTEX, Cortex-M3 and THUMB are trademarks or registered trademarks of ARM Holdings. Keil is a registered trademark of ARM Limited. All other products or brand names mentioned herein are trademarks of their respective holders.
Silicon Laboratories Inc.
400 West Cesar Chavez
Austin, TX 78701
USA