distance between two specified objects

I'm looking for a method, without the use of GPS, to have one object output a signal (ultrasonic I'm thinking right now) and an Arduino board with LED blink faster and faster as you approach the hidden object.

This hidden object that is transmitting a signal is not in line of site, so IR can not be used. This hidden object can be behind another object, so PING sensors can not be used. Most importantly this hidden object needs to be identifiable, in other words if it transmits a signal the Arduino that's receiving the signal must know it's receiving the correct signal. This is required because there may be multiple hidden objects and I need to make sure the Arduino is setup to detect a specific one.

My best guess on how to do this would be to setup a beacon type device that transmits a RF signal at a specified frequency. Then have an Arduino board capable of detecting the specified frequency. As the transmission becomes stronger and stronger have an LED either become brighter or blink faster.

Any ideas on the type of hardware I could use to do this?

I think your right about RF being the easiest solutions given your restrictions listed. The detector for the Arduino could be just a simple RF detector that would generate a DC analog voltage relative to the strength (hence distance) of the RF source. A lot depends on the distance you are interested in, as at further and further distances you need much more sensitive detector and/or much more source RF power to be the beacon.

Check out this simple field strength detector, might be worth playing around with.


That field strength detector is pretty cool retrolefty. Any idea how it could be modified to sense 315 or 433mhz?

Simple diode based FSM are pretty wide band responsive. It may lose some sensitivity as the frequency raises but it will still respond assuming the beacon RF field strength is strong enough.

Now if you want the Cadillac of RF detection chips check out Analog Devices AD8307. This is a wide band (to 500mhz) logarithmic amp that outputs a Arduino compatible DC voltage relative to RF input strength. It is a $15 chip but if you understand what's going on inside and it's total dynamic range you would see that it is really a bargain.

I built a RF milliwatt meter from this chip and it measures RF power from
-77dbm to +10dbm and I found the accuracy matched my H.P. RF 8601A sweep generator within +/-1dbm over that whole range and frequency response was flat from the 110khz to 110mhz that the H.P. covers. It's a 5vdc chip and outputs a DC voltage easily used by an Arduino analog input. Plus it's still made in a DIP-8 package if desired. I'm a real fan of this device:



If I had three field strength detectors spread around my house and I had my mobile phone in my pocket, could my (rough) location within the house be triangulated?

If I had three field strength detectors spread around my house and I had my mobile phone in my pocket, could my (rough) location within the house be triangulated?

I don't think so with very decent resolution or accuracy. But you never know without actual experimentation, might be good enough for a 'rough' indication.


could my (rough) location within the house be triangulated?

No, the problem is that field strength is not related to distance within a house. Sure it is on an open field site but within a building there are so many obstacles causing reflections that the resulting measurements are not very accurate.

One company I worked for made radio pagers and they wanted to do this but it never worked.

Thank you for the input. I've gone ahead and ordered two AD8307. I have an RF transmitter that outputs at 315Mhz. Will the AD8307 be able to detect it (wasn't sure if it detected up to 100Mhz or 500Mhz)?

My transmitter is a WRL-08945 (from sparkfun).

(wasn't sure if it detected up to 100Mhz or 500Mhz)?

It will respond up to 500mhz, it's all in the datasheet. Keep in mind that if you don't require wide band response because your beacons are using a specific frequency, then you can use a tuned antenna and tuned input stage (coil/cap coupling) that helps sensitivity even more.

Your going to have to make sure your beacon has a good omni-directional radiation pattern or your triangulation calculations will probably not work very accurately.

To tell you the truth, I suspect you may not be totally successful in ending up with what you want, but it's a great learning experiment and not something done often around here. The environment that the beacon/receivers operate in will have a lot to say about the results.

The key may be to see how low a beacon signal you can use and still be detectable by the FS sensors. As power is increased there are bound to me more problems due to reflections/overloading/etc.

Keep us posted on progress and problems.


I have received the parts. AD8307 for the RF detection and using a WRL-08945 to transmitt the 315Mhz signal.

Problem is I’m having a problem knowing if in fact I’m successfully transmitting and/or if the AD8307 is working.

On the AD8307 I attached only pin 2(ground), pin4(OUT), pin7(5v) to the Arduino. Pin4 goes to analog input pin 0.

When reading the analog input value I’m just getting 0’s. Any one have any ideas how to use the AD8307 with an Arduino?

I came across this old thread, but I had been thinking about same thing.

I don't think you can do it with just RF. In an open room, you can use a combination RF and ultrasound beacon. Send RF and ultrasound signals at the same time. The detector could figure the time lag and hence its distance from the beacon.

There is an MIT system called Cricket that takes this approach: http://nms.csail.mit.edu/papers/bodhi-thesis.pdf It's a good read. Cricket does more and the paper has background.