Investigating a RCWL 9196 / RCWL-0516 “Radar” motion detector module

posted in: Android 161

A new type of “Radar” motion sensor has been getting a lot of attention in the last couple of months, but no one seemed to know how they worked, so I decided to buy a few of these very cheap devices (sub $1) and investigate possible methods of operation.

The boards I bought use the RCWL 9196, but appear to have identical functionality to those with the RWCL-0516 chip on them

This github site https://github.com/jdesbonnet/RCWL-0516/ contains loads of useful information on these boards, and there is also an excellent video by Andreas Spiess on YouTube https://www.youtube.com/watch?v=9WiJJgIi3W0

Where the properties of these devices was explored.

I hope to have taken this at least one step forward with my tests.

The main difference in my approach is that I have connected a wire from the analogue signal output on the only IC on the board, into an analogue input on a STM32F103C8 (aka Blue Pill) board.

The pin I connected to is Pin 12 on U1, (RCWL 9196 and is the output of the 2nd OpAmp in that chip).

(Schematic from Joe Desonnet’s github account)

 

 

My RCWL 9196 board is not exactly the same as this, but the pinout of the IC is the same.

Also the RCWL 9196 is almost identical to the BIS0001

http://www.ladyada.net/media/sensors/BISS0001.pdf

Where pin 12 is labelled as 2Out

 

 

I then wrote a very simple sketch in the Arduino IDE to print both the analogue signal from 2Out and also the normal digital output from the board

 

void setup() {
pinMode(PA0,INPUT);
pinMode(PA1,INPUT);
}
void loop() {
Serial.print(“0,”);
Serial.print(analogRead(PA0));
Serial.print(“,”);
Serial.print(analogRead(PA1)+100);
Serial.println(“,4500”);
delay(10);
}

BTW. The reason I’m writing values of 0 at the beginning of the line of output and 4500 is because the Arduino IDE “Plotter” feature is auto ranging, and if I don’t include a lower an upper bound, the vertical scale constantly changes

Looking at the output when nothing is moving I see this plot

Green is the digital output (in this case its LOW / OFF), and the Red trace is the analog signal, which is close to half the 3.3V Vdd voltage supplied to the board.

Note. The STM32F103C8 has an anlogue input range of 0 to 4096 (12 bit)

 

If I start to wave my hand, starting with a small movement and then increasing, I see this plot.

 

As you can see the hand movement causes an immediate effect on the output of the second OpAmp, but the value has to go above (or below) a threshold before the digital output triggers

 

In this next plot. I was walking towards the sensor, and then stopped.

 

As you can see the digital output holds for around 2 seconds after the end of the input fluctuations.

 

The more interesting thing about this plot are the peaks and troughs at the start where I was walking towards the sensor.

I thought this could be because its sensing the movement of my legs, so I devised a better test where I stood on a chair and dropped an object from the ceiling, and observed the results.

 

I tried a variety of objects, and the best performing object that mimicked the properties of a person moving, turned out to be a damp sponge.

I tried a dry sponge, but it had no effect on the sensor whatsoever, but as soon as I got it wet, it was immediately detected.

 

 

In this plot the sponge is falling about 1m horizontally from the sensor, which is resting on a table about 1m from the ground.

As you can see, there are still multiple peaks and troughs in the output signal.

I know that there was some speculation that these devices work by using the Doppler effect,but this does not appear to be validated my the tests I have done.

So my theory is that the peaks and troughs are caused by reflected signals from objects, interfering with the oscillator / transmitter.
When I say interfering, I mean of wave propagation, where the reflected wave can be in phase with the oscillator or out of phase, resulting in the oscillator drawing more or less current.

https://en.wikipedia.org/wiki/Interference_(wave_propagation)

From Joe Desbonnet’s github repo,he observed that the oscillation frequency is around 3.1GHz with his module. So assuming my module is similar, then the wavelength of 3.1GHz is around 10cm.

However in my tests, I am not sure the peaks and troughs match exactly with that frequency, and the effect I see if more consistent with perhaps twice that frequency.

 

Doing some tests moving a piece of aluminium foil up and down, approximately 30cm, to 5 cm above the sensor observe these results when moving slowly

 

 

And moving quickly

 

 

What is fairly clear is that the interference is not from a single path, but rather that the aluminium foil (or the damp sponge), is reflecting signals directly from the device, but is also going to be reflecting, some reflections back to the device.

