Shop OBEX P1 Docs P2 Docs Learn Events
How to test a 433MHz RF Transceiver — Parallax Forums

How to test a 433MHz RF Transceiver

eiplannereiplanner Posts: 112
edited 2010-02-10 13:09 in Propeller 1
Hello all,

Does anyone know a method for testing the Parallax 433MHz Transceiver modules in order to find out if the onboard circuitry
hasn't been toasted?

I think there is a good chance through all of my initial trial and error with these modules that I have fubarred at least one of the two modules.

I'd like to find out for sure before paying to replace them.

Thanks

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
It's not the size of the dog in the fight, but the size of the fight in the dog.

Comments

  • Mike GreenMike Green Posts: 23,101
    edited 2010-02-09 20:02
    The only way to test them would be to try one of the sample programs on the Parallax webstore page for the product. If you had a 433MHz receiver with an oscilloscope output or a spectrum analyzer, you could tell if the transceiver is transmitting. If you had a 433MHz signal generator, you might be able to tell if the transceiver is receiving by looking at the output voltage, but it's easier to just try one of the sample programs.
  • LeonLeon Posts: 7,620
    edited 2010-02-09 20:15
    I've got a little hand-held amateur radio transceiver that will receive on that frequency. A cheap scanner should work OK.

    Leon

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Amateur radio callsign: G1HSM
  • eiplannereiplanner Posts: 112
    edited 2010-02-09 20:18
    I'll try that thanks Mike

    I currently have one transceiver on the BS2 homework board and the other on the Prop PDB.

    I have the the below listed programs running on the respective boards with no real results. Would these actually tell me if they were working or
    am I way off base?

    LOW 14
      LOW 15
    DO
    
      DO WHILE mode14 < 1
        DEBUG "No Signal"
      LOOP
    
      DEBUG CLS
      PAUSE 2000
    
    LOOP
    
    
    
    
      dira[noparse][[/noparse]11]~~
      dira[noparse][[/noparse]12]~~
      repeat
        outa[noparse][[/noparse]12] := 1
        outa[noparse][[/noparse]11] := 1
        waitcnt(clkfreq / 266_666 + cnt)
        outa[noparse][[/noparse]11] := 0
        outa[noparse][[/noparse]12] := 0
        waitcnt(clkfreq / 266_666 + cnt)
    
    

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    It's not the size of the dog in the fight, but the size of the fight in the dog.
  • eiplannereiplanner Posts: 112
    edited 2010-02-09 20:22
    Sorry no comments listed in there.

    mode14 is
    mode14       PIN    14
    



    On the BS2

    Pin 14 is DATA
    Pin 15 is TXRX


    On the Pro

    Pin 11 is TXRX
    Pin 12 is Data

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    It's not the size of the dog in the fight, but the size of the fight in the dog.
  • Mike GreenMike Green Posts: 23,101
    edited 2010-02-09 20:47
    I don't understand what you're trying to do with your programs. Your Prop program will potentially damage the transceiver since it switches the transceiver from transmit to receive and leaves the data line driven by the Prop. If the transceiver is receiving a signal, its data line may be high while the Prop pin is low. That's a short circuit.

    The BS2 program is similar in that it leaves the transceiver in receive mode with the data line driven low by the Stamp. If the transceiver's data line is high, that's again a short circuit and the transceiver and/or the Stamp I/O pin can be damaged.

    The I/O pin connected to the transceiver data line must be changed to input mode before (or at the same time) the mode is set to receive. You can help prevent damage if you use a 220 Ohm resistor between the transceiver data line and the I/O pin.
  • Mike GreenMike Green Posts: 23,101
    edited 2010-02-09 20:52
    I would probably start testing the transceiver modules by hooking up one module to transmit a steady signal using a pullup resistor on the data line and another pullup on the T/R line. I'd hook up a 2nd module with just power so it's in receive mode, then I'd measure the RSSI voltage as I turned on and off the transmitting module. If that worked, I'd swap modules. That would tell me that the transmitters and receivers are basically functioning and I should be able to try the sample programs.
  • eiplannereiplanner Posts: 112
    edited 2010-02-09 21:48
    I see what you are saying with the short circuit possibilities so I changed it a little bit. I'm working this way because right now, I haven't got the correct
    tools to measure the voltages. I may have to go get them.

    The below programs should work. In it's simplicity, all it's doing is setting one transceiver to a constant receive mode and the other to a constant
    1 second high/low pulse.

    
    mode14        PIN   14     'Set mode14 = value of Pin 14
    mode15        PIN   15     'Set mode15 = value of Pin 15
    
    Main:
    
      LOW 15                       'Set Pin 15(TX-RX) to Receive
    DO
    
      DEBUG BIN(mode14)        'Display value of Pin 14 (DATA)
    
    LOOP
    
      dira[noparse][[/noparse]11]~~                    'Set Pin 11(TX-RX) to Output
      dira[noparse][[/noparse]12]~~                    'Set Pin 12(DATA) to Output
      outa[noparse][[/noparse]11] := 1                 'Set Transceiver to Transmit
      repeat
        outa[noparse][[/noparse]12] := 1               'Send High Signal to Transceiver Data Pin
        waitcnt(clkfreq + cnt)    'Duration of High Signal
        outa[noparse][[/noparse]12] := 0               'Send Low Signal to Transceiver Data Pin
        waitcnt(clkfreq + cnt)    'Duration of Low Signal
    
    
    OUTPUT RECEIVED:
    
    This is with transceiver    A on BS2   and     and transceiver   B on PDB   
    1111111111111111111111111111111111111111110111111111111111111111111111111111111111111100111111111111111111
    1111111111111000111111111111111111110111111111111111111111111111111111111011111111111111111111111111111111
    1111111111111111111111111111011111111110011111111111111111111111111111111110001111111111111111111110111111
    0011111111111111110111110111111110111101111111111111111111111111111111111111111111111111101111111111101111
    1111111111111111111111111111111111111111110111111111111111111111111111111111111111111100111111111111111111
    1111111111111000111111111111111111110111111111111111111111111111111111111011111111111111111111111111111111
    1111111111111111111111111111011111111110011111111111111111111111111111111110001111111111111111111110111111
    001111111111111111011111011111111011110111111111111111111111111111111111111111111111111110
    
    Positions Swapped:
    
    This is with transceiver    B on BS2   and     and transceiver   A on PDB
    1111111111111111111111111111110000000000000000000000000000001111111111111111111111111111110000000010000000
    0000000000000011111111111111111111111111111100000000000000100000001000000011111111111111111111111111111100
    0000000000000000000000000000111111111111111111111111111111000000000000000000000000000000111111111111111111
    1111111111110000000000000000000000100000001111111111111111111111111111110000000000000000000000000000001111
    1111111111111111111111111100000000000000000000000000000111111111111111111111111111111100000000000000000000
    00000000001111111111111111111111111 
    
    
    




    Alright, in the middle of typing this post, I decided to swap the Transceivers and can now see an obvious problem. As I included
    in the code sample, you can see that it pretty much works in one direction and doesn't in the other.

    Should I continue testing and try something else or is this conclusive enough to make my decision to buy another?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    It's not the size of the dog in the fight, but the size of the fight in the dog.
  • Mike GreenMike Green Posts: 23,101
    edited 2010-02-09 23:20
    You don't know yet whether the Stamp I/O pin is broken or the transceiver is broken. Try the same thing using a different pair of I/O pins.
  • VIRANDVIRAND Posts: 656
    edited 2010-02-10 02:10
    This is something I really should have RTM about, except for the urgent point of suggesting to others...
    (I have not bought the modules yet.)
    Can the Transceiver Modules be used (for testing purposes) without STAMPS or Props,
    as if they were for Morse Code? Maybe using an LED instead of a beeping piezo buzzer?

    I suggest this because it may be very convenient, and also provide some immediate hands-on experience in using them,
    for those who don't have a radio nor other more or less useful test equipment.

    Also, a few years ago, the ESB caused severe technical problems with very powerful interference on 433MHz.
    I don't know if they quit it, but if not, 433MHz may still be unusable in some parts of New York City.
    The ESB put out a lot of power on it, and caused some serious technical problems a few years ago.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    I should be typing in Spin now.
    Coming soon. My open Propeller Project Pages and favorite links index.
  • eiplannereiplanner Posts: 112
    edited 2010-02-10 02:11
    OK, I switched pins on the stamp and received the same result as before. The one RF module can transmit, but it isn't receiving.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    It's not the size of the dog in the fight, but the size of the fight in the dog.
  • Mike GreenMike Green Posts: 23,101
    edited 2010-02-10 02:21
    @VIRAND - Sure, you could use the 433 MHz transceivers without a microcontroller.· They're not designed for that sort of use so they wouldn't function well.· For example, the receiver has an AGC that might cause it to not work well for something like Morse code.

    These are Part 15 devices.· They have limits on how much transmitted power can be used (and how big an antenna).· They're secondary use, so there's nothing you can do about interference (except switch to some other frequency).



    @eiplanner - I guess you need to replace the broken unit.· Be sure to call Parallax Tech Support.
  • eiplannereiplanner Posts: 112
    edited 2010-02-10 03:16
    Thanks Mike, I'll do that.

    I was so excited to finally have gotten to the stage where I was gonna plug in the transceivers and play with the wireless programming techniques.
    I have been spending all this time since my last post working on WIRED serial communications between the BS2 and the Prop PDB. I have gained a
    lot of knowledge in this process. As it was suggested to me by some good people on here, I too would recommend working on WIRED serial
    communications before ever attempting WIRELESS. It really really really is the fastest way to learn with the least amount of obstacles. I can now
    write the serial code myself to receive and transmit serial data without the use of any other objects. Which makes me very happy!

    Thank you Mike Green, StefanL38, and Dr_Acula for all the help!

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    It's not the size of the dog in the fight, but the size of the fight in the dog.
  • VIRANDVIRAND Posts: 656
    edited 2010-02-10 05:50
    Mike Green said...
    @VIRAND - Sure, you could use the 433 MHz transceivers without a microcontroller. They're not designed for that sort of use so they wouldn't function well. For example, the receiver has an AGC that might cause it to not work well for something like Morse code.

    Unfortunately, after reading the specified bitrates and the modulation type, I have to agree that simple testing
    of the transceiver modules by using them as manually controlled morse code radios (as is) is not supported,
    because the AGC may cause decoding of the carrier at slower than specified rates as random bits.

    Another idea that may be useful is to make square wave tones using a microcontroller outputting between
    1200 to 9600 Hz into the transmitting module, and heard as a tone with a simple piezo (without a beep circuit)
    at the receiving module's output. The tone, for practical test purposes, should produce a signal that is similar to
    transmitting "U" characters at the beginning of a normal serial data transmission.
    If this paragraph makes no sense, forget about it. Even my "simple" ideas are often bizarre.

    I have test equipment, but I was pondering what others or myself can do without it.
    eiplanner has apparently concluded that the serial-io should be working on the wire before trying on the air.
  • eiplannereiplanner Posts: 112
    edited 2010-02-10 07:00
    @ Virand

    My comments on wired testing first were meant towards how a person should go about setting up a serial circuit for the first time.
    It's just easier to get your code working first on a wired setup and then proceed to replacing the wires with a wireless device. This
    subject was covered in another thread where Mike was coaching me so I just wanted to come back and say that I followed this
    procedure and it worked well for me. It really had nothing to do with testing the transceivers, I just wanted to let Mike know my
    progress. Sorry for going off the subject.

    As far as my 433MHz Transceivers, I ran the posted programs above and figured out that I had one nonworking module. It would receive
    but not transmit. I am quite sure I must have toasted it a few weeks ago before I ever learned how to properly use it. Being an electrician
    and a newbie to electronics, I am still a little to aggressive with these sensitive components. I am learning though. In this case a $40 lesson.
    I guess you're gonna pay for an education one way or another.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    and so, the journey continues..........
  • VIRANDVIRAND Posts: 656
    edited 2010-02-10 09:08
    Sorry if I was misunderstood, as I often am. It makes good sense to test with wire before wireless.
    I did not intend to choose words that imply any judgment or emotion. I was also responding to him
    with ideas for simplifying testing the radio modules but even myself being unaware of your conversation
    on another thread didn't change my meaning... I meant I AGREE that it's also good to test the other parts
    of the project before the radios. I also thought that since most people don't have other equipment to measure or
    transmit or receive on 433 MHz, there might be a simple way to test the radios using only the radios,
    which may be helpful so that people won't have headaches looking at code if there is a radio problem,
    or be frustrated by the radios if there's a buggy code problem. Just trying to help. smile.gif

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    I should be typing in Spin now.
    Coming soon. My open Propeller Project Pages and favorite links index.
  • eiplannereiplanner Posts: 112
    edited 2010-02-10 13:09
    No worries...I'm glad to get all the input I can. Thanks for your help.

    The simple method I used in constantly listening for a signal and a steady pulse happened to work for
    my specific problem because my bad transceiver could still transmit. If it had been unable to transmit or
    receive, I wouldn't have known which unit was bad. In that aspect, I was just lucky in finding the problem.

    It probably does require an RF scanner or another type of radio receiving device to actually know for certain that the units are
    producing a signal. But are they receiving the signal is the more difficult thing to test for. I suppose it would then come down
    to tracing out the circuit through each component on the circuit board to find where the signal was lost. That's just speculation
    on my part because it's beyond my current abilities.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    and so, the journey continues..........
Sign In or Register to comment.