The basic operation flow of the NVM Programming Utility (Si4010_NVM_Burner.exe) is as follows:
1. Select the Main tab on the GUI.
2. Select the USB adapter.
3. Hit the Connect button to connect to the part.
4. Add your application code intel hex file to the User Boot section.
5. Keep the address value as it is — first line has 0xE180 address filled automatically.
6. Check "Run" checkbox only.
7. Specify the new output NVM Burn File. Choose Overwrite if desired. GUI must check the file existence before running the composer since the composer always overwrites the existing output file.
8. Hit Compose and observe the results. The gui_composer.exe is invoked behind the scenes and the NBF file gets generated.
4.Load existing, previously generated NVM Burn File. The Compose Map gets filled in from the file. Then go to Step 9.
In both cases:
9.Make sure the 6.5 V programming voltage is connected to GPIO of the part. For example, slide the PROG switch on the MSC-BA4 board to the ON position.
10. Hit Burn to burn the device. The burning process loads the NBF file in the device and uses the information in the NBF file to do the actual burning. Observe the results. The burning process stops at first error encountered.
Here is an example about relation between RAIL_SetStateTiming setting and scheduled TX:
If you scheduled a transmit to occur on absolute time 1000µs and have an idleToTx time of 100µs and have a ramp time of 30µs:
1. Scheduled transmit should start at absolute time 1000µs.
2. IdleToTx is then in effect. The PA ramp will start at absolute time 1100µs.
3. PA ramps. Modulation starts when ramp ends (at 1130µs in this case).
In the Si4x6x chips there is a timeout after POR built-in to make sure if there is no host activity (SPI comms), the chip would go back to inactive state saving energy. Inactive state is the state the chip is sitting in after POR.
Because of this time-out, some refinement is necessary on the recommended startup sequence of AN633, as follows:
This first SPI transaction has to take less than 4ms (NSEL LOW time). If it cannot be guaranteed, send a shorter command (e.g. NOP) first, check CTS, then send POWER_UP or patch.
The PART and ROMID replay fields of the PART_INFO command are sufficient to identify EZRadio/PRO part number and revision according to the following table.
|Part number||PART||ROM_ID||Revision||Top marking|
How can I set up a one way link with the Si4010 Key Fob Development Kit (P/N 4010-KFOBDEV-xxx)? (xxx is the frequency band of the kit)
Setting up the Si4010 MSOP Key Fob Development Board (P/N 4010-DKPBxxx-BM) as the transmitting node of the link.
Note, that the Si4010 is an OTP device, but during this test it is used in debug mode, i.e. the example program is loaded in and run from the RAM of the device, so
fDesiredFreqFSK = f_433_RkeFreqFSK_c;
bFskDev = b_433_RkeFskDev_c;
The constants for the different bands are defined in the keyfob_demo_2.h file.
Setting up the Si4355 RFStick Receiver Board (P/N 4355-LED-xxx-SRX) as the receiving node of the link.
After power up the board is ready to receive the packets sent by the keyfob_demo_2 program.
The operating frequency is set by the receiver program automatically according to the content of the on-board EBID (board identification) memory.
Operating the link:
When a button is pressed on the 4010-DKPBxxx-BM transmitter board, LEDs flash on the 4355-LED-xxx-SRX receiver board according to which button was pressed. For details of the packet structure and RF parameters used in this demo, see the Si4010/Si4355 EZRadio® Remote Control Demo Kit User's Guide
Note that the LED on the transmitter board won't flash because of a debug mode limitation. See details in section 7. of the kit's quick start guide (AN690).
Silabs free Keil PK51 License expires on March,2016. How can it be renewed?
Silicon Labs provides a new license number with new expiration date. Existing licenses will continue to work after 31-Mar-16, but new releases of PK51 published after that date will require re-activation with the new license number.
So, as long as the user doesn't update their installation of Keil, there should be no interruption of service for them.
To update an existing installation to a current license for the PK51 toolchain, please follow these instructions:
1) Go to the following web page: http://pages.silabs.com/lp-keil-pk51.html
2) Fill out the form on the right and click [Submit] to receive a product serial number (PSN). Save this 15 character code for later.
3) If you have already registered your Keil PK51 toolchain using the Simplicity Studio dialog box and registration instructions, please uninstall the PK51 toolchain. To do so in Simplicity Studio, click [Window] > [Preferences] > [Simplicity Studio] > [Toolchains].
4) Click the link that says "Need more toolchains? Customize your installation here..."
5) Scroll down to "Keil 8051 Toolchain (v9.53)" and click Uninstall
6) Restart Simplicity Studio
7) Please reinstall the Keil 8051 toolchain. Repeat Steps 3-6, but this time click [install] next to "Keil 8051 Toolchain (v9.53)"
8) Click [Help] > [Licensing] > [Keil 8051 v9.53]
9) In the dialog box that pops up, click the link ("this form") to go to the Keil Single-User License registration form.
10) Replace the Product Serial # (PSN) in the form with the code you got in step 2 above, and fill out the rest of the form as normal. Submit.
11) Once you receive your email from Keil with the new license ID code (LIC), copy the the LIC into the Simplicity Studio Licensing Helper dialog box from step 9 above and click OK.
12) You should now have a valid license for the PK51 toolchain that does not expire until March 2019.
If you need zero gap between two transmitted packets, a trick could be to load in the fifo the payload of the first packet and also the preamble, sync and payload of the second packet, and transmit the two packets as one packet. E.g. if you have 5bytes preamble (55 55 55 55 55), and sync is 2d d4, and payload is 12 34 56 for the first packet and 78 9a bc for the second packet, then you should fill in the fifo 12 34 56 55 55 55 55 55 2d d4 78 9a bc and send it as a single packet with 13 byte long payload.
Where can I find the latest AN625: Si446x API Descriptions application note?
AN625 is obsolete for a long time and not available on silabs.com.
API documentation is provided in html format and can be found at
Pick the one that matches your chip revision.
I know SDO has a pull-up in shutdown, and an optional pull-up when the chip is active - but do the input pins SDI, SCLK, NSEL have any pull-up options?
There are no internal pull-ups available on SDI, SCLK and NSEL. Their state during shutdown and after POR is HiZ input.