So its a complex pattern of primary and secondary signals, with the strongest effect most likely to be the primary signal straight from the device (transmitter)

Also just to complicate matters, the OpAmp IC is configured so that the output is always trying to return to a steady state.

This can be seen when the device first turns on, and the analogue output initially is at its maximum, and takes around 10 seconds to stabilise to Vdd /2

 

Looking at the schematic and also measuring the voltage from the RF oscillator / transmitter, using an oscilloscope. The oscillator output voltage, rises to around 0.4V very quickly.

However OpAmp 1, in the RCWL9196 is configured as a high gain amplifier (and filter), whose non-inverting input will be initially 0V.

The inverting input is fed from the output of the OpAmp via a resistor and capacitor network, and charges C7 via R6, and the RC network of R4 in parallel with C4

I don’t know if the resistor values on my board are identical to the schematic, but a rough calculation on the RC charge time of the inverting input would be 22uF * 1M = 22 seconds.

But thats the time to get to Vdd not to 0.4V, so I think its highly likely that the 11 seconds startup time, is the time taken to charge C7 to 0.4V.

I observed the fluctuations of the input voltage from the oscillator using my scope, but the change was minimal; at around 4mV, and I was only able to measure this using capacitive coupling on the scope.

So if C7 can charge from 0V to 0.4V in around 10 seconds, then it would compensate for a change in input from the osc (of 0.004V) in 1/100th of 10 seconds, i.e 1/10th Sec (100mS)

This effect is also observable in practice, by moving an object towards the sensor and then holding it. As you normally see a peak or a tough, but very quickly the signal is pulled back to its steady state.

 

I did attempt to increase the value of C7 from 22uF (226) a higher value, in the hope that I could make a much larger time constant, but I damaged the board somehow, whilst trying to do this, so I do not have any results for that test.

BTW. I have 2 boards, but I don’t want to modify the second one in case I damage that one as well.

 

So to sum up…

My hypotheses, is that these devices are a oscillator / transmitter, and that the detection method is by wave propagation interference.

