RF ??? short distance comms with the prop & minimum components?
Cluso99
Posts: 18,069
I am working on a project which operates in a harsh environment so it is a sealed device. I have decided I want to be able to communicate to it occasionally.
Originally I thought of using an exposed LED and photo-resistor/transistor, or something like that. Thread on using a LED as a detector http://forums.parallax.com/showthread.php?p=589699·Communications can be really slow and close, but needs to be small and cheap.
Then I thought about some of the recent threads. I found·Phil's Bell 202 Modem thread http://forums.parallax.com/showthread.php?p=789451· The one I cannot find was a thread about an AM Receiver is· http://forums.parallax.com/showthread.php?p=743002·(thanks Phil).
Now, the prop can generate a weak RF signal, as in the TV composite video (TV·Text object)·with baseband transmitter. So I know that the prop can be a simple transmitter.
The prop can also receive RF via a simple detector and software (where is that receiver thread when you need it??)
So this is doable
So what are the requirements...
What·this could·be used for...
Restrictions, etc...
This is actually quite similar to what I was discussing with Dr_Acula only yesterday regarding his wireless mesh, and the ability to update code in a failsafe way.
I believe this could all be prototyped on a single protoboard or demoboard initially.
Anyone have any input to this ?· Or have a link to the receiver thread ?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)
· Search the Propeller forums·(uses advanced Google search)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
Post Edited (Cluso99) : 10/31/2009 3:39:25 AM GMT
Originally I thought of using an exposed LED and photo-resistor/transistor, or something like that. Thread on using a LED as a detector http://forums.parallax.com/showthread.php?p=589699·Communications can be really slow and close, but needs to be small and cheap.
Then I thought about some of the recent threads. I found·Phil's Bell 202 Modem thread http://forums.parallax.com/showthread.php?p=789451· The one I cannot find was a thread about an AM Receiver is· http://forums.parallax.com/showthread.php?p=743002·(thanks Phil).
Now, the prop can generate a weak RF signal, as in the TV composite video (TV·Text object)·with baseband transmitter. So I know that the prop can be a simple transmitter.
The prop can also receive RF via a simple detector and software (where is that receiver thread when you need it??)
So this is doable
So what are the requirements...
- minimum components - preferably use short pcb track for aerial
- low speed so the Bell202 concept would be great (modulation 1200Hz and 2200Hz - was it 2225Hz?)
- carrier - need to find a frequency that will not interfere (perhaps AM band and test the receive frequency first) - say 50MHz to 150MHz 0.5-1.5MHz (oops!)
- low power
- short distance - inches to 50ft (50mm to 15m) - inches/50mm is OK for me
What·this could·be used for...
- cheap slow comms
- pass parameters back and forth
- code downloading (requires error detection and protocols - no problems here - been there, done that)
- comms to/from robots (no xbee modules, etc)
- comms between props around the house and yard
- the software modules could be used with professional (and faster) wireless transceivers such as XBee and Yishi, etc
Restrictions, etc...
- I have to keep my protocol·proprietary (will sit on top of base protocol)
- Will·release a base protocol (error·detection, ack/nak, etc)·for general use (MIT license).
- All the communication·hardware design open (MIT license)
- All the software to control the tx/rx open source (MIT license)
This is actually quite similar to what I was discussing with Dr_Acula only yesterday regarding his wireless mesh, and the ability to update code in a failsafe way.
I believe this could all be prototyped on a single protoboard or demoboard initially.
Anyone have any input to this ?· Or have a link to the receiver thread ?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)
· Search the Propeller forums·(uses advanced Google search)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
Post Edited (Cluso99) : 10/31/2009 3:39:25 AM GMT
Comments
-Phil
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)
· Search the Propeller forums·(uses advanced Google search)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
Regarding the search function I'm subscribed to the mailing list and I actually find it easier to search through my gmail account and it comes up right away when I type in "label: propeller am radio receiver".
For the RF link I wouldn't bother with the modem as it doesn't have to pass through analog channels, the Prop receiver is directly coupled. Many cheap RF remotes just use OOK, that is the on/off keying of the AM carrier. Wouldn't that work?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
*Peter*
Post Edited (Peter Jakacki) : 10/28/2009 8:03:55 AM GMT
What about ultrasonic. A small Piezo transducer might survive a "harsh" environment. A counter can easily generate a "carrier". You can On-Off-Key the carrier (OOK) or Frequency-Shift-Key (FSK). You might be able to make a narrow DSP receive filter(s) in software to increase sensitivity and reduce interferers. Ultrasonic can limit range to just what you want and can be highly directional, possible benefits when it comes ot security.
As for the link-layer protocol, you might want to look at AX.25 (Amateur version of X.25 usually via FSK), plenty of examples coded for micros out there (Google for "AX.25 TNC"). Perhaps easy to use an already rolled X.25 software app on a PC via the parallel port instead of the sound card in/out. AX.25 is a robust multi-drop protocol.
As for encryption, there's an MD5 has object in ObEx that might be useful obex.parallax.com/objects/321/. There's also an XOR cypher object on ObEx (use a Pre-Shared Key (PSK)?) obex.parallax.com/objects/349/. There are known exploits for MD5 these days. An XOR cipher may be better. Or combine them by using MD5 to exchange keys via a temporal One Time Pad (OTP) and then use an XOR cipher for data. Dunno, I'm not a crypto expert by any means, obviously havn't put much though into my reply on this, sorry.
Regards, David
With todays cheap high brightness leds, data streams can be had for cheap.
You can even use a led to accept the data stream. No special transistor needed.
The led can be made to detect high speed data the same way its used to detect a finger over it.
Its cheap. And leds can be sealed with just the tip exposed.
An example protocol that sends data via optical is SPDIF audio.
The stream is made to be broken at any given time.
Oops, topic says RF.. heh... technically...
its all just spectrum goooo anyway.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
TERMS OF USE: MIT License
"Permission is hereby granted, free of charge, to any pers...........................
..............................OMITTED FOR FORUM...............................................
.................. OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. "
The dsp/fpga king is dead, long live the prop.
Post Edited (Clock Loop) : 10/28/2009 12:19:38 PM GMT
Also, here's another option for an inexpensive radio link:
www.sparkfun.com/commerce/product_info.php?products_id=8949
www.sparkfun.com/commerce/product_info.php?products_id=8946
Unfortunately, the transmitter is currently out of stock.
KCP
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
"A government big enough to give you everything you want, is big enough to take away everything you have. "
- Thomas Jefferson
Generally Tx power needs to be kept under 10mW, so that will set the range. On the other hand, it also means the Tx circuit might not even need a transistor for amplification and could be driven directly from a prop pin.
I guess step 1 is to do a Tx and Rx and see if a sine and square wave go through with minimal distortion.
Step 2 - simple range test to see if this is practical at up to ? metres
Step 3 - maybe add in the Bell Modem code to encode and decode at 1200 baud.
Further steps such as xmodem for file transfers already exist in CP/M.
Indeed, I think most of the steps to full file transfers already exist. But not in one complete demo project.
Potential problems - working with a signal that fades with distance. Also handling potential overload to the Rx antenna ?? protection diodes.
I've built simple AM Tx and Rx circuits but I don't think I ever got the antenna right. I think need to study more on wound antennas on ferrite vs open wire loop antennas vs long wire antennas. And I guess this needs a real earth too which could be tricky on a boat. Or does a ferrite rod antenna mean an earth is not needed?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
www.smarthome.viviti.com/build
I had thought about using the LED as a detector. I have also thought of using a reed switch and a coil to drive it, but needs to be almost in contact. There are many cheap solutions for me.
Peter, yes, after posting I realised OOK - carrier on/off would be trivial. No need for modulation.
I am thinking 1-10mW transmit power - no transistors required. It will be half-duplex. So the transmitter will not overload (damage) the receiver. My device will not transmit until it receives something first, and then for a short time only. I will have to look up the frequency allocation to see what can be used legally.
So I thought just a few resistors/caps/inductor maybe. Also, I don't want a long wire aerial, just an inch of copper trace if possible. I cannot recall enough about RF to know if a pcb coil or straight track will be better - may have to look at a recent ARRL book.
I have done synchronous comms, compression and DES encryption, all before X.25. There was an embargo on DES in the 80's... not sure if it still applies. Anyway, I won't be encrypting, just using my own protocol.
However, I haven't played with the counters, so the transmitter and receiver section will be a learning curve.
I have time to do this, and I have to get my RamBlade pcb off to production first.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)
· Search the Propeller forums·(uses advanced Google search)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Style and grace : Nil point
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Computers are microcontrolled.
Robots are microcontrolled.
I am microcontrolled.
But you·can·call me micro.
Want to·experiment with the SX or just put together a cool project?
SX Spinning light display·
Want cheap wholesale electronic parts?
Transistor parts wholesale
www.freescale.com/files/rf_if/doc/app_note/AN2731.pdf
Jonathan
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
lonesock
Piranha are people too.
http://www.semiconductorstore.com/cart/pc/viewPrd.asp?idproduct=42881
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
BH
Post Edited (BADHABIT) : 10/29/2009 2:04:00 AM GMT
The original idea you had was a very good one.
Just use a single LED for input/output...it's very cheap, requires minimal circuit changes
and some software. An LED is a tough little thing...great for a harsh environment.
Is the device you want to communicate with accessible? I mean, can you walk over and plug in a cable?
If so, and if having an I/O jack is acceptable then just do that.
If you want a totally sealed device with no jacks then RF, optical, sonic and magnetic pulse are the best
choices...with LED optical the cheapest and easiest.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
"Where am I? Where am I going? Why am I in a handbasket?"
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)
· Search the Propeller forums·(uses advanced Google search)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
(Had to be careful on how I wrote that last bit, my original phrase would have tripped the message scanners)
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Style and grace : Nil point
It's also possible to send data I/O using the 2 wires that power a project.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
"Where am I? Where am I going? Why am I in a handbasket?"
It can also be rather entertaining to implement. I'm still working on turning the base "bell202" modem code (with some fixes, changes, and bastardizations) into a KISS-style TNC. So far I'm running up against the standard problems most other people whom have done this for other microcontrollers have: signal purity, garbage dejection, code/insanity management (and so on). At this point I'm getting halfway though a packet transmitted into RF (yeah, I'm one of those crazy HAM people) with about 50' between the antennas--so I've got to refine the analog portion a bit more before I can finish up the code.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--RvnPhnx
It is powered by sealed external wires, but comms over this will most likely not be possible because of noise. Maybe it's worth a second look.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)
· Search the Propeller forums·(uses advanced Google search)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
I tried this using the following program (full archive attached below), running on both transmit and receive Props:
It uses ctra to modulate the IRED at 38KHz when the outgoing data bit is low (i.e. when dira for OUT_PIN is set as an output). It requires an object like the included basic_sio, since the transmitter has to reside in the same cog, so it can toggle dira. Otherwise, you'd have to modify a program like FullDuplexSerial to set up the counter in the assembly cog. (Be sure to pull any unused serial inputs high. basic_sio will reset the Prop if it detects a break.)
I got reliable data reception at a range of about three meters while aiming the IRED at the detector. The range could be increased by driving the IRED (or multiple IREDs) at higher current with a PNP transistor. This will work indoors and, perhaps, outdoors with a sun shield.
-Phil
Addendum: Here's a scope trace showing the transmit waveform to the IRED (top) and the output from the IR detector (bottom). The high-to-low delay from transmit to receive is about 62uS; low-to-high, 200uS. Without timing pre-emphasis on the transmit side, this pretty much limits the communication rate to 1200 baud.
_
Post Edited (Phil Pilgrim (PhiPi)) : 10/30/2009 6:42:13 AM GMT
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Style and grace : Nil point
IRDA Transcievers are reasonably cheap and fast (115,200baud+)
Currently I am favouring the single LED idea (blue will give the narrowest and red will give the widest visible reception) and can also be used for an indicator when not used for comms. However, it doesn't have the RF range (out of sight) that would have been nice.
I have some time for this, so I will pursue the RF transmitter/receiver idea a little further.
Toby: Speed is not an issue, but yes, LDR's are slow.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)
· Search the Propeller forums·(uses advanced Google search)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
very sorry
1. Visible Red laser pointers are cheap and simple to modulate and seal against moisture.
2. Visible Green and some Blu-Ray lasers are even better for underwater transmission.
3. Fractal RF antennas give the best performance for the minimum PC board space.
4. RF is okay, but it interferes with my aluminum foil helmet I use for psychic security.
5. Best idea is LEDs. Cheap, simple and elegant.
Just throwing out ideas...
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
JMH
Post Edited (James Michael Huselton) : 10/30/2009 7:39:55 PM GMT
I am not looking for underwater transmission.
I will have to research Fractal RF antennas. Things have changed so much since I studied RF & microwaves.
Comms wasn't contemplated when I chose the prop for my app. I could have used another cheaper micro that I am also familiar with. Now that I have chosen the prop, I may as well use some of it's other features too
I am going to change the subject slightly to allow for other types of comms. Which ever way I go, there will be some nice code to come out of the project for general use.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)
· Search the Propeller forums·(uses advanced Google search)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
I think there was/is a 180KHZ freq (LowFer ????) for experiments, but that may only be in the USA.
http://www.cappels.org/dproj/minmassrf/Min_Mass_Wireless_Coupler.html
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Style and grace : Nil point
Post Edited (Toby Seckshund) : 10/31/2009 9:26:21 AM GMT
I understand totally, I'm not supposed to talk about stuff we work on here at all....sometimes
I have to bite my tongue. I constantly want to comment about a project or post images....it's frustrating.
The more I think on it the IR using a carrier freq idea (I think it was Phil's) is the best solution.
You can get considerable range with this, just like the range on a TV remote.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
"Where am I? Where am I going? Why am I in a handbasket?"
http://www.elektor.com/news/avr-microcontrollers-with-integrated-rf.1130827.lynkx?utm_source=UK&utm_medium=email&utm_campaign=news
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Style and grace : Nil point