Dear Members, To protect the forum from spam, all new members initial posts will require approval before they are published. Please do not create a duplicate thread. If you do not see the thread then it has been queued for review.  If in any doubt, please contact us through DM Regards Decawave

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
DW1000 Based PCB TX Problem
#1
Hi,

I created my DW1000 driver. 

First I applied my driver to DWM1000 (Module) based board. My DWM1000 based boards communicated each other successfully. 
Now I'm trying my driver for DW1000 (chip) based board. I get TXFRS on the transmitter side, but i can't RXDFR on the receive side. Receiver side is DWM1000 based PCB.

My init routines for module based PCB and chip based PCB are the same. In chip based PCB there is only one difference : 

I read LDOTUNE_CAL value from OTP and, write this value to LDOTUNE register. Before this, I couldn't get RFPLL Lock on RF_STATUS register. After this I can get RFPLL lock. 
I set ONW_LLDO bit.(I dont use sleep and wake up procedure in application)
But still I can get TXFRS on transmitter and I can't get RXDFR on receiver side.

I dont use TCXO.
Do you have any suggestions for hardware / software about these issues ?

King regards,
Çağatay
Reply
#2
Hi Çağatay

With problems like this it is very useful to have a known good reference. In that way you can compare your software to functioning software on a known good system.

Then you can try your software on a known good hardware base.
If your software causes the problem and there is good operation with Decawave software then you can hunt down the problem in your software

Digi Key have a number of options

https://www.digikey.ie/products/en/rf-if...k=decawave

I hope this helps

thanks

Denis
Reply
#3
Are you setting FS_XTALT correctly? When using the chip directly you need to measure and set the crystal tuning yourself, if this isn't set then the frequency can be off and you'll have trouble communicating.
For the modules you also need to set this but assuming the driver is correctly written it will be automatically reading the factory set value from the OTP and applying it automatically on startup.

Set one of the modules into RF test mode and find the spike on a spectrum analyser (you'll need one that goes up to the centre frequency of the channel in use). Then put your board into RF test mode and adjust the crystal trim value until the two spikes are on top of each other. Save the correct value of tune into the OTP for that board.
Repeat for each board.

If you don't have the equipment to do this then try a default guess of a value of 0x0F (middle of the range) and see if that works (don't program this into the OTP). It doesn't have to be perfect to get communications but the closer you are to the correct value the more reliable and longer range the link.
Reply
#4
(07-12-2018, 10:14 AM)AndyA Wrote: Are you setting FS_XTALT correctly? When using the chip directly you need to measure and set the crystal tuning yourself, if this isn't set then the frequency can be off and you'll have trouble communicating.
For the modules you also need to set this but assuming the driver is correctly written it will be automatically reading the factory set value from the OTP and applying it automatically on startup.

Set one of the modules into RF test mode and find the spike on a spectrum analyser (you'll need one that goes up to the centre frequency of the channel in use). Then put your board into RF test mode and adjust the crystal trim value until the two spikes are on top of each other. Save the correct value of tune into the OTP for that board.
Repeat for each board.

If you don't have the equipment to do this then try a default guess of a value of 0x0F (middle of the range) and see if that works (don't program this into the OTP). It doesn't have to be perfect to get communications but the closer you are to the correct value the more reliable and longer range the link.

Hi AndyA,
Thank you for your answer. We(with cagatay) have done this trimming yesterday and we see that we can not output at the exact center frequency. With the trim value being 0x1f, we can only have 6.4907, which is 1.1MHz far from channel 5 center freq. We have digged the forum but could not find a solution to this. We are using 0201 package capacitors and all the decouplings are as close as possible in our design.

Do you have any suggestion to overcome this?

Thanks
Reply
#5
(10-11-2018, 10:05 AM)ermansavut Wrote:
(07-12-2018, 10:14 AM)AndyA Wrote: Are you setting FS_XTALT correctly? When using the chip directly you need to measure and set the crystal tuning yourself, if this isn't set then the frequency can be off and you'll have trouble communicating.
For the modules you also need to set this but assuming the driver is correctly written it will be automatically reading the factory set value from the OTP and applying it automatically on startup.

Set one of the modules into RF test mode and find the spike on a spectrum analyser (you'll need one that goes up to the centre frequency of the channel in use). Then put your board into RF test mode and adjust the crystal trim value until the two spikes are on top of each other. Save the correct value of tune into the OTP for that board.
Repeat for each board.

If you don't have the equipment to do this then try a default guess of a value of 0x0F (middle of the range) and see if that works (don't program this into the OTP). It doesn't have to be perfect to get communications but the closer you are to the correct value the more reliable and longer range the link.

Hi AndyA,
Thank you for your answer. We(with cagatay) have done this trimming yesterday and we see that we can not output at the exact center frequency. With the trim value being 0x1f, we can only have 6.4907, which is 1.1MHz far from channel 5 center freq. We have digged the forum but could not find a solution to this. We are using 0201 package capacitors and all the decouplings are as close as possible in our design.

Do you have any suggestion to overcome this?

