MSC-PLPB-2 [SILICON]

Si4010 KEY FOB DEMO KIT WITH AES CAPABILITY; 与AES能力的Si4010的钥匙链演示套件
MSC-PLPB-2
型号: MSC-PLPB-2
厂家: SILICON    SILICON
描述:

Si4010 KEY FOB DEMO KIT WITH AES CAPABILITY
与AES能力的Si4010的钥匙链演示套件

文件: 总14页 (文件大小:252K)
中文:  中文翻译
下载:  下载PDF数据表文档文件
Si4010-Keyfob-AES-DEMO  
Si4010 KEY FOB DEMO KIT WITH AES CAPABILITY  
USERS GUIDE  
1. Purpose  
Thank you for your interest in Silicon Laboratories’ Si4010 SoC RF key fob demo kit with AES capability. The  
Silicon Laboratories Si4010 key fob demo kit with AES capability contains everything you need to familiarize  
yourself with and evaluate the Si4010 RF SoC. The kit has two versions, one for the 434 MHz band and one for the  
868 MHz band. The key features of the development platform are as follows:  
The key fob demo board has five push buttons and one LED output, a PCB antenna, and a battery in a plastic  
case.  
The key fob uses hardware-accelerated 128-bit advanced encryption standard (AES) encryption and rolling  
counter for RKE application.  
The receiver demo board has a graphic LCD to display received key fob commands.  
The provided software pack contains all the documentation and files needed to develop a user application. The  
kit supports the use of Silicon Laboratories’ Integrated Development Environment (IDE) for software debugging  
and the use of the Keil C compiler, assembler, and linker toolchain.  
Contains demo applications using API functions and the key fob demo application.  
2. Kit Contents  
The kit contains the following items:  
Qty  
Part Number  
4010-DAAKF_434  
4010-DAPB_434  
4313-DACB_ANY  
MSC-AT50-434  
MSC-PLPB_1  
CRD2032  
Description  
Si4010 Key Fob Demo Kit with AES Capability 434 MHz  
Si4010 Universal Key Fob 434 MHz  
Si4313 LCD FSK/OOK Receiver any band  
434 MHz Antenna  
1
1
1
1
1
1
Key Fob Plastic Case (translucent grey)  
CR2032 3 V coin battery  
MSC-DKSW1  
Wireless Development Suite disc  
Si4010 Key Fob Demo Kit with AES Capability 868 MHz  
Si4010 Universal Key Fob 868 MHz  
Si4313 LCD FSK/OOK Receiver any band  
868 MHz Antenna  
4010-DAAKF_868  
4010-DAPB_868  
4313-DACB_ANY  
MSC-AT50-868  
MSC-PLPB_2  
CRD2032  
1
1
1
1
1
1
Key Fob Plastic Case (translucent red)  
CR2032 3 V coin battery  
MSC-DKSW1  
Wireless Development Suite disc  
Rev 1.1 4/11  
Copyright © 2011 by Silicon Laboratories  
Si4010-Keyfob-AES-DEMO  
Si4010-Keyfob-AES-DEMO  
Figure 1. Si4010 Universal Key Fob and Plastic Case (P/N 4010-DAPB 868 and MSC-PLPB_1)  
Figure 2. Si4313 LCD FSK/OOK Receiver Any-Band (P/N 4313-DACB ANY) with 434 MHz Antenna  
(P/N MSC-AT50-434)  
2
Rev 1.1  
Si4010-Keyfob-AES-DEMO  
3. Key Fob Demo with AES Capability  
The 4010-DAPB RKE key fob transmitter and the Si4313 FSK receiver are the transmit and receive devices used  
in this key fob demo. This transmit/receive pair can be used to evaluate the capabilities of the Si4010 transmitter  
and the Si4313 receiver.  
3.1. Operation of the Demo  
The Si4313 demo receiver board uses the following RF parameters:  
9.6 kbps  
FSK modulation  
433.92 MHz or 868.3 MHz center frequency (menu selectable)  
±70 kHz deviation  
If any push button is pressed on the key fob, it sends a message to the receiver. The demo uses Silicon Labs'  
general EZMacPRO protocol.  
Table 1. General EZMacPRO Extended Packet Configuration Used by Demo Key Fobs  
Preamble  
Synch Word  
MAC Header  
MAC Payload  
CRC  
Min.13 bytes  
2 bytes  
5 bytes  
0...64 bytes  
2 bytes  
0xAA...0xAA  
0x2DD4  
CTRL  
CID  
SID  
DID  
PL  
NHDR  
NWK payload  
CRC  
3.2. Association  
To enable the receiver to react to the button presses on the key fob(s), they have to be paired (i.e., the key fob has  
to be associated to the receiver by pressing the left and right buttons simultaneously on the key fob).  
Table 2. The MAC Payload Field of the “Associate Request from TX only Device” Packet  
MAC Payload  
NHDR  
1 byte  
0x47  
NWK Payload  
4 byte  
1 bytes  
0x05  
1 byte  
0x01  
1 byte  
AES  
4 byte  
Address  
Rolling Counter  
3.2.1. Meanings of the Different Fields  
AES—Defines whether the transmitter is using AES-128 encryption or not. It is set to 0x01; then, the Rolling  
counter field of the packets is extended to 16 bytes length (12 dummy bytes are appended) and is encoded by  
AES-128. Other fields of the packet are not affected by the encryption.  
Address—4 bytes of key fob address. The four byte random number factory burned in the Si4010 is used as  
the address.  
Rolling Counter—The transmitter increments a 4 byte counter after every packet transmission. This counter is  
stored in the MTP memory of the Si4010.  
If the receiver accepts the association, it registers the Address, Master Key, and Rolling Counter value of the  
requesting key fob.  
The Master accepts the association if it is in pairing mode and there is a free slot for a key fob (i.e., if there are  
fewer than four key fobs associated to the receiver).  
After power up, the Receiver board is in pairing mode automatically. After pairing, it goes to normal packet  
reception mode. The Pairing mode can be invoked by pressing the push button, PB3, on the Receiver Board. This  
button needs to be pressed before the second and any subsequent pairing. If the PB is pressed for more than one  
second, the receiver disassociates all key fobs.  
Rev 1.1  
3
Si4010-Keyfob-AES-DEMO  
3.3. Button is Pressed on the Key Fob  
If any single button or button combination (except association combination) is pressed on the key fob, then it  
transmits a key fob data packet showing the button number in the button field.  
Table 3. The MAC Payload Field of the “Key Fob Data” Packet  
MAC Payload  
NHDR  
1 byte  
0x04  
NWK payload  
2 bytes  
1 byte  
AES  
4 bytes  
1 byte  
Button  
1 byte  
4 byte  
Address  
TEMP  
Battery  
Rolling Counter  
3.3.1. Meaning of the Different Fields  
AES—Defines whether the transmitter is using AES-128 encryption. It is set to 0x01, then Button, Temp,  
Battery, and Rolling counter fields of the packets are extended to 16 bytes length all together and are encoded  
by AES-128. Other fields of the packet are not affected by the encryption.  
Address—4 bytes of key fob address. The four-byte random number factory burned in the Si4010 is used as  
the address.  
Button—Each bit of this byte corresponds to the status of a push button on the key fob. If the bit is set, the  
given button is pressed. If the bit is cleared, the button is released.  
TEMP—The temperature is encoded as a signed 16-bit integer. Each incremental bit of temperature reading  
represents 0.1 °C. If the temperature function is not implemented in the key fob, this field is set to 0xFFFF.  
Battery—1 byte unsigned char showing the actual power supply status of the key fob. It must be interpreted as  
follows:  
1 bit  
1 bit  
1 bit  
5 bits  
Lbd Available  
LBD Status  
Battery Voltage Available  
Battery Voltage[4:0]  
LBD Available Bit—If set, the LBD status bit shows the actual status of the battery.  
LBD Status—Shows whether the actual battery voltage is above the LBD limit (set if the actual voltage is below  
the threshold). The LBD limit is configurable in the key fob program.  
Battery Voltage Available—If set, the battery voltage information is available.  
Battery Voltage—It shows the actual battery voltage of the key fob. Each increment of the battery voltage bit  
corresponds to 50 mV. However, 0 represents 1.7 V.  
Rolling Counter—The transmitter increments a 4 byte counter after every packet transmission. This counter is  
stored in the MTP memory of the Si4010.  
Since AES is used by the key fob, the receiver board decrypts the encrypted portion of the packet and discards the  
dummy bytes. Then, the receiver board checks the sync counter value against its own copy of the sender key fob's  
counter. If the key fob sync counter value minus the copy counter value is more than zero and less than a  
configurable window value (default value is 10), the master increments the copy.  
4
Rev 1.1  
Si4010-Keyfob-AES-DEMO  
3.4. Key Handling  
Application  
Level  
RKE_MK  
Function  
Level  
AES_128  
Node_Association  
AES_128  
Node_ButtonPress  
AES_128  
Functionzzzzzzzz  
FuncX_K  
Assoc_K  
Btn_K  
Session  
Level  
12byte padding(0) +  
Node Addr  
12byte padding(0) +  
Node Addr  
AES_128  
AES_128  
Assoc_SK  
Btn_SK  
MK: Master Key  
SK: Session Key  
Figure 3. SRW AES128 Applications Key Hierarchy  
AES keys used in the demos are generated according to the hierarchy shown in Figure 3. Only the Application  
level keys are stored on the receiver board. The function level keys are calculated at power-up. The Session level  
keys are calculated at their first use.  
In the key fobs Function level, keys are not generated but only stored to save power. The Session level keys are  
calculated at each power up.  
The Assoc_SK is used for association packets, and the Btn_SK is used for encrypting the messages generated by  
a button press.  
3.5. Key Fob Firmware Description  
The complete project of the program used in the demo key fob can be found in the Si4010 documentation kit in the  
“rke_demo” folder.  
The key fob wakes up for button push or battery insert. If the battery was inserted, the vSys_FirstPowerUp() API  
function is called, which shuts down the chip after 600 ms. This is for safe startup in case of battery contact  
bouncing. Upon button push wakeup, the system variables and hardware control registers are initialized first, and  
the session keys used in the AES encoding are generated from the function keys and the device address. Then,  
button debouncing is made.  
If a valid button push is detected, first a packet is assembled and transmitted six times for the LED receiver demo  
board used in the Si4010 Simplified Key Fob Demo Kit (see details in “AN516: Si4010 Simplified Key Fob Demo  
Quick Start Guide”). Then, a packet is assembled according to the description in the previous chapters. It is  
transmitted in FSK modulation for the Si4313 receiver board (part of this kit), and then also in OOK modulation.  
The next step is to increment the sync counter stored in the MTP memory.  
If there is no valid button push detected for 3.2 s, the program shuts down the chip.  
Rev 1.1  
5
Si4010-Keyfob-AES-DEMO  
3.5.1. Key Fob Firmware Flowchart  
Wake up  
vSys_Setup( 15 )  
Battery  
Yes  
vSys_FirstPowerUp()  
Shutdown  
Insert?  
No  
Initialize application  
Measure Vbat  
Measure temp  
Generate session keys  
No  
Button  
pushed?  
No  
Timeout?  
Yes  
Yes  
Assemble packet for the LED  
demo  
Shutdown  
Is button  
valid for  
receiver?  
Yes  
Set RF parameters  
Transmit packet  
No  
Assemble packet for Si4313  
Set RF parameters  
Transmit packet  
Assemble packet for Si4313  
Set RF parameters  
Increment sync  
counter  
Transmit packet  
Figure 4. Key Fob Firmware Flowchart  
6
Rev 1.1  
Si4010-Keyfob-AES-DEMO  
3.6. Receiver Board Firmware Description  
The Si4313 RX board receives the packets from the Si4010 key fob, and, by the packet headers, it decides what  
kind of packet was received. Two packet types can be received: association packets or button press packets. The  
Si4313 RX board has two operation modes: Association mode and Button press mode. A key fob can only  
associate when the Si4313 RX board is in Association mode. If the Si4313 is in Button press mode, then the  
association packet will be discarded. During the first power up, the Si4313 RX board goes into Association mode,  
and, after every key fob association, the firmware goes into Button press mode. The board can go back to  
Association mode if the PB button is pressed. After an Si4010 key fob associates to the Si4313 RX board, the RX  
board can receive the button press packets. At every packet reception, the firmware updates the LCD and sends  
an indication message to the PC via the UART interface. The LCD displays the associated key fob serial numbers  
and the number of the last button pressed on the key fob. However, the firmware stores more information about  
each associated key fob, such as AES keys, temperature, battery level, etc. Figure 5 shows a flow chart of the  
receiver board firmware.  
Rev 1.1  
7
Si4010-Keyfob-AES-DEMO  
3.6.1. Receiver Board Firmware Flowchart  
Figure 5. Basic Program Structure Block Diagram (1 of 2)  
8
Rev 1.1  
Si4010-Keyfob-AES-DEMO  
Figure 6. Basic Program Structure Block Diagram (2 of 2)  
For details on how to program the Si4010, see the following documentation:  
Si4010 Data Sheet  
AN370: Si4010 Software Programming Guide  
Si4010 Development Kit User's Guide  
Rev 1.1  
9
Si4010-Keyfob-AES-DEMO  
4. Demo Quick Start Guide  
1. The first step is to insert the CR2032 battery into the key fob demo board and then place the board with the  
battery into the plastic key fob case. Pushing any key will flash the LED on the key fob.  
2. Connect the antenna into the SMA connector of the 4313-DACB_ANY receiver board.  
3. Power up the Si4313 Receiver board by connecting it to the PC's USB port or by inserting batteries (3xAA) at  
the back side of the board.  
4. Switch the “S1” power supply switch to the proper position. If the board is supplied from the USB port, switch to  
the “USB” state, or, if the board is supplied from the batteries, switch to the “Bat.” state.  
5. After switching on the board, the LCD shows the Silicon Laboratories logo and the firmware version information.  
The demo shows this information three times during the startup. This startup process can be skipped if any of  
the PB1–PB3 button is pressed on the board.  
6. On the next screen set the desired receive frequency using PB1 (+) and PB2 (–) buttons. Then step to the next  
screen by pushing the PB3 (GO) button.  
7. Wait until the following screen appears.  
8. Pair the key fob with the Receiver board by pressing the LEFT and the RIGHT buttons together on the key fob.  
If the key fob can be associated to the receiver board, then the serial number of the key fob appears on the  
display.  
Note: Only four key fobs can be associated at the same time to the receiver board. The PB3 button on the receiver board has  
to be pressed shortly before every key fob association.  
9. When the key fob is associated to the RKE receiver board, press any button on the key fob. The LCD screen  
shows the number of the depressed button.  
10  
Rev 1.1  
Si4010-Keyfob-AES-DEMO  
10.If the PB3 button is pressed for longer than 2 s and then released, the RKE receiver board disassociates all  
associated key fobs. If you want to use the key fob again then it is required to be paired again. Refer to Step 7  
for instructions on how to perform the pairing. In this case, the key fobs should associate again.  
The code used in the transmitter of this key fob demo application can be found in the documentation kit in the  
\Si4010 projects\rke_demo folder.  
Rev 1.1  
11  
Si4010-Keyfob-AES-DEMO  
5. Software Installation  
The provided software pack contains all the documentation and files needed to develop a user application. It also  
contains example applications using API functions and the key fob demo application.  
The directory structure of the software examples is as follows:  
+--Si4010_projects  
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+--aes_demo  
|
|
|
+--bin  
+--out  
+--src  
.. Keil uVision and SiLabs IDE files  
.. output directory for Keil toolchain  
.. aes_demo source code  
+--common  
|
|
+--lib  
+--src  
.. Si4010 additional API functions library  
.. Si4010 required files  
.. frequency casting (tuning) demo  
+--fcast_demo  
|
|
|
+--bin  
+--out  
+--src  
+--fstep_demo  
.. frequency two step tuning demo  
.. continuous wave (tone) demo  
.. simple keyfob demo  
|
|
|
+--bin  
+--out  
+--src  
+--tone_demo  
|
|
|
+--bin  
+--out  
+--src  
+--keyfob_demo  
|
|
|
+--bin  
+--out  
+--src  
+--rke_demo  
.. advanced keyfob demo with AES  
|
|
|
+--bin  
+--out  
+--src  
Copy the directory structure in a directory of your choice. It is recommended to keep the structure of the  
Si4010_projects folder to allow the compiler to find the Si4010 common files. Each project has a *.wsp project file  
in the bin folder that contains all the settings of the IDE for the project, including the relative path of the common  
files.  
12  
Rev 1.1  
Si4010-Keyfob-AES-DEMO  
6. SiLabs IDE Run  
Download the SiLabs IDE (Integrated Development Environment) from  
http://www.silabs.com/products/mcu/Pages/SiliconLaboratoriesIDE.aspx and install it on your computer. To run the  
Silicon Labs IDE, open the *.wsp project file.  
7. Keil Toolchain Integration  
The project files in examples assume that the Keil toolchain is installed to C:\Keil directory. The location of the Keil  
toolchain can be easily changed in the Silabs IDE in the Project—Tool Chain Integration menu. An evaluation  
version of the Keil toolchain can be downloaded from the Keil web site, http://www.keil.com/. This free version has  
2 kB code limitation and starts the code at 0x0800 address. The Keil free evaluation version can be unlocked to  
become a 4k version with no code placement limitation by following the directions given in application note “AN104:  
Integrating Keil 8051 Tools into the Silicon Labs IDE”, which covers Keil toolchain integration and license  
management. Unlock code can be found on the WDS CDROM in the root folder in the Keil_license_number.txt file.  
Contact your Silicon Laboratories sales representative or distributor for application assistance.  
For the complete development platform containing debug adapter and development boards, see Silicon  
Laboratories’ Key Fob Development Kit (P/N 4010-DKKF_434 or 4010-DKKF_868).  
Rev 1.1  
13  
Si4010-Keyfob-AES-DEMO  
CONTACT INFORMATION  
Silicon Laboratories Inc.  
400 West Cesar Chavez  
Austin, TX 78701  
Tel: 1+(512) 416-8500  
Fax: 1+(512) 416-9669  
Toll Free: 1+(877) 444-3032  
Please visit the Silicon Labs Technical Support web page:  
https://www.silabs.com/support/pages/contacttechnicalsupport.aspx  
and register to submit a technical support request.  
The information in this document is believed to be accurate in all respects at the time of publication but is subject to change without  
notice. Silicon Laboratories assumes no responsibility for errors and omissions, and disclaims responsibility for any consequences  
resulting from the use of information included herein. Additionally, Silicon Laboratories assumes no responsibility for the function-  
ing of undescribed features or parameters. Silicon Laboratories reserves the right to make changes without further notice. Silicon  
Laboratories makes no warranty, representation or guarantee regarding the suitability of its products for any particular purpose,  
nor does Silicon Laboratories assume any liability arising out of the application or use of any product or circuit, and specifically  
disclaims any and all liability, including without limitation consequential or incidental damages. Silicon Laboratories products are  
not designed, intended, or authorized for use in applications intended to support or sustain life, or for any other application in which  
the failure of the Silicon Laboratories product could create a situation where personal injury or death may occur. Should Buyer  
purchase or use Silicon Laboratories products for any such unintended or unauthorized application, Buyer shall indemnify and  
hold Silicon Laboratories harmless against all claims and damages.  
Silicon Laboratories and Silicon Labs are trademarks of Silicon Laboratories Inc.  
Other products or brandnames mentioned herein are trademarks or registered trademarks of their respective holders  
14  
Rev 1.1  

相关型号:

MSC010SDA120B

Rectifier Diode,
MICROSEMI

MSC010SDA120K

Rectifier Diode,
MICROSEMI

MSC010SDA170B

Rectifier Diode,
MICROSEMI

MSC015SDA120B

Rectifier Diode,
MICROSEMI

MSC0203S

N and P-Channel Enhancement Mode Power MOS FET
MORESEMI

MSC0203S-SOT23

N and P-Channel Enhancement Mode Power MOS FET
MORESEMI

MSC020SDA120B

Rectifier Diode,
MICROSEMI

MSC025SMA120B4

Power Field-Effect Transistor,
MICROSEMI

MSC0305W

-30V(D-S) Dual P-Channel Enhancement Mode Power MOS FET
MORESEMI

MSC0305W-SOP8

-30V(D-S) Dual P-Channel Enhancement Mode Power MOS FET
MORESEMI

MSC030SDA120B

Rectifier Diode,
MICROSEMI

MSC0407

Microcontroller,
ATMEL