is there other way to know if TRW-2.4GHz is transmiting?

Hello, I do know one thing, it is accepting the configuration because I configurated it in direct rx mode and data and clk1 started to toggle. After I was sure that both transceivers were accepting the configuration y changed the configuration to 1 byte payload, one channel recieve, 16 bits CRC enable, shockburst, 250Kbps, 16MHz, 0dBm, RF channel 0:

RX: 00 08 00 00 00 00 00 AA 55 AA 55 AA A3 4F 01

TX: 00 08 00 00 00 00 00 AA 55 AA 55 A9 A3 4F 00

And when i trie to send that 1 byte, nothing happends, is there any way to know in shockburst if its transmiting? In my University lab is a Spectrum analyser, in what config should I see the carrier or something?

Next is the code I’m using for 8051 microproccesor, is assembler easy code:

RX:

ORG 9200H

DELAY EQU 00C6H

CE EQU 0090H

CS EQU 0091H

CLK EQU 0092H

DATA EQU 0093H

SJMP PPAL

;config numbers

PPAL MOV P1,#00H

MOV 15H,#00H

MOV 16H,#08H

MOV 17H,#00H

MOV 18H,#00H

MOV 19H,#00H

MOV 1AH,#00H

MOV 1BH,#00H

MOV 1CH,#0AAH

MOV 1DH,#55H

MOV 1EH,#0AAH

MOV 1FH,#55H

MOV 20H,#0AAH

MOV 21H,#0A3H

MOV 22H,#04FH

MOV 23H,#01H

POOLIN

SETB CS

NOP

NOP

NOP

NOP

NOP

NOP ;Delay os 6us before sending any config

MOV R5,#0FH

MOV R1,#15H

;Start configutation

CONF MOV A,@R1

LCALL SEND

INC R1

DJNZ R5,CONF

CLR CS

NOP

NOP

NOP

NOP

NOP

NOP

MOV R2,#14H

MOV R3,#19H

LCALL DELAY ;Delay of 3ms before changing from standby to active

SETB CE

WAIT SJMP WAIT ;Do nothing

SEND MOV R4,#08H

CLR C

LOOP RLC A

MOV DATA,C

NOP

NOP

NOP

SETB CLK

NOP

CLR CLK

NOP

DJNZ R4,LOOP

RET

END

TX:

ORG 9200H

DELAY EQU 00C6H

CE EQU 0090H

CS EQU 0091H

CLK EQU 0092H

DATA EQU 0093H

SJMP PPAL

;config numbers

PPAL MOV P1,#00H

MOV 15H,#00H

MOV 16H,#08H

MOV 17H,#00H

MOV 18H,#00H

MOV 19H,#00H

MOV 1AH,#00H

MOV 1BH,#00H

MOV 1CH,#0AAH

MOV 1DH,#55H

MOV 1EH,#0AAH

MOV 1FH,#55H

MOV 20H,#0A9H

MOV 21H,#0A3H

MOV 22H,#04FH

MOV 23H,#00H

POOLIN

SETB CS

NOP

NOP

NOP

NOP

NOP

NOP

MOV R5,#0FH

MOV R1,#15H

;Start configutation

CONF MOV A,@R1

LCALL SEND

INC R1

DJNZ R5,CONF

LCALL BEEP

CLR CS

NOP

NOP

NOP

NOP

NOP

NOP

MOV R2,#14H

MOV R3,#19H

LCALL DELAY

;Transmition of 1 byte

TX SETB CE

NOP

NOP

NOP

NOP

NOP

NOP

;Sending adress to transceiver

SENDAD MOV A,#0AAH

LCALL SEND

MOV A,#55H

LCALL SEND

MOV A,#0AAH

LCALL SEND

MOV A,#55H

LCALL SEND

MOV A,#0AAH

LCALL SEND

;Sending byte to tranceiver

SENDB MOV A,#52H

LCALL SEND

CLR CE ;Now is when the transceiver starts to transmit

NOP

NOP

NOP

NOP

NOP

NOP

WAIT SJMP WAIT ;Stops, do nothing

SEND MOV R4,#08H

