PLL reference Spur?

We’re using a module closely patterned on the DWM1000. Just found a spurious output at 5952 Mhz, eirp of -57 dBm. This on Ch 5. This is no problem as far as FCC goes, but is 13 dB outside limits for ETSI/EU. This is harmonically related to 38.4 MHz TCXO and I thought it might be a Reference Spur. I’d usually deal with that by trimming the PLL charge pump current but I don’t see where we have access to that feature. Any ideas on how to suppress this spur?
thanks
Bob

Hi Bjorn

Can you confirm what datarate you are using? And what spectrum analyser ? This because we advise customers a 50 MHz RBW spectrum analyser.eg R&S FSW

Can you also share your setting for Reg_0x28:0C? This should be 0x001E3FE3 as per user manual. If yours is not set to this could you try 0x001E3FE3?

Leo

Hi Leo,
We’re using an FSQ26 SA. Measurements are being done per ETSI EN 302 065-1 para 4.3.2.3…
I’ve asked the firmware group to answer the other questions.
regards,
Bob

For Decawave:
We’re using 6.8Mbps datarate. Also the 0x28:0C register is set differently, the version of your API we’re using must be out of date. Line 890 of deca_regs.h has:
#define RF_TXCTRL_CH5 0x001E3FE0UL
Can this value being off by 3 cause the effects we’re seeing? We’ll try changing it none-the-less.

Has anyone had an opportunity to look into this?
regards,
Bob

Hi Bjorn
Have you tried setting 0x28 yourself?
The IC Usermanual may require an register update every so often (see change log in UM)
But I hope you can appreciated that we do not always update the software API each time also.
The TREK/EVK and example code software as it is today is tested and works well and is good enough. However, is not optimised for all different scenarios. One is required to check the user manual for optimising code as there could be differences in some of the register settings in the API and UM.
Leo

Hi Leo,
Could you provide the settings used in your DWM1001C module to establish EU Conformity? That would seem to be the most reliable way to ensure that we are using properly-cofigured hardware.
Also, could you provide screen shots showing your emission mask specified in EN 302 065-2, para 4.3.2.3, Table 2? By comparing to our own results, we would also know that we’re at least setting up the radio correctly.
Thank you
Bob

Hi Bob,

Could I ask you what hardware do you refer when asking the questions in the forum?

Is it related to DW1000 or DWM1000 based design, or is it about the DWM1001C design?

If it is DW1000 design then to try to move the 18pF capacitors that goes across pins 11 and 12 on DW1000 closer to the pins. This should reduce any 38.4MHz harmonics.

The settings used in your DWM1001C are in the user manual? During certification test we had to change 1 or 2 registers. These updated registers are included in the last version of the IC user manual, version 2.18

Have you had a look at the FCC/EU test results available on our website? See : DWM1001C Certification Tests https://www.decawave.com/product/dwm1001-module/

Regards,
Leo

Hi Leo,
We’re using a module based on your DWM1000 module with the DW1000 IC, based on your reference design. We’ll look at the 2.18 user manual.
There seems to be some confusion about the FCC and EU test reports - the test report labeled as “240-18” for EN 302 065-2 seems to be same as 215-18 - the FCC test report. Could I get the 240-18 report?
regards,
Bob

Hi Bob
Sorry fo rthe confusion when downloading teh files from our website. This will be updated as soon as possible. But until then , please find the 240-18 report attached.

Leo

240-18 Decawave DWM1001 EN 302 065-2.pdf (1.6 MB)

Found the same problem using the DWM1001C installed on our custom board. We are facing European radio certifications and it seems like the DWM1001C doesn’t meet the required peak power levels. I used the APIs to configure the chipset accordingly to the user manual but the required power levels are not met. This means that the DWM1001C is not compliant to European certifications
I need to lower the transmission power to fix the issue but it’s likely that this is not possible with the provide APIs. Here’s my code:

static dwt_config_t config = {
  5,                /* Channel number. */
  DWT_PRF_64M,      /* Pulse repetition frequency. */
  DWT_PLEN_128,     /* Preamble length. Used in TX only. */
  DWT_PAC8,         /* Preamble acquisition chunk size. Used in RX only. */
  10,               /* TX preamble code. Used in TX only. */
  10,               /* RX preamble code. Used in RX only. */
  0,                /* 0 to use standard SFD, 1 to use non-standard SFD. */
  DWT_BR_6M8,//DWT_BR_850K,//DWT_BR_6M8,       /* Data rate. */
  DWT_PHRMODE_STD,  /* PHY header mode. */
  (129 + 8 - 8)     /* SFD timeout (preamble length + 1 + SFD length - PAC size). Used in RX only. */
};


static dwt_txconfig_t txconfig = {
	0xC0,
	//0x25456585	// with smart tx mode ON
	0x85858585 		// with smart tx mode OFF
	
};

port_set_dw1000_slowrate();
dwt_spicswakeup(dummy_buffer,DUMMY_BUFFER_LEN);
reset_DW1000();
dwt_softreset();
	
if (dwt_initialise(DWT_LOADUCODE | DWT_READ_OTP_PID) == DWT_ERROR){
    while (1) {};
}

dwt_configure(&config);
dwt_configuretxrf(&txconfig);
port_set_dw1000_fastrate();

dwt_softreset();
port_set_dw1000_slowrate();
deca_sleep(1000);

dwt_configure(&config);
deca_sleep(CWCF_START_DELAY_MS);


port_set_dw1000_slowrate();

/* Activate continuous frame mode. */
dwt_configcontinuousframemode(10);

/* Once configured, continuous frame must be started like a normal transmission. */
dwt_writetxdata(sizeof(tx_msg), tx_msg, 0); /* Zero offset in TX buffer. */
dwt_writetxfctrl(sizeof(tx_msg), 0, 0); /* Zero offset in TX buffer, no ranging. */
dwt_starttx(DWT_START_TX_IMMEDIATE);
	
/* Wait for the wanted duration of the continuous wave transmission. */
while(1) {		
    deca_sleep(CONT_WAVE_DURATION_MS);	
}