This is consistent with many of the results I observed.

  1. Objects moving towards (or away) from the sensor, produce peaks and toughs rather than a steady state offset; which would be caused by the Doppler effect
  2. The peaks and troughs are complex, as the interference is generated by reflections of reflections.
  3. Waving a length of wire, (which would act as an inductor), near the sensor, produces little or no variation in the output
  4. As the unit has a range of around 4 or 5m, and detection does not seem to diminish strongly with increasing distance, it seems unlikely that the effect is being caused by capacitive coupling between the observed object and the oscillator (and its surroundings_

 

And where does this leave us…

Well, at the moment, I don’t see a use for these devices apart from their intended application of motion sensing.

I think that using the analogue output from pin 12, is beneficial, as it can be used to get some indication of the scale of the detection, and would allow the trigger level, and hold time etc, to be controlled in the application (e.g. Arduino sketch).

 

I think if a method was devised to be able to observe the output from the oscillator, without the current system that always returns the output to a mid point steady state, even if the oscillator is not in that state; that perhaps the device could be used more easily to perhaps determine the speed of an object. By determining the time difference between each peak.

However even with the necessary hardware modifications to facilitate this, there would still be the problem of reflections of reflections; which would cause the data to be difficult if not impossible to analyse

 

 

161 Responses

  1. Chris Chuter
    |

    Hi Roger, I’ve been reading your blog posts about the RCWL-0516 with great interest. I’ve got a bunch of them that I’m tinkering with that we might use in our hardware, but we have one issue. It’s 360 degrees. I’ve been scouring the net, and we really like the RCWL, but we cannot seem to find a version that is 180 degrees or anything less than 360. Do you know of any mods or any modules that are like this one, but not 360 degrees? I’ve seen a mod on thingiverse (https://www.thingiverse.com/thing:2315777) for a directional shield, but I have limited space around my enclosure, so I can’t make something that big.

    So far of all the modules we’ve tested, the RCWL looks the most promising (only 2.4mA draw, 3.3V, and few/no false positives), but we really need to either find the manufacturer to get a 180 degree version or come up with a creative solution.

  2. Roger Clark
    |

    Hi Chris

    I have not tried to make it directional, but I think it may be very hard or potentially impossible to make it totally directional.

    The waveforms I observed seem to indicate that the device gets effected substantially by reflected waves, which means that if you are using in a confined space e.g. indoors, that its entirely possible that the wave could reflect off an object in front of the device to an object behind the device.

    I also think that the method of detection, which seems to be “interference” between the device’s oscillator / transmitter and the reflected waves; would mean that anything you use as a shield could get energised by the transmissions and re-radiate etc

    I have noticed that the device will not penetrate window glass, so the material you use to shield does not need to be metal foil and potentially its better not to use metal foil but use something that absorbs the radio waves.

    I’m not sure what material would be best, but things with high water content seem to be detected the best by the device, so you could try following that avenue.

    You may also like to try absorbing rather than reflecting the waves from the back of the sensor

    The other thing you could try is adding an additional antenna at 90 deg to the board. You’d need to calculate the length of this, but is only going to be a few cm at the most (based on the wavelength of the oscillator.
    e.g. solder some stiff wire to the circular pad on the back of the device, at 90 to the board and see if that still works and also if it effects the directionality of the board.
    Not, you may find doing this makes it stop working altogether as the unit is a combined oscillator and transmitter , so the oscillator may simply fail to start

  3. David Fisher
    |

    In the video https://www.youtube.com/watch?v=9WiJJgIi3W0 Andreas Spiess did a review of different modules of this type and found the module HFS-DC06 is 180 degrees directional.

  4. Roger Clark
    |

    I saw that, but the DC06 module is a lot different from the other type. Its method of operation is probably different.
    It looks like a Doppler module.

  5. Anonymous
    |

    Can you try it with material classification? https://www.youtube.com/watch?v=B6sn2vRJXJ4

  6. Roger Clark
    |

    All my modules seem to have stopped working. If I get time I’ll order some more to do some testing

    However I don’t think it would work in the same way as the video.

    The diagram shown in the video has 2 transmitting antennas and 4 receiving antennas. It shows 4 different waveforms on the laptop.

    It appears to use the Google SOLI radar chip, which is a true radar in that it transmits a pulse and then listens for reflections.
    These motion detection modules do not seem to use that principal of operation

    From what I recall the output from these modules just becomes a stable flat line, when there is no movement.

    I’m also a bit sceptical about this video. I suspect its trained just to recognise the specific objects shown in the video, e.g. that specific orange, and that specific metal plate etc.

    Considering how revolutionary this system would be to numerous industries, I’m surprised that this has not been big news, e.g. the Video was released 9 months ago.

    I suspect there is some limitation eg. it must learn specific objects, and could not simply detect different size PET plastic bottles as being PET etc

  7. Gert
    |

    I see that you’re using STM32 and programming it using the USB port? What steps do I need to take to get that far?

  8. Roger Clark
    |

    I’m using Arduino on the STM32

    It uses my Arduino STM32 core (which has based on the abandoned LibMaple core from Leaflabs)

    I’ve posted various articles and youtube videos about this.

    Search on Arduino STM32 and you’ll find loads of resources, including our community forum http://www.stm32duino.com

  9. Gert
    |

    Thanks, I’m sure that is going to help me out

  10. juan3211
    |

    Hi, could we drive with the OUT pin a transistor to drive the transistor a relay t switch on lights ?

  11. Roger Clark
    |

    Yes.

    That’s what its sold to do.

    I am more interested in alternative more interesting uses

  12. Ian Paterson
    |

    Hi Roger good work, most useful. I have an interest in this module too and have been trying to get directional transmission. I`m using a rudimentary copper feedhorn attached to the transmitting side of the pcb. (the component side from what I have read).
    I do seem to be able to transmit through my kitchen glass door, but not through the house double glazing. I suspect the kitchen door results are suspect as it has multi panel glass and a lot of wood!
    Hooked onto an Arduino for simplicity of sensing. Doing some rough check on frequency of operation it appears to be 3.15Ghz.on my sample, Using an HP 8350B Sweep oscillator and HP 83595A plugin,and loose coupling at -60dbm output, I get trigger on at 3.147Ghz and off at 3.156Ghz using a .5 second sweep. For triggering the module (LED on at Arduino) my minimum sweep time is .026 secs, and a delta frequency sweep minimum of 5Mhz. More checks to do, but it is interesting. !

  13. Roger Clark
    |

    I know some people have had limited success using a horn to get some degree of directionality, but I think its mainly that it is shielding the oscillator / transmitter, rather than actually directing its radiation.

    If it was a more conventional transmitter, then a dish style antenna would make it quite directional, but this module is rather unconventional;-)

    Thanks for posting about what frequency it is transmitting on. I think I’ve seen similar figures in various articles on the internet.

    Re: Different types of glass.

    Its possible that the metal content in the glass is different, or perhaps just the thickness, or like you have suggested, its the wood that is making the difference.
    Its really hard to know, as the method of operation of this device is rather mysterious.

  14. Miguel
    |

    Hi Roger

    I’m currently playing with these boards and i have a application for them if i can get the detection range to be around 1m. In the specs say, the default detection range is 7m, adding a 1M resistor to R-GN it reduces it to 5m.
    Do you know if i add a higher value resistor will the distance be shorter?

  15. Roger Clark
    |

    If add a different resistor the range will change.

    However I’m not sure if you need to add a lower or higher resistor to reduce the range even further. I suspect a lower value resistor would be required e.g. perhaps 470k

  16. Chris Chuter
    |

    Yes, I’ve tested with various resistors for R-GN and lower resistors do appear to reduce the range of sensing, but it’s still all guess work. If you know of any references that explain it better please pass it along.

  17. Roger Clark
    |

    That resistor is part of the circuit that connects the output of the initial OpAmp, to its inverting input. Hence controlling its gain.

    The lower the resistor you use, the more “negative” feedback goes into the OpAmp which makes the overall gain of the OpAmp lower
    Just to complicate matters, the feedback path also has capacitors in it, so its also acting as a filter.

    You could try modelling the circuit using LTSpice, but as there probably isnt a “model” for the RCWL-0516 IC available, or even the necessary data to build a model for its internal operation, I think it would be a waste of time.

    Additionally, as the whole device, operates in a very strange way, which no one precisely understands; your best option is simply to fit a 1M ohm potentiometer instead of the resistor and try different settings and see what works for you.

    I don’t think you can damage it the device even if you shorted out the resistor, as on the circuit diagram, capacitor C3 blocks any DC component from getting though.

    I’d be interested if you posted a comment with your results

  18. Adrian
    |

    Hi Roger, love your posts, particularly your cover of this radar. i’m no engineer but wondering if its possible to remotely control its sensitivity and distance. what would be a better method than digital potentiometers? (using PiZero to take pictures in different enviroments)

  19. Roger Clark
    |

    You could possibly use a “digital potentiometer ” in place of the resistor which controls the sensitivity (it controls the gain / amplification of the signal from the oscillator / detector)

    However the value of resistor that is needed, i.e around 1 Meg ohm, is a lot higher then the “digital potentiometer” IC’s can produce. (as most of these have a maximum of 100k )

    Your best option is to the take the output from the first opamp, and read it via an ADC. I presume the PiZero has a ADC which you can use to measure that voltage

  20. Mike DeCarlo
    |

    Hi, what is the closest distance I can place the RCWL-0516 sensor and get accurate readings? I’m looking for a sensor that can be placed about 7 inches from the target and detect motion up to 4 inches accurately. Thanks!

  21. Roger Clark
    |

    These modules can’t tell you the distance to an object, they just sense whether it has moved or not.

    They also will not detect all types of materials, they seem to detect things with high water content better then other types of object.

    They can detect motion from about 0mm to 5000mm (5m).

  22. Andy Wong
    |

    R1 should be 100 ohm not 1K.

  23. Roger Clark
    |

    OK.

    I didn’t draw the circuit.

    I supposed I could use photoshop to edit the image somehow..

    Or… If I ever have time, I could redraw it using KiCad

  24. Al Brown
    |

    Thanks for putting this information together. Its an interesting module. Where do you believe the source of the transmission comes from in the circuit? To me it looks like an oscillator which is impacted by human capacitance; in a very similar way to the Theremin oscillator. The BISS0001 is a bunch of op amp comparators to do the triggering, but the PCB looks like two sections, the oscillator and the detection circuit. I see nothing on there that would lead me to a transmitter. A good test will also be to see how the sensitivity of detection will change with temperature.

  25. Roger Clark
    |

    The transmission comes from the single transistor on the right side of the board.

    The chip is just a standard “alarm” chip, used in passive infrared alarm systems, its a bunch of OpAmps and a timer.

    I don’t think the oscillator uses the capacitance of external objects, but I think it is influenced by RF reflections from those objects, causing fluctuations in the oscillator’s intensity

    Several people have suggested that similar detection system were used in World War II for various weapon systems to detect proximity to target.

    Some people are still of the opinion that it is a true Doppler module, and that the single transistor oscillator also acts as a mixer, and the resultant output is the Doppler frequency shift between the oscillator and the reflected (received) wave.

    I’m trying to think of a way to prove this one way or another.

    It could possibly be determined by looking at the resultant frequency for an object moving at a know speed.

    Looking on Wikipedia https://en.wikipedia.org/wiki/Doppler_radar

    Response frequency is 2v Ft / C

    where Ft is the transmitted frequency,
    v is the speed of the object (I presume in metres per second)

    So if this radar operates at approx 6 Ghz

    and an object moves at 1m per second

    The resultant waveform frequency would be

    2 * 6,000,000,000 / 300,000,000 = 40 Hz

    If the frequency is 6 Ghz, the wavelength is 5cm, so an object moving at 1 m / S would cause 1/0.05 complete cycles per second i.e 20 Hz

    So if my maths is right, then if its a Doppler device, the result should be twice the frequency of if its a reflection / interference system

    We just need some enterprising person to check my thesis is correct and to do some experiments under lab conditions and observe the results.

  26. HuTu
    |

    I like the way you analyzed the sensor so far. 😉
    At first I was skeptical whether it that sensor was really using the doppler effect.
    However, i just got one lying in front of me with the emitter-resistor signal (IF) disconnected from the BISS0001 and directly connected to my low-noise external preamp which i use for my other radar experiments.
    What i get is a classic doppler signal that matches the expected IF-frequencies of a 3,1 GHz transmitter.
    The signal gets even cleaner if you put the sensor inside a small metal box.
    The missing part concerning the “mixing-stage” may be explaned by the nonlinearity property of the transistor (classic diode mixer).
    So… the investigation can be closed with the realization, that the RCWL-0516 definately is a doppler radar sensor.

  27. Roger Clark
    |

    I think its hard to distinguish a interference effect from a Doppler effect.

    The only difference seems to be the frequency vs speed of motion.

    I tried to measure the input to the BISS0001, but because the signal is so small and has a DC offset, I had to switch my scope to AC input (Capacity coupled), so I could not tell if the output voltage remained at a specific level for a specific reflection from an object, ie like you would expect for an interference system.

    I think you’d need to rig up an object on a track moving directly towards the sensor at a defined speed and confirm the Doppler frequency is correct

  28. John Taylor
    |

    The way these work is to transmit on one frequency and then anything that bounces back is picked up by the transmit antenna and is fed into the internal mixer along with the original frequency: The output of the mixer is the difference between the two. When you move toward or away from the unit the return frequency will be higher or lower depending on the direction of travel and speed, i.e. the Doppler frequency shift. Since this requires the transmitted energy to be reflected back to the unit, the object to be detected can neither be a really good RF absorber and neither can it be RF transparent. People are adequate reflectors.

  29. Roger Clark
    |

    The site you posted the link to is flagged by my antivirus as potentially serving malware, so I had to remove it.
    (I know its probably a general purpose file sharing service, like Google drive, but its not possible for me to easily add an exception to the antivirus rules just for one file)

    I’ve still yet to see conclusive evidence based on the speed of objects and the output waveform, that its a Doppler system, rather than an interference pattern system

  30. John Taylor
    |

    I built the same thing in the ’90s that used a discrete mixer, F-to-V converter and threshold detector, the transmitter was nearly identical. These were used in car alarms and we tuned them by putting a 2in square of aluminum foil on a plastic fan blade for our motion reference.

    I can email the cleaned up schematic that was linked (SugarSync file server) if anyone wants it.

  31. John Taylor
    |

    Here is a more benign link to the cleaned up schematic: https://www.tayloredge.com/reference/Electronics/RF/0242.pdf

  32. John Taylor
    |

    This is the circuit from 1992: https://www.tayloredge.com/reference/Electronics/RF/RM1003.pdf

    The real elegant trick of this circuit is that the transistor is both the oscillator/transmitter and the mixer of the incoming signal where the output to the detector is the frequency difference between the oscillator and the reflected energy. The PIR detector embodied by the RCWL-9196 is well suited for this job as the signals from both the Doppler mixer and PIR sensors are on a par as to shape and amplitude.

    I had a bunch of the RM1003s left over from the last build because the yield was good enough (99%) that we did not repair failed units: For the first 1K build I ended up with 10 of them that were easily fixed and I used them up building motion activated VCR recorders for friends and family (Google VCR!). A couple months ago I was actually going to dig up the gerber data and have some more fab’d to play with them for security sensors when I came across these for cheap at MPJA.

  33. John Taylor
    |

    I stand corrected. If you click on the link the the 0242.PDF above (Reload to get the latest version) you will see on page 3 of the PDF the SA plot to get the exact operating frequency and a test where an aluminum plate is moved a specific distance while watching the output of the low pass filter from the emitter circuit in front of the detector IC. It can clearly be seen that what is being detected is the transmitter being de-tuned by the received signal which occurs on a 1/2 wavelength interval of the distance of the reflector from the transmitter. It’s amazing what you forget in 25 years!

  34. Roger Clark
    |

    OK.

    I think you are saying that the results of the tests are that the peaks and troughs are being caused by the reflected wave.

    Did I understand you correctly?

    If so, this is what I thought was probably happening, and also if so, that the device is also likely to get secondary reflections from the object via other reflective surfaces that are in its range.

  35. John Taylor
    |

    If you position an object (Reflector) such that it has a constructive or destructive effect on the oscillator then that sets the current bias point of the emitter circuit: More or less current consumed by the oscillator circuit shows up as a voltage dropped across the 220 ohm emitter resistor (R9). R9 represents only emitter current with no RF component because it is bypassed by C12 and C14 (The top of R9 is AC ground).

    If you place this object at various fractions of a wavelength from the transmitter you can see a DC shift between nearly 0 mV when the oscillator is operating most efficiently to up to about 10mV when the oscillator is maximally de-tuned and consuming the most current. The effect is maximum when the object is close to the transmitter and diminishes with increasing distance, i.e. distance dependent return energy but always a function of phase. Energy can also be reflected from a moving object to a stationary object and then back to the transmitter but the effect of this multipath signal will always be less than the primary reflection because the energy will follow the inverse square law in addition to the inefficiency of the secondary object.

    The lowpass filter formed by R8 and C9 selects for objects moving only up to a certain speed, filtering out high speed EMI events… run fast enough at it and it won’t see you!

    This mV signal is amplified by the first op amp and then AC coupled into the second amplifier which is biased at 1/2 VDD. The comparators in front of the OR gate then detect swings above and below 0.7 and 0.3 of VDD respectively.

    As previously stated, when an object is not in motion then the emitter bias point is static and regardless of this static amplitude will not be AC coupled into the second amplifier and therefore will not trigger the timing circuit.

    When an object is in motion, the transitions through the 3.2GHz wavelength phase angles shows up as an AC emitter bias current signal which is then successfully AC coupled into the second amplifier that then triggers the timing circuit.

  36. Roger Clark
    |

    Thanks John…

    So basically its not a Doppler motion sensor.

  37. John Taylor
    |

    Not at all, no Doppler in this box!

  38. Roger Clark
    |

    (LOL)

    OK. Thanks. I think you are one of the few people who agree with me, that it’s Not a Doppler device

  39. John Taylor
    |

    We were calling it Doppler 25 years ago and over the years that was what was stuck in my head, hence my responses above. This is an example of what should define the process of good engineering: “The first thing to do when you get an idea in your head is to figure out why you’re wrong.” and “Any data that does not fit your expectations is more powerful than your expectations.”

    After looking at the schematic and then running the test that yielded the data in the third page of the PDF it became pretty obvious how the circuit is working.

    If this were indeed a Doppler detection system and you increased the speed of attack you should see an increase in the output proportional to the increase in speed (No to mention behavior related to the direction of motion) but what actually happens is that the amplitude out of the low pass filter goes down: For an interference based system such as this appears to be, increasing the attack speed over a fixed attack distance results in the same number of half wavelength transitions but their frequency increases leading to higher attenuation by the low pass filter. Conversely a lower attack speed should increase the amplitude out of the filter in an interference based system. What happens on my bench is exactly what I would predict for an interference based motion detection system. Additionally, over the short test distance to limit the inverse square effect on amplitude the output looks the same for motion toward or away from the sensor, i.e. a fixed number of peaks for a fixed distance traveled.

  40. Roger Clark
    |

    Good point about the resultant frequency from a moving object going away from the sensor at a fixed speed, would be different to the object moving towards the sensor at the same speed.
    Thats probably the most simple test that confirms its an interference based system.

    By my rough calculations, which I posted in another reply, the resultant frequency of generated by a moving object, would not be the same as would be expected by a Doppler system.

    But the direction of travel test is much easier to perform.

  41. John Taylor
    |

    The “Frequency” of the signal at the output of the low pass filter is essentially “Zero crossings per second” or “Half wavelengths per second”. I actually ran that test captured in the PDF several times and in each, performed over the same distance but at different speeds the number of peaks was exactly same just with a time between peaks shorter or longer for faster or slower movement respectively. The resulting waveform was the same whether you were going toward or away from the sensor keeping the speed the same. The real clincher that this is an interference based detector was that the DC output of the lowpass filter followed the zero-peak-zero of the target position (Over each half wavelength) whether the target was moving or not, i.e. the output was related to position of the target alone and not its speed.

    Since the input of the second amplifier is AC coupled from the output of the first amplifier and you are probing that input you will miss the direct relationship between target POSITION and detector output: If you only get a signal when the target is moving you would naturally believe that this is a Doppler based detector.

  42. Dr.Tune
    |

    This sensor is identical in operation to some ~$10 microwave car alarms I got years ago; they use a couple of dual opamps and one RF transistor; I pulled out the analog signal before the trigger threshold detector and it was exactly the same pattern of zero crossings you show on these devices. This was maybe in 2005 or so; slightly less optimized design but basically the same thing.

  43. John Taylor
    |

    The RM1003 PDF linked above was a unit we built in 1992. Pretty much the same thing. I was actually going to build some more of these when I stumbled accross the RCWL-0516 at MPJA for cheap.

    I was planning on replacing the detection logic of the RM1003 with a cheap PIC to make it more useful so that’s what I did last night with the RCWL. I kept the radio and amplifier circuits and replaced the RCWL-9196 with a PIC18LF13K22 and an LDO using its comparator front end. I should have my first spin of the boards next week.

  44. Dr.Tune
    |

    John yeah I see that the car alarm I had in mind is essentially exactly the one you posted from 1992 (and they’re still making them today) 😉
    Thanks for your and Roger’s comments and explanation; playing with my car alarm years ago I observed this behavior (that a moving reflector was creating peaks and troughs but the effect was identical with +ve and -ve movement relative to the origin which isn’t very doppler-esque). You cleared that up for me finally 🙂

  45. Roger Clark
    |

    Excellent schematic… Thanks

  46. Dr.Tune
    |

    Yeah that’s great. I just did a trivial mod on my “XYC-WB-DC” boards; you can remove a 0ohm (placed instead of a fet option on this board) and run a little wire from pin12 to the 3-pin output connector, giving you 3v3 analog output. On this it appears they intend you to change R12 (the one in series with a cap to gnd on the the -ve input to the first opamp stage) to adjust sensitivity (from the placement of the resistor on the board underside, where it’s the only component other than the on-time-set resistor); instead of the 1M feedback resistor (R13 on your PIC schematic). I tried two identical sensors facing each other or at 90degrees (they don’t interfere in function even when quite close to each other) and displaying the two outputs on a scope e.g A minus B but it’s not very obviously useful for much.
    I’m setting up a bunch of ESP8266’s for driving LED lighting around the house; I’ll add one of these sensors on the ADC input of each one and see how useful it is for roughly tracking room occupancy. We’re in the middle floor apartment of three units, so I’ll try to put the sensors around half-way up the wall so neighbors walking around above and below are best attenuated. Making them directional by adding shielding (e.g. grounded tinfoil) seems only very slightly effective.

  47. Jan5412
    |

    Hey,
    I used a RCWL – 0516 module to turn off the display’s of a letter clock when no one is present.

  48. Roger Clark
    |

    Great, but the normal use of this module is not the topic of my post.

  49. Julio Gouy
    |

    Hi Roger, great info here, thanks. I noticed that the sensor detects movement when my air conditioning IR control is used. Have you seen this behavior during your tests? If this is a normal condition, it’s going to be difficult to use the sensor where a IR control is used to.

Leave a Reply