CLR C

LOOP RLC A

MOV DATA,C

NOP

NOP

NOP

SETB CLK

NOP

CLR CLK

NOP

DJNZ R4,LOOP

RET

END

Hope someone can help me or suggest something to do.

Hello there.

I’m facing the exact same issue. Config is ok. I see it from the change in state of DATA pin, and also because, while I was not receiving anything, I switched to 8bit CRC and started gettins some general noise.

BUT no comm happen from one board to the other (2 mt apart).

If I transmit in a loop (say 4 packets a second) ONCE in a while the Receiver gets SOME of my data (correct!) among rubbish.

I checked everything: looks like a CRC or address issue… but IT correct.

Anyone has a clue?

I put into the delays, SPI speed is 500KHz…

Thanks

I don’t remember the values off hand, but go over the datasheet again to make sure you aren’t violating any of the timing requirements. They’re pretty slow. I had the same problems, very infrequently data would get through, when I was clocking the data in too fast. Check the clock speed AND time between setting the data line and the clock!

There isn’t any way to see that the module has finished transmitting, and if you send another data packet the transmitter messes up.

daemondust:
I don’t remember the values off hand, but go over the datasheet again to make sure you aren’t violating any of the timing requirements. They’re pretty slow. I had the same problems, very infrequently data would get through, when I was clocking the data in too fast. Check the clock speed AND time between setting the data line and the clock!

it says 500nS, and I’m waiting some 1uS (still have to try more… I did try less though).

Funny thing is that Config DOES work… and as the datasheet does not mention any differences between the 2 kind of SPI write…

I’ll try a slower clock/data. On some post here around, I read that the polarity of clock/data was INVERTED respect to datasheet, but I don’t think it is…

Can you tell me for sure WHEN the RF24 samples DATA when receiving fro m SPI? (I mean in your code)? Rising CLK or falling CLK?

Also, another note at some point in DS says “clock in TX bytes for instance at 10Kbps”. So I added some delay between one bytes and the next (say 5uS) and nothing changed. Actually this is not 10Kbps, but that one looked like an advice and not mandatory…

There isn’t any way to see that the module has finished transmitting, and if you send another data packet the transmitter messes up.

I supposed this, too. Let’s see how it gets…

Thank you

no way.

Lost some more hours.

I can’t understand why data-sheet can’t be made any clearer, and why a thing called “SPI” becomes a nightmare, while it should be quite clear: “clock max is… data is sampled on rising/falling edge… min delay between bytes is…”

And why, if it’s SPI, it may happen to depend on everything like time you wait before, or after, or between, and on the FIFO mood: if it’s SPI, it’s supposed to latch bits as the clock orders so, provided timing is respected.

And how one can design a thing with no way of reading back what’s written.

ready to throw those things to the dustbin

They made up for all of that with the nRF24L01. :wink:

brennen:
They made up for all of that with the nRF24L01. :wink:

Yeah, now I know :frowning: but I did buy them only one month ago… and they were supposed to work.

If anybody has a clue, i.e. somebody who has them working and can confirm “which” timing (inter-bit, inter-byte, between packet, between swtiched from RX to TX…) are the correct ones, I’d be really thankful!

DarioG:

brennen:
They made up for all of that with the nRF24L01. :wink:

Yeah, now I know :frowning: but I did buy them only one month ago… and they were supposed to work.

If anybody has a clue, i.e. somebody who has them working and can confirm “which” timing (inter-bit, inter-byte, between packet, between swtiched from RX to TX…) are the correct ones, I’d be really thankful!

I got a pair of MiRF modules working without any problems. They are interfaced to PIC16F88s, using the test software for the CC5X compiler on the SFE web site.

Leon

leon_heller:

DarioG:

brennen:
I got a pair of MiRF modules working without any problems. They are interfaced to PIC16F88s, using the test software for the CC5X compiler on the SFE web site.

Thank you Leon, here too :slight_smile:

Hi,

try measuring the power consumed by the radio using a simple I to V converter . There should be a sharp increase in power consumption when the radio is actually transmittin data.

Regards,

Lewis