SILICON LABS CP2112-EK Evaluation Kit User Guide
- June 3, 2024
- SILICON LABS
Table of Contents
- SILICON LABS CP2112-EK Evaluation Kit
- Kit Contents
- Relevant Documentation
- Software Setup
- CP2112 Hardware Interface
- CP2112 Software Interface
- CP2112 Windows Application
- Target Board
- Schematic
- DOCUMENT CHANGE LIST
- Simplicity Studio
- References
- Read User Manual Online (PDF format)
- Download This Manual (PDF format)
SILICON LABS CP2112-EK Evaluation Kit
Kit Contents
The CP2112 Evaluation Kit contains the following items:
- CP2112 Evaluation Board
- USB Cable
- Quick Start Guide
Relevant Documentation
Application notes can be found on the Interface Application Notes page for all fixed-function devices: www.silabs.com/interface- appnotes.
- AN721: USBXpress™ Device Configuration and Programming Guide — Customize the VID, PID, serial number, and other parameters stored in the CP2112 one-time programmable ROM.
- AN496: HID USB-to-SMBus API Specification — Provides function descriptions and examples for all of the PC software functions that control the CP2112.
- AN495: CP2112 Interface Specification — Describes the HID report format for CP2112 devices.
Software Setup
The Software Development Kit (SDK) packages and documentation for the CP2112 kit can be found on the device page (https://www.silabs.com/interface/usb- bridges/classic/device.cp2112.html) and contains the following:
- USBXpress Host SDK (Software & Tools Tab)
- Documentation: (Tech Docs tab)
- CP2112 data sheets
- CP2112 EK quick-start guide
- CP2112 EK user’s guide (this document)
Note: Follow the instruction to install the SDK to the system. The CP2112 is an HID device, so a driver does not need to be installed on most operating systems.
CP2112 Hardware Interface
- Connect the CP2112 evaluation board to a PC as shown in Figure1.
- Connect one end of the USB cable to a USB Port on the PC.
- Connect the other end of the USB cable to the USB connector on the CP2112 evaluation board.
- Connect the SDA, SCL, and Ground pins on the CP2112 to an SMBus device. External pull-up resistors are not needed if the pull-up resistors on the CP2112 evaluation board are used.
CP2112 Software Interface
The CP2112 is an HID device that uses the standard HID functions available in the operating system. To facilitate this process in Windows, Silicon Labs packaged the standard HID functions into the SLABHIDDevice DLL in the CP2112 software package. The HID report structure for the CP2112 is customized for the device and is not compatible with other HID report structures, like a mouse or keyboard. AN495, “CP2112 Interface Specification” describes the custom HID report structure for the CP2112, and AN496, “HID USB-to-SMBus API Specification” describes the API software functions that can be used to read or write data and control the CP2112 from the PC. The software application described in “6. CP2112 Windows Application” provides an example of how to use these functions. The CP2112 appears as an HID device in Device Manager as shown in Figure 2.
CP2112 Windows Application
The HID SMBus Example application uses the Windows CP2112 HID-to-SMBus DLL to transmit and receive data with the CP2112. The application also has access to the CP2112’s GPIO pins. Figure 3 shows a screenshot of the Windows Application. The following steps describe how to start the application and use some of its features.
-
Ensure that the hardware is connected to a Windows PC as shown in Figure 1. If the device is properly connected, the red SUSPEND LED on the CP2112 evaluation board will turn on.
-
Launch the Hid SMBus Example application, which is found by clicking
Start All Programs Silicon Laboratories CP2112 Evaluation Kit HidSmbus Example. -
In this application, you can configure the SMBus settings and GPIO pins, customize the device descriptors, and read/write data over the SMBus interface.
-
Select the appropriate device in the Connection drop down box and click Connect.
-
The Configuration tab enables setting and getting the SMBus configuration parameters. To set a parameter, modify the value that is in the corresponding text box or check/uncheck a box and click Set SMBus Config. To verify that the settings took effect, click Get SMBus Config. These configuration parameters reset to their default values when the CP2112 is reset.
-
To read data from an SMBus device (non-addressed mode):
- Click the Data Transfer tab.
- Enter the slave address and the number of bytes to read in the Read Request box.
- Click the Read Request button.
- To see the number of bytes that were read back, click Get Read/Write Transfer Status and verify the number of bytes read at the bottom of the application.
- Next, click Force Read Response and then Get Read Response until the application reads back the total number of bytes. The bytes will be shown in the Received Data field. The status of the CP2112 will be shown at the bottom of the application.
-
To read data from an EEPROM or similar device (addressed mode):
- Click the Data Transfer tab.
- Enter the slave address, the number of address bytes in the target address, the target address of the SMBus device being read (in hex), and the number of bytes to read in the Addressed Read Request box.
- Click the Address Read Request button.
- To see the number of bytes that were read back, click Get Read/Write Transfer Status and verify the number of bytes read at the bottom of the application.
- Click Force Read Response and then Get Read Response until the application reads back the total number of bytes. The bytes will be shown in the Received Data field. The status bar of the application displays the current status of the CP2112.
-
To write data over the SMBus interface:
- Click the Data Transfer tab.
- Enter the Slave address and data (in hex) in the Write Request box.
- Click the Write Request button.
- Click Get Read/Write Transfer Status and verify that the transfer completed using the status bar at the bottom of the application.
-
The Pin Configuration tab enables configuration of the GPIO and special functions (TX Toggle, RX Toggle, and Clock Output).
- Click the Pin Configuration tab.
- GPIO pins toggle between Input/Ouput and Open-Drain/Push-Pull by clicking the corresponding GPIO boxes in the GPIO Configuration area. Check the boxes for TX Toggle, RX Toggle, and Clock Output to enable the special functionality on these pins. Click the Set GPIO Config button to update the device settings.
- The Latch Values section enables writing or reading the GPIO latches. Clicking the box next the GPIO pins listed will scroll through 1, 0, and X for a don’t care. Click the Write Latch button to change the state of the GPIO latch.
-
The Customization tab allows for programming the One-Time-Programmable (OTP) parameters of the device. These parameters can only be programmed once and cannot be changed back to their default values after being programmed. This tab has the same functionality as the CP2112SetIDs application provided with the CP2112 software package. In order for these parameters to be sucessfully programmed, a 4.7 µF capacitor must be connected between the VPP pin and ground. This capacitor is populated by default on the CP2112 Evaluation Kit board has this capacitor. See “8. Schematic” on page 12 for more information.
- The USB Customization section sets the USB parameters. Click Get to retrieve the current settings. Change the settings by modifying the text boxes and checking the box next to the parameter being modified. Click the Set button to program the device with the modified settings. The parameter will not be changed without checking the corresponding box. Perform a Get after changing any parameters to ensure that the settings updated correctly.
- The String Descriptors section enables modification of the serial strings in the CP2112. Type a string into the corresponding text box and click the Set button to modify the strings. Perform a Get after changing any parameters to ensure that the settings updated correctly.
- The Lock Byte section displays which fields have been programmed and can lock fields to prevent future modification. Any field that has been programmed will not be checked. To prevent a field from being programmed, uncheck the corresponding box and click the Set button. Perform a Get after changing any parameters to ensure that the settings updated correctly.
Target Board
The CP2112 Evaluation Kit includes an evaluation board with a CP2112 device pre-installed for evaluation and preliminary software development. Numerous input/output (I/O) connections are provided to facilitate prototyping using the evaluation board. Refer to Figure 9 for the locations of the various I/O connectors. Refer to Figure 10, “CP2112 Evaluation Board Schematic†for information regarding the SMBus pull-up resistors that are located on the target board.
- P1 USB connector for USB interface
- H1 Access Connector for SMBus interface (SDA, SCL, GND, Pull-Up Voltage)
- J1, J2, J3, J4 GPIO access connectors
- J6 Power connector
- J7 SMBus pull-up voltage connector
- J8 Red SUSPEND LED connector
- DS0–DS7 Green GPIO LEDs
- DS8 Red SUSPEND LED
- TB1 SMBus interface terminal block
LED Headers (J1, J2, J3, J4)
Connectors J1, J2, J3, and J4 are provided to allow access to the GPIO pins on
the CP2112. Place shorting blocks on J1, J2, J3, and J4 to connect the GPIO
pins to the eight green LEDs, DS0–DS7. These LEDs can be used to indicate
active communications through the CP2112. Table 1 lists the LED corresponding
to each header position.
Table 1. J2 and J3 LED Locations
LED | Pins |
---|---|
DS0 | J1[3:4] |
DS1 | J1[1:2] |
DS2 | J2[3:4] |
DS3 | J2[1:2] |
DS4 | J3[3:4] |
DS5 | J3[1:2] |
DS6 | J4[3:4] |
DS7 | J4[1:2] |
Universal Serial Bus (USB) Interface (P1)
A Universal Serial Bus (USB) connector (P1) is provided to facilitate
connections to the USB interface on the CP2112. See Table 2 for the USB pin
definitions.
Table 2. USB Connector Pin Descriptions
Pin # | Description |
---|---|
1 | VBUS |
2 | D- |
3 | D+ |
4 | GND (Ground) |
SMBus Signals (TB1, H1)
The SMBus interface terminal block and access headers are included to easily
interace SMBus devices to the evaluation board. The terminal block can be used
to connect wires to the board, and the access connectors can be used to
connect scope probes to the SMBus interface for debugging. The signals that
are accessible through these two connectors are SDA, SCL, GND, and the
external pull-up voltage signal.
7.4. VDD and VIO Power Connector (J6)
This header (J6) is included on the evaluation board to provide several power
options. The following describes the function of each pin:
- Pins 1–2: Connect CP2112 VIO input (pin 5) to CP2112 VDD (Pin 6). Remove the shorting block to power VIO from an external source.
- Pins 3–4: Connects the main +3 V net to the CP2112 VDD (Pin 6). The main +3 V net powers the other components (eight green LEDs) on the board.
7.5. SMBus Pull-Up Voltage Connector (J7)
This header (J7) is included on the evaluation board to provide power options
for SMBus pull-up voltage. The following describes the function of each pin:
- J7[1:2]: Connects CP2112 VIO pin (Pin 5) to the 4.7 k pull-up resistors located on the evaluation board.
- J7[2:3]: Connects the External Pull-Up signal from TB1 (Pin 4) to the 4.7 k pull-up resistors on the evaluation board.
SUSPEND LED Connector (J8)
The J8 header is used to connect the CP2112 SUSPEND pin (Pin 17) to the DS8
red LED. When the LED is on, the device has enumerated with the PC operating
normally. When the LED is off, the device has not yet enumerated or is in the
USB Suspend state.
Schematic
DOCUMENT CHANGE LIST
Revision 0.1 to Revision 0.2
- Updated Figure 1.
- Updated “6. CP2112 Windows Application” on page 4.
- Instructions and figures from updated PC application.
- Updated Figure 10 on page 12.
Revision 0.2 to Revision 0.3
- Updated “1. Kit Contents” to change CD-ROM to DVD.
- Added “2. Relevant Documentation” and “5. CP2112 Software Interface”.
- Updated “3. Software Setup” to point to the drivers on the website.
- Updated Figure 1.
- Updated the instructions and figures in “6. CP2112 Windows Application”.
Revision 0.3 to Revision 0.4
- Updated “1. Kit Contents” to remove DVD.
- Updated “2. Relevant Documentation”.
- Updated “3. Software Setup”.
- Updated “5. CP2112 Software Interface”.
Simplicity Studio
One-click access to MCU and wireless tools, documentation, software, source code libraries & more. Available for Windows, Mac and Linux!
Disclaimer
Silicon Labs intends to provide customers with the latest, accurate, and in-
depth documentation of all peripherals and modules available for system and
software implementers using or intending to use the Silicon Labs products.
Characterization data, available modules and peripherals, memory sizes and
memory addresses refer to each specific device, and “Typical” parameters
provided can and do vary in different applications. Application examples
described herein are for illustrative purposes only. Silicon Labs reserves the
right to make changes without further notice to the product information,
specifications, and descriptions herein, and does not give warranties as to
the accuracy or completeness of the included information. Without prior
notification, Silicon Labs may update product firmware during the
manufacturing process for security or reliability reasons. Such changes will
not alter the specifications or the performance of the product. Silicon Labs
shall have no liability for the consequences of use of the information
supplied in this document. This document does not imply or expressly grant any
license to design or fabricate any integrated circuits. The products are not
designed or authorized to be used within any FDA Class III devices,
applications for which FDA premarket approval is required, or Life Support
Systems without the specific written consent of Silicon Labs. A “Life Support
System” is any product or system intended to support or sustain life and/or
health, which, if it fails, can be reasonably expected to result in
significant personal injury or death. Silicon Labs products are not designed
or authorized for military applications. Silicon Labs products shall under no
circumstances be used in weapons of mass destruction including (but not
limited to) nuclear, biological or chemical weapons, or missiles capable of
delivering such weapons. Silicon Labs disclaims all express and implied
warranties and shall not be responsible or liable for any injuries or damages
related to use of a Silicon Labs product in such unauthorized applications.
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®, Gecko OS, Gecko OS Studio,
ISOmodem®, Precision32®, ProSLIC®, Simplicity Studio®, SiPHY®, Telegesis, the
Telegesis Logo®, USBXpress®, Zentri, the Zentri logo and Zentri DMS, Z-Wave®,
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. Wi-Fi is a registered
trademark of the Wi-Fi Alliance. 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 http://www.silabs.com
References
Read User Manual Online (PDF format)
Read User Manual Online (PDF format) >>