Dear Dialog,
We want to do Xtal trimming for our prototype based on DA14585 for more accurate radio frequency. We are referring the AN-B-020 application note and have a couple of questions
1) For downloading the prod_test_585.hex into system RAM, can we use SWD(through pro development kit) instead of UART as mentioned in the app note?
2) Following are the allocations of port0 pins of our prototype
P0_0 - Interfaced to SPI flash clock pin
P0_1 - Not connected and not brought out
P0_2 - Not connected and not brought out
P0_3 - Interfaced to SPI flash chip select pin
P0_4 - UTX pin and brought out to 10-pin connector
P0_5 - Interfaced to SPI flash data out pin and also brought out to 10-pin connector as URX
P0_6 - Interfaced to SPI flash data in pin
P0_7 - Interfaced to FET gate to control the power supply to SPI flash. Also a Test point is provided
My question is that considering the above allocations XTAL trimming using crystal frequency outputting to a specified GPIO port is not possible, since only one UART pair is brought out and is conflicting with the P0_5 which is the default pin for outputting crystal frequency. Is there any way I can change the P0_5 to P0_7(since I have a test point to probe) for outputting the crystal frequency? Also what are the default state of GPIO pins? (since while testing my flash might get enabled)
3) If we want to do XTAL trimming using unmodulated method, where exactly we need to probe. I have attached the schematic of the RF section. Do I need to probe at the ends of the L2 inductor?
4) In the application note, it is mentioned that the calibrated trim value is then flashed into the OTP, so that when the device boots next time this value is set. Is there any way to set this trim value to SPI flash since we are not using the OTP.
Thanks & Regards,
sr9213
Hi sr9213,
I am working on your issue and I will get back to you as soon as possible.
Thanks, PM_Dialog
Hi Dialog,
Thanks for the update. Also I have something to add to the last query(4). Is it possible that the trim value can be burned to OTP and my application code burned in external flash memory. Is it possible to split like this.
Thanks and Regards,
sr9213
Hello sr9213,
General question: what accuracy isexpected?
Spec of BLE is <= 50ppm.
When using the Production Line Tool (PLT) an accuracy of < 10 ppm is reached.
Will give you a more detailled answer about the upper questions later this day.
I guess you want to calibrate the XTAL of a prototype (no large numbers).
I will prepare a small example for that.
//HM
short way of getting the right TRIM-value for the 16 MHz-xtal.
Keep on doing that till you reach 16 MHz +- 16Hz (= +- 1ppm)
Or whatever value you want to reach.
SetWord16(CLK_FREQ_TRIM_REG, 1130); // here TRIM-value example is 1130
//HM
question 4:
In the application note, it is mentioned that the calibrated trim value is then flashed into the OTP, so that when the device boots next time this value is set. Is there any way to set this trim value to SPI flash since we are not using the OTP.
answer 4:
This is possible. The TRIM value you have found, can be stored in FLASH at a location you like.
When only a few products are used for testing, you even can store it as a constant value in your software.
The upper mentioned line can be used for that. After adding that line, the new TRIM-value and new frequency will become active.
For production purposes we advice to use theProduction Line Tool(PLT-info can be found on the website).
//HM