AT86RF231 transmission power

Go To Last Post
26 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

hi,

in AT86RF231 i had set the PHY_TX_PWR = 0x0 to get maximum tx power i.e 3dbm but when i am trying to check the real tx power using spectrum analyser i am getting -7dbm. can anyone quickly reply why it might be happening and what should i do to get 3 dbm

Last Edited: Fri. Oct 16, 2015 - 12:28 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

How, exactly, are you measuring that?

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

using a probe i am connecting the  transceiver and analyser then setting all the center freq., start and stop frequencies....

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

well aweneil prior to what you asked me i am sending a continuous beacon request which eventually is a continuous transmission instead of using the continuous transmission CW configuration 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

load matching? inline attenuator?

 

Ross McKenzie, Melbourne Australia

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

i am using a proven AVR's ATRFxxx board which came with the evaluation kit P/N# ATAAVRRZ600, so i don't think i am supposed to take care of the load matching and attenuator

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

from the software side i am using the basic configuration setting as specified in the datasheet of AT86RF231 :

channel = 11;

PHY_TX_PWR = C0; //3dbm setting(max. o/p pwr)

CCA_Mode = set;

i am using only internal PA

is there anything else i am missing and should take care of

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

jit2015 wrote:

i am using a proven AVR's ATRFxxx board which came with the evaluation kit P/N# ATAAVRRZ600, so i don't think i am supposed to take care of the load matching and attenuator

 

Maybe a misunderstanding of my question(s). How is the spectrum analyser connected (to) the ATRFxxx board's PA output?

 

 

Ross McKenzie, Melbourne Australia

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

"Continuous" beacon requests are not really continuous. You need to use CW, that is the only correct way of measuring TX power.

NOTE: I no longer actively read this forum. Please ask your question on www.eevblog.com/forum if you want my answer.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

spectrum analyser is directly connected to the AT86RF231 board's  antenna which is getting input from the PA's output via (RFP,RFN) pins  

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

alexru wrote:

"Continuous" beacon requests are not really continuous. You need to use CW, that is the only correct way of measuring TX power.

 

Beacon requests have the time difference of 4 ms. I had tried setting up the the continuous transmission test mode and with this CW mode enabled i couldn't see any beacon requests in sniffer.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

CW mode is plain uninterrupted sine wave, as the name suggests. You won't see it in the sniffer, but that's what will have specified power. On a spectrum analyzer it will look like a single spike on a frequency Fch+0.5 MHz or Fch-0.5 MHz depending on your test settings. The radio is not capable of transmitting a CW at exact Fch frequency.

 

Measuring anything but CW is meaningless.

NOTE: I no longer actively read this forum. Please ask your question on www.eevblog.com/forum if you want my answer.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

A really good spectrum analyzer with a skilled operator can measure total channel power. That is, for, say, a signal occupying 20MHz like 802.11, the power spread in that channel can be measured. The modulation mode is important, i.e., the non-OFDM modes of 802.11 yield quite different RMS power-bandwidth values than does OFDM with it's higher peak-to-average ratio.

 

Power measurement with other than CW is difficult an error prone for the non-RF guru.

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

stevech wrote:

A really good spectrum analyzer with a skilled operator can measure total channel power. That is, for, say, a signal occupying 20MHz like 802.11, the power spread in that channel can be measured. The modulation mode is important, i.e., the non-OFDM modes of 802.11 yield quite different RMS power-bandwidth values than does OFDM with it's higher peak-to-average ratio.

 

Power measurement with other than CW is difficult an error prone for the non-RF guru.

 

 

Power measurement of the antennas are performed by our h/w team and they said that there might be problem in some setting of transceiver. 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

alexru wrote:

CW mode is plain uninterrupted sine wave, as the name suggests. You won't see it in the sniffer, but that's what will have specified power. On a spectrum analyzer it will look like a single spike on a frequency Fch+0.5 MHz or Fch-0.5 MHz depending on your test settings. The radio is not capable of transmitting a CW at exact Fch frequency.

 

Measuring anything but CW is meaningless.

 

i still find the power showing -7 dbm; i am posting the code snippet of the continuous transmission please check if anything i am making it wrong

 

void reset ( void )
{
    // apply reset pulse
    pal_gpio_set(RST_PIN, LOW);
    pal_timer_delay(RST_PULSE_WIDTH_US); //6us
    pal_gpio_set(RST_PIN, HIGH);
}

void TRX_Continuous( void )
{
  ENTER_CRITICAL_REGION(); 
//  uint8_t data[] = {0x0a, 0x03, 0x18, 0x4d, 0xff, 0xff, 0xff, 0xff, 0x07, 0x00};
  uint8_t data = 0xff;
  uint8_t length = sizeof(data);
  
  reset();
  pal_trx_reg_write(0x0e, 0x01);
  pal_trx_reg_write(0x04, 0x00);
  pal_trx_reg_write(0x02, 0x03);
  pal_trx_reg_write(0x03, 0x01);
  pal_trx_reg_write(0x08, 0x33);
  pal_trx_reg_write(0x05, 0x00);
  if(TRX_OFF !=  pal_trx_reg_read(0x01))
  {
    return;
  }
  else
  {
    pal_trx_reg_write(0x36, 0x0f);
    pal_trx_reg_write(0x0c, 0x03);
    pal_trx_reg_write(0x0a, 0xa7);
    pal_trx_buf_write(&data, length);
    pal_trx_reg_write(0x1c, 0x54);
    pal_trx_reg_write(0x1c, 0x46);
    pal_trx_reg_write(0x02, 0x09);

    pal_timer_delay(TRX_SETTLING_TIME_US);

    while (pal_trx_reg_read(RG_IRQ_STATUS) != 0x01);
    pal_trx_reg_write(0x02, 0x02);
    pal_timer_delay(TRX_SETTLING_TIME_US); //880us
    pal_trx_reg_write(0x1c, 0x00);
    reset();
  }

 LEAVE_CRITICAL_REGION();

  while(1);
}

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

