Shop OBEX P1 Docs P2 Docs Learn Events
Interfacing 433MHz Wireless RX/TX. Serout equivalent? — Parallax Forums

Interfacing 433MHz Wireless RX/TX. Serout equivalent?

FrameShift.FrameShift. Posts: 35
edited 2008-11-04 22:11 in Propeller 1
How would i go about interfacing the Parallax 433Mhz Receiver and Transmitter to the Prop?

Specifically the receiver.
Ive tried with BS2_Functions but i couldn't get it to work.

Any advice? Thanks.

Post Edited (FrameShift.) : 10/30/2008 11:11:15 PM GMT

Comments

  • Paul BakerPaul Baker Posts: 6,351
    edited 2008-10-30 23:21
    Try using FullDuplexSerial, it is the most used serial object. It is availible in your main directory of your Tool.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.
  • FrameShift.FrameShift. Posts: 35
    edited 2008-10-31 20:10
    ok well i think i got it working, its a bit finicky though.
  • Paul BakerPaul Baker Posts: 6,351
    edited 2008-10-31 20:52
    Can you describe its finickiness? Perhaps we can help you make it more solid.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.
  • FrameShift.FrameShift. Posts: 35
    edited 2008-11-01 17:45
    well i dont have the code with me atm. but i had the stamp transmitting a bit, 0 or a 1 every second or so. i had the prop receiving. it would receive the 0s and 1s but when the stamp isnt transmitting the prop outputs random numbers. like if i just constantly was sending 1s or 0s it would receive correctly. is there a way i could filter the receiving data or something?
  • Ken PetersonKen Peterson Posts: 806
    edited 2008-11-02 02:03
    I did a project involving one of wireless transmitter / receiver pairs. I had the same problem. I overcame it by sending the data in messages that begin with a few $F0 bytes to byte-align the message. I set the receiver to look for and then ignore these $F0 bytes and take what follows them into a buffer. I also used a checksum and rejected the message if it didn't add up. Fixed-length messages are easiest, but you can also send a message length byte to indicate how many bytes to receive in the message. Seemed to work well when I did these things. When the transmitter isn't sending, the receiver continues to spit out garbage.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    ·"I have always wished that my computer would be as easy to use as my telephone.· My wish has come true.· I no longer know how to use my telephone."

    - Bjarne Stroustrup
  • StefanL38StefanL38 Posts: 2,292
    edited 2008-11-02 09:30
    Hello,

    to state the obvious: the module needs a 5V powersupply.
    the prop needs only 3.3V

    As digitical data has only two states 0 and 1 = low and high
    it should be quite easy to establish a connection that works properly.

    If you receive data while the transmitter is not sending at all
    there is something wrong with the electrical connection

    @Parallax: The manual shows as small shematic where the rx/tx pin is connected to the IO-PIN
    WITHOUT Pull-up/pull-down-resistor. Are there Pull-up/pull-down-resistors on the modul ?
    (could you add this point to the revisionlist of the manual of the transceivers:
    if it has internal pull up write explicit about it
    if it has not add a shematic showing how this can be done)

    best regards

    Stefan
  • Sleazy - GSleazy - G Posts: 79
    edited 2008-11-02 10:10
    I have the 4800 baud 433MHz pair from sparkfun.· At under 8$ or so its awesome.· Ive got mine hooked to a keypad and NES advantage joystick , with a propeller inbetween to do some processing.·It appears I used FullDuplexSerial object by the parallax guys for the RF transmit and the LCD screen, whereas the NES object is a hybrid of the OBEX one.· Yeah ill post soon gotta clean a little, but you can hold all 8 buttons on the NES joypad and they all work, whereas the posted OBEX NES will only do two buttons at a time.· Got that over the 433MHz , its a bit-bang to a receiver protoboard , using FullDupexSerial again. Out to servos.· The transmitter and the receiver board·can mirror each other's servo control, so you can "proof" a·large·RC concept locally·before you run it over the RF remotely.·
    1024 x 768 - 118K
  • FrameShift.FrameShift. Posts: 35
    edited 2008-11-02 16:58
    In response to StefanL, i know all that. I don't think i receive data while its not transmitting its just the receiver spits out random numbers when its not receiving anything.
  • Ken PetersonKen Peterson Posts: 806
    edited 2008-11-03 13:47
    These cheap transmitter / receiver pairs (i.e. Sparkfun $5 units) implement the physical layer only and do not implement any data link protocol. They just modulate and demodulate the data on a radio frequency. If the transmitter is not transmitting, the receiver will continue to interpret the background radio noise it receives as bits and will continue to send that garbage onto the micro. It's up to the micro to determine if the bits coming from the receiver are valid data or just random noise. When the transmitter is transmitting, the signal to noise ratio is usually sufficient so that the receiver will get valid bits. The tricky part is determining when the string of bits coming in has transitioned from random noise to valid data.

    This is what I was trying to explain in my previous post.· If you start by transmitting a header of several $F0 bytes, the receiver can lock on and align to the start bits of the signal.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    ·"I have always wished that my computer would be as easy to use as my telephone.· My wish has come true.· I no longer know how to use my telephone."

    - Bjarne Stroustrup

    Post Edited (Ken Peterson) : 11/3/2008 1:53:04 PM GMT
  • Paul BakerPaul Baker Posts: 6,351
    edited 2008-11-03 19:23
    FrameShift, have you taken a look at the zip file for the product? It provides CRC code to eliminate this noise data stream, it is written for the Basic Stamp, but it shouldn't be difficult to translate it to the Propeller.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.
  • FrameShift.FrameShift. Posts: 35
    edited 2008-11-03 20:22
    Thanks for your input Ken and Paul. And i have not looked at the CRC code, ill be sure to look over that.
  • CannibalRoboticsCannibalRobotics Posts: 535
    edited 2008-11-04 21:11
    I've messed around with 433 MHz stuff for quite awhile. Getting them to transmit and revieve one way is typically not that hard.
    Getting them to switch roles to have a full duplax conversation is another thing entirely.
    Watch your delays between changing from recieve to transmit mode and back. The Linx products I use have significant delays to switch in and out of the T or R mode. The transmitter also powers up with a signal pulse output that your reciever needs to be able to digest. Read those spec sheets on the RF products very closely.
    You also need to look out for test proximity and ambient noise. If your transmitter is too close to the receiver at very high speeds you can 'saturate' the reciever. For noise I took an extra receiver and wired it to my scope as sort of a background monitor just to see what the ambient noise was before running tests.
    Finally, if your reciever has an adjustable squelch or you can modulate the transmitter power, make sure you have not accidently turned those up too high by not putting in a resistor somewhere.
    Good luck,
    Jim-

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Signature space for rent, only $1.
    Send cash and signature to CannibalRobotics.
  • FrameShift.FrameShift. Posts: 35
    edited 2008-11-04 22:11
    Thanks Jim. What I'm using is just a one way system, a receiver and a transmitter.
Sign In or Register to comment.