Thanks

What is the tolerance on the crystal you are using? Can you give a part number? Are the crystal caps the correct value for the part you're using? Are they soldered correctly? If one wasn't connected it would probably not work at all but could possibly work but run fast.
AndyA, proud to be a member of Decawave Tech Forum since Jun 2018.
Reply
#6
(10-11-2018, 11:17 AM)AndyA Wrote:
(10-11-2018, 10:05 AM)ermansavut Wrote:
(07-12-2018, 10:14 AM)AndyA Wrote: Are you setting FS_XTALT correctly? When using the chip directly you need to measure and set the crystal tuning yourself, if this isn't set then the frequency can be off and you'll have trouble communicating.
For the modules you also need to set this but assuming the driver is correctly written it will be automatically reading the factory set value from the OTP and applying it automatically on startup.

Set one of the modules into RF test mode and find the spike on a spectrum analyser (you'll need one that goes up to the centre frequency of the channel in use). Then put your board into RF test mode and adjust the crystal trim value until the two spikes are on top of each other. Save the correct value of tune into the OTP for that board.
Repeat for each board.

If you don't have the equipment to do this then try a default guess of a value of 0x0F (middle of the range) and see if that works (don't program this into the OTP). It doesn't have to be perfect to get communications but the closer you are to the correct value the more reliable and longer range the link.

Hi AndyA,
Thank you for your answer. We(with cagatay) have done this trimming yesterday and we see that we can not output at the exact center frequency. With the trim value being 0x1f, we can only have 6.4907, which is 1.1MHz far from channel 5 center freq. We have digged the forum but could not find a solution to this. We are using 0201 package capacitors and all the decouplings are as close as possible in our design.

Do you have any suggestion to overcome this?

Thanks

What is the tolerance on the crystal you are using? Can you give a part number? Are the crystal caps the correct value for the part you're using? Are they soldered correctly? If one wasn't connected it would probably not work at all but could possibly work but run fast.

Andy, our crystal is ABM10-165-38.400MHZ-T3 . 10pF are 0201 package and soldered correctly.
Reply
#7
(10-11-2018, 11:45 AM)ermansavut Wrote:
(10-11-2018, 11:17 AM)AndyA Wrote:
(10-11-2018, 10:05 AM)ermansavut Wrote:
(07-12-2018, 10:14 AM)AndyA Wrote: Are you setting FS_XTALT correctly? When using the chip directly you need to measure and set the crystal tuning yourself, if this isn't set then the frequency can be off and you'll have trouble communicating.
For the modules you also need to set this but assuming the driver is correctly written it will be automatically reading the factory set value from the OTP and applying it automatically on startup.

Set one of the modules into RF test mode and find the spike on a spectrum analyser (you'll need one that goes up to the centre frequency of the channel in use). Then put your board into RF test mode and adjust the crystal trim value until the two spikes are on top of each other. Save the correct value of tune into the OTP for that board.
Repeat for each board.

If you don't have the equipment to do this then try a default guess of a value of 0x0F (middle of the range) and see if that works (don't program this into the OTP). It doesn't have to be perfect to get communications but the closer you are to the correct value the more reliable and longer range the link.

Hi AndyA,
Thank you for your answer. We(with cagatay) have done this trimming yesterday and we see that we can not output at the exact center frequency. With the trim value being 0x1f, we can only have 6.4907, which is 1.1MHz far from channel 5 center freq. We have digged the forum but could not find a solution to this. We are using 0201 package capacitors and all the decouplings are as close as possible in our design.

Do you have any suggestion to overcome this?

Thanks

What is the tolerance on the crystal you are using? Can you give a part number? Are the crystal caps the correct value for the part you're using? Are they soldered correctly? If one wasn't connected it would probably not work at all but could possibly work but run fast.

Andy, our crystal is ABM10-165-38.400MHZ-T3 . 10pF are 0201 package and soldered correctly.

You have a 10pF crystal. Assuming stray capacitances are ~2pF per pin then your capacitors should be 16pF not 10pF.
C1 = C2 = 2(crystal - stray)

If your caps are 40% too small the crystal is going to run fast.
Reply
#8
(10-11-2018, 12:06 PM)AndyA Wrote:
(10-11-2018, 11:45 AM)ermansavut Wrote: Andy, our crystal is ABM10-165-38.400MHZ-T3 . 10pF are 0201 package and soldered correctly.

You have a 10pF crystal. Assuming stray capacitances are ~2pF per pin then your capacitors should be 16pF not 10pF.
C1 = C2 = 2(crystal - stray)

If your caps are 40% too small the crystal is going to run fast.

Andy,
Yes you are right, we have missed this very basic issue.. We will change the capacitors (0201 package Confused ) and observe the spectrum tomorrow. I will let you know. Thank you very much for your help.
Erman
Reply
#9
AndyA,
We have made the modifications for the xtal and we can catch the center frequency.  Now, the only issue remains is that the communication range is very small (4-5meters) in full power Tx. Think this is because an impedance problem.
Thanks for your help.
Erman
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)