You are initiating CW transmission (at least it looks like it, I have not checked exact sequence), but then immediately resetting the radio. You do not need the last 3 lines in that sequence. Or you do need them, but after the measurement is performed.

NOTE: I no longer actively read this forum. Please ask your question on www.eevblog.com/forum if you want my answer.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

alexru wrote:

You are initiating CW transmission (at least it looks like it, I have not checked exact sequence), but then immediately resetting the radio. You do not need the last 3 lines in that sequence. Or you do need them, but after the measurement is performed.

 

Hi alex,

sry i couldn't reply soon i was busy with some other stuff. Well the last 3 lines which were resetting the radio immediately i had disabled them but still the power issue persist. Thereafter i have used the Performance Analyzer application from Atmel Software Framework (ASF). I am using AtmelStudio 6.2. But when i am connecting to the device through that application i am getting some firmware up-gradation error. 
Attaching the screenshot showing the error statements. FYI the device enumerating the COM port as "Communication Device Class SFW example". And here the AT86RF231 board is connected to the RZ600 processor board via 10 pin connectors.

please help

Attachment(s): 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

There are precompiled images for different platforms for the performance analyzer. Have you tried those? They usually work.

 

We've just recently released a tool that does CW as well - https://www.avrfreaks.net/forum/a...

 

It does not support RF231 directly, but the code is the same as for RF233. You can at least compare the sequence of commands.

NOTE: I no longer actively read this forum. Please ask your question on www.eevblog.com/forum if you want my answer.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks Alex. I ll try to finish this process as fast as possible

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

alexru wrote:

There are precompiled images for different platforms for the performance analyzer. Have you tried those? They usually work.

 

We've just recently released a tool that does CW as well - https://www.avrfreaks.net/forum/at12459-fcc-test-ieee-802154-transmitters

 

It does not support RF231 directly, but the code is the same as for RF233. You can at least compare the sequence of commands.

Well, It seems like i have to re-program the processor but I am using AT86RF231 with a different controller, so I don't have any supported debugger/programmer for RZ600 board. Can't i use the USB interface in the RZ600 board to program the controller.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

I don't know much about Rz600, they are very outdated. You really should get newer kits.

 

And I'm not saying you should run that software, this is probably too much effort in your case, but you can look at the initialization sequence that works. The test code itself is located in fcc_tester\phy\at86rf233\src\phy.c in the function PHY_TestReq().

NOTE: I no longer actively read this forum. Please ask your question on www.eevblog.com/forum if you want my answer.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

alexru wrote:

I don't know much about Rz600, they are very outdated. You really should get newer kits.

 

And I'm not saying you should run that software, this is probably too much effort in your case, but you can look at the initialization sequence that works. The test code itself is located in fcc_tester\phy\at86rf233\src\phy.c in the function PHY_TestReq().

 

I took some help from Atmel's technical support team and they figured out  RZ600 product that i am using has some problem with the hardware itself so they provided me with a set of Two corrected RF231 boards. And now i am able to achieve 2dBm of transmission power as measured in spectrum analyzer.

After this conclusion now i am checking the ED value on a particular channel (ch 11) but at closer proximity i could able to find ED value = +51dBm which is the maximum of receiver input power (PRF) as -40dBm whereas expected value of ED = +80 dBm (nearly) and PRF -10 dBm.

For the ED value determination following is the process that i am carrying out in Channel 11 :

  • One board is in continuous transmission mode
  • Other is in receiving mode where i am reading the value of ED from PHY_ED_REGISTER

Will you tell me, please, if i am missing something and how to i achieve the  ED near to +80dBm

 

Also when i am changing the position of Antenna from horizontal to vertical i could see the ED value decreasing. So please tell me if this ED value has something to do with the orientation of Antenna.

 

Last Edited: Mon. Mar 30, 2015 - 09:03 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

jit2015 wrote:
After this conclusion now i am checking the ED value on a particular channel (ch 11) but at closer proximity i could able to find ED value = +51dBm which is the maximum of receiver input power (PRF) as -40dBm whereas expected value of ED = +80 dBm (nearly) and PRF -10 dBm.
Why have you decided that Prf should be -10 dBm?

 

jit2015 wrote:
Also when i am changing the position of Antenna from horizontal to vertical i could see the ED value decreasing. So please tell me if this ED value has something to do with the orientation of Antenna.

Of course it does, all antennas are directional, some more than the others.

 

You need to use SMA-SMA cable if you want to do meaningful characterization of the transceiver.

NOTE: I no longer actively read this forum. Please ask your question on www.eevblog.com/forum if you want my answer.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

alexru wrote:

 

 

Why have you decided that Prf should be -10 dBm?

 

 

well Alex i have just used the formula (Prf = -91 + ED), where i am expecting ED = 80dB/81dB as i am using only one TX and one RX running in 11 channel only; and TX always being in continuous transmission mode + RX always in receiving mode. So the Prf value should come closer to +/- 0 whereas i am getting (-40dBm) - (-50dBm). What could be the reason for receiving power not coming closer to 0. 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

Balun insertion loss, antenna mismatching loss, over the air loss, any number of other losses. -40 dBm is a reasonable RX power for over the air transmission.

NOTE: I no longer actively read this forum. Please ask your question on www.eevblog.com/forum if you want my answer.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thank you very much Alex for helping me sorting out the faults in the transceiver and the communication between TRXs.

.