EEVblog Electronics Community Forum
Electronics => Projects, Designs, and Technical Stuff => Topic started by: PA3BNX on January 04, 2012, 09:34:45 pm
-
Hello to all,
I am working on a VHF Direction Finder working
on the PC soundcard with GPS (etrex) and plotting real time
on maps.
So see the pdf file for circuits
And the zip file for other design from do2scf
Let me know what you think of it
Any comments ?
-
Nice, I've always wanted to build something like that.
Does the direction finding work equality well for signals that are meters away and signals that are a far away? (like a few km. Assuming the signal is strong enough to be received)
-
Hello everybody,
It works best if the antennes are positioned free and high and outdoor.
Other wise you have multipath and reflections.
You must have a minimum distance from the tx antenna array about 3 a 4 meters.
The distance can be of cource depending on power , height and annnas of transmitting station up to
20 to 50 km.
Practically speaking the optical horizon distance.
The program MyMapping.exe has also a optical horizon calculator witch can plot
range circels on the map
d=3.58 * sqr(h1 + h2)
d in km
h1 and h2 antenne heights in meters.
-
Hello Everybody,
I did post the antenna array for the doppler
It's a alu round plane with wooden base
and 4 whips of about 50cm welding wire 3 mm
Note that the antennas are not on the edges.
-
Hello Every Body,
I am also building a HF Peiler for the 80 meter amateur bands
That uses the catcontrol from a Yaesu FT817 or FT840
That reads the RSSI an switches the magloops on of with the Sense antenna.
This project is still under programming and construction
So hint and tips ?
-
Hello All,
I put a smal picture of MyMapping.exe
My vb2005 program that works in conjuction with
my SoundDoppler.exe
Today I did some programming to get the kml file for Google-Earth okay to.
Mymapping can print on bmp, jpg or png picture maps
almost in realtime the Doppler headings with many futures for getting cross line points
and gps inputs.
It can also put optical range circels fully automatic on the maps
ans speak the bearing like TomTom when driving and fox hunting.
-
Quite intriguing. What do you reckon the angular resolution to be? Anything that can resolve direction within 15 degrees with a sound card is pretty impressive.
-
Hello Everybody,
How accurate is a doppler bearing with the soundcard.
Well that depends on free rx site and less or no reflections
So the antenna array has to be free.
Secondly the amount of antennas and the circel diameter and how well
GP antennas are grounded at there base feet to the main plate.
The antennas must be omidirectional so not on the edges of the ground plate
The soundcard accuracy depends on the samplerate of the soundcard
in software and the doppler rotation speed frequency.
The more samples you have in one revolution the more precise it is.
You can easy have 50 to 100 Taps on 500 Hz so 360/50=7 degrees already.
Dont forget the averaging in the software that increases the precision.
Remember there is many time modulation on the FM carrier.
So for 4 whipes you can get about 5 to 10 degrees precision easy if there
are no surrounding reflections.
-
Hello Every Body,
Today I thought would it not be nice if I could modify the
NMEA string $GPRMC for the GPS mouse (GPS Yellow etrax)
So that it has not the GPSCompass but GPSCompass + DopplerHeading
There are many programs that can show GPS direct on a map.
So I started writing a modifying routine that
outputs also on a com port the modified $GPRMC
Example:
$GPRMC,124344,A,5157.8111,N,00534.2454,E,0.0,30.0,110112,1.1,W,A*36
So modify 30.0 compassdegrees with the doppler heading.
and then create a new CRC after the *
So my new GPS.exe program wil read and extract the $GPRMC from the
GPS mouse and modify it and send it out on the same or other comport.
So I have again a new option for my software to build in.
Are there more Visual Basic Coders on this forum ?
:o
-
neat project! my dad and his ham buddies went hunting a rogue transmitter a month or so ago. they drove around for at least a couple of nights with a yagi and spectrum analyzer before they found the culprit. ;D
-sj
-
Hello All,
I worked hard in coding to get the option
of modifying the $GPRMC string working in
my GPS.exe program.
I am still not ready with the DDE link stuff.
DDE is obsolete Dynamic Data Exchange stuff but
because my SoundDoppler en GPS are written in it I have to get it working.
Of cource I also will write this option in my New SoundDopplerNet.exe
But thats not finished / working yet.
I show you here a screen dump af a very intresting and good working
VHF soft-antenna-switcher for the doppler.
That is the datong doppler circuit on two boards.
All signals is done is through 1 coax cable witch does
do the RF, DC-powersupply and Reference for switching the antennas.
Every antenna has a wide band RF amplifier and then the output is fed throug a PIN diode
to the summer.
The advantage is that now you cannot hear in a nearby reciever the commutating
antenna whips acting as reflectors and because ist softswitching
instead of hard switching you can hear less loud stations.
-
Cool job
May I ask what are the pcb sizes and hole locations are you using?
I am currently working on pcb assemblies, holes, fixing arrangements etc, hence my curiosity.
-
Hello All,
Here I post a picture off the Input XYscoop found in SoundDoppler.exe
The upper line is not quite a sinus but a little distorted with
the SuperSimpleSoundDoppler design.
I want some hints how to improve the sinus with minimal extra parts.
and enough output to drive the soundcard line input.
I know my software only detects the zerocrosses to get the frequency and antenna 1 position.
But it looks not nice.
-
Hello All,
The PCB sizes of the datong antenna switch are about 10 bij 10 cm
They are put above each other and connected through wit some wires.
I have not made the PCB myself I did have bought some years ago
Just the Prints.
-
The PCB sizes of the datong antenna switch are about 10 bij 10 cm
They are put above each other and connected through wit some wires.
I have not made the PCB myself I did have bought some years ago
Just the Prints.
Thank you, 10cm X 10cm seems to be very popular naturally.
-
Hello Every Body,
Still working on my updated GPS112.exe program with
modified $GPRMC output through another or the same comport as where
the GPS-mouse is connected.
It takes more time than I thought.
Here is a picture of my Datong Doppler with additional
Lowpass filter on the clock for the reference of SoundDoppler.exe
(pin 12 of the 4060 chip)
This option is nice because I have the hardware 16 led display
and a connection to the pc through the SoundCardInput.
-
Hello Every Body
Here I show you pictures of
a datong antenna-switcher-unit with the
ne555 power supply print
and the 4 dipoles.
-
Hello Everybody,
I send the antenna switcher circuit in PDF of the datong doppler.
It has only one coax to the switcher unit only with the RF, Power and Reference tone.
Can some body make improvements ?
Today I worked on a new function in the InputXY scoop in my SoundDoppler.exe
So it can adjust and line up the green and yellow vertical line op on
two adjacent zero crossings from the reference (upper left channel) if you
press the middle button of the mouse or mouse wheel.
Further I am doing more modified $GPRMC string manipulations out in GPS112.exe
So still a lot of work to do...
-
Hello Every Body,
I show you a picture of my gps112.exe program
witch can send out the $GPRMC out modified with
gpscompass + doppler heading
It has also a seperate Terminal Out screen
I did already got test reports from people who have it working with
other mapping route programs.
If you click on the latitude or longitude labels
it switches between decimal degrees(Yellow) and degrees and minutes (white)
-
Hello Every Body,
I hope the new SoundDoppler119 Gsp112 and MyMapping129
is soon on the site of:
http://www.pi4wag.nl/index.php/pseudo-doppler-radio-direction-finder (http://www.pi4wag.nl/index.php/pseudo-doppler-radio-direction-finder)
GPS112.exe has Terminal Input and Terminal Output screens
with freeze option.
And all the options of what to send from com1 to com2
with Modified $GPRMC for other map plotting programs.
You can also input gps from gps with mixed Agrelo %bbb/q
and then output that through Modified $GPRMC to all kind of mapping programs.
Remark Modified $GPRMC means:
The GspCompass value is changed in GpsCompass + Doppler heading
And a new CRC is calculated in the standard $GPRMC string
So if you have a Pico Dopp RDF or a VRZA2011 RDF
You get many options.
Mymapping129.exe has also this possibility
Mymapping has complete GPS decoding routines
And can send out Modified $GPRMC from GPS and agrelo mixed.
So enjoy
-
Beautiful work, and good job on the web site too.
Now that the hard work is done I hope folks start building some of their own. Maybe even I could try my hand on it!
-
Hello all out there,
I found a nice looking chip for the doppler switcher units
Take a look at :
http://search.digikey.com/us/en/products/AS204-80LF/863-1008-1-ND/2052163 (http://search.digikey.com/us/en/products/AS204-80LF/863-1008-1-ND/2052163)
-
Hello Every Body,
I found a nice antenna for experimenting from SM0VPO for the
Super Simple Sound Doppler Doppler.
It looks okay and very small but i di not now the bandwidth
but I think it is usable for a VHF DSP SoundDoppler.
-
I was looking at one of these a while back. I believe there was a QRP article on it. It linked to a Ramsey kit. http://www.ramseyelectronics.com/downloads/manuals/DDF1.pdf (http://www.ramseyelectronics.com/downloads/manuals/DDF1.pdf) I believe this was by WA2EBY.
Using the sound card to do the dopper is a cool twist.
-
Hello Every Body,
Okay I know it's easy to adapt a conventional
doppler like the Ramsy DDF1 to make it
works also together with my Sound Doppler Software.
You just connect a low pass filter on one of the
antenna switcher outputs and make a sinus from it
at the rotation frequency from the doppler.
If you do this then it's nice too have an independent
16 led pelorus readout and the readout on the PC..
with maps etc.
-
Hi Lodewijk,
first of all cudos und big thanks for your software and work you put into. With help of this software we are enabled to narrow down some qrm on local repeaters.
Using primary this software and setup in a mobile configuration we experianced some issues, which would be cool to have within the software.
1) i identified, that selectivity in notebooks sound cards are pretty poor. especially on weak signals the trigger sinus wave is recognized also on the other channel. This produces wrong bearings to sort out. A big help would be being able to select two soundcards (one for rig audio and another the trigger) or having both on one channel (checkbox selection would be fine)
2) often craft builders are not capable to differ beween clock counter wise and reverse ;). A checkbox regarding that would be also very handy
3) wavelog creation is something fine, but its hard to relate them to postion and time. Therefor a general log with dde current gps, currently save wav filename and datetime would be a cool thing. If this would be a peramanent log with adding data always at the last would be perfect. This helps to analysis data afterwards
4) some replay feature would be cool, especially playing with some parameters could bring out more results ;) so i hope ;)
big wishes, but all generated from practical usecases :).
if i can give you a helping hand on coding vb please le me know. to contribute and not just taking from the project would be highly appreciated by me.
pse drop me a line if you like.
thanks again for the software, 73 de oe6rke, ciao Robert
-
How much of an issue would it be to use / modify for many bands ?
Being a ham , the 1st thing for me would be for RF in the area that is causing issues , bad power-line transformers , insulators etc.
Then as a 2nd , [ but as soon as I had something like this , it would create its own demand ] deliberate interference .
Thanks John
-
the qrm i mentioned is man made. in other words i an unknown person bothering and insulting hams on the repeater.
this is pretty bad and authorities and hams too are already on the seek mission for that person ...
-
Hello Every Body,
I see some have troubles with separation of left and right channels
in software.
Well let me say this you need a stereo soundcard
on the inputs.
Many laptop soundcards are just stereo output
and have one mono microphone input.
That's not okay for my application !
You can however take a USB stereo input soundcard.
with 2 line inputs.
Separating the reference input on one soundcard and audio input on another is not possible
because the left and right input needs to be taken in one conversion
So a soundcard has one digital sampled word with two channels in it.
My software uses a double word for both channels and then separate that in
left and Right channel so low-byte and high-byte
The two 8 bit channels can vary between 0 and 255
so 127 is the zero line of the audio.
This makes sure the audio sample and reference audio sample are exact taken on the same time.
You need not to have a good sound card just an ordinary one is okay with 16 bits and 22kHz is enough.
You can hear the reference on the right speaker and the audio on the left pc speaker
You can off course set the balance to the left so you only hear the audio from the FM reciever through the
pc speakers.
New info:
I am still working on the kml logging option for Google_Earth
in SoundDoppler.exe
It is still not ready as is wished
I am also working on a SoundDopplerNet.exe program in VB 2005
SoundDoppler119.exe and gps112.exe are in good old VB6
Let me now if you want to help programming on SoundDopplerNet.exe
-
Hello Every Body,
I think my software has possibilities to save the audio in a wav files with name
that contains heading quality time and data
All squelch controlled by squelch from rig or squelch from dopplertone
A CW or CCW option is includes it's called 0 /180 degrees.
It has a waterfall and SCF scoop to see the quality of the dopplertone.
It has also a Scoop screen with left and right audio lines.
Some Window Versions have a error in the winmm.dll
Then the left and right channel are changed.
You can by clicking on the do events label
The numbers under the Freq and Dcd checkbox
reset the soundcard buffer of winmm.dll pointer
The label Will be yellow for a moment
So the reference is again up in upper line of the inputXY scoop.
The frequency range of the antenna is as follows
The diagonal distance must be smaller then .35 lambda
of the working frequency because otherwise you Will get ambiguity
Of course you must adjust the length of the whips to about .25 lambda of the receiving wave length.
That's not critical at all is even quite good if the are not all 4 same length. but vary a bit in length
so they do not resonate and influence each other fields.
In general with about diagonal 34 cm apart you can easy do 2 meters and 70 cm
Just put on some shorter whips for 70 cm.
-
Hello every body,
I got a tip from to get easy a nice beautifull sinus out of the
SuperSimpleSoundDoppler
I want a nice sinus because it looks better on the inputXY screen
It has less harmonics so the left right preamps are heving less
trouble with crosstalking of the soundcard.
Just hook the lowpassfilter with the transistor at the end on one of the
outputs of the 4001 output ports hi...
Why didn't I thought of that before.
I have to change the PCB layout just a little bit.
Another errro on some circuits is that a 4060 has no Q10 output..
Wow thats strange they where out of pins on the dil package hi..
oe6rke
My SoundDoppler can save only wave files and has no gps latitude an longitude info stored
in the filename.
But wave file audio-loggen was meant for stationairy logging purposus.
But MyMapping has logging facilities of the packet.txt.
In packet txt is al the needed info for finding out at witch time date and place the logged
wave file belongs.
-
Hello Every Body,
Here are the PCB Layouts of the pe0ssb
softswitcher antenna boards
Upper and lower side of the HF part
-
Hello Every Body,
Here I send the lower part where the
PLL RF and softwitch pulses are made.
These boards are connected by wires close together.
-
Hallo Every Body,
Today i did some playing with the SuperSimpleSoundDoppler
generator and I wanted to improve the sinus output of it.
I come up with minor changes.
I did replace the elco for a 1k5 resistor
after the bc547 buffer emittor follower.
and I did put a smaller elco 2u2 in series with the potmeter.
Amazing on my scoop to see that the envelope of the output sinus is much better
looking now.
The lowpass filter now has a series extra resistor (1k5)
and is feed ed without the Xc of the elco.
The PCB layout is very simple to change.
So suk6
See the circuit diagram in the fl yer for details
-
Hello Every Body,
Some notes about the 4 whips
and running it at 2 meters and 70cm.
The optimal diagonal distance between the antennas for
2 meter
is about
300/145 * 0.35 = 0.72 metres
For 70 cm
is about
300/.70 * 0.35 = 0.24 metres
(Factor 0.35 comes from sqr( 0.25^2 + 0.25^2)
The maximum distance between 2 adjacent antenna may be 0.25 wave length
If the frequency gets above the calculated then the distance between antenna diagonal
then you get ambiguity.
So lower frequency is okay only you will have lesser doppler-tone-amplitude.
Ideal would be 4 J-antenna's they don't need a ground plate and the coax cables are not
in between the antenna fields like with the GroundPlanes or center fed dipoles.
On 70cm the capacity in the off situation becomes more important.
Also the cables must be of better shielded quality.
If you use the SuperSimpleSoundDoppler antenna switcher the 4 coax cables must be for
2 metres:
300/145 * 0.25 * 0.66 = 0.34 meters
0.70 metres:
300/435 * 0.25 * 0.66 = 0.11 meters
Very important with 1/4 antennas is the ground connection from the coax
to the base plate.
The biggest current is in the feed point of the 1/4 antenna so base plate must be connected okay
there.
Do not make the coax shield become an antenna and make sure the whips are have omni directional patterns
so there must be more place on the groundplate (Do not put them on the edges of a base plate)
I use for 2 meter a circle base plate of about 60 cm diameter and about 30 to 40 cm
diagonal space between antenna's
I hope this is some help for building the antenna system.
-
I don't understand your antenna system are you using a rotatable loop antenna and a sense antenna or are you using 4 fixed directional antennas?
I worked on an auto ADF system that had a rotating loop antenna that was null seeking that gave you an ambigous bearing then there was the sense antenna that resolved the direction. the bearing was read from a position sensor in the rotating antenna. this could give bearings down to +- .5 Degrees.
There is a picture of one here:
http://austradesecure.com/radschool/Vol29/Page8.htm (http://austradesecure.com/radschool/Vol29/Page8.htm)
-
Hello Every Body,
My SuperSimpleSoundDoppler (VHF and UHF) antenna system consist of only 4 whip antenna.
They are switched on one by one so there is always just one antenna connected to the VHF Receiver.
You must receive with a FM receiver.
The FM detector in the receiver is basically a frequency to voltage device.
Remember now the doppler tone frequency of a car coming to you at
constant speed.
The tone of the motorsound will increase en then if the car passes you it will decrease
That's the doppler Principe.
My other design I am working on is called HF Peiler.
That are two crossed loops with a sense antenna that's meant for HF.
I still do not have the HF Peiler working.
So I am working on two systems one for HF and one for VHF/UHF
Today I did work on the zerocrosdetector again.
I found that it is possible to have more acurate bearings even at the 8000 samples / sec
input soundcard mode.
Just detect where the zero cros does happen in the SCF filter array
And then take in account the amplitude values storen in the 2 adjacent array elements.
And so calculate the bearing + the right portion of the 2 element zero cross elements.
Earlyer I did just take the first element + 0.5 * zerocrossingfactor of the two adjacent arrswitchcap elements
In basic it looks like this:
Public Function ZeroCrossDetector() as Single
'Arrswitchcap() contains all the values summed from FM audio
'at right reference frequency.
dim x as int32
dim y1 as int32
dim y2 as int32
dim j as single
dim zerocrossfactor as single
zerocrossfactor = 360 / ubound(arrswitchcap)
for x = 0 to ubound(arrSwitchCap) - 1
y1 = arrswitchcap(x)
y2 = arrswitchcap(x+1)
if y1 > 0 and Y2 <= 0 then
j = math.abs(y1 / (y2 - y1))
return (x + j) * zerocrossfactor
end if
'If zerocross is between arrswitchcap(ubound(arrswitchcap) and arrswitchcap(0) then
y1=arrswitchcap(ubound(arrswitchcap)
y2=arrswitchcap(0)
if y1 >0 and Y2 <=0 then
j=math.abs(y1/((y2-y1)
return j * zerocrossfactor
end if
'If not yet found then return
Return 999 'No bearing found
End Function
I will do some hardware and software testing before I upload it to
The site of PI4WAG
-
Hello Every Body,
My Software:
Today I did make the waterfall display spectrum in 64 steps
instead of 32 in SoundDoppler.exe
So now the steps are 360 / 64 = 5.625 degrees and that about the
maximum precision of a pseudo-doppler-direction-finder.
It looks nice in graphics.
I was also thinking of streaming 2 channel audio over internet
So sounddoppler application can decode/save all on distance.
Not done yet.
I have some other thoughts about building a
Radio Direction Finder hardware
Okay my software runs on a PC with GPS and supersimple sounddoppler
through the 2 channel input soundcard.
But I want something smaller (wireless)
running on a iPad or android.
and/or maybe hardware control done on an Aduino board
I think it is possible to make the sounddoppler
running on an Arduino
The Arduino:
It has to generate the 4x antenna switch (hard or softswitching) signals.
and has to decode the audio from the RX receiver audio
and then output agrelo out on the comport %BBB/Q
or maybe it can display the bearing on some leds or
a small dot matrix display ?
The RDF wants a Gps-Rx and Mapping plot possibility.
The Arduino will never have the possibility to show bearings on a map
directly.
Other things not so nice is to save the audio of the RX squelch controlled
WB6EYV Bob Simmons (PicoDopp) did already something nice with pic16f628.
That outputs Gps ($GPRMC) and Agrelo (%xxx/q) mixed on a comport.
So there is some thoughts needed to find out what I maybe will be
trying to create in software and hardware on small tabloids.
It would be very nice if the Gps was build in the iPad or android.
And a wireless connection from arduino to the iPad (infrared or bluetooth).
Just programming the arduino will be a challenge.
It should emulate some sort of audiocard
Also on the ipad or android must the software written.
But maybe if there exists gps software then the Arduino could
modify the $GPRMC Course field and calculate a new CRC for $GPRMC string.
The Gps-Rx-input must be inputted in the Arduino with this method.
(My Mapping.exe and SoundDoppler.exe and gps.exe have this modified $GPRMC already)
So lots of things to do (All much time consuming)...
Let me know if you have better ideas.
-
Hello Every Body,
I did gain some improvements on my SoundDoppler.exe software.
I increased the amount off bars in the waterfall from 32 to 64
so no that's 360 / 64=5.625 degrees wide bars.
It look nice.
I also made a freeze button on the SCf and Waterfall screen
To stop it from running That's nice to precisely check the graphic data.
In the back ground all software runs of course.
The next version will be SoundDopplerbAll.zip on the site of PI4WAG.
-
Hello every Body,
I think I got the kml logging okay now in sounddoppler.exe
So you can log to kml files with 100 records
Nice for displaying in Google-Earth.
I am right now busy with a new future in MyMapping.exe
My own RDF plot program on UI-View32 Maps.
It will not get a zoom function but a AutoTrack Smallest Map
auto track mode and a just once button to track to smallest Map.
It's again quite complicated I am already working on it for 3 days now.
But I hope I get it working soon.
I let you know wen its on the PI4WAG Site available.
That's all foo ks for now.
-
Hello Every Body,
I just saw that wb6eyv has a external SCF Hardware Audio filter
Available on his pico dopp sites .
That connects in series with the audio and the picodopp input
controlled by the antenna switch signals.
It Looks nice.
PreDopp Audio PreSelector : US$ 109
http://www.silcom.com/~pelican2/PicoDopp/XDOPP.htm#FDDF (http://www.silcom.com/~pelican2/PicoDopp/XDOPP.htm#FDDF)
My Software has a DSP SCF filter but his hardware is nice too.
-
Hello Every Body,
I did put SoundDoppler120 and Mymapping on the PI4WAG web site.
SoundDoppler120cAll.zip
KML logging for Google-Earth works and also the
AutoMapTracking in MyMapping for about 150 maps in a directory.
I can still make improvements on the software but it does work.
-
Hello Every Body
MyMapping 131 is on the PI4WAG site now
SoundDoppler120dAll.zip
MyMapping has now scroll through the maps with
mouse wheel and pgUp and pgDown keys with the last
bearing always on it.
Wen AutoMapTrack is switched off.
Further I am trying to create new SuperSimpleDopplerPeiler design in DipTrace
For me the first time ever to try to create a diagram and PCB in a specialised Diagram / PCB program.
http://www.pi4wag.nl/index.php/pseudo-doppler-radio-direction-finder (http://www.pi4wag.nl/index.php/pseudo-doppler-radio-direction-finder)
-
Hello Every Body,
I had the flue so
I didn't work a lot on the software.
But today I started again some programming.
In program SoundDoppler.exe
I made the turnprompt grey orange and red
depending on the level of the Rx sound.
So more then 90% is orange and 100% is red now.
In program MyMapping.exe I wanted to have the Map.inf editor for the
UI-VIEW32 maps in two input modes.
GPSDegrees and DecimalDegrees (Like Google-Earth uses).
So it's possible now to do that.
The Map.inf files keep ofcource the same format in GPS degrees.
(GpsDegrees is the same as NMEA0183 has for latitude and longitude)
0000.00N, 00000.00E
0000.00N, 00000.00E
Netherlands
So Upper-left-corner and Lower-right-corner
coordinates and a name description
Coordinates are always in GPSDegrees
That is Degrees Minutes.Decimalseconds
So every Map in BMP, JPG, GIF or PNG format
must have a same name.inf file in the same directory.
Extra menu for displaying a legend on the map
as km by km.
I also made kml logging possible in MyMapping (kml files are for Google-Earth)
only if you have a VRZA2011 or Picodopp + GPS connected to
MyMapping.exe
I will soon put the updated files on the site of PI4WAG.
-
Hello Every Body,
I have a new updated version SoundDoppler120fAll.zip on
the Pi4WAG site now.
Some things again improved hi...
Like the KML logging and plotting route lines on MyMapping.
Further some improvement on Gps113.exe
So have fun trying radio foxhunting,
-
Hello Every Body,
I did work quite some time on the MyMapping.exe software this week
but I also have a nice antenna hardware hint.
Just clamp 3 a 5 ferrite clamps around the coax and control cables that
go vertical under from the antenna switcher.
The vertical cables act as field disturbance for the 4x 1/2 wave length dipoles
So make them more or less invisible for the radio field by using clamps so the length in the field
never reaches a 1/4 wave length of the Doppler reading frequency.
Sort of stealth technique.
Of course also use a wooden or PVC tube to hold the 4 antenna's support.
Take a look at this link to from DopplerSystems.
http://www.dopsys.com/products/Series%207000/Antennas.html (http://www.dopsys.com/products/Series%207000/Antennas.html)
Have fun.
-
Hello Every Body,
I found some new stuff about getting the most out of the
doppler antenna system.
[url=http://members.chello.nl/~w.hofman/pa8w]http://members.chello.nl/~w.hofman/pa8w] [url]http://members.chello.nl/~w.hofman/pa8w]http://members.chello.nl/~w.hofman/pa8w]http://members.chello.nl/~w.hofman/pa8w] [url]http://members.chello.nl/~w.hofman/pa8w (http://[url=http://members.chello.nl/~w.hofman/pa8w) ... Arrays.htm[/url]
http://www.qsl.net/df9ie/ (http://www.qsl.net/df9ie/)
Today I heard even more antenna information.
The 1/2 wave antennas may not be 1/2 wave dipoles with gamma match
because the antenna is resonant and influenced the near field.
So you definitely need to use 1/2 wave open dipoles.
Make sure the antennas are not resonant so use some resistors in series
in the dipole from 10 ohm to 1k ohm from current center to top
to make sure they do not resonate
Take also a look at the nice R&S DDF007 Handheld Portable Direction finders.
http://www2.rohde-schwarz.com/en/products/radiomonitoring/direction_finder/DDF007-%7C-Side_View-%7C-32-%7C-7349.html (http://www2.rohde-schwarz.com/en/products/radiomonitoring/direction_finder/DDF007-%7C-Side_View-%7C-32-%7C-7349.html)
Have fun,
-
Hello Every Body,
Some pictures of my Super Simple Sound Doppler
with 1/2 wave dipole antennas.
I did use a extra diode in series of the coax shield at the end of the
open dipoles of about 1 meter length.
And I used some ferrite cores around the control and coax to the switcher unit
and used a PVC pipe
So take a look...
-
Hello Every Body,
Today I saw a other improvement from PA8W
for the dipole 1/2 wave antennas.
Not only add a series diode between the coax shield
but also a 1 m Ohm static discharge resistor across the (PIN)diode.
so the antenna elements never can get static charged.
When the no control voltage there the antennas can be static charged.
I have an update software version of my SoundDoppler120Gall.zip on the site of PI4WAG
-
Hello everybody,
I did some drawing work on the antenna switcher circuit diagrams
for the Super Simple Sound Doppler.
You can see the circuit if you use 4x 1/2 wave dipoles.
With the diodes and bleeder resistor at the antenna feed points.
-
Hello Every Body,
I did some sketch for a Super Simple Sound Doppler
with negative voltage for the diodes if you use ordinairy
1n4148 diodes as Pin Switches.
I am trying to build en draw a new PCB in DipTrace to right now.
I did some changes in the outputcircuit to try to softswitch it.
So take a look and give comments.
-
Hello Every Body,
Yesterday I did a radio Veron club demonstration with the Doppler's.
Today I did rebuild the 4 x 1/2 wave Doppler antenna at home and it didn't work okay anymore.
It took me quite some time to find out what was wrong.
But the RVS BNC Chassis had no good contact for RF to the aluminium.
But still the DC contact was good enough to measure voltage drop over the
1n4148 diodes.
It was strange what happend.
I did wire the mass to the solder lug so the RF contact is again okay.
It has to do with corrosion or bad contact
from RVS to aluminum.
Further I did reduce the 4x 100nF C's at the lowpass at the 4001 NOR outputs
to 1nF on the SuperSimpleSoundDoppler circuit.
The not connected output looks much better on the scoop hi...
The bare 4001 nor outputs are not very happy with just 470 ohm and 100nF as load only.
The Doppler works equally good.
-
keep up the good work, I read your posts with interest.
regards
SW
-
Hello Every Body,
Today I did work on my 4 magnetic feet for the car with 1/4 wave monopoles for 2 metres.
They have about 8 cm diameter feet with rubber beneath them.
About 100pf capacity between earth and coax mass.
So I decided to put aluminium foil underneath them and wrap that with a tire wrap around the base clamp.
No or less wrinkles and now I have more then 700pf
So that's a lot better for mobile using.
So try that to if you want to use 4 monopoles on the car.
Remember that good mass or RF earth is needed for good bearings with a Doppler.
-
Hello Everybody,
Today I did draw a even more simple SuperSimpleSoundDoppler circuit
with a 4017
I have not build it yet but I think it can run as well...
It would be easy to make a 3 4 5 or even 8 antenna SuperSimpleSoundCard design now.
Just put the reset line further away and add some more antenna's hi..
Don't forget to change the oscillator frequency accordingly.
I did put to diodes to have a symmetrical block wave to the lowpass filter
for the reference signal with the 4 antenna circuit.
I added a resistor from base to mass at the referency frequency circuit of 100k
Today 6-6-2012
I changed the buffer reference transistor to a collector tapped one so the output is
constant if I Remove or Connect the antenna switcher unit control cable
I got it all working on matrix PCB now.
Time to draw a new PCB layer for boards hi.
-
Hello Everybody,
Two pictures of the 4017 SuperSimpleSoundDopplerwith 4017 chip.
It works okay.
I will soon release a new version of SoundDoppler121.exe with improved
to many zerocrossings routines and of cource the new circuit 4017 in it.
-
Hello Everybody,
Take a look here:
Balint Seeber
http://wiki.spench.net/wiki/SDRDF (http://wiki.spench.net/wiki/SDRDF)
I made a very simple tool to test very easy the 4 antenna array.
It's just a battery and 4 switches to switch the antennas on.
This makes it easy to test the cable and with a spectrum analyser to check the working
of the antenna Assembly.
-
Hello Everybody,
Here is a nice link to a modern way of RDF ing !
http://www.narda-sts.de/fileadmin/user_upload/cockpit_ida/literatur/IDA-Brochure_E0288A_02_2012.pdf (http://www.narda-sts.de/fileadmin/user_upload/cockpit_ida/literatur/IDA-Brochure_E0288A_02_2012.pdf)
I have build the simple test circuit some messages before.
And it's very usefull.
I found in one of my Doppler antenna assembly's a diode
that was not switching off well
I used old diodes from scrap hi .
While the diodes are in series so if one doesn't switch off you don't
notice it so fast.
But I connected my TV tuner spectum analyser to the output cable of the
antenna and sweeps just the local 88-108 MHz on the SA
And very easy I saw that this unit didn't switch off as good as the others do
and I found one diode not being a 1n4148 hi..
After placing it with an other one from scrap it works okay now.
-
Hello Every Body,
Some body (Michael Schenk) in Germany is using my software for 27 MHz foxhunts
Dopplerpeiler (https://www.youtube.com/watch?v=73_M_59gNvc#ws)
I am working on FT817 Cat control module in MyMapping135.exe at the moment.
Not ready yet but making progress
-
Hello every Body,
Today I did some programming to make
an extra form in SoundDoppler122.exe
For test in the Demo2_mode.
A extra button "Adjust" on inputXY screen
Now I can adjust with a 3 sliders the
amplitude, phase and noise.
Generated internal to test all the software routine's to see if they are all
correct working.
I should have made this earlier hi...
I also removed some bugs in the soundcard driver.
It's also very nice to see how the software is functioning without
having hardware connected.
So soon it will be available on the website of Pi4WAG as SoundDoppler122aAll.zip
-
Hello Every Body,
Subject: 12 Volt power supply in car for Doppler Fox Hunting
-----------------------------------------------------------
I made a 12 volt connection box for all 12 volt connections
if you are going to fox (balloon) car hunting.
Most cars have just 1 cigarette connector.
(You can buy adapters from 1 to 2 or 3 cigarette jacks.
They are not fused separate and also have the problem of
bad contacts while driving)
Many cigarette plugs have the property to
fall out (Bad contact !) if you start driving.
That can be funest if you have more devices connected
to cigarette jacks and the devices are in between connected
with other cables.
That's why I suggest to feed all devices from 1 cigarette jack.
All the min connections are centered around the
device with draws the most current (The LapTop)
You have to connect to the car 12 Volt supply:
1: Laptop
2: Portophone/Scanner
3: Gps Rx (track Garmin)
4: SuperSimpleSoundDoppler
(All my powersupply cords have 4mm plugs
also easy for use in the shack)
I did put a switch 4x red and 4x black 4mm jacks and
4 leds on a Small plastic box with a power cord with
a cigarette connector.
The on/off switch makes it easy to plug in the
4mm plugs and check if all okay and then switch on.
The leds are very handy to see if all fuses are okay inside the box.
It's easy to make a mistake that's why there are inside
fuses on plus and minus lines.
There is also a reverse protection diode that blows the main fuses.
The Laptop uses the most current so that's fused at 4 Amps
and the other devices are connected after this connection.
Maybe it looks an overkill to fuse all bana's separate
but I know that it is necessary.
Faults are made easy in the field hi..
Put also some text on the box where to connect the devices
because they are fused differently.
The Laptop will draw the most power.
Connect that to the 4mm jacks direct after the switch and fuses
Also this tries to avoid groundloops as much as possible with 1 powersupply source.
because all the other divices are connected from this powersupply point.
Hint: Put some spare fuses inside the box.
There is a new SoundDoppler123All.zip on the site of PI4WAG with
improved zerocross detector.
-
Hello Every Body,
PA8W has some new PCB layouts etc from his Autonome Doppler
Very nice.
http://members.chello.nl/~w.hofman/pa8w/BuildingTheRDF.htm (http://members.chello.nl/~w.hofman/pa8w/BuildingTheRDF.htm)
-
Hello Every Body,
I am building the PA8W 32 led Doppler now from the
PA8W site..
No microcontroller just cheap Cmos IC's..
PCB's look good.
I also did some programming stuff in the SoundDoppler Software.
So take a look at our club site PI4WAG and the site from PA8W.
(There are new drawings etc to there and you can order the PCB's)
-
Hello Every Body,
I will soon update a new version op SoundDoppler
and my new advances in Radio Direction Finding.
I have really made nice futures in the newer software.
Nice demonstration of DopplerSystems
Dough Havenhill of Doppler Systems
https://www.youtube.com/watch?feature=player_embedded&v=cAyc57L8zdw#t=883s (https://www.youtube.com/watch?feature=player_embedded&v=cAyc57L8zdw#t=883s)
-
Hello EveryBody,
Here I show photos of my new build
autonomedoppler design pa8w.
http://members.chello.nl/~w.hofman/pa8w/dopplerRDF.htm (http://members.chello.nl/~w.hofman/pa8w/dopplerRDF.htm)
Upper side the pelorus and pot meterpanel
can opened by 4 hinges
en just 3 m3 screws.
The bottom is also hinged and closed with one m3
-
Hello Every Body,
I have done some building for the 4017 SuperSimpleSoundDoppler.
PA0CVW did some print art work
and I did also some PCB work.
We did this in Paint !
There is a jumper on the board that's used for
3 of 4 monopoles or dipoles Doppler antennas.
So it's also easy to have a 3 antenna direction finding system.
PA8W is working on a 8 antenna Doppler direction finder with soft switching
So we hope to get that working soon.
So have fun,
There is also a new version SoundDoppler124cAll.zip on the PI4WAG site.
Soon there is version SoundDoppler124eAll.Zip
I added MyMapping137 with Waypoints
And I fixed a Bug in SoundDoppler124 SinCosDetector.
And added a Error message for the referency if something goes wrong
with the hardware connected.
I did build a 4017 SuperSimpleSoundDoppler in a blue PCB box
with speaker.
-
Hi Lodewijk!
Thanks for that amazing Software!
In the moment i use a Ramsey-2-Sounddoppler with 4 Dipols.
I builded up a 2x4017 PCB for 12 Antenna-Switcher an 12 Dipols with 2,66m in diameter.
If you wish, i can give some Photos or Layouts in KiCad.
I have a wish for the Sounddoppler-Software, can i start? By the way... of course not now, step by step, if you think it makes a sense.
- KML-Log saves in a day-folder and then in a hour-folder for a defined time period.
Edwin PA7FRN set a test account at his website for me and it works very well!
One Question i still have...
GPS for mobile-use. Can i use any USB-GPS Receiver that emulates a COM-Port?
best regard
Daniel
-
Hello Deniel and others.
I saw that you want to use the DL5DI URL protocol
and you cannot change the URL.
I do not use this myself but I will check the code
and make it possible to change the URL
So here I piece of the subroutine I use.
Public Const strcURLdl5di As String = "http://db0myk.prgm.org/peiler.php?"
Public Sub DL5DI2HTTP(ByVal MyDegrees As String, ByVal MyAgrelo As String, Optional bMu As Boolean = False)
''ToDo
''@26-04-2011
''@18-08-2011
''@26-08-2011
''Static string
Static OldDegrees As String
''Const string
Const RDigits As Integer = 5
Const p As String = "p1="
Const d As String = ","
''String
Dim a As String
Dim MyUrl As String
''Nothing ToDo
''Example http://db0myk.prgm.org/peiler.php?p1=52.21667000,5.16666700,25.0,45
''Also check for Callsign
Select Case strArrayPacket(1)
Case strNoCall, ""
bDL5DI = False
Form1!mnuDL5DI.Checked = bDL5DI
OldDegrees = ""
Exit Sub
End Select
''@14-09-2011
''To Many ZeroCrossings or nothing in averaged
If bMultiDetecting Then ''Never draw if MultipathDetect + Agrelo
If arrMulti(3) > 1 Or Val(MyDegrees) = cNoDegrees Then
Exit Sub
End If
End If
If bMu Then Exit Sub
If OldDegrees = MyDegrees Then Exit Sub ''If degrees the same as last time do not send data.
If Val(MyAgrelo) = 0 Then Exit Sub
If MyDegrees = strcEmpty Or MyDegrees = "" Then
OldDegrees = MyDegrees
Exit Sub
Else
OldDegrees = MyDegrees
End If
MyAgrelo = LTrim$(MyAgrelo)
''Factor a is the deviation according 2 lines beside the bearing in degrees
Select Case MyAgrelo
Case "1", "2", "3"
a = "90"
Case "4", "5"
a = "45"
Case "6", "7"
a = "22.5"
Case "8", "9"
a = "10"
Case Else
''Nothing ToDo
Exit Sub
End Select
If bGps Then
If GPSVal = "A" And Val(GPSKnots) >= Val(strArrayPacket(5)) Then
MyUrl = strURLdl5di & p & Round(strConv2Decimal(GPSLat), RDigits) & d & Round(strConv2Decimal(GPSLong), RDigits) & d & Val(AddCompassValue(MyDegrees)) & ".0" & d & a
Else
Exit Sub
End If
End If
If bGps = False Then
MyUrl = strURLdl5di & p & Round(strConv2Decimal(strArrayPacket(3)), RDigits) & d & Round(strConv2Decimal(strArrayPacket(2)), RDigits) & d & Val(Conv3(MyDegrees)) & ".0" & d & a
End If
''Debug.Print MyUrl
Call GotoUrl(MyUrl)
End Sub
So here I piece of the subroutine I use.
I will check and try to test these routines and make changing the URL possible where the error is of the URL changing.
Yes I can add also the Quality just tell me how the URL string has to look.
I will do tomorrow some testing and I let you know when the new version
is there.
Currently I was working in MyMapping1.38
To get all the remote and local control functions right for the FT817 through a cat62 cable.
I am also planning to make a station data base in MyMapping139.exe
So know stations with there name location pwr frequency etc.
We are also working on a new PCB design.
Two SuperSimpleSoundDopplers on one eurocard.
-
Hello Everybody,
Today I did fixed the DL5DI error
Now you can change the URL
And I changed the URL Line
I added the Quality factor to.
So If you see SoundDoppler126.zip on our sites that's fixed.
I also discoverd a zero crossdetector error in sounddoppler 125
Because some time agar i did improved the SinCos Detector
and i made a mistake with a global variable.
The version 124 en 125 Will only work with zerocrossdetector from 0 to 180 degrees hi.
But Now it's fixed
The new option FM avg average FM audio signal is very good for the
software squelch.
The squelch wont open on short loud bursts in the FM audio noise anymore.
Also has the MyMapping139.exe good working FT817 Cat control with 10 memory channels to.
-
Hello Everybody.
Here I did find something that is of intrest for us
A WirstWatchDF finder
http://wirelessinnov.com/documents/WRISTBANDDFSYSTEMAPRIL122011.pdf (http://wirelessinnov.com/documents/WRISTBANDDFSYSTEMAPRIL122011.pdf)
Very Nice
Further the SoundDoppler127aAll.zip software is there
It has better software squelch and in MyMapping it has advanced Waypoints
called Transmitsites.
-
Hello every Body,
I thought of a simple way to switch from a VHF to a UHF direction finding
antenna array on the SuperSimpleSoundDoppler connected to a VHF UHF scanner
or receiver with one input antenna connector.
So something like this should do the trick.
Even with cheap print relays.
-
Hello EveryBody,
We have a new SuperSimpleSoundDoppler de Luxe
It does softswitching the antennas
So it has less reciprocal mixing of in band adjacent strong signals.
Easy to build I think
See also
http://members.chello.nl/~w.hofman/pa8w/sssd.htm (http://members.chello.nl/~w.hofman/pa8w/sssd.htm)
If you use 3 diodes like 1n4148 in the dipoles circuit you can raise the 7805 with a si-diode.
or put in a 7806 regulator.
And I am currently working on SoundDoppler129.exe software
to make it running with APRSIS32
APRSIS32 is a very nice APRS software witch is updated regularly.
See some links:
Lynn Deffenbaugh KJ4ERJ
APRSISCE32 You Tube
Installing APRSISCE-32 (https://www.youtube.com/watch?v=HEq-p8v6HPY#ws)
Interfacing APRSISCE-32 to a radio (https://www.youtube.com/watch?v=o0A_ZyMkY9M#ws)
APRSIS32 - Tutorial 01 - Einführung (https://www.youtube.com/watch?v=mmXvp0QTwPA#)
APRSIS32 - Tutorial 06 - Configure Dropdown Menü (https://www.youtube.com/watch?v=8IZjf2WzsIY#)
http://df8ls.de/documents/APRSIS32-Manual.pdf (http://df8ls.de/documents/APRSIS32-Manual.pdf)
Passcode requests need to be sent to aprsisce-owner@yahoogroups.com with your name and callsign
-
Happy NewYear2013,
I am stil programming to get SoundDoppler.exe running
together with APRSIS32.exe.
Okay it's going slow but steady.
New version SoundDoppler130All.zip on the PI4WAG site
http://www.pi4wag.nl/index.php/pseudo-doppler-radio-direction-finder (http://www.pi4wag.nl/index.php/pseudo-doppler-radio-direction-finder)
-
Hello EveryBody,
Today I found these two links
Very intresting for every Radio Direction Finder Freak.
The Future of Radio Direction Finding ?
Wireless Angle of Arrival Detection with NI USRP and LabVIEW (https://www.youtube.com/watch?v=qBvpllCqDR0#)
http://www.ni.com/usrp/ (http://www.ni.com/usrp/)
On the site of PA8W the new 8 dipole doppler circuits are available
Feed with just one coax to the switcher unit.
Version 3 Doppler
http://members.chello.nl/~w.hofman/pa8w/V3.htm (http://members.chello.nl/~w.hofman/pa8w/V3.htm)
http://members.chello.nl/~w.hofman/pa8w/DopplerRdfMainDiagram3.htm (http://members.chello.nl/~w.hofman/pa8w/DopplerRdfMainDiagram3.htm)
I am currently still programming to get sounddoppler.exe running
with APRSIS32.exe
I also have included in the upcoming version a possibility to send
the file packet.txt through the comport to other applications.
And it's full APRS compatible of course.
-
Hello EveryBody,
I bought a cheap
USB SoundCard
U-Control UCA202 Behringer.com
It works okay with SoundDoppler on Windows XP
Just one thing it cannot adjust in software the stereo input levels they are fixed.
It needs about 1 volt max So I had to build a small stereo
preamplifier with just 2 bc549 on matrix board.
(uses about 2 MA at 12 volt)
Now it works okay.
And I have two Doppler's running simultaneously running on one PC.
Had to do some tweaking in MyMapping software.
Now I have a cyan arrowpoint if it's doppler1
a yellow arrowpoint if it's doppler2
and magenta arrowpoint if it's another station.
Further I deciced that the arrow-length must be according the APRS101.PDF protocol spec's
So the next software update Will have these futures.
Happy building, testing and experimenting.
-
Hello EveryBody,
I have now two Doppler's running on 2 separate soundcards on one PC
and these plotted on one Map program.
Of course I have two receivers on 2 meter and 2 Doppler array antenna.
Every SoundDoppler program has it own color arrow point
I will soon upload the new SoundDopplerAll.zip with these futures in it.
-
Hello EveryBody,
Some news from SoundDoppler direction finding:
I finally got it working with TCPIP so it can
communicate with APRSIS32.exe from Lynn Deffenbaugh KJ4ERJ
APRSIS can gate it to Igate
if you have a passcode.
So it can be easy real time plotted now also over the APRS servers.
The version is SoundDoppler132All.zip can be found on
http://www.pi4wag.nl/index.php/pseudo-doppler-radio-direction-finder (http://www.pi4wag.nl/index.php/pseudo-doppler-radio-direction-finder)
Also this version can send the DF report or packet report
through a comport or copy it to clipboard.
Happy foxhunting and monitorring all.
-
Hello EveryBody,
I found our Chineese friends doing also very nice RadioDirectionFinding things
Chinees doppler finding
www.hocool.com (http://www.hocool.com)
BG1CNX lee hocool
doppler radio direction finding in china (https://www.youtube.com/watch?v=KpUxxihMkxc#)
radio direction finding (https://www.youtube.com/watch?v=dai_nuhfuQ0#)
radio direction ?finding a radio on the street. (https://www.youtube.com/watch?v=feXsnZGSJjw#)
16 Led
16LED doppler radio direction finding in china (https://www.youtube.com/watch?v=XGMFhR7W4qk#)
70cm TDOA
Doppler radio direction finding in china. BG1CNX (https://www.youtube.com/watch?v=53YX7-_wxmU#)
APRS Balloon Hunt China
Hedy-1 Balloon with aprs in china. (https://www.youtube.com/watch?v=qhAI9KTgQXI#)
So happy vieuwing Direction finding movies and the Websites too
-
Hello Every Body
Again some nice Radio Direction Finding Movies
ddf007 rS
DDF007 Directional Finder Demo (https://www.youtube.com/watch?v=0noi7MmamXA#ws)
Mobile Spectrum Monitoring Stations by LS telcom (https://www.youtube.com/watch?v=E-_1f7LkKIg#ws)
Fixed Monitoring Stations (https://www.youtube.com/watch?v=AOapEXIzZOY#ws)
Land Mobile Frequency Assignment (https://www.youtube.com/watch?v=l2PR77nGoxI#ws)
Have fun watching
There wil be soon an update SoundDoppler.exe version from me available
-
Very interesting topic. I have put your SoundDoppler software on my ARDF Support website
http://www.ardfsupport.nl/ (http://www.ardfsupport.nl/) (and on my local Raspi server http://ardf.xs4all.nl/ (http://ardf.xs4all.nl/)) with a refererence to the source. And keeping it up-to-date of course... :-+
Also on this ARDF Support site you can find numerous schematics and general information that I gathered over the years.
I have stopped using the doppler system for a while and now use the TDOA system http://verbed.home.xs4all.nl/hamspace/pe5edw/TDOA/tdoa5.htm (http://verbed.home.xs4all.nl/hamspace/pe5edw/TDOA/tdoa5.htm), which gives excellent results in the field. What I want to do with this is to transfer the fore/aft and left/right signals that go to the meters into digital form and calculate a vector that can be shown on a peloris. Like the fore/aft signal is Y-axis and left/right is X-axis (or SINE/COSINE values) and together it can make the angle (Agrelo format output (%122/8<cr>)) that can then maybe used also as an input for your mapping software. Also basic integration routines to stabilize the input signal can be applied once the signals are made into digital form. Anyway, I have not much experience in this area, so maybe you can provide me with some advice.
73, Edwin
-
Hello Everybody,
Recent programming done.
I did made an OneFix option in the NewMymapping145.exe
(SoundDoppler133aAll.zip)
Soon on the sites of PI4WAG and PA8W
So I can see Two last Arrows and all the fixes (where all the in memory bearings do cross)
or Just One Last Arrow and OneFix (as a Yellow Dot in center with a square around it)
where the most fixes are.
The map is divided in 10 by 10 squares.
Yes I see the TDOA PE5EDW
You also must use 4 antenna's hi just like the doppler.
Everybody is free to generate a file like Packet.txt and put that in the
same map where MyMapping.exe resides.
IF all okay it certainly wil plot on the UIV32 maps.
The packet.txt must contain something like:
(APRS101.PDF)
PA3BNX>APDF01:;BNX.DF912*162814/5157.80N/00534.23E\000/000/224/847 %DF224°/7 1458950 kHz
And it shows on the map.
You can also insert a GPS $GPRMC <cr>s tring with %333/9<cr>mixed
in MyMapping and it plots.
If you have APRSIS32.exe installed you can also plot on APRSIS32 Maps with the TDOA
Just press ctrl-p en you can copy and paste a file like packet.txt in it and it displays in APRSIS32
Also you can manual plot bearings as objects on APRSIS32.exe
SoundDoppler.exe can send through TCPIP the packet.txt automaticly to an APRSIS32 TEXT port
So it wil plot automaticly on APRIS32 maps and all other vieuwers with APRSIS32 if you have Inet connectivity.
Some of the code from DrawOneFix in MyMapping.exe
This shows the Yellow dot and Square box and amounth of fixes in that square box.
All the fixes are in arrFixedPixel already in pixel coordinates of the map.
Public Sub DrawOneFix()
''ToDo
''Not ready yet
''03-04-2013
''06-04-2013
''08-04-2013
''09-04-2013
''Only Call this sub after Sub CalcFixes
''Something Like DDF007 R&S
''Divide map in 10 by 10 also 100 squares
''Check Each fix to see if it's on the map
''Then count how many fixes are in each square
''Then draw one dot at the center of the square where the most fixes are
''Const integer
Const t As Integer = 10 ''X and Y division squares
''Integer
Dim arrSquare((t * t) - 1) As Integer ''This array has 100 elements
Dim c As Integer
Dim c1 As Integer
Dim x As Integer
Dim v As Integer
Dim yRow As Integer
Dim xRow As Integer
Dim m As Integer
''Float
Dim Xpixel As Single
Dim Ypixel As Single
Dim xs As Single
Dim ys As Single
''String
Dim myval As String
''Divide map in 10 x 10 squares
''Example squares of map
''Use this one
''00 01 02 03 04 05 06 07 08 09 -xRows
''10 11 12 13 14 15 16 17 18 19
''20 21 22 23 24 25 26 27 28 29
''30 31 32 33 34 35 36 37 38 39
''40 41 42 43 44 45 46 47 48 49
''50 51 52 53 54 55 56 57 58 59
''60 61 62 63 64 65 66 67 68 69
''70 71 72 73 74 75 76 77 78 79
''80 81 82 83 84 85 86 87 88 89
''90 91 92 93 94 95 96 97 98 99
'-yRows
''Count the dots in a squares
''Format arrFixedPixel X and Y fix
xs = CSng(Pict1Width / t)
ys = CSng(Pict1Height / t)
For x = 0 To MaxFixes
If CheckFixOnMap(arrFixedPixel(x, 0), arrFixedPixel(x, 1)) Then ''No fix on map
''Do not round but take integer values
''Find yRow
yRow = CInt((CSng(arrFixedPixel(x, 1)) / ys) + 0.5) ''Value between 0 and 10
yRow = yRow - 1
If yRow < 0 Then yRow = 0 ''Value between 0 and 9
''Find xrow
xRow = CInt((CSng(arrFixedPixel(x, 0)) / xs) + 0.5) ''Value between 0 and 10
xRow = xRow - 1
If xRow < 0 Then xRow = 0 ''Value between 0 and 9
''Create the index here 0 > 99
c = (yRow * t) + xRow
If c <= UBound(arrSquare) Then
''Count here
arrSquare(c) += 1
Else
Debug.Print("Sub DrawOneFix error=" & xRow & "*" & yRow & " = " & c)
End If
End If
Next x
''Find the index count square with most fixes
''What if there is 2 or more the maximums ?
c = 0 ''Must reset c here because it's used
For x = LBound(arrSquare) To UBound(arrSquare)
If arrSquare(x) > c Then
c = x ''Index number where max value is
v = arrSquare(x) ''Max value
End If
Next x
''Nothing found No fixes on map
If c = 0 Then Exit Sub
''Backup Index for drawing amount off fixes in rectangle x
c1 = c
''Search for more then 1 maximum
''Dot is color coral if more then 2 and > 2 color dark red the same maximums.
For x = LBound(arrSquare) To UBound(arrSquare) Step 1
If v > 0 Then
If v = arrSquare(x) Then
m += 1
End If
End If
Next x
''c is the index number of arrSquare
''Extract xRow and yRow from c
myval = c.ToString
If myval.Length < 3 Then
myval = "0" & myval
End If
yRow = CInt(Val((myval.Substring(0, myval.Length - 1))))
xRow = CInt(Val((myval.Substring(myval.Length - 1, 1))))
''Because it goes from 0 to 9
''Make it go from 1 to 10
xRow += 1
yRow += 1
''Take center x and y coordinate of c
''ReCalc xRow and yRow in pixels
Xpixel = CSng((xRow * xs) - (0.5 * xs))
Ypixel = CSng((yRow * ys) - (0.5 * ys))
''Plot the OneFix dot
''Size of circle
v = 6
c = 2 * v
''Object
Dim grp As Graphics
Dim p As Pen
Dim newfont As Font
With My.Forms.Form1
grp = .PictureBox1.CreateGraphics
p = New Pen(Color.Black, 2)
'Debug.Print("Sub DrawOneFix")
'Debug.Print("c=" & arrSquare(c1) & " Field(0>99)=" & c1)
'Debug.Print("m=" & m)
Select Case m
Case 0, 1
grp.FillEllipse(Brushes.Yellow, Xpixel - v, Ypixel - v, c, c)
Case 2
grp.FillEllipse(Brushes.Coral, Xpixel - v, Ypixel - v, c, c)
Case Else
grp.FillEllipse(Brushes.DarkRed, Xpixel - v, Ypixel - v, c, c)
End Select
v = v + 1
c = 2 * v
grp.DrawEllipse(p, Xpixel - v, Ypixel - v, c, c)
''Draw a rectangle around the dot
v = CInt(0.5 * xs)
c = CInt(0.5 * ys)
p = New Pen(Color.Black, 1)
grp.DrawRectangle(p, Xpixel - v, Ypixel - c, xs, ys)
newfont = New Font("sans MS", 8, FontStyle.Bold)
grp.DrawString(arrSquare(c1).ToString & " x", newfont, Brushes.Black, Xpixel - v, Ypixel - c)
End With
p.Dispose()
newfont.Dispose()
grp.Dispose()
End Sub
Have fun experimenting.
-
Hello EveryBody,
I am working on a new function
MaxTopDetector in SoundDoppler.exe
That should it make possible to
use 4 Yagi's or other directivity antenna's
And detect in mode AM or tapping from AGC from a reciever
and get the direction from it.
With almost exact the same supersimplesounddoppler hardware.
Just replace the monopole Antenna's for 4 small yagi's pointing in 4 directions
Some code in visual basic for this kind of detector
Public Function MaxTopDetector() As String
''ToDo
''18-04-2013
''19-04-2013
''22-04-2013
''Amplitude peiler
''Find maximum amplitude in SCF
''Try to extract max adjacent max amplitude width
''Average x1 and x2 and recalc to degrees
''Also try to calculate the Q ?
''Not ready yet
''Const Float
Const threshold As Single = 0.3 ''Percentage
''Integer
Dim x As Integer
Dim x1 As Integer
Dim x2 As Integer
Dim max As Long
Dim min As Long
Dim smax As Long
Dim Max1 As Long
Dim Min1 As Long
''String
Dim arrmax As String
Dim myval As String
''Remember
''UboundArrSwitchCap1 Used size
''UboundArrSwitchCap Real size
''Find Max and Min
For x = 0 To UboundArrSwitchCap1
Select Case arrSwitchCap(x)
Case Is > max
max = arrSwitchCap(x)
Case Is < min
min = arrSwitchCap(x)
End Select
Next x
''Could be a spike but not likely because of SCF
If max > Math.Abs(min) Then
smax = 1
ElseIf Math.Abs(min) > max Then
smax = 2
Else
MaxTopDetector = strcEmpty
Debug.Print "Whoops bad directive antenna's or NoSignal"
Exit Function
End If
Max1 = max - (threshold * max)
Min1 = min - (threshold * min)
''Fill threshold level adjacent values arrays
For x = 0 To UboundArrSwitchCap
Select Case arrSwitchCap(x)
Case max, Is > Max1
arrmax = arrmax & "1"
Case min, Is < Min1
arrmax = arrmax & "2"
Case Else
arrmax = arrmax & "0"
End Select
Next x
''Search for max value adjacent in arrmax
Select Case smax
Case 1 ''Pos
For x = Len(arrmax) To 1 Step -1
myval = String(x, "1")
x1 = InStr(1, arrmax, myval)
If x1 > 0 Then
''ArrSwitchCap filter is zero based
''The arrmax is 1 based
x1 = x1 - 1
x2 = x1 + Len(myval)
Exit For
End If
Next x
Call CalcAdjacentTopMax(arrmax, smax, x1, x2)
Case 2 ''Neg
For x = Len(arrmax) To 1 Step -1
myval = String(x, "2")
x1 = InStr(1, arrmax, myval)
If x1 > 0 Then
''ArrSwitchCap filter is zero based
''The arrMax is 1 based
x1 = x1 - 1
x2 = x1 + Len(myval)
Exit For
End If
Next x
Call CalcAdjacentTopMax(arrmax, smax, x1, x2)
End Select
''Average maximum
x = Round((x1 + x2) * 0.5)
''It can be negative if changed by CalcAdjacentTopMax
''If negative add x
If x < 0 Then
x = UboundArrSwitchCap + x
End If
''Calc degrees
MaxTopDetector = Conv3(Str$(x) * ZeroCrossFactor)
End Function
Public Sub CalcAdjacentTopMax(ByVal arrmax As String, ByVal smax As String, ByRef x1 As Integer, ByRef x2 As Integer)
''ToDo
''21-04-2013
''22-04-2013
''Calc MaxTop if it is around 0 degrees
''Only Called from Sub MaxTopDetector
''Integer
Dim x As Integer
Dim x12 As Integer
Dim x22 As Integer
Dim h As Integer
''String
Dim arrmax1 As String
Dim myval As String
''Nothing ToDo
If Left$(arrmax, 1) <> smax And Right$(arrmax, 1) <> smax Then Exit Sub
''Pre add last elements from string arrMax
h = Len(arrmax) \ 4
arrmax1 = Right$(arrmax, h) & Left$(arrmax, h)
For x = Len(arrmax1) To 1 Step -1
myval = String(x, smax)
x12 = InStr(1, arrmax1, myval)
If x12 > 0 Then
''ArrSwitchCap filter is zero based
''The arrmax is 1 based
x12 = x12 - 1
x22 = x12 + Len(myval)
Exit For
End If
Next x
''Change x1 and x2
If (x2 - x1) < (x22 - x12) Then
x1 = x12 - h
x2 = x22 - h
End If
End Sub
I hope to release the next version of sounddoppler134All.zip soon on our web sites.
Today 22-04-2013
I did fix some bugs in the above
Subroutines.
Code above also fixed
They seem to work okay now.
Today 23-04-2013
Uploaded a picture of extreme situation with 4 Uni directional antennas
I hope MaxTopDector can handle them all.
I am also improving the SinCos detector
So after some test the new version SoundDoppler134All.zip wil be on our sites.
-
Hello everybody,
The new version is on our sites SoundDoppler134aAll.zip
I have fixed some issues with the SinCosDetector.
It now runs excelent even without the lowpasfilters.
It's even better then the ZerocrossDetector.
I also improved the software squelch routines.
The New SinCosDetector
Public Function SinCosDetector() As String
''ToDo
''22-04-2013
''25-04-2013
''Runs excellent
''Integer
Dim x As Integer
Dim Y As Integer
''Float
Dim Degrees As Double
Dim SinSum As Double
Dim CosSum As Double
Dim z As Double
''UboundArrSwitchCap Real Size
''UboundArrSwitchCap1 Used Elements
Y = UboundArrSwitchCap + 1
For x = 0 To UboundArrSwitchCap
z = twopi * (x / Y)
SinSum = SinSum + (arrSwitchCap(x) * Math.Sin(z))
CosSum = CosSum + (arrSwitchCap(x) * Math.Cos(z))
Next x
''Now check kwadrant ambiguity
''Nothing there
If SinSum = 0 And CosSum = 0 Then
SinCosDetector = strcEmpty
Exit Function
End If
If CosSum = 0 Then
z = 1000000 ''Must be large ''No division by zero
Else
z = SinSum / CosSum
End If
''Debug.Print SinSum, CosSum, Round(Degrees)
If SinSum = 0 Then SinSum = 0.0000001
''Now SinSum <> 0 and CosSum <> 0
''Sin = y axis
''Cos = x axis
''Atn(y/x) * rad1
''Atn gives from -90 to + 90 degrees * pi/180 (Rad1)
Degrees = Math.Atn(z) * rad1
''Find the right degrees
If SinSum < 0 And CosSum > 0 Then
''0 to 90 = -90 to 0
''Debug.Print "1 " & Degrees & strcDegrees
Degrees = 90 - Math.Abs(Degrees)
GoTo under
End If
If SinSum > 0 And CosSum > 0 Then
'' 90 to 180 = 0 to 90
''Debug.Print "2 " & Degrees & strcDegrees
Degrees = 90 + Degrees
GoTo under
End If
If SinSum < 0 And CosSum < 0 Then
''270 > 360 90 to 0
''Debug.Print "3 " & Degrees & strcDegrees
Degrees = 270 + Degrees
GoTo under
End If
If SinSum > 0 And CosSum < 0 Then
''180 to 270 = -90 to 0
''Debug.Print "4 " & Degrees & strcDegrees
Degrees = 270 + Degrees
GoTo under
End If
Debug.Print "Sub SinCosError " & Time$
under:
''It may not be larger then 360 or lower then 0 degrees
Select Case Degrees
Case Is >= 360
Degrees = Degrees - 360
Case Is < 0
Degrees = 360 - Degrees
End Select
SinCosDetector = Conv3(Str$(Math.Round(Degrees)))
End Function
This detector gives good results
It's like a correlator
It also can be used for an Amplitude Direction Finder
like having 4 yagi's pointing to 4 directions NSEW
Just set the reciever to AM detection
Picture contains a SuperSimpleSoundDoppler softswitcher
ala PA8W generator.
Happy FoxHunting Testing etc.
-
Hello Every Body,
I have a new version SoundDoppler135All.zip with
a possibilty of 4 calibration tables and improved squelch detection
and the sincos detector has now also correlation methode.
It runs very good now
Further are we designing and building a new mobile antenny array
With a flat plate antenna
You must have a reciever with mode AM to use it.
Take a look at this patent.
-
Hello Everybody,
Working on the new am plate antenna for my software
I show you some antenna types that can be used for
automatic radio direction finding that can he made
for radio amateur applications
Further a suggestion how to make the plate am direction finder
working with my software.
-
Hello EveryBody,
Today I did again some work on the new plate antenna.
It works I think but the switcher needs + and - volt control signals
so it needs something like a max232 that has a feed of only +5 volt and generates rs232 + and - voltage
signals.
I think I am going to build a small PCB with the max232 that can be connected between
a standard 4017 SuperSimpleSoundDoppler generator.
The circuit of the 4017 in the file above Rommeltje2.png does not work because you need
+ and - control signals.
Today 27-05-2013
Replaced Rommetje2.png in Rommeltje3.png with max232
Today 04-06-2013
Replaced Rommeltje3 with Rommeltje4.png
My antenna plate is now 22 by 22 cm and hight above groundplate about 5 cm
I get an SWR of about 1.6 at 2 meters it looks the antenne is directional and switchable
I dit create the 2 control signals 15 and 20
with my + and - 5 volt supply and two tumblers to test al configuration with the switcher.
Take look at these patents:
US3202995.pdf
US4510498.pdf
US4635065.pdf
Antenna could be called a traveling wave antenna
or even looks like a beverage antenna.
-
Hello Every Body,
Here a is picture of the Traveling Plate Direction find antenna
prototype.
-
There are a lot of those adorning police cars here, as a part of the Tracker system.
Of course, at the moment the police are on strike over pay, watched the demo today at lunch time as I drove past.
-
Hello EveryBody,
I just did do some drawing of the driver for the plate antenna.
Just a 4060 and a lm358
No voltage regulation needed I think
The opamps should switch between + and -
So I should build this one on breadboard to see if it's working !
Whoops replaced the drawing because the - inputs off the
lm358 has to be on 1/2 positive tension to let them switch between
+ and - voltage
Now it should work.....
Here a nice link about the Wullenweber HF direction finding
http://www.navy-radio.com/frd10.htm (http://www.navy-radio.com/frd10.htm)
-
Hello EveryBody,
Today I finally got the rs232 max232 running on Matrix board.
I had ta place two pulldown resistors in of 4k7 at input of the rs232 driver after the 1n4148 diodes
Finally I could test the new antenna and it worked strange.
I found that the fast control signal must be connected to the center antenna plate control
(connect no 15)
I did replace the drawing in Rommeltje4.png some messages above.
So first the sequence was antenna 1 3 2 4
and now it is 1 2 3 4
Tomorrow I do some more test with the antenna.
On my FT817 in AM mode on 2 meters and with a small fox transmitter.
It looks it works all all right even indoors.
-
Hello EveryBody,
I did some improvements by adding resistors in series with the
rf coils of about 100 ohm so the conducting diodes circuits
are getting about the same current even if they have different
temps or other differences.
So I know for shure both sections of series diodes are getting about
the same current.
The SWR is much better now about 1.4 on two meters
Also nice is that there is less variation in SWR because of swinging coils because
there is always a 100 ohm series resistor to.
So take a look at my current working PlateAntenna DirectionFinder circuit.
It works quite wel right now.
-
Hello Every Body,
Here I will show 2 pictures of my prototype
AM Plate Antenna + Switcher + Pre_Amp and Generator with the MAX232 driver board.
Just put the reciever in mode AM and use my SoundDoppler Software
It all works.
I did test in on 2 meters
Groundplate is 60 by 60 cm hardboard with alu foil
and the antenna itself is a 22 by 22 cm alu plate
-
Hello EveryBody,
I have a update SoundDoppler137All.zip
It has a new future very handy that shows sharp or wide arrow points according
to the quality factor of the doppler signal option in the new software
See picture below.
I didn''t had much time last 2 weaks for working on the software but still some changes and inprovements.
The new AM plate antenna design does not allow you to put in the vincinity a resonant antenna.
That antenna kills the forward / back ratio.
-
Hello EveryBody
We did have here in the Netherlands 15 september 2013 a nice
balloon-fox-hunt. (PH35BFH)
I had time to test my SoundDoppler doppler direction find software
in conjunction with APRSIS32
It worked great !
-------------------------------------------------------------------------------------------------
The APRSIS32 software from Lynn Deffenbough is excellent for plotting Doppler-Direction-Finding.
-------------------------------------------------------------------------------------------------
It plots automaticly objects through TCP TEXT port
to APRSIS32.
My software sends no data if it doesn't recieve the fox.
So I don't know where I am on the aprsis32 map while driving.
While that is the case I thought it would be nice if it sends
a beacon every 2 minutes so I can see my position on the APRSIS32 map.
So now my software sends a position packet if it didn't hear anything with
2 minutes time interval.
I can press key-P and then it sends immediately a position packet Like
''Position report without bearing info
PA3BNX-9>APDF01:/094755h5151.00N/00540.00E\135/050<<SoundDoppler I am here!>> /A=000006
''Normal DF Object report
PA3BNX-9>APDF01:;BNX.DF488*095013/5151.00N/00540.00E\135/050/004/835 %DF004°/5 145450kHz Gps On /A=000006
(It can be handy to use ssid-9 like PA3BNX-9 for the doppler-callsign if the APRSIS32-callsign is PA3BNX)
(Also because you are hunting with in a car so mobile)
The position report can be tracked in APRSIS32 Screen>Tracks
and it deletes older position reports.
While the DF object reports stay on map until the objects are killed
(Option in SoundDoppler)
Objects are not tracked in APRSIS32
With the SoundDoppler position beacon report APRSIS32 has no need to have GPS nmea input
on it's port nor has it to send NMEA through the doppler software.
So its great working together with APRSIS32
The new version SoundDoppler138.zip with the Position report will be soon released on our website's
http://www.pi4wag.nl/index.php/pseudo-doppler-radio-direction-finder (http://www.pi4wag.nl/index.php/pseudo-doppler-radio-direction-finder)
http://members.chello.nl/~w.hofman/pa8w/rdf.htm (http://members.chello.nl/~w.hofman/pa8w/rdf.htm)
Aditionally hints and experience with Doppler Direction Finding Balloon Hunt:
-----------------------------------------------------------------------------
The balloon transmitter had two tones alternating sound (alternating about 2 Hz)
The tones where 336 Hz and 538 Hz and a 667 Hz CWID
So they lay around the most used doppler referency frequency of 500 Hz.
The tones were strong modulated so the Switch Capicitor (SCF) Filter circuit has a
hard task to filter just the 500 Hz tone witch is also much less in amplitude.
It's good to have a switchable reference frequency of lets say 500 and 900 Hz.
So you can get away from audio modulated tones.
My SoundDoppler software with high-samplerate (22050Hz) and SinCos detector (Correlation) gives much better results
than harware SCF filter equipment with a zerocross detector.
The sofswitcher DSSSD DeluxeSuperSimpleSoundDoppler circuit on the site of PA8W gives much better
results then other hardswitched hardware doppler systems.
The softswitching makes you detect much weaker-signals and its less prune to loud signals on neighbour channels.
And its cheap and easy to build !
73's PA3BNX
-
Hello Every Body,
Some new hints and tips for RDF
New SoundDoppler138.zip Soon on our sites.
Hello Everybody,
Sofisticated Radio Direction Finding
Whats needed for a SoundDoppler Mobile Foxhunt
----------------------------------------------
==============================
Go with at least two persons.
One driver and one operator.
Safetey first !
==============================
Download the latest version SoundDoppler and APRSIS32
Just buy
--------
1 LapTop with XP/Vista/Win7/8
1 USB Stereo input SoundCard if the PC doesn't have it like UCA202
1 GPS mouse with rs232 or USB with NMEA
1 FM Rx porto or scanner or a FT817 with cat62 cable
1 Maybe you need USB to RS232 cables to
To build assemble yourself
--------------------------
1 SuperSimpleSoundDoppler Generator
1 4x Antenna Array
You can buy the PCB's from PA8W
http://members.chello.nl/~w.hofman/pa8w/rdf.htm (http://members.chello.nl/~w.hofman/pa8w/rdf.htm)
The best SuperSimpleSoundDoppler generator is the hardware with 4 softswitch
transistors connected to the 4017 chip.
This let the doppler detect weaker signals and it has less influence from
strong neighbourh channels.
1 50 ohm coax cable(rg58) with connectors BNC /SMA
1 Control cable with 5p Din connectors
1 USB or rs232 db9 cable to make the GPSmouse cable longer so it can
reside on top of the car roof.
1 shielded audio cable with 3.5mm stereo jack to lsp rx and sounddopplergenerator
1 Maybe a Switchable monitor loudspeaker
1 Maybe Needed a simple stereo-preamp for the USB SoundCard with isolation
1:1 transformers to avoid ground loops.
1 12V board supply volt connector block
1 adapter to feed the Laptop from 12 volts (Home brew?)
(Maybe you need a upconverter many laptops have adapters on 16 Volt)
Try to create a box or assembly where all the hardware resides.
Make shure you can see the laptop screen and try to shield it from sunlight.
If using APRSIS32 then also cache the tiles from the region where the hunt happens.
Play with the software at home so you know how the software and hardware works!
I think anyone can become a profi-hunter with this equipment.
In the mean time I try to make the software as good as it can be !
Happy Mobile (Fox/Balloon) Hunting
PA3BNX
Hello Every Body,
Some hints to get SoundDoppler working with APRSIS32 from KJ4ERJ
Under SoundDoppler
------------------
Press F11 PacketLog
You must enter a
callsign (Maybe nice to take another SSID then APRSIS uses like -7 or -9)
latitude
longitude
To send to APRSIS32
If you have a GPS working then the latitude and longitude
are coming from there.
Check TCPIP checked
check Kill checked (wil grey Older DF Objects)
If you have a GPS-rx and a recent APRSIS32 then
Check Cse+Hdg :Unchecked (It adds GPScourse and DopplerHeading)
This must only checked if using an older APRSIS32
Under APRSISIS32
----------------
Create a new port called something like Doppler
Configure>Ports>New
Adjust in popup screen
Type :Text
Name :Doppler
Then press TCP/IP
IP or DNS :Localport
Port :1024
Quit Time :0
Enabled :checked
Bulletin/Obj:checked
Screen>Direction Finding>Enabled
Screen>Direction Finding>Opacity (15)
Screen>Brightness>Dim (Better visability for DF sectors)
If you don't like many DF objects in the scroller then
Screen>Scroller>Not Mine :checked
Enables>Port>All
Enables>Port>Doppler
Sometimes there is no connection to SoundDoppler
Then simply close and reopen the Doppler port
Enables>Port>Doppler :uncheck
en right after that
Enables>Port>Doppler :check
You can also switch SoundDoppler.exe TCP/IP with the checkbox
left from the start/running button in SoundDoppler
If it shows Doppler OK
Just above the scroller then there is a connection
APRSIS32 can send the DF objects to Internet
--------------------------------------------
Configure>Ports>Doppler
RF to IS :checked
Of cource you need a passcode to send to IS
I hope this wil help you all to get SoundDoppler.exe running with APRSIS32.exe
73's PA3BNX
Happy Foxhunting
-
Hello Every Body,
I tried to design a new doppler switcher with 4 antenna amplifiers.
Small 4x 2x17cm dipoles and small diagonal distance (About 0.35 * 70cm = 24 cm)
So the mmic, mar, era or mav is right at the antenna feed.
It's feed through the coax.
The purpose is to have a more sensitive UHF Doppler dipole antenna
witch also can be used for VHF with reduced doppler tone amplitude.
The higher RF level on the coax makes them also less sensible to direct
RF leakage through cables.
The 100 Ohm resistor in the doppler generator should limit the current through the
mmic and diode.
The RF is tapped with a second diode and common resistor witch also forms a load
on the mmic output.
I did not build this yet.
Let me know if somebody out there has comments, hints and or improvements.
Have Fun watching intresting
Anritsu YouTube:
Introducing Anritsu InterferenceHunterâ„¢ MA2700A (https://www.youtube.com/watch?v=EL1p2ZLG0m8#ws)
Anritsu Webinar: Making Interference Hunting Easier (https://www.youtube.com/watch?v=zm5ymfKGZs4#)
Anritsu Spectrum Analyzers Reveal Hidden Transmitters (https://www.youtube.com/watch?v=ErIxRINRJPI#ws)
-
Hello Every Body,
I have written a nice tool for calculating the doppler antenna array parameters
It's included in the new SoundDoppler141
I also did create a Minimal GPS screen option in my GPS117.exe program.
This is very handy if your Laptop screen is small hi and very full with programs.
The programs can very soon be found on our sites.
The latest one is SoundDoppler141aAll.zip
I did fix a stupide error in the Doppler antenna array calculator
And the new one has now a ft817 S-meter on the left upper of the map in Mymapping148
I did also upload a new attachment with fixed Doppler Antenna Array Calculator in this message.
-
If i want to know the direction of more than one hidden transmitter with the same device?
-
You'll scare all those pirate radio stations ;)
-
Hello Every Body,
No problem at al to see more hidden devices.
It is even possible to have two SoundDoppler.exe programs running on one PC and Plot the data on one MAP.
You need then 2 FM recievers and the PC must have 2 SoundCards
and two SuperSimpleSoundDopplers de Luxe with two antenna arrays.
If there are more transmitters from different places recieved on one frequency sequentieel then the MyMapping software
can show you
Clusters of fixes on the map where the transmitters resides.
My software cannot detect 2 transmitters on the frequency simultaniosly
R&S with MUSIC and Super DF can do that.
A very great tool is to have a RTL2832 DVBT stick running with SDR# So you also have a spectrum analyser
running on the same PC and a second all mode detector to to listen monitor other channels to on the same PC.
I did fix some minor bugs today.
The newest version of my software is now SoundDoppler141aAll.zip
See the PI4WAG site
No I do not scare radio pirates.
It's just fun to design build program and test this kind of equipment
I just like to not only hear the signal strength and audio quality but I also want next to my S-meter a Pelorus hi...
Direction Finding is as old as is radio.
With the PC nowadays it can be done very easy and cheap.
-
Hello Every Body,
Happy New year 2014 to all.
I have been programming to get also elevation data from the
4 antenna array.
And that works because a transmitter at the horizon gives maximum dopplertoneamplitude
en if the transmitter is right above the array then there is no doppler tone left
so 0 degrees = max dopplertone and 90 degrees above is zero dopplertone.
So I created a form with a elevation first kwadrant meter.
The slider is for the reference when the transitter is on the floor.
The amplitude diff is a sin function.
In the rim of the elevation meter is also a averaged red bug.
This should be very handy if you are hunting a balloon fox hunt.
Soon version SoundDoppler142 wil be on our sites.
Happy Foxhunting/experimenting this year.
-
Dear PA3BNX,
First of all thanks sincerely for your nice job. It is really great everything you are doing for the ARDF.
I have a question that maybe you can help me. My idea is using your equipment for 27MHz in the car. I have been checking your software using a PIC as square wave generator (600Hz) for creating the switching signal, and as switcher I use a Chip RF chip switcher (instead of the diodes). As antennas I use 4 mag antennas, which separation is maximum 90cm (shaping a circle of 127cm of diameter)on the roof of the car. I see(heard) the antennas swithing, and the audio switching signal coming from the Rx seems fine. However If I spin the car, I don´t see any variation on the angle of arrival, keeping all the time in the same angle.
I have been checking the circuit and everyting seems ok. I am thinking that maybe one antenna is somehow much better than the others...but I do not see that in the oscilloscope (audio signal). Do you have any solution? Did you find that before? Something else I can do is filtering (with a Switched capacitor filter) the audio signal before conecting to the PC.
Thanks for your help.
Carlos.
-
Hello Carlo,
If one antenna is not working it should give wrong bearings all the time.
after calibration.
Does the reference frequency read okay ?
See the menu Edit InputXY screen in SoundDoppler.exe
The upper-channel must be the reference signal about 300 to 1000 Hz orso
The lower channel must be the audio from the RX.
Also do check the sql (Squelch)
You must use a RX in FM mode ofcourse.
It happens that the referency and audio signal are changed from Left and Right
You can switch that on the soundcard hardware or use menu Edit Change left and right
in software.
Also make shure the reference frequency is the same as the doppler tone frequency heard from Rx when
signal recieved.
To check the antenna array is simple
Use a 4.5V battery with a 470 Ohm resistor on the + in series with a control line
and listen to the Rx on each antenna by just powering one control antenna switcher line.
You can easy check every antenna and cable this way.
You use a chip switcher
Important is that it leaves the not connected antenna unloaded.
Most chips I saw do terminate them with 50 ohm orso...
Thats bad because not used antenna's may not take RF energy from the rf field because of distorsion of the
wave front.
Thats why we use diodes and not switching chips.
Don't forget to ground the mag whipes very good to ground of car roof.
So maybe wrap some alufoil around the magnetic feet whipes to get more capicitya (Lower Xc) between
carroof and coax cable shield at antenna feet.
In the new versions sounddoppler 141 an 142 there is under menu Info an Antenna Array Calculator too.
Hope you get sounddoppler working okay now soon.
Does the PIC output softswitched and overleap pulses
like our SuperSimpleSoundDoppler de Luxe does ?
(The one with 4 transistors after the 4017 chip?)
The new version SoundDoppler142aALL.zip is now on the PI4WAG site.
Succes
PA3BNX
-
Hello PA3BNX,
Thanks for the nice email. Currently I cannot check my development, but I will do it asap, so the antennas. I chose frequency equal to 650Hz (by the PIC aka square wave generator, which I do not filter or smoth. Therefore pure square signals to the switcher) and as far as I remember, both channels (left and right) had the same frequency. BTW, although the filtered square signal generator was still in the scope (triggered by your software), the signal coming from the Rx was moving, as it was not triggered.....is that wrong?. On the other hand I use a switcher in a chip, which put the unconnected input to 50Ohms ( I think it is the best way to avoid re-rediation). In any case I want to check the diode-switcher too with a soft switched and over-leap pulses (as you proposed)
Moreover I must re-enforce the ground of the magnetic whips.
Thanks sincerely again for the answer, and I let you know as soon I have any answer.
Regards.
Carlos.
-
Greetings from North Carolina USA
K4GHL here, and I just wanted to say thank you for all your work (before I dive into building your stuff that is hihi)
I have read a lot of your posts, and am truly impressed with your dedication and continued support of your project!!!!!
I have built the Ramsey DDF on a breadboard, and about tore my hair out doing so (nothing like having one part left to place and having two parts left over, yeah, I missed something somewhere), so we will see how well things go with your set up :)
Just wanted to say thanks, keep up the great work!
Gary K4GHL
-
Hello Every Body,
I found very nice site for a doppler direction finder
Dopplerjev iskalnik smeri
http://matrix.uni-mb.si/projekti/objava/vsebina/91/ (http://matrix.uni-mb.si/projekti/objava/vsebina/91/)
Dopplerjev iskalnik smeri (https://www.youtube.com/watch?v=bZ5-9w-VuYA#ws)
All circuit and sources are in English on their sites.
I think it only needs softswitching so just ad 4 transistors to it.
See my supersimplesounddoppler de luxe circuits hi.
The Doppler gets much beter with soft switching
for weak signals and strong adjacent channel signals.
Further I saw that DopplerSys has software for an Android Smart Phone
http://www.dopsys.com/software/MPT%20User%20Interface.html (http://www.dopsys.com/software/MPT%20User%20Interface.html)
So Happy Hunting and Building
-
Hello Every Body,
Now I retry to get the crossloops and sense antenna running on
my sounddoppler software with an Am radio on abt 3.6MHz
The two loops are tuned by separate C's
The meaning is that a loop + sense antenna gives a 1 + cos(phi) pattern
Bij switching the loops + sense I get four directions and these can be detected
bij SoundDoppler running with SinCos(Correlation detector).
So any advice welcome
I am building now the new electronics for it see the diagram below.
The core is something like t50-2 with trifilair windings 3 x 8 to 10 turns I think.
-
PA3BNX:
How much of these circuits do I need If I'am using a RTL-SDR?
I was thinking I might need only the antenna switcher, but then I see it has a 5-pin din that goes to God only knows where.
Thanks.
-
Hello All,
You do need a reciever with FM for the doppler
It's not possible Yet to do it with just an SDR DVBT T820T
Because you have latency in the I en Q stream from the stick
So you need a separate FM RX
And a generator like the 4017circuit and a antenna array switcher and 4 antenna's
The 5pin Din connector is for the control conection from 4017 generator to the switcher unit
Every wire in the 5 pin din switches just an antenna on and off through the diodes on the antenna switcher
So 4 wires and earth wire
It's all in the program zip file SoundDopplerAll142a.zip
Today I did made pictures of the CrossLoop with sens antenna for 3.6 MHz
with the soundcard interface
This must run with an Am 3.6MHz reciever
It works quite wel even indoor hi.
See picture below.
-
Hello Every Body,
Here I send the lower part where the
PLL RF and softwitch pulses are made.
These boards are connected by wires close together.
There are errors in this PE0SSB layout. Actually it's 1 error which is repeated for all 4 Antenna Switch logic Controller circuits. I found out when i built this DDF96 3 years ago.
The Errors on this board are.:
R43 Needs to be connected to R10, not to R11
R44 Needs to be connected to R22, not to R23
R45 Needs to be connected to R16, not to R17
R46 Needs to be connected to R4, not to R5
Please check the circuit (from the PE0SSB Website) with the layout of this board and you will see.
Here is a Picture of the corrected Version.:
-
Hello Every Body,
I myself have a okay version ASW board without the errors described above.
You can get this type of switcher working better with
dipoles if you ad a way to disconnect the earth of the coax
at the feedpoint of the 4 dipoles if antenna is not connected.
Having the coax shield connected while antenne is off can give
near field distorsion because half of dipole + half coax shield is resonant
and eats RF spectrum and distorts.
So any one has out there has a tip to add this option easy ?
Could be handy if you have a stationairy 4 dipole array.
and using this ASW (antenna switcher).
-
Hello : PA3BNX
First, Thanks for the great program SoundDoppler
I have 2 questions :-
1 - Can I use the program in band of 88 to 107 (FM Station Band) to locate any transmitter in this band
2 - How do the program do the DSP functions? I mean does it use correlation to get the bearing or zero crossing detection?
-
Hello EveryBody,
The program can use SinCos(sometimes called correlation) or Zerocrossdetector.
I think that the SinCos detector works best..
Try under demo-mode 2 and the xy-screen the Adjust button
Than you have a test generator to play with the input hi
Just right click on the pelorus to change the sincos/zerocross detector mode.
Yes you can use it for 88-108MHz.
The reciever must be wide band FM
The doppler antenna must be adjacent 1/4 distance to get as much doppler tone as possible
compared to the music deviation.
There is under menu Info a Doppler_array calculator now
I did draw a 8 antenna SuperSimpleSoundDoppler de Luxe
If you use a stationairy antenna a 8 dipole works the best
The 8 dipole array switcher schould have large chokes in the switcher
because the are all parallel at 145MHz and 1uH a choke has about 910 Ohm.
So 910/8=133 Ohm
Thats eating some of the recieved input power.
So use bigger ones like 10uH or 100uH in the 8 doppler array switcher.
The picture shows a 8 dipole doppler array with just the 4017 de luxe for 8 antenna
from DL3DW
Today 20-04-2014 Found Errors in 8 switcher circuits.
In the new 8 x switcher unit you can remove one diode 1n4148 in the middle
and you should replace the choke in the antenna feet with a 1 k resistor or something.
I will update the circuits soon.
-
Hello Every Body,
Here is a design for not a doppler
An Am peiler with 16 led pelorus with
2 color leds from green to red indicating much or less signal in that direction
Already from 1993
http://www.ab9u.com/references/Willenweb%201993%20Schematics.pdf (http://www.ab9u.com/references/Willenweb%201993%20Schematics.pdf)
You can do very easy Am direction finding with my software
and the SinCos detector and the plate antenna
Or use just 4 directional LPA's and just the super simplesounddoppler with an reciever
with AM detector.
Here they do it with just 16 stiks that form directional antenne and rotate it.
All the leds light up from light red to light green indicating signal strength.
Nice to see and nice idea...
-
Hello Every Body,
He is my proto drawing of a HF Radio direction finder with 2 aperiodic loops
and one sense antenna.
I am going to build this one to how it works.
I want to have a HF Direction Finder for HF without tuned
loops.
Today I show you guys some pictures of the above circuit build
R958 inside the PVC flexible tube and the red wire as Sense antenna.
-
Exuse me,
I Have some questions about SoundDoppler,
1 - For antenna switcher circuit, I will use arduino chip (microcontroller) to perform the switching operation of the 4 antennas
2 - For FM Demodulation, I have a car mp3 as transmitter so I will use car FM receiver as demodulator and then pass the signal to sound card
3 - For sound card, Is any card has stereo inputs will do the job?
For all of the previous, Is this perform a good RDF design? Because I tends to add a RDF to my graduation project
The attached picture shows a block diagram of the design, Please give me your opinion
Thanks.
-
Sorry here's the design block diagram,
-
Sorry I forgot,
1 - Can I use the normal car antennas to connect it to antenna switcher as the receiving antennas at the FM band 88-108 Mhz.
2 - Can I use a sound card with one line input and generate a pure 500 Hz and then uses the WaveOut Mix in my sound card to compromise the use of UCA202.
Thanks alot.
-
Hello EveryBody,
Yes it looks okay to me hiishaam.
I have not tried it with a broadband FM normal reciever
But I think it will work.
Arduino or 4017 circuit doesn't matter
Any soundcard that runs under windows is okay I think as long as it's stereo line/mic input.
Don't forget to have the vertical antennas need good earth if placed on a car roof
The dopplershift or deviation is a little bit small compared to wide band FM modulation..
So do not put the antenna's close to each other but about 80 cm or so in diameter I think.
See under SoundDoppler menu Info>Doppler Antenna array calculator.
To get easy all needed dimensions and parameters.
And find a place with less multipath and reflections hi...
Oh the sound card must be stereo so the 500 Hz and LF from reciever are sampeld at
exact the same time...
You can listen to the PC speakers bij playing the sound with the playback balans to the right
to hear not the anoying 500 Hz tone.
Take also a look at:
https://www.coaa.co.uk/dfplotter.htm (https://www.coaa.co.uk/dfplotter.htm)
-
Dear Sir.
Have been observing your work and glad to see your success. I repeated some of your devices. However, to get a good accurate readings failed. Now I made a flat antenna to the AM. No questions on the antenna structure. Have questions about the control scheme.
In the attached file I'm interested data items are marked in red. As these items are structured? What are their values? Possible to use standard chokes? Where in the circuit connected to pins 2 and 6 MAX232?
Your guess RDF use on a small private airfield on the frequency 128.6 MHz
Sincerely yours, Michael.
-
Hello everybody,
thank for this good thread.
I made a ARDF with Arduino Nano.
Check the prototype here
http://youtu.be/jm0Q4p4GudA?list=UU17SR_h8OR9WCBrsh_ak_sQ (http://youtu.be/jm0Q4p4GudA?list=UU17SR_h8OR9WCBrsh_ak_sQ)
PCB READY :)
73 IW2NDH
-
Hello Every Body,
I see some have a problem with the max232
do not connect or tap the internal voltages from the pins 2 and 6 from the max232
Nice to see the Arduino experiments IW2NDH.
I have done now a simple ne555 circuit to drive manually the AMPlate antenna
So easy only adjust the 4 stands turn switch NSEW
and a scanner or portofoon with S-meter while drving in a car
So no more stopping and using a Yagi or HB9CV for the balloon fox hunt.
Nice experimenting
-
Hello everybody,
Subject: Doppler RDF on the 100 MHz 3 metres FM broadcast band
The problem with RDF on a FM broadcast TX
with about 150 kHz bandwidth is in the fact that the
standard doppler rotation tone is 500 Hz
With my standard SuperSimpleSoundDoppler 4017 generator (about .5-.6 kHz)
That's compared to modulated audio from the TX 150 kHz undetectable.
If I use mono FM TX with 150 kHz bandwidth:
At 100 MHz and a 500 Hz doppler tone.
With my 8 bits sound-card channel there is almost no
doppler tone to detect.
A 8 bit sound card has 256 samples so maximum amplitude contains 127 bits
(This is also true for a conventional doppler with classic 8 caps SCF)
(They have also a problem with the low pass filters in hardware)
150 kHz / .5 kHz = 300x if I take just one bit
for doppler tone then I still have 256 - 300 = -44 bits short.
I do not have enough bits to process undistorted FM audio by
the soundcard and detect the doppler tone.
This works better I think
Higher doppler rotation frequency and
bigger antenna plate diameter.
There is a maximum diameter with 4 antenna
(Of course it may not become unhandy large)
(See: SoundDoppler.exe menu Info>Doppler antenna array calc)
Larger Doppler tone deviation by higher rotation frequency
I found that 4 dipoles and a doppler tone rotation frequency of
3 kHz gives 12 kHz doppler deviation on 100 MHz
Antenna diameter for 100 MHz about .93 metres
and optimal antenna plate diameter for monopoles 2.43 metres
150 kHz / 12 kHz = 13 steps
256 / 13 = 19x
This is possible with a 8 bit sound-channel.
(You must set the sample rate higher or the same as 22050 samples per second)
It's simple to set the multivibrator on about 4 x 3 = 12 kHz
by change the 15nF by 2n2
(Divide all by 3 kHz /.5 kHz = 6x)
In the SuperSimpleSoundDoppler de Luxe also change the 1n5
by 220 pF
Also change the 3x 100nF lowpass filter cap's for the reference frequency output in 3x 10nF
With the AM-Plate and Correlation detector mode this is different.
If I create on a FM broad cast RX a broadband AM detector
just before the AM limiter then I have excellent AM detected modulation.
This demands a broadband AM detector added to the WFM detector
Hint:
Maybe it's handy to modify an 'old' mono 12v car-radio with an extra
AM broadband detector because car radio's are well shielded and have
a coax antenna plug.
73's
-
Hi,..PA3BNX,...i search a sound doppler program,...where could i found.,.?
thanks before
-
Hello EveryBody
My software can be found on:
http://www.pi4wag.nl/projecten/doppler-peiler-radio-direction-finder (http://www.pi4wag.nl/projecten/doppler-peiler-radio-direction-finder)
Download button at bottom of page
-
Wow, really cool!
-
Hello Everybody,
I have the new updated version SoundDoppler146All on our PI4WAG site.
It has now switchable driver 8, 12 or 16 bits SoundCard inputs
Improved Noise Squelch
And Fieldlogger102 that is a GPS-RSSI FT817 FT840 logging program.
The log files can be played in MyMapping.exe
So have fun !
-
Hello Every Body,
New Idea!
5x Antenna SuperSimpleSoundDoppler VHF/UHF
--------------------------------------------
My wish is an optimal doppler system for VHF/UHF
without the need to change the antenna array.
Normally you have to exchange the whips and change the antenna
circle width.
I propose to create a VHF/UHF antenna by switching the length
of the antenna.
The diameter of the antenna circle must be as large as possible
for the highest frequency.
By giving the antenna the length of 17 and 50 cm.
For that is needed a re-tour conductor so a monopole
that consist off two parallel conductors.
The switches are ordinary 1n4148 diodes.
Maybe it can be build by twisting wires in a
standard PVC electricity tube.
(No idea of a twisted isolated wire functions as stiff antenna in this
construction method)
The antenna plug must consist of two contacts that cannot be turned around
5x monopole antennas instead of 4 because bigger capture area but also
for VHF a bigger base width.
(By adjacent monopoles may by 430 MHz maximal 17 cm)
So more monopoles means bigger circle diameter possible.
See also my SoundDoppler program the 'Doppler antenna array calculator'
5 antenna maybe possible without to complicated control cable.
The control cable needs 5 antenna control lines a VHF/UHF line and mass
There are 7 pin Din connectors but also of course cheap db9.
The antenna plate must be for 430 MHz about 60 cm diameter and the antenna
circle diameter about 26 cm.
that gives with 600 Hz Doppler about 2.8 kHz bandwidth.
Same measures for VHF 145 MHz about 1.7 kHz bandwidth.
Only needed an extra switch to serve for antenna VHF or UHF.
Remark:
---------
If you take a bearing on VHF and the station becomes very strong
you can attenuate by switching to UHF so to short and attenuates.
Why not us a dual band VHF/UHF antenna
because on UHF a VHF/UHF antenna resonates
and with the doppler you don't want to disturb RF field
by absorption or reflection.
The coax cables do still need good earth at each antenna feet.
5x big magnet glue feet with much capacity between
feet and car roof is possible wit feet that have space for the components.
I am curious to see the performance of an antenna-array with antenna at 5 x 72 degrees angles
and if this differences with errors at 4 x 90 degrees angles
73's
PA3BNX
-
Hello Everybody,
I did build a small audio pre-amp with galvanic separation transformers
for connecting de Doppler hardware to the soundcard of the PC.
So enjoy !
-
Hello Every Body,
New version SoundDoppler148All.zip on the site PI4WAG
ManualSend Button option.
en bugs fixed in logging all the audio wav files in 8 bits 8000 samples/sec PCM
http://www.pi4wag.nl/projecten/doppler-peiler-radio-direction-finder (http://www.pi4wag.nl/projecten/doppler-peiler-radio-direction-finder)
73's
-
19-12-2014
21-12-2014
Subject Corner-reflector antenna
---------------------------------
I want to easy transform the 4x doppler antenna array
to a amplitude direction finder (Watson Watt)
By adding just a crossed screen in centre of the 4
antenna array it would become 4 corner reflector antenna
If I made that of cardboard with hinges with ALU foil glued on it
it just can place or remove it
Than I have to switch the RX from FM to AM
and I am done !
I think the 4 corner antenna have higher gain
and is more suited for pulse detection then doppler
detection.
(When manually used with a switch box that can
switch each antenna separate on you could use this also for DF chasing
with just a receiver with s - meter and no need for a yagi turn-able
on roof of car)
I think it catches a lot of air pressure in a driving car but could be
used when not driving or stationary application.
Place a screen between the 4 monopoles or dipoles
from a standard SuperSimpleSoundDoppler antenna array
to transform it to a Am direction finder with correlation detector
and more gain and better pulse detection
Receiver mode changed from FM to AM
Curved reflector increases the gain (But more difficult to construct)
Some expected performance details
------------------------------------
F/B value 20 - 35 dB ?
Gain maximal 7 dB with 1/2 lambda driven element
angle usually 90 degrees
S = distance corner to radiator
w = width about 2x lambda radiator
T = screen length one site 1/2 lambda more then S
Feed point impedance versus distance to corner
Do not
With a distance S = 0.5 lambda gives 2 main directions
Bigger distance then 0.65 to .85 lambda okay about 5 dB gain
Any one with more info let me now !!
-
You probably could use a simple GRP cylinder to enclose the 4 reflectors and elements to make an antenna that would be more aerodynamic, though of course using a higher frequency would make it smaller as well, but then limit your range considerably.
You probably could use 2 frequencies, with a lower one giving the range and the higher one for localising. You could make it more difficult using a different repetition rate on the 2 transmitters though, with the localiser chirping more often, but the lower repetition rate of the high frequency one ensuring you have more difficulty in locating the fox. you could even separate the 2 transmitters, and have a 2 part hunt by having the second one a preset distance known beforehand ( within a rough area) from the localising transmitter.
-
Hello Every Body,
I did made a prototype for AM VHF/UHF RDF with 4060 and tl072 (No voltage regulator needed)
And a picture of the cross screen placed between a standard pseudo doppler antenna array.
-
Dear All,
I keep trying to build a ARDF system for T-hunting (by car) in 27MHz (CB). I built sometime ago a system based on magnetic antennas (90 cm separation on the roof), IC switcher and PA3BNX software but not to much sucess.
I should keep working in that but maybe you guys know any other better system for CB. I shown the PA3BNX for HF suggested with loops, but I would need more information about plans and distances.
Thanks sincerely in advance.
Carlos.
-
Hello EveryBody,
I send to pictures for direction find loops.
See also pictures on this site. 11 meter loop
http://verbed.home.xs4all.nl/hamspace/pe5edw/11m_peilantenne/11m_peilantenne.htm (http://verbed.home.xs4all.nl/hamspace/pe5edw/11m_peilantenne/11m_peilantenne.htm)
You Tube Sokol dl1roj
Sokol (https://www.youtube.com/watch?v=cfw-s5QhCmY#)
Ahha doppler demo KD6IRE AI6RE
https://www.youtube.com/watch?v=TlAlYz_ (https://www.youtube.com/watch?v=TlAlYz_) ... detailpage
73's
-
Dear PA3BNX,
Thanks for your photos and information. In case I decided to use the loop antennas what electronic should I use too? Should I use your software too?
Thanks again.
Best regards.
Carlos.
-
Hello Everybody,
Q Codes that can be used with fox hunting I think.
For 27MC you create a ring of 50cm with 10mm tube or outer shield of rg213 with two cuts opposite each other.
One end you connect to the the coax to rx and the other cut you put a resistor of about 330 Ohm.
If you use copper wire for the ring of 2.5mm2 then better use 470 ohm.
There is one sharp minimum in the direction of the resistor. The other site gives one maximum.
Use good shielded coax. Remember the antenna does not have much gain but is quite uni-directional
I would make a 1:5 HF transformer that also is galvanic separated for the coax to match all.
See US2247743 for patent info.
See example R&S eb100
You can use my SoundDoppler software with the Aperiodic Cross loop + sens antenne circuit if you want
to hunt sofisticated hi...
Happy experimenting
Agilent TDOA around London Demonstration.
https://www.youtube.com/watch?feature=player_embedded&v=mWF9uEVAuXE (https://www.youtube.com/watch?feature=player_embedded&v=mWF9uEVAuXE)
-
Dear PA3BNX,
can you please lower the reference inital frequency border from 200 to 100 Hz? I rebuild the DO2SFD attiny board and noticed that the sine frequency is about 134 Hz.
Would be a great help if you can apply this Change.
thanks for the great Software,br Robert
-
Hello EveryBody
I ran over this site very nice high tech Yagi thunts.
https://www.youtube.com/watch?v=iLz4UwVV8T4&feature=player_detailpage (https://www.youtube.com/watch?v=iLz4UwVV8T4&feature=player_detailpage)
I am working now on MyMapping 1.52
Witch will have a manual bearing input screen.
Okay in the next version the lower frequency of the referency range wil be lowerd to 100 Hz..
This might also be a nice cheap easy TDOA for 27 MHz Hunters.
http://www.fewo-line.de/dl4lbd/DUO1_W20.htm (http://www.fewo-line.de/dl4lbd/DUO1_W20.htm)
-
Hello Every Body,
There is a new version SoundDoppler149cAll.zip on the PI4WAG site now
That has a new MyMapping 1.53 in it
It has a Opacity pelorus and some very nice manual input futures...
The Agrelo GPS input through Comport has lots of improvement's
It should work quite okay now with
PicoDopp and VE2EMM and VRZA 2011 dopplers
We are working on a new doppler on a arduino board based platform
What also spit out Agrelo Formats'
Agrelo is the format to transfer Doppler data over RS232 / USB
Like %xxx/q<cr>< lf>
-
Hello Every Body,
We are working on new Arduino Dopplers
To see our progress look at this
Dutch Forum
http://www.zendamateur.com/viewtopic.php?f=11&t=7271&start=480 (http://www.zendamateur.com/viewtopic.php?f=11&t=7271&start=480)
-
Hello Every Body,
I am trying to build a Arduino Uno R3 based Doppler
that connects through USB to the PC and MyMapping.exe program.
So see the shield and my initial improved sketch
I updated the sketch and added a shield picture. ToDay 24-05-2015
Again updated the Sketch 01-05-2015
Fixed several issues
Still working on the code
/*
((C))PA3BNX
Trying to create a SuperSimpleArduinoDoppler on Arduino Uno R3
For this there is a special Arduino Com/USB input in MyMapping to show the headings on maps
@12-04-2015
@13-04-2015
@15-04-2015
@17-04-2015
@22-04-2015
@24-04-2015
@25-04-2015
@26-04-2015
@27-04-2015
@29-04-2015
@01-05-2015
Not ready yet!
Try max232 for Am WhatsonWatt DF to
Need extra pin for that or use antPin ?
Arrays are zero based !!!!
Explaining Arduino pins.
antPins[] Connect to antenna switcher pins
refpa3bnx Connect to audio lowpass filter for soundcard referency input
kPins[] Connect to kwadrant C's 4u7
kPins[12] Connect to discharge transistor //Not yet done in hardware
kPinAnalogue Connect to sum point of 4 cap's
*/
//Byte= 0>255
//Int= -32768>32767
//String Serial params
String inputString = ""; //Received serial string
//Boolean
boolean bStringComplete = false; //Complete '\n' rxed serial string
boolean bNoSetKpins = false; //Do not change kPin[] because I am reading/empty them now
boolean bMultiPathAverage = false; //Multipath heading found in received headings from Averaged
//Const Integer
//Must be modified to right pin number arduino and arduino shield harddware
//Antenna Control Pins & refpa3bnx //Never use pins 0 and 1 because the UART must also function
//So I started with pin 2 to
byte antPin[4] = {2,3,4,5}; //Set antenna control pins (Not const because it can CCW/CW)
byte max232Pin[2] = {7,8}; //Set Max232Pin vor AM plate antenna
const byte refpa3bnx = 6; //Pin for Referency frequency output to soundcard
//Kwadrant Capicity switches & analogue SCF read pin
const byte kPin[5] = {9,10,11,12,13}; //4 pins caps 4u7 Last Pin in array = Discharge caps by bc547
const byte kPinAnalog = A0; //A0 read voltage across one 4u7 cap pin A0 to A5
const int cOffset = 511; // .5 * 1023 caps offset
//Squelch Signals
const byte cSqlclosed = 0;
const byte cSqlclosed2open = 1;
const byte cSqlopen2closed = 2;
const byte cSqloverflow = 3; //Capicitors are full
//
//NoDegreesMaxMinValues
const int cNodegrees = 999; //Squelch No Signal or cSqlopen2closed
const int cMaxTime = 30; //15 Sec/cMainLoopDelay Max time
const int cMainLoopDelay = 500; //How fast the main loop runs in mSec
const int cMinAudioAmplitude = 100; //There is enough signal to SinCosDetect
//Float const
//const float pi = 4 * atan(1); //PI 3.14159
//const float rad = pi/180;
const float rad1 = 180/PI; //57.295827
//const float TwoPi = 2 * pi; //TWO_PI
//Integer
//Array with the 4 kwandrant analogue cap tensions These can be -511 to +511
int Cap[4] = {0,0,0,0};
int Calibrate= 0; //degrees default
byte sqlstatus = cSqlclosed;
//------------ISR Main Interrupt //This runs always--------------------
ISR(TIMER0_COMPA_vect)
{
static byte c;
//Do the Ant and Cap rotation here
if (c==4){
c=0;
}
SetAntPins(c);
SetMax232Pins(c);
SetKpinsHigh;
c++;
}
//---------Functions now-------------------
//Max232Pins for AM Whatson Watt RDF
void SetMax232Pins(byte t){
switch (t){
case 0:
digitalWrite(max232Pin[0],HIGH);
digitalWrite(max232Pin[1],LOW);
break;
case 1:
digitalWrite(max232Pin[0],HIGH);
digitalWrite(max232Pin[1],HIGH);
break;
case 2:
digitalWrite(max232Pin[0],LOW);
digitalWrite(max232Pin[1],LOW);
break;
case 3:
digitalWrite(max232Pin[0],LOW);
digitalWrite(max232Pin[1],HIGH);
break;
}
}
//Antenna Control Lines Just counts 1234 1234 etc
void SetAntPins(byte t){
switch (t){
case 0:
digitalWrite(antPin[0], HIGH);
digitalWrite(antPin[3], LOW);
digitalWrite(refpa3bnx,HIGH);
break;
case 1:
digitalWrite(antPin[1], HIGH);
digitalWrite(antPin[0], LOW);
break;
case 2:
digitalWrite(antPin[2], HIGH);
digitalWrite(antPin[1], LOW);
digitalWrite(refpa3bnx,LOW);
break;
case 3:
digitalWrite(antPin[3], HIGH);
digitalWrite(antPin[2], LOW);
break;
}
}
//Set kwadrant Cap Pins just High
void SetKpinsHigh(){
if (bNoSetKpins==false){
//Set all HIGH
for (int i=0 ;i<4;i++){
digitalWrite(kPin[i],HIGH);
}
}
}
//Get the 4 analogue value's in Cap[]
void GetCapValues(){
//All kwadrant Cap Pins HIGH
for (byte i=0; i<4; i++)
{
digitalWrite(kPin[i],HIGH);
}
//Read them one by one
digitalWrite(kPin[0],LOW);
Cap[0] = analogRead(kPinAnalog)-cOffset;
digitalWrite(kPin[0],HIGH);
digitalWrite(kPin[1],LOW);
Cap[1] = analogRead(kPinAnalog)-cOffset;
digitalWrite(kPin[1],HIGH);
digitalWrite(kPin[2],LOW);
Cap[2] = analogRead(kPinAnalog)-cOffset;
digitalWrite(kPin[2],HIGH);
digitalWrite(kPin[3],LOW);
Cap[3] = analogRead(kPinAnalog)-cOffset;
digitalWrite(kPin[3],HIGH);
}
//Empty the 4 capicitors by discharging to 1/2 U
void EmptyCaps(){
for (byte i=0; i<4; i++)
{
pinMode(kPin[i],LOW);
}
digitalWrite(kPin[5],HIGH); //Discharge cap pin bc547
delay(2100); //Let the 4 caps charge to 1/2 U to 99% 5 * (22k * (4,7uF * 4)) 2068 Sec
digitalWrite(kPin[5],LOW);
}
//-------------Squelch-----------------------
int Squelch(){
//Return the sqlstatus
//Try Find a full cap
int x;
//Find cap with highest voltage/tension
//Biggest value = cOffset (511)
for(byte i=0; i<4; i++)
{
if abs((Cap[i]) >= cOffset )
{
x = abs(Cap[i]);
}
}
//See if there is a Full Cap
//cOffset = Biggest value
if (x >= cOffset)
{
return cSqloverflow;
//Caps are full so need discharged
}
else if (x >= cMinAudioAmplitude)
{
return cSqlclosed2open;
}
else if (x < cMinAudioAmplitude)
{
return cSqlclosed;
}
}
//Detect Multipath in SCF Caps
boolean MultiPathDetectSCF(){
//Calc average of 4 kwadrants
//If to large asymetric value return true
//Can it do also the Quality 1-9 ?
int x;
for (int i=0 ; i<4 ; i++){
x += Cap[i];
}
//150 of max 510 is the MultiPath level ?
if (abs(x) > 150){
return true;
}
else
{
return false;
}
}
//Calibrate
int Cali(int degrees){
return LimitDegrees360(degrees(Calibrate + degrees));
}
//Return Agrelo formatted string % and 3 digits always
String Format3Degrees(int degrees){
String str;
int digits[3];
int reminder;
digits[0]=degrees/100;
reminder = degrees % 100;
digits[1]= reminder/10;
reminder = reminder % 10;
digits[2]=reminder;
str += '%';
str += digits[0];
str += digits[1];
str += digits[2];
return str;
}
//Limit Degrees 0 to 360 degrees
int LimitDegrees360(int d){
//Limit degrees 0 to 360 here
if (d >= 360){
return d - 360;
}
else if (d < 360)
{
return d;
}
else if (d < 0)
{
return 360 + d;
}
else
{
return cNodegrees;
}
}
//Average
int Average(int d){
//If d = 999 (cNoDegrees) then reset average
//Else return averaged degrees
//Integer
static int sum[4]; //Sum of counts for each kwadrant
static int c[4]; //Cap tension/voltage in 4 kwadrant
int xx[4] ={0,0,0,0}; //Adjacent kwadrants
int z = 0; //Most adjacent headings
int z1 = 0; //Other two kwandants headings
int y = 0; //Index where the most headings are
int avDegrees; //Averaged degrees
//Limit amount off averaged headings
if (c[0]+c[1]+c[2]+c[3] > cMaxTime ){
for (byte i=0; i<4 ; i++){
sum[i]=0;
c[i]=0;
return cNodegrees;
}
}
if (d!=cNodegrees){
if (d >= 0 && d < 90){
sum[0] += d;
c[0]++;
}
if (d >= 90 && d < 180){
sum[1] += d;
c[1]++;
}
if (d >= 180 && d < 270){
sum[2] += d;
c[2]++;
}
if (d >= 270 && d <= 360){
sum[3] += d;
c[3]++;
}
}
else
{
//Reset
for (byte i=0; i<4; i++){
sum[i]=0;
c[i]=0;
bMultiPathAverage = false;
}
return cNodegrees;
}
//Find 2 adjacent kwadrants with hold most counts
//Count all adjacents kwadrants
xx[1] = c[0]+c[1];
xx[2] = c[1]+c[2];
xx[3] = c[2]+c[3];
xx[4] = c[3]+c[0];
//Find out in witch two kwadrants the most headings are
for (byte i=0; i<4; i++){
if (xx[i] >= z){
z = xx[i]; //Most Headings
y = i; //Witch 2 adjacent Array Index
}
}
//Check for multipath
switch(z){
case 0:
z1 = 3;
break;
case 1:
z1 = 4;
break;
case 2:
z1 = 1;
break;
case 3:
z1 = 2;
break;
}
if (z > z1){
bMultiPathAverage = true;
}
else
{
bMultiPathAverage = false;
}
//Average the 2 most counts kwadrants
switch(y){
case 1:
avDegrees = (sum[0] + sum[1]) / c[y];
break;
case 2:
avDegrees = (sum[1] + sum[2]) / c[y];
break;
case 3:
avDegrees = (sum[2] + sum[3]) / c[y];
break;
case 4:
if (c[3] == 0 && c[0] > 0){
avDegrees = sum[0] / c[0];
break;
}
if (c[3] > 0 && c[0] == 0){
avDegrees = sum[3] / c[3];
break;
}
if (c[3] > 0 && c[0] > 0 ){
avDegrees = LimitDegrees360(((sum[3] / c[3]) + ((sum[0] / c[0]) + 360) / 2));
break;
}
}
if (d == cNodegrees){
return avDegrees;
}
}
//SinCosDetector Find the degrees from the 4 Cap[] tensions
int SinCosDetector(){
int SinSum;
int CosSum;
int x;
//In Cap[] is the tension value of 1 of the 4 C'S
SinSum = Cap[0] - Cap[2];
CosSum = Cap[1] - Cap[3];
if (SinSum == 0 && CosSum == 0){
return cNodegrees;
}
else
{
return LimitDegrees360(atan2(SinSum,CosSum) * rad1);
}
}
//=============SerialRx Event===========================
void serialEvent() {
while (Serial.available()) {
// get the new byte:
char inChar = (char)Serial.read();
// add it to the inputString:
inputString += inChar;
// if the incoming character is a newline, set a flag
// so the main loop can do something about it:
if (inChar == '\n') {
bStringComplete = true;
}
else
{
bStringComplete = false;
}
}
}
//===============
//------------------------------------Main Functions-----------------------------------------
//SetUp
void setup()
{
// Loop over the pin array and set them all to output:
Serial.begin(9600); // Opens serial port, sets data rate to 9600 bps
Serial.println("((C))PA3BNX Arduino Doppler");
Serial.println("%999"); //Squelch always closed at start
pinMode(refpa3bnx,OUTPUT);
digitalWrite(refpa3bnx,LOW);
pinMode( kPinAnalog,INPUT); //Okay here ????
pinMode(kPin[5],OUTPUT); //Discharge Pin bc547
digitalWrite(kPin[5],LOW);
pinMode(max232Pin[0],OUTPUT);
pinMode(max232Pin[1],OUTPUT);
digitalWrite(max232Pin[0],LOW);
digitalWrite(max232Pin[1],LOW);
for (byte i=0; i<4; i++){
pinMode(kPin[i],OUTPUT);
pinMode(antPin[i] ,OUTPUT);
digitalWrite(antPin[i],LOW); //antPin LOW
digitalWrite(kPin[i],LOW); //Set Cap pins to low so the can charge to 1/2U
}
Average(cNodegrees); //Reset all to 0
EmptyCaps; //All kPins to 1/2 U
//Now start ISR interrupt
// Timer0 is already used for millis() - we'll just interrupt somewhere
// in the middle and call the "Compare A" function below
OCR0A = 0xAF;
TIMSK0 |= _BV(OCIE0A);
// ToDo is there a default timer in microseconds to ?
// Interrupt is called once a millisecond
// I assume now doppler rotate frequency 4 mSec or 1/.004 = 250 Hz //Measured 244 Hz at refpa3bnx pin
}
//Main Loop
void loop() {
// ToDo
// GetCapValues
// Set the ant1,2,3,4 and refpa3bnx pins ISR
// Squelch status
// OverFlow Reset the 4 kwadrant capicitors
// Calibrate routine (add an degrees offset)
// SinCosDetector
// Send (averaged) and calibrated degrees out through the serialport
// Receive remote serial cmd's like CW/CCW and Degrees
//Integer
byte swap = antPin[1]; //90 degrees
int t;
bNoSetKpins = true;
GetCapValues();
bNoSetKpins = false;
SetKpinsHigh();
sqlstatus = Squelch(); //Squelch status check
if (sqlstatus == cSqloverflow || (t > cMaxTime))
{
t = 0;
bNoSetKpins = true;
EmptyCaps();
bNoSetKpins= false;
SetKpinsHigh();
}
else
{
//Relaxed sending degrees to serialport
if (sqlstatus == cSqlopen2closed && bMultiPathAverage == false)
{
if (MultiPathDetectSCF == false){
Serial.println(Format3Degrees(Cali(Average(SinCosDetector()))));
sqlstatus = cSqlclosed;
}
}
}
//Try to read Calibration, CW/CCW, Timing Parameters
//000<cr> <lf> from MyMapping.exe as calibrate cmd
serialEvent; //Call SerialEvent once in a while
if (bStringComplete == true){
//Swap 90 and 270 degrees pins
if (inputString == "CCW"){
if (swap != antPin[1])
{
swap=antPin[1];
antPin[1]=antPin[3];
antPin[3]=swap;
}
}
else if (inputString == "CW")
{
if (swap != antPin[1])
{
swap=antPin[1];
antPin[1]=antPin[3];
antPin[3]=swap;
}
}
else
{
Calibrate = inputString.toInt();
}
//Always Clear inputString Now
inputString="";
}
//Do always every loop
delay(cMainLoopDelay); //Wait 500 mSec for next try ? fast enough I think
t += 1; //Total loops to compared against cMaxTime
}
//End of sketch
-
Hello EveryBody,
I got from PE1KQP some very nice links
with documentry about radio WO2 and Radar
https://www.youtube.com/watch?v=Uf5caj9ZhpQ (https://www.youtube.com/watch?v=Uf5caj9ZhpQ)
https://www.youtube.com/watch?v=ZPwDicTQVBo (https://www.youtube.com/watch?v=ZPwDicTQVBo)
https://www.youtube.com/watch?v=fkCW4g8It_A (https://www.youtube.com/watch?v=fkCW4g8It_A)
https://www.youtube.com/watch?v=9zMQ-qHcmkY (https://www.youtube.com/watch?v=9zMQ-qHcmkY)
https://www.youtube.com/watch?v=yMIXL1Mxkp0 (https://www.youtube.com/watch?v=yMIXL1Mxkp0)
https://www.youtube.com/watch?v=TPvqy9tldoo (https://www.youtube.com/watch?v=TPvqy9tldoo)
https://www.youtube.com/watch?v=2Ojl1_vT4N8 (https://www.youtube.com/watch?v=2Ojl1_vT4N8)
Have fun watching
-
Hello Every Body,
I got the Arduino mounted on a board with the PCB hole Shield
for a doppler am plate RDF (max232).
So now I can focus on the arduino sketch
Take a loo here PA8W made also a nice Arduino Doppler with 128 by 64 pixel screen.
https://www.youtube.com/watch?v=rzyIFLcg6-A&feature=youtu.be (https://www.youtube.com/watch?v=rzyIFLcg6-A&feature=youtu.be)
-
Hello Every Body,
I worked again on the Arduino Sketch
It works.
I want to make 500 and 3000 Hz doppler rotation adjustments in it
with ISR timer interrupt
So I could send LOW or HIGH through serial USB/COM
and switch teh doppler rotation frequency.
(500Hz for nbfm and 3000Hz for wbfm)
Any hints how to do that
/*
((C))PA3BNX
Arduino Uno REV 3 Sketch
Look at http://www.pi4wag.nl/projecten/doppler-peiler-radio-direction-finder
Trying to create a SuperSimpleArduinoDoppler on Arduino Uno R3
For this there is a special Arduino Com/USB input in program MyMapping to show the Agrelo(%bbb<cr><lf>) headings on maps
No adjustments on the arduino shield it self
All adjustmenst like Calibrate-offset and CW/CCW through Serial Port
Doppler frequency 500 - 3000 Hz ToDo
Squelch level adjust ? ToDo
Antenna test 1,2,3,4 Wait 3 seconds then restart scanning ? ToDo
Remote CMD's ANT1 ANT2 ANT3 ANT4 CW CCW LOW HIGH (bbb Calibrate)
@12-04-2015
@13-04-2015
@15-04-2015
@17-04-2015
@22-04-2015
@24-04-2015
@25-04-2015
@26-04-2015
@27-04-2015
@29-04-2015
@01-05-2015
@02-05-2015
@03-05-2015
@05-05-2015
@06-05-2015
@08-05-2015
@10-05-2015
@12-05-2015
Not quite ready yet but working!
I want LOW and HIGH working Doppler ISR rotate Routines 500 Hz and 3000Hz(Now it runs only on 244 Hz)
Arrays are zero based !!!!
Explaining Arduino pins:
antPins[4] Connect to antenna switcher pins
refpa3bnx Connect to audio lowpass filter for soundcard referency input
kPins[4] Connect to kwadrant C's 4u7
kPinAnalogue Connect to sum point of 4 cap's
max232Pin[2] for Am WhatsonWatt DF through max232 external chip + and - 12 V
*/
//Byte= 0>255
//Int= -32768>32767
//String Serial params
String inputString=""; //Received serial string
//Boolean
boolean bStringComplete=false; //Complete '\n' rxed serial string
boolean bNoSetKpins=false; //Do not change kPin[] because I am reading/empty them now
boolean bNoAntScan=false; //Do not change antPins while testing one antenna
boolean bMultiPathAverage=false; //Multipath heading found in received headings from Averaged
//Const Integer
//Must be modified to right pin number arduino and arduino shield harddware
//Antenna Control Pins & refpa3bnx //Never use pins 0 and 1 because the UART must also function
//So I started with pin nbr 2
byte antPin[4]={2,3,4,5}; //Set antenna control pins (Not const because it can be CCW/CW)
const byte max232Pin[2]={7,8}; //Set Max232Pin vor AM plate antenna
const byte refpa3bnx=6; //Pin for Referency frequency output to soundcard
const byte cHigh=9; //All kPins High Only Used in function SetKpins
//Kwadrant Capicity switches & analogue SCF read pin
const byte kPin[5]={9,10,11,12}; //4 pins caps 4u7
const byte kPinAnalog=0; //A0 read voltage across one 4u7 cap pin A0 to A5
const int cOffset=511; // .5 * 1023 caps offset
//Squelch Signals
const byte cSqlclosed=0;
const byte cSqlclosed2open=1;
const byte cSqlopen2closed=2;
const byte cSqloverflow=3; //Capicitors are full
//
//NoDegreesMaxMinValues
const int cNodegrees=999; //Squelch No Signal or cSqlopen2closed Clear avDegrees and set avDegrees to cNodegrees
const int cReset=888; //Clear Average and avDegrees
const int cMaxTime=60; //15 Sec/cMainLoopDelay Max time 60 * 250 = 15 Sec
const int cMainLoopDelay=1000; //How fast the main loop runs in mSec
const int cMinAudioAmplitude=60; //There is enough signal to SinCosDetect
const int cMaxSymmetric=175; //Max Sym in MultiPathSCF
//Float const
//const float pi = 4 * atan(1); //PI 3.14159
//const float rad = pi/180;
const float rad1=180/PI; //57.295827
//const float TwoPi = 2 * pi; //TWO_PI
//Integer
//Array with the 4 kwandrant analogue cap tensions These can be -511 to +511
byte sqlstatus=cSqlclosed;
byte swap=antPin[1]; //90 degrees Loop
int Cap[4]={0,0,0,0};
int Calibrate=0; //Calibrate degrees default
int tMaxTime=0; //Used in Loop
//------------ISR Main Interrupt //This runs always--------------------
ISR(TIMER0_COMPA_vect)
{
static byte c;
//Do the Ant and Cap rotation here
if (c==4){
c=0;
}
if (bNoAntScan == false)
{
SetAntPins(c);
SetKpins(c);
SetMax232Pins(c);
}
//Always increment
c++;
}
//---------Functions now-------------------
//Listen/Test on each antenna separate for about 3 sec's
void AntTest(byte a){
bNoAntScan = true;
//Switch all Low
for (byte i=0;i<4;i++)
{
digitalWrite(antPin[i],LOW);
}
//Switch one High
digitalWrite(antPin[a],HIGH);
SetMax232Pins(a);
delay(3000);
//Switch again to Low
digitalWrite(antPin[a],LOW);
bNoAntScan = false;
a+=1;
Serial.print(F("Ant test ")); //F means keep Ant test in ROM
Serial.println(a);
}
//Max232Pins for AM Wattson Watt RDF
void SetMax232Pins(byte t){
switch (t){
case 0:
digitalWrite(max232Pin[0],HIGH);
digitalWrite(max232Pin[1],LOW);
break;
case 1:
digitalWrite(max232Pin[0],HIGH);
digitalWrite(max232Pin[1],HIGH);
break;
case 2:
digitalWrite(max232Pin[0],LOW);
digitalWrite(max232Pin[1],LOW);
break;
case 3:
digitalWrite(max232Pin[0],LOW);
digitalWrite(max232Pin[1],HIGH);
break;
}
}
//Antenna Control Lines Just counts 1234 1234 etc
void SetAntPins(byte t){
switch (t){
case 0:
digitalWrite(antPin[0], HIGH);
digitalWrite(antPin[3], LOW);
digitalWrite(refpa3bnx,HIGH);
break;
case 1:
digitalWrite(antPin[1], HIGH);
digitalWrite(antPin[0], LOW);
break;
case 2:
digitalWrite(antPin[2], HIGH);
digitalWrite(antPin[1], LOW);
digitalWrite(refpa3bnx,LOW);
break;
case 3:
digitalWrite(antPin[3], HIGH);
digitalWrite(antPin[2], LOW);
break;
}
}
//Set kwadrant Cap Pins according to antPins
void SetKpins(byte t){
//Nothing Todo now
if (bNoSetKpins==true){return;}
//Set all HIGH
for (byte i=0;i<4;i++)
{
digitalWrite(kPin[i],HIGH);
}
//Set the pin LOW to charge the cap
//Only if t not cHigh
if (t != cHigh) {
digitalWrite(kPin[t],LOW);
}
}
//Get the 4 analogue value's in Cap[]
void GetCapValues(){
//This leaves all kPin[] HIGH when finished
//Set all kwadrant Cap Pins HIGH
for (byte i=0;i<4;i++)
{
digitalWrite(kPin[i],HIGH);
}
//Read these one by one
for (byte i=0;i<4;i++)
{
digitalWrite(kPin[i],LOW);
//delayMicroseconds(100);
Cap[i]=analogRead(kPinAnalog)-cOffset;
delayMicroseconds(150); //Ref say about .1 milli Sec to settel analogue
digitalWrite(kPin[i],HIGH);
}
}
//Empty the 4 capicitors by discharging to 1/2 U
//This function leaves all kPin[] = HIGH
void EmptyCaps(){
Serial.println(F("EmptyCaps"));
byte i;
for (i=0;i<4;i++)
{
digitalWrite(kPin[i],LOW);
}
delay(1000);
for (i=0;i<4;i++)
{
digitalWrite(kPin[i],HIGH);
}
}
//-------------Squelch-----------------------
int Squelch(){
//Return the sqlstatus
//Try Find a full cap
int x;
int z;
//Find cap with highest voltage/tension
//Biggest value = cOffset (511)
for(byte i=0;i<4;i++)
{
z=abs(Cap[i]);
if (z>0);
{
x=z;
}
}
//See if there is a Full Cap
//cOffset = Biggest value
if (x>=cOffset)
{
return cSqloverflow;
//Caps are full so need discharged
}
else if (x>=cMinAudioAmplitude)
{
return cSqlclosed2open;
}
else if (sqlstatus==cSqlclosed2open && x<cMinAudioAmplitude)
{
return cSqlopen2closed;
}
else
{
return cSqlclosed;
}
}
//Detect Multipath in SCF Caps
boolean MultiPathDetectSCF(){
//Calc average of 4 kwadrants
//If to large asymetric value return true
//Can it do also the Quality 1-9 ?
int x;
for (int i=0;i<4;i++){
x+=Cap[i];
}
//150 of max 510 is the MultiPath level ?
if (abs(x)>cMaxSymmetric){
return true;
}
else
{
return false;
}
}
//Calibrate
int Cali(int d){
return LimitDegrees360(Calibrate+d);
}
//Return Agrelo formatted string % and 3 digits always
String Format3Degrees(int d){
String str;
int digits[3];
int reminder;
digits[0]=d/100;
reminder=d%100;
digits[1]=reminder/10;
reminder=reminder%10;
digits[2]=reminder;
str+='%';
str+=digits[0];
str+=digits[1];
str+=digits[2];
return str;
}
//Limit Degrees 0 to 360 degrees
int LimitDegrees360(int d){
//Limit degrees 0 to 360 here
//If 999 then return 999
if (d==cNodegrees)
{
return cNodegrees;
}
else
{
int x;
x = d % 360;
if (x<0)
{
x += 360;
return x;
}
}
}
//Average
int Average(int d){
//If d = 999 (cNoDegrees) then reset average and return last avDegrees
//If d = 888 (cReset) then Reset all and put last avDegrees back in arrays
//Always return avDegrees and Set bMultiPath
//Integer
static int sum[4]={0,0,0,0}; //Sum of counts for each kwadrant
static int c[4]={0,0,0,0}; //Cap tension/voltage in each kwadrant
static int avDegrees=cNodegrees; //Averaged degrees
int xx[4]={0,0,0,0}; //Adjacent kwadrants counts
int z=0; //Most adjacent headings
int z1=0; //Other two kwandants headings Multipath
int y=0; //Index where the most headings are
//Reset/clear and return cNodegrees or last avDegrees
switch (d){
case cNodegrees:
//Reset and Clear
for (byte i=0;i<4;i++)
{
sum[i]=0;
c[i]=0;
}
bMultiPathAverage = false;
avDegrees = cNodegrees;
return avDegrees;
case cReset: //Reset and fill with avDegrees
//Reset
for (byte i=0;i<4;i++)
{
sum[i]=0;
c[i]=0;
}
//Fill with last avDegrees
d=avDegrees;
}
if (d>=0 && d<90){
sum[0]+=d;
c[0]++;
}
if (d>=90 && d<180){
sum[1]+=d;
c[1]++;
}
if (d>=180 && d<270){
sum[2]+=d;
c[2]++;
}
if (d>=270 && d<=360){
sum[3]+=d;
c[3]++;
}
//No degrees found
if (c[0]+c[1]+c[2]+c[3] == 0)
{
bMultiPathAverage=false;
avDegrees=cNodegrees;
return avDegrees;
}
//Find 2 adjacent kwadrants with hold most counts
//Count all adjacents kwadrants
xx[0]=c[0]+c[1];
xx[1]=c[1]+c[2];
xx[2]=c[2]+c[3];
xx[3]=c[3]+c[0];
//Find out in witch two kwadrants the most headings are
for (byte i=0;i<4;i++){
if (xx[i]>=z){
z=xx[i]; //Most Headings
y=i; //Witch 2 adjacent Array Index
}
}
//Check for multipath kwadrants
switch(z){
case 0:
z1=2;
break;
case 1:
z1=3;
break;
case 2:
z1=0;
break;
case 3:
z1=1;
break;
}
if (xx[z]>xx[z1]){
bMultiPathAverage=false;
}
else
{
bMultiPathAverage=true;
}
//Average the 2 most counts kwadrants
switch(y){
case 0:
avDegrees=(sum[0]+sum[1])/c[y];
break;
case 1:
avDegrees=(sum[1]+sum[2])/c[y];
break;
case 2:
avDegrees=(sum[2]+sum[3])/c[y];
break;
case 3:
if (c[3]==0 && c[0]>0){
avDegrees=sum[0]/c[0];
break;
}
if (c[3]>0 && c[0]==0){
avDegrees=sum[3]/c[3];
break;
}
if (c[3]>0 && c[0]>0){
avDegrees=LimitDegrees360(((sum[3]/c[3])+((sum[0]/c[0])+360)/2));
break;
}
}
return avDegrees;
}
//SinCosDetector Find the degrees from the 4 Cap[] tensions
int SinCosDetector(){
int SinSum;
int CosSum;
//In Cap[] is the tension value of 1 of the 4 C'S
//Serial.println(Cap[0]);
//Serial.println(Cap[1]);
//Serial.println(Cap[2]);
//Serial.println(Cap[3]);
SinSum=Cap[0]-Cap[2];
CosSum=Cap[1]-Cap[3];
if (SinSum==0 && CosSum==0){
return cNodegrees;//No Signal
}
else
{
//Serial.println(atan2(SinSum,CosSum)*rad1); //Added 90 degrees so it's the same as zerocrossdetection
return LimitDegrees360((atan2(SinSum,CosSum)*rad1)+90);
}
}
//=============SerialRx Event===========================
void serialEvent() {
while (Serial.available()) {
//get the new byte:
char inChar=(char)Serial.read();
// if the incoming character is a newline, set a flag
// so the main loop can do something about it:
if (inChar=='z'||inChar=='\r'||inChar=='\n'||inputString.length() > 4 ){
bStringComplete=true;
}
else
{
//add it to the inputString:
inputString+=inChar;
}
}
}
//=======================================================
//=========================================
boolean CheckOnlyNbr(String str){
//Check for only numbers 0 to 9 in the string
//48=0 57=9
for (unsigned j=0;j<str.length();j++){
byte x=str.charAt(j);
if ((x<48)||(x>57) )
{
return false;
}
}
return true;
}
//========================================
//------------------------------------Main Functions-----------------------------------------
//SetUp
void setup()
{
Serial.begin(9600); // Opens serial port, sets data rate to 9600 bps
Serial.println("((C))PA3BNX Arduino Doppler");
Serial.println("%999"); //Squelch always closed at start
//Serial.println(Format3Degrees(cNodegrees)); //Squelch always closed at start
pinMode(refpa3bnx,OUTPUT);
digitalWrite(refpa3bnx,LOW);
pinMode(max232Pin[0],OUTPUT);
pinMode(max232Pin[1],OUTPUT);
digitalWrite(max232Pin[0],LOW);
digitalWrite(max232Pin[1],LOW);
for (byte i=0;i<4;i++)
{
pinMode(antPin[i],OUTPUT);
pinMode(kPin[i] ,OUTPUT);
digitalWrite(antPin[i],LOW); //antPin LOW = OFF
digitalWrite(kPin[i],LOW); //Set Cap pins to low so the can charge to 1/2U
}
// Now start ISR interrupt
// Timer0 is already used for millis() - we'll just interrupt somewhere
// in the middle and call the "Compare A" function below
OCR0A=0xAF;
TIMSK0|=_BV(OCIE0A);
// ToDo is there a default timer in microseconds to ?
// Interrupt is called once a millisecond
// I assume now doppler rotate frequency 4 mSec or 1/.004 = 250 Hz //Measured 244 Hz at refpa3bnx pin
}
//Main Loop
void loop() {
// ToDo
// GetCapValues
// Squelch status
// OverFlow Reset the 4 kwadrant capicitors
// Calibrate routine (add an degrees offset)
// SinCosDetector
// Send (averaged) and calibrated degrees out through the serialport
// Receive remote serial cmd's like CW/CCW and Degrees
bNoSetKpins=true;
GetCapValues(); //Fill Values in Cap[] //Leaves all Kpins HIGH when finished
bNoSetKpins=false;
sqlstatus=Squelch(); //Squelch status check uses Cap[] values
if (sqlstatus==cSqlclosed)
{
tMaxTime=0;
Average(cNodegrees); //Clear all
}
else
{
tMaxTime+=1; //Total loops to compared against cMaxTime
}
if (sqlstatus==cSqloverflow||(tMaxTime>=cMaxTime))
{
bNoSetKpins=true;
EmptyCaps();//Leaves all Kpins HIGH
bNoSetKpins=false;
}
else
{
//Not Ready here but working
//Relaxed sending degrees to serialport
boolean bSCF;
byte x1;
byte x2;
//bSCF=MultiPathDetectSCF();
x1=SinCosDetector();
//Never add a MultiPath SCF value to Average
if (bSCF==false)
{
x2=Average(x1);
}
if (sqlstatus==cSqlopen2closed)
{
if (bMultiPathAverage==false)
{
Serial.println(Format3Degrees(Cali(x2)));
{
//Always Squelch Closed and Reset Average
Serial.println(Format3Degrees(cNodegrees)); //Squelch Closed
}
}
}
else if (sqlstatus==cSqlclosed2open)
{
if (bMultiPathAverage==false)
{
Serial.println(Format3Degrees(Cali(x2)));
}
}
}
//Try to read Calibration, CW/CCW, Timing Parameters
//000<cr> <lf> from MyMapping.exe as calibrate cmd
serialEvent(); //Call SerialEvent once in a while
if (bStringComplete==true){
//Swap 90 and 270 degrees pins
if (inputString=="CW")
{
Serial.println(inputString);
if (swap!=antPin[1])
{
swap=antPin[1];
antPin[1]=antPin[3];
antPin[3]=swap;
}
}
else if (inputString=="CCW")
{
Serial.println(inputString);
if (swap!=antPin[3])
{
swap=antPin[3];
antPin[3]=antPin[1];
antPin[1]=swap;
}
}
else if (inputString=="ANT1")
{
AntTest(0);
}
else if (inputString=="ANT2")
{
AntTest(1);
}
else if (inputString=="ANT3")
{
AntTest(2);
}
else if (inputString=="ANT4")
{
AntTest(3);
}
else if (inputString=="LOW")
{
//ToDo ISR 500 Hz
}
else if (inputString=="HIGH")
{
//ToDo ISR 3000 Hz
}
else
{
//Try Calibrate offset
if (CheckOnlyNbr(inputString)==true)
{
int x;
x=inputString.toInt();
if (x>=0 && x <=360)
{
Calibrate=x;
Serial.print(F("Calibrate="));
Serial.println(Calibrate);
}
}
}
//Now clear inputString because all done
inputString="";
bStringComplete=false;
}
//Do always every loop
//Reset
if(tMaxTime>=cMaxTime)
{
tMaxTime=0;
if (sqlstatus==cSqlclosed2open)
{
Average(cReset); //Clear and Reset avDegrees
}
}
//Wait 250 a 1000 mSec for next try ? fast enough I think
delay(cMainLoopDelay);
} //End of sketch Last bracket of Loop
-
Hello Every body.
What type op doppler antenna give best results indoor
on the loft ?
I think the groundplate 4 monopole antenna array because it looks a bit upwards
so not so much near by vincinity groundreflections.
See picture hi..
-
Hello Every Body,
I did fix some issues with the SuperSimpleArduinoDoppler
I use now for the doppler rotation timing timer2
It does run now on 500 700 or 900Hz.
Today 30-may-2015
Today 03-june-2015 Again update
Now with a flutter count.
I updated the arduino doppler software
It now uses the EEPROM.write and read to store
Doppler frequency, CW/CCW and Calibration offset
I also changed the 1k series resistor in the arduino doppler shield after the decoupling C 4u7 into 100R
So my scanner RX doesn't has to be so loud hi..
Work in progress :-+
Try it
-
Hello every body
I saw this You Tube
HN199 SWR AE4QL Bill Hays
https://www.youtube.com/watch?v=oejsHzurzv4&feature=player_detailpage (https://www.youtube.com/watch?v=oejsHzurzv4&feature=player_detailpage)
Recommended view for every radio ham :-+
-
Hello Every Body,
I did add a speaker to my arduino SuperSimpleArduinoDoppler
And I fixed again a bug in the Arduino Code.
There also is a new Mymapping file on our PI4WAG site 1.55
It has fixed averaging in the arduino terminal etc...
Today 01-july 2015 update Arduino3.txt
Some bugs fixed.
-
Hello Every Body,
Nice doppler You Tube
https://www.youtube.com/watch?v=mjuY1ikM9ug (https://www.youtube.com/watch?v=mjuY1ikM9ug)
-
Hello Every Body,
I post here a picture of the
classic 4 monopole or 4 dipole FM rx mode antenna array
and the Plate Antenna (4 directions) AM rx mode.
Both antenna types can work on the Arduino Shield
for my SuperSimpleArduinoDoppler direction finder
-
Nice Work! 8)
I have always wanted to do this. I was going to make the interface with HTML5 and do all the processing on a micro controller since I dont do windows programing!
Have you got it all working yet?
And videos of it in action?
-
Thanks for your persistence on this topic, PA3BNX. :-+
I've been following this forever and am learning a lot. I've read a ton of info and visited dozens of web sites, but I think this thread has been one of the most useful resources in my own experimentation. Your diligence is very much appreciated. RDF is a very intriguing aspect of amateur radio to me.
-
Hello Every Body,
I am working on an elevation display next to the arduino terminal and pelorus display
for the SuperSimpleArduinoDoppler
running in MyMapping1.57
I did extended the agrelo protocol %123 with
two brackets and in between the dopplertone amplitude like [12]
So this has no influence on other agrelo fields.
Ofcourse the arduino uno doppler software must be extended with the []
See the picture
The doppler tone amplitude depends on the elevation
So low above ground much doppler amplitude
en high just above you no doppler tone amplitude anymore.
This works ofcourse not with AM with the plate antenna.
Bug found
CW/CCW doesn't work yet with the plate AM antenna.
I try to fix that to in the next software arduino.ino release.
New version software is not yet released.
-
Hello Every Body,
Yes I got it all working
Stil there is always things to improve.
I was also thinking of writing a simple PelorusDisplay program in Python
that reads the data through USB arduino.
I have not yet done that...
It would be nice if we could connect the arduino doppler on a tablet or smart phone hi..
So anybody who want or can write it...
The Arduino Uno is very nice with a USB and then display on a smart phone through blue tooth ?
-
Hello Every Body,
I did again some updates in the Arduino SuperSimpleArduinoDoppler Sketch
The last version had a bug in MultiPathDetect in the Average Function
And now the CW/CCW with the max232 and the AM plate antenna works too
You must rename I think the file to Arduino4.txt to Arduino4.ino
for the Arduino IDE
Have fun Guys/Girls
-
Hello EveryBody,
I added an analogue meter Pelorus readout on the arduino doppler project.
So I connected an analog meter about 100 to 400uA with a 10 k series resistor
and a series 10k potmeter on pin6 arduino (must be a PWM pin value 0-255 0> 4.5V)
Now with the new software I have a readout on the meter of
180-270-0-90-180 degrees voor homming in in the car.
(Draw a new scale paper and glue it in the meter)
I also use the standard led13 on board of arduino uno r3 now for
squelch indicator open/closed.
You can leave the refpa3bnx circuit connected like I did
Ony set in the arduino source
const bAnalogPelorus = true;
If you would use a cheap audio VU meter from scrap equipment you
may correct the liniarity of that meter with a function in AnalogPelorus ?
I did not do that yet.
The meter is a nice cheap help for homming in while driving in a car.
Oh the calibration and CW/CCW and Averaging does stil work and can be adjusted through the
terminal software or MyMapping ofcourse.
So have fun experimenting.
New source code in arduino.txt attachment.
-
Hello Every Body,
Some things from TCI you should see :
TCI youtube demo
https://www.youtube.com/watch?v=IAuSJcD9lj4&feature=player_detailpage (https://www.youtube.com/watch?v=IAuSJcD9lj4&feature=player_detailpage)
https://www.youtube.com/watch?v=iageIaa9gLc&feature=player_detailpage (https://www.youtube.com/watch?v=iageIaa9gLc&feature=player_detailpage)
https://www.youtube.com/watch?feature=player_detailpage&v=EJlSurZZh44 (https://www.youtube.com/watch?feature=player_detailpage&v=EJlSurZZh44)
https://www.youtube.com/watch?feature=player_detailpage&v=elOZo3I-W6o (https://www.youtube.com/watch?feature=player_detailpage&v=elOZo3I-W6o)
HF RDF
https://www.youtube.com/watch?feature=player_detailpage&v=H8UXhyHgpm0 (https://www.youtube.com/watch?feature=player_detailpage&v=H8UXhyHgpm0)
Wow hi..
-
Hello Every Body,
Now working on a LM3914 10x led homming in Pelorus for the arduino doppler.
The lm3914 doesn't show a burning led if the input voltage is 0 Volts.
So I have to fiddle a bit with offset in the AnalogPelorus Function in the
Arduino Source.
Circuit draws about 10mA at 5V so can be fed from the USB
-
Hello Every Body.
I did n't think of the fact that an arduino PWM pin does give two voltage levels instead of a DC signal.
(about 500 Hz switching)
So the lm3914 Pelorus lit just two leds hi ...
The fix was replace the input level potmeter with one of 47k and acros the wiper and mass a elco of 1uF
Now it works okay hi
Also changed a little bit the Arduino source
All Pelorus leds are of if squelched.
Now it also has a test mode press T in terminal so first and last led light for 5 seconds.
You can have the doppler rotation frequency simultaniously
if you mount 2 diodes on oin2 and 3 to the lowpass input circuit.
See new arduino shield circuit drawing.
To nice youtubes with dopplers:
Doppler autotrack quadcopter
https://www.youtube.com/watch?feature=player_detailpage&v=SqWVdhSeA6A (https://www.youtube.com/watch?feature=player_detailpage&v=SqWVdhSeA6A)
TSCM DDF2020T
https://www.youtube.com/watch?v=_xDyZF8qyEY&feature=player_detailpa (https://www.youtube.com/watch?v=_xDyZF8qyEY&feature=player_detailpa)
-
Hello Every Body,
Some intresting YouTubes
Apex HF direction
Directional Recieving Antenna HF KB7GF Mark Bauman
https://www.youtube.com/watch?v=GKBOEtkJ7yY&feature=player_detailpage (https://www.youtube.com/watch?v=GKBOEtkJ7yY&feature=player_detailpage)
https://www.youtube.com/watch?feature=player_detailpage&v=i46kR0pynFw (https://www.youtube.com/watch?feature=player_detailpage&v=i46kR0pynFw)
https://www.youtube.com/watch?feature=player_detailpage&v=hBkzWQ9R91Q (https://www.youtube.com/watch?feature=player_detailpage&v=hBkzWQ9R91Q)
Aha Moment
https://www.youtube.com/watch?v=i46kR0pynFw&feature=player_detailpage (https://www.youtube.com/watch?v=i46kR0pynFw&feature=player_detailpage)
New Find Outs
https://www.youtube.com/watch?feature=player_detailpage&v=3LSJLlxbXiM (https://www.youtube.com/watch?feature=player_detailpage&v=3LSJLlxbXiM)
https://www.youtube.com/watch?feature=player_detailpage&v=DRlegDqOXU4 (https://www.youtube.com/watch?feature=player_detailpage&v=DRlegDqOXU4)
https://www.youtube.com/watch?feature=player_detailpage&v=8LXZt7DgbTA (https://www.youtube.com/watch?feature=player_detailpage&v=8LXZt7DgbTA)
On our Dutch Forum
Lee Hocool Inteferometer
http://www.zendamateur.com/viewtopic.php?f=14&t=15649 (http://www.zendamateur.com/viewtopic.php?f=14&t=15649)
-
Hello Every Body,
New version of Mymapping on our sites
Also small maps of whole Neteherlands on the site now.
Take a look here
REDHAWK SDR
http://www.geontech.com/download/white_papers/AOC_Challenge_GEON.pdf (http://www.geontech.com/download/white_papers/AOC_Challenge_GEON.pdf)
Take a look it's realy intresting !
Picture of running Arduino Doppler with lm3914 Peleorus and MyMapping 1.58 on the laptop
-
Hello Every Body,
Today I wrote RightLeftRotating in Arduino.ino
With command R in ArduinoTerminal or button RL(in new MyMapping.exe) you can change the Doppler antenna rotation sequence from the antenna array
1234 1234 1234 1234 to
1234 3214 1234 3214
So one round right and then one round back to begin situation
What is the advantage of this?
The FM discriminator curve in the receiver can have a wrong
measurement if it's not symmetric.
This happens when the receiver is not exact adjusted to centre TX frequency or when the S-curve of the frequency discriminator is not
linear.
By rotating up and down you can average +/- frequency discriminator
errors.
If you switch between NormalRotation and RightLeftRotation
you hear the Doppler tone frequency halve.
The pelorus degrees stays the same
Of course CW/CCW adjustment stays the same.
Also with the plate antenna this is possible but it wil not give
benefit with AM detector
If you switch to RightLeftRotation you cannot use the arduino
on the sound-card with my soundDoppler.exe program.
So switch back to NormalRotation
Greetings,
PA3BNX
:)
-
Hello Every Body,
Nice to watch:
Narda
https://www.youtube.com/watch?v=HyI7H_ginqE&feature=player_detailpage (https://www.youtube.com/watch?v=HyI7H_ginqE&feature=player_detailpage)
-
Hello EveryBody,
I found this old RDF article about RDF RSSI meter hi
connected to a MW transistor radio.
Nostalgia !
And a PCB Layout for the SuperSimpleArduinoDoppler project.
in Sprint50 Not all ready I think..
You need wires to connect it to the ArduinoUno
But it can also wired to a Raspberry Pi GPIO Pins ?
Need to write software for that hi !!
-
Hello Every Body,
Nice to watch this TDOA with Arduino
2015 Anatoly Kuzmenko.
https://youtu.be/eoOY659YMXo (https://youtu.be/eoOY659YMXo)
http://coolarduino.blogspot.ca/ (http://coolarduino.blogspot.ca/)
-
Hi Lodewijk,
I have started your direction finder project, basically similar to the 4013 & 4001. In place of the 4001 I have used a 4011, driving four transistors to drive the antennas diodes switching. This gives the same switching functionality.
Sorry if the following questions have been reported and answered in the discussion but I did a quick reading of some notes but I could not see anything.
I have some questions please:
1) Your 4001 solution defines, from top to the bottom, outputs antenna #4. #3. #2 and #1, mine has same selection. The solution with the 4017 gives the antenna selection, top to bottom, #1, #2, #3 and #4.
a) which is the antenna # that is defined as North ?
b) is the antennas rotation clockwise or anti clockwise, i.e North, East, South, West or opposite?
2) For the 4001 the clock synchronization is on the #4, while for the 4017 is on the #, right?
3) Which is the loss on VHF between the doppler switched array (using 4x dipoles) and a single fixed dipole connected to a receiver?
4) I have replaced the RFC at the dipoles with a 1:1 balun hoping this would help to reduce hands presence effect on the coax cale to the receiver, but I am not sure how much (if) changed. I will try to put on the dipoles short coax a clip-on ferrite element.
Thanks for your comments and congratulations for your interesting project.
Best 73
Gian
I7SWX
-
Hello Every Body
Tnx's Josh Clough for this link
SDR RTL Dongle experiment wit three GP antenna.
An RTL-SDR Phase Correlative Direction Finder
http://www.rtl-sdr.com/an-rtl-sdr-phase-correlative-direction-finder/ (http://www.rtl-sdr.com/an-rtl-sdr-phase-correlative-direction-finder/)
Sources
https://github.com/tejeez/rtl_coherent (https://github.com/tejeez/rtl_coherent)
Youtube
https://www.youtube.com/watch?feature=player_embedded&v=8Wzb1mgZ0EE (https://www.youtube.com/watch?feature=player_embedded&v=8Wzb1mgZ0EE)
I7SWX answers
In sounddoppler.exe software you can switch the sequence with CW/CCW 0/180
And correct with the actual bearing with the calibrate bar
Witch antenna is North is not very important you can calibrate 360 degrees
The loss compared dipole to monopole is theoretically 3 dB
With a 1 diode and rfc at a monopole antenna the
Coax shield earth at base of antenna ground plate (very important)
Or magnet feet with lots of capacity to car roof
The 2 diodes and rfc and leak R for dipole A rf 1:1 balun is possible after
the 2 diode and rfc.
Make sure if using dipoles the vertical dipoles have the top part of antenna connected to center conductor coax. (No phase shifts)
4 dipoles works best on stationary mast
On car roof always the 4 monopoles on ground plate.
For 70cm UHF on car roof you could have more monopoles
like 5 or 6 so the aperture is better and then the 4017 circuit is more handy.
On 2 meter VHF 4 antenna on car roof fits best.
If using indoor on a loft or something like that the monopole 4 array
with ground plate works best.
^-^
-
Hi Lodewijk,
thanks for the prompt reply.
I do appreciate your comments.
I have inserted the 1:1 balun as you did report, plus added a clip on ferrite on half dipoles coax cable from feed point to switching point. All antennay array box and support are plastic (external electric conduit and box).
I hope I can have the cable not interacting with the antennas having added the ferrite clipped on.
I Also I have added a remote RF attenuator into the array, at lowest attenuation I loose 4dB.
I will use the DF on fixed portable installations, not mobile. The support is also PVC.
Yes, I have done the mark to be sure the center cox cable is connected to the top element of dipoles.
I have now a clear understanding of rotation and direction of antennas.
Thanks for the additional info for 70cm use. OK for the 4017 counter use. I found this info after I did assembled the 4011 solution, as I had that IC available.
Best 73
Gian
I7SWX
-
Hello Every Body,
The arduino 1.04 software is ready now with
A potmeter connected to A1 +5V en earth for manual calibrating the lm3914 pelorus and the arduino doppler
without PC with USB.
If no potmeter connected or potmeter totally left or right turned it uses the
Terminal calibration(Mymapping.exe)
Center potmeter is 0 degrees calibration
The arduino with doppler hardware and led pelorus lm3911 draws about 80mA.
So it can easy run a time on a single 9 Volt block battery
-
Hello EveryBody,
I programmed in the arduino doppler a 3 times flashing last Pelorus led after squelch closed.
void FlashPelorus(int d)
{
//03-11-2015
//ToDo let pelorus 3x flash with last bearing after squelch closed ?
static boolean t;
static byte c;
static int de = cNodegrees;
const byte m = 18 ;
if (bAnalogPelorus==false){return;}
if (d!=cNodegrees){de=d;} //Backup last degrees
if (d==cNodegrees && de!=cNodegrees && c<m)
{
c+=1;
if (c==2||c==5||c==8||c==11||c==14||c==17)//Flash frequency = c * cMainLoopDelay (250 mSec)
{
t=!t;
if (t==true){AnalogPelorus(de);}else{AnalogPelorus(cNodegrees);}
if (c>m){c=m;}
}
}
else if (d!=cNodegrees && c==m)
{
t=false;
c=0;
}
}//Last bracket FlashPelorus
-
Hello Every Body,
I bought this compass module
So now I am going to write the software
for a Fluxcompass working together with the SuperSimpleArduinoDoppler
GPS doesn't have compass if not moving.
Then this GPS fluxcompass module can be very handy.
hmc5883L module
pins Ucc,GND,SCL,SDA,DRDY
https://www.youtube.com/watch?v=HHTf3fFX7aA&feature=player_detailpage (https://www.youtube.com/watch?v=HHTf3fFX7aA&feature=player_detailpage)
https://www.youtube.com/watch?v=w3Gz472O93s&feature=player_detailpage (https://www.youtube.com/watch?v=w3Gz472O93s&feature=player_detailpage)
https://brainy-bits.com/tutorials/using-the-hmc5883l/ (https://brainy-bits.com/tutorials/using-the-hmc5883l/)
-
Hello,
I see the Arduino sketch and I would suggest to use https://www.arduino.cc/en/Reference/PortManipulation (https://www.arduino.cc/en/Reference/PortManipulation) instead of DigitalWRITE.
Moreover, I think you can remove the 4x1N4148 (just set to INPUT by DDRC the pins of caps not used = 0)
For example (q_cyc from 0 to 3 selecting the cap of 4h7 in use on (pins A0...A3) and read on A4.
//sc_filter[5] = {B00000001,B00000010,B00000100,B00001000,B11110000};
temp = DDRC & sc_filter[4]; // turn off the capacitor
__asm__("nop\n\t");
DDRC = temp;
temp = PORTD & 0x07; // next antenna
PORTD = temp | activate_antenna[q_cyc];
temp = DDRC & 0xf0;
temp = temp | sc_filter[q_cyc];
__asm__("nop\n\t");
DDRC = temp ; // turn on the capacitor;
PORTC = PORTC & !sc_filter[q_cyc];
Hope is interesting for you
Ciao
-
Hello Every Body,
Tnx's jackdev23 for the source code.
I hope I can understand it and use it...
Diodes are in now because the pins have no tri state ?
I want 4u7 capicitors to float if not connected.
hmc5883L fluxcompas is fun !!!
-
You do not have tri-state but something similar just using pins as input.
-
Hello Every Body,
Take a look at the new software RSSI meter features from PA1OKZ
Foxz box on:
http://www.peildoos.nl/ (http://www.peildoos.nl/)
all in Dutch but you guys can understand it even if not Dutch....
-
Hello Every Body,
Update software Arduino Doppler
Now with Agrelo with Quality
%ddd\q
ddd= 0 to 360 degrees
q= 1 to 9 quality factor
= doppler tone amplitude for elevation screen.
hmc5883 included arduino+doppler + compass not yet ready.
Quality works in Mymapping.exe program.
-
Hello Every Body,
A new SoundDoppler150aAll.zip soon on the site PI4WAG.
Last older update SoundDoppler149rAll.zip contained a bug
in SoundDoppler.exe
A run time 13 error sometimes hi
New is Averaged Doppler tone amplitude now...
And if you get the agrelo info out of a comport it now also contains
%xxx/q [12]
-
Hello Every Body,
I have a nice proposal
Subject: Optional transceiver kit for Tesla and other cars
Proposal from a licensed radio-amateur (Netherlands PA3BNX).
Addressed to:
Tesla, ARRL, Yeasu, Kenwood, Icom, VERON, VRZA and Radio forums
Hello all,
I have some ideas/wishes for making the super all electric cars more attractive then
ever before !
also for radio-amateurs who are mostly at the front of wireless technologies and
communications innovations.
It would be marvellous to have the frequency-display and knobs for a transceiver
running and displayed on the Tesla 17 inch touch screen as a software option.
using the same speakers and microphone used for cellphone in the car.
Just plug in a black box transceiver and add a antenna
Every equipped car would also have APRS standard on board because a GPS is
already in the Tesla cars.
Maybe even easy to show VHF/UHF APRS information on the Maps available already
on the 17 inch touch screen.
It would be a novelty if it was integrated in the car equipment.
No licensed radio amateur has to worry about how to mount and get a safe to use
radio transmitter in his new all electric car.
Just a interface to an ad on transceiver VHF/UHF (SDR like) with approx 50
watt rf output
Now a days Radio amateurs use FM phone transceivers but also the digital
s peach modes as DMR and D-star could be included.
and an all automatic electric hiding efficient 2m / 70cm transmit/receive antenna as an
option for the Tesla cars
There are about 800,000 licensed radio amateurs in the USA already
Suppose if just 1% has or buys a Tesla with this transceiver option
it might be enough to spark this idea to reality.
The radio community would maybe involved in writing the software.
Some afterthought.
How good is the Tesla in the EMC field ? (Because receivers don't like
unwanted radiation harmonics of other for receive electronics.
So see what the radio community and Tesla motors and OEM transceiver ma-nu
manufactures think
about this idea.
Maybe in the software also a Radio Direction Finding module can be done
See my projects at:
http://qrz.com/db/pa3bnx (http://qrz.com/db/pa3bnx)
p's. I do not have a Tesla-car yet because I cannot afford it yet !!
Sincerely
L.J.W. Baars (PA3BNX)
Netherlands
pa3bnx(at)veron.nl
-
Hello Every Body,
I have a question and updated proposal
Does a Tesla Car has a cigar lighter plug ?
I hope not because smoking is bad and the connector is bad
as high current power plug.
A modern car like a Tesla EV must get a universal power accessory plug I think.
Or just some sort of power USB plug.
Witch does not come lose when vibrating and easy to insert and disconnect.
I hear many radio licensed radio amateur truckers today having problems with mounting there rigs
and installing a transmit/receive antenna installing on there trucks.
So I think there must come a universal solution for them to to add an optional kit totally integrated
to the instrument panel safe to use and sophisticated
New truck should have also large touch-screens with gps (APRS) and all functions done through that
as much as possible.
So the new VHF/UHF (SDR with D-Star+DMR+Fusion+All Mode) black box should also be used in the truck as well
as in a Tesla EV I think.
To make it even more popular it must have CB(27MHz) and PMR(446MHz) mode for unlicensed amateurs.
I think something like this should be the development by the major Radio manufacturer's together.
I even thought of a kit/option type IYKM Brand (Icom+Yeasu+Kenwood+Motorola)
I think IYK name would be fast em brassed because amateurs like call signs.
No more need for microphone and or speaker needed any more because you use the cellphone ones.
The major brands then should work together to produce a superb irresistible radio transceiver mobile product
that every trucker/driver wants to have in near future.
It also could include the public broadcast radio with DAB+ AM FM
The black box builders would all benefit from this kind of approach
I think many car/truck drivers would one have installed from factory if it was available as an optional kit
But how to think of police, ambulance and fire brigade communication
that can be done with the same transceiver option just the software
has to change on the touch screen car computer
The experiment for the licensed radio amateurs would be to write apps and maybe new modulation types.
A huge selling point could be that the local repeater VHF/UHF Broad Cast stations frequency list are automatic downloaded and made available while driving.
from the internet and installed in the touch-screen computer and not in the
black (SDR) transceiver box.
It could do also SSTV / APRS /PSK31 and other digital modes
Even a waterfall display module on the touch screen computer.
So no more USB cables and and difficult to find an use so called (example: chirp) program upload programs needed any more.
So to have a choice of a standard integrated car radio module
or a sophisticated car radio module with transceiver modes in it
would be challenging an have a good profit and sales opportunity I think
All radio manufacturer, car builders and radio amateurs would benefit
from this solution.
Sincerely
L.J.W. Baars PA3BNX
Netherlands
pa3bnx(at)veron.nl
-
Hello Every Body,
Some pictures of mij 60 bij 60 cm plate 5 antenna doppler array
I used radio telescoop arials.
I can use this one easy for 2 m and 70 cm...
(Just adjust the length telescoop whipes acordingly hi)
Diameter arials about 28cm Antenna plate 60 bij 60 cm
I did use cardboard with alu foil.
I did use an earth wire from solder lug to solder lug near the arial feet points
to make shure the is good mass for accurate doppler readings.
Because you need goud ground at antenna feed points.
Swither and 4017 5 transistor soft switcher both in 5 bij 5 cm boxes
dead bug methode.
The red box is also used for testing the antenna's with the db 9 control cable.
See pictures.
-
I might of got confused about something.
Is the stereo sound card input on the PC still required for the ArduinoDoppler?
Edit: found the part that got me confused in the arduino sketch...
" Why because there are so many laptops with just mono mic inputs
This can eliminate the external USB stereo input Soundcard with MyMapping.exe software"
I somehow took this to mean there wasn't ANY soundcard connection. Now reexamining it I believe it means just the left channel input is used?
-
Hello Every Body,
No the soundcard doppler can stil be used with the 4017 de luxe circuit
The arduino can run through USB wiothout sound card on MyMapping.exe
The arduino can ofcourse also deliver audio on doppler ref freqency if you wish
End then audio through the stereo soundcard...
So the arduino can also mimic the 4017 circuit fully
Yes many laptops have just mono Sound Mic inputs
so you will need then UCA202 Behringer USB soundcard or other USB stereo soundcard??
If you use the arduino with mymapping through USB port only
then you still must feed the arduino with the speaker rx audio ofcource
No sound card needed on the laptop then
I have a new version1.60 comming with a so called FT817 Cat S-meter history screen.
Very handy I think.
See picture Green form.
-
Hello Every Body,
I have done now a so called Budget doppler on request from PA5ROB
in SoundDoppler152.exe Now on PI4WAG (version 160d.zip)
Two antenna gives of cource ambigity and only 270>0>90 degrees range
So have fun with this new option.
73's
PA3BNX
-
Hello every body,
I have a new version SoundDoppler160e now on PI4WAG with SoundDoppler1.53
That has an improved Budget Detector 2x antenna mode so the one with
just 2 monopoles and ambiguity.
Hope this one works better!!
It also detects multipath rx now !!!
So have fun guys.
-
Hello Every Body
A new sounddoppler.exe on PI4WAG
With a Noise Gauge for detecting very weak signals
long before the RSSI meter does move from the left corner.
I am currently also trying to write software
for a turning moter assembly with arduino + PC etc
todo a rotating directional antenna hunt
Like these guys did in the past
A Novel foxhunt system
by
Dave Bullock G6UWO
and
John Wood G0PSI
-
Hello Every Body.
I am working on a new program
Called: Draw Polair Diagram
I want to build a so called FoxCopter
Directional antenna
turning many turns
Turning 360 degrees in 2 sec orso
And draw a RSSI polair diagram..
I build a Motor Controller
and wrote software on the arduino
See pictures
-
Hello Every Body
I am stil working on the so called foxcopter.
Not ready yet
But also playing with a LCD5110
witch could be used as Pelorus display
or even a Smeter History for mij FT817
So this is a help for beginner arduino graphics also..
/*
* Klooi Pelorus File voor testen enzo PA3BNX met Nokia LCD5110 en Arduino Nano
* 06-07-2018
*/
/*********************************************************************
This is an example sketch for our Monochrome Nokia 5110 LCD Displays
Pick one up today in the adafruit shop!
------> http://www.adafruit.com/products/338
These displays use SPI to communicate, 4 or 5 pins are required to
interface
Adafruit invests time and resources providing this open source code,
please support Adafruit and open-source hardware by purchasing
products from Adafruit!
Written by Limor Fried/Ladyada for Adafruit Industries.
BSD license, check license.txt for more information
All text above, and the splash screen must be included in any redistribution
*********************************************************************/
#include <SPI.h>
#include <Adafruit_GFX.h>
#include <Adafruit_PCD8544.h>
// Software SPI (slower updates, more flexible pin options):
// pin 7 - Serial clock out (SCLK)
// pin 6 - Serial data out (DIN)
// pin 5 - Data/Command select (D/C)
// pin 4 - LCD chip select (CS)
// pin 3 - LCD reset (RST)
Adafruit_PCD8544 display = Adafruit_PCD8544(7, 6, 5, 4, 3);
// Hardware SPI (faster, but must use certain hardware pins):
// SCK is LCD serial clock (SCLK) - this is pin 13 on Arduino Uno
// MOSI is LCD DIN - this is pin 11 on an Arduino Uno
// pin 5 - Data/Command select (D/C)
// pin 4 - LCD chip select (CS)
// pin 3 - LCD reset (RST)
// Adafruit_PCD8544 display = Adafruit_PCD8544(5, 4, 3);
// Note with hardware SPI MISO and SS pins aren't used but will still be read
// and written to during SPI transfer. Be careful sharing these pins!
int t = 200;
void Pelorus(int d){
//Float
const float rad =PI/180 ; //0.017453292
float q;
//Int
static int OldDegrees = 999;
//Integer
int xc = display.width()/2 -1;
int yc = display.height()/2-1;
int r = yc-2;
byte y;
int s,ss;
//Nothing ToDo
if (OldDegrees==d)
{
return;
}
display.clearDisplay();
display.drawCircle(xc,yc,yc,BLACK);
if (d==999)
{
display.fillCircle(xc,yc,2,BLACK); //Just a Center dot now
}
else
{
q = (d-90) * rad;
s = xc + int(cos(q)*r);
ss = yc + int(sin(q)*r);
display.drawLine(xc,yc,s,ss,BLACK);
//Text print
if (d > 270 || d < 90)
{
y=yc+3;
}
else
{
y=yc-10;
}
display.setTextSize(1);
display.setCursor(xc-9,y);
display.println(Format3Degrees(d));
}
display.display();
OldDegrees=d;//Backup now
Serial.println(d);
}
String Format3Degrees(int d){
String str;
int digits[3];
int reminder;
digits[0]=d/100;
reminder=d%100;
digits[1]=reminder/10;
reminder=reminder%10;
digits[2]=reminder;
//str+='%';
str+=digits[0];
str+=digits[1];
str+=digits[2];
return str;
}
void setup(){
Serial.begin(9600);
display.begin();
// init done
// you can change the contrast around to adapt the display
// for the best viewing!
display.setContrast(50);
}
void loop(){
Pelorus(999);
delay(500);
for (int i=0;i<800;i++)
{
Pelorus(random(0,360));
delay(100);
}
delay(250);
}
/*
* ===============================
*((C))PA3BNX FT817 Smeter History
* with Nokia LCD5110 Display
* 06-07-2018
*/
#include <Adafruit_GFX.h>
#include <Adafruit_SPITFT.h>
#include <Adafruit_SPITFT_Macros.h>
#include <gfxfont.h>
#include <Adafruit_PCD8544.h>
// Software SPI (slower updates, more flexible pin options):
// pin 7 - Serial clock out (SCLK)
// pin 6 - Serial data out (DIN)
// pin 5 - Data/Command select (D/C)
// pin 4 - LCD chip select (CS)
// pin 3 - LCD reset (RST)
Adafruit_PCD8544 display = Adafruit_PCD8544(7, 6, 5, 4, 3);
//Int
int t = 2000;
void Demo()
{
SmeterHistoryFT817(16); //Reset
for (int i = 0;i<368;i++)
{
if (i >= 100 && i< 150)
{
SmeterHistoryFT817(11);
}
else
{
SmeterHistoryFT817(random(0,15));
}
delay(70);
}
}//Last Demo
void SmeterHistoryFT817(byte rssi)
//ToDo try to draw
{
const int UboundArr=168;
static byte Smeter[UboundArr];
static int count=0;
int i;
if (rssi==16){
count = 0 ;
for (i=0 ; i < UboundArr-i ; i++)
{
Smeter[i]=0;
}
display.clearDisplay();
display.display();
return;
}
if (count<UboundArr)
{
Smeter[count]=rssi;
count ++;
}
else
{
for (int i=1;i<UboundArr;i++)
{
Smeter[i-1]=Smeter[i];
}
Smeter[UboundArr-1]=rssi;
}
display.clearDisplay();//Clear Buffer
for ( i=0;i<count ;i++)
{
if (i > UboundArr/2)
{
//Lower
display.drawLine(i-UboundArr/2 ,display.height()-1,i-UboundArr/2,display.height()-1 - Smeter[i], BLACK);
}
else
{
//Upper
display.drawLine(i,display.height()/2,i,display.height()/2 -Smeter[i],BLACK);
}
}
display.display();//Show Now
}
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
display.begin();
// init done
// you can change the contrast around to adapt the display
// for the best viewing!
display.setContrast(50);
display.clearDisplay();
display.setCursor(0,12);
display.setTextSize(1);
display.println(F("((C))PA3BNX"));
display.setTextSize(2);
display.println(F("FT817"));
display.println(F("S-Meter"));
display.display();
delay(2000);
}
void loop() {
// put your main code here, to run repeatedly:
Demo();
delay(t);
}
-
Great idea! Thanks again for keeping this fascinating thread alive. :-+
-
Hello Every Body,
Here i send the arduino sketch for FT817 History Smeter and Buzzer and a picture of current project
LCD5110 2 buttons Buzzer and max232 connected to FT817 with Cat 62 cable
All works except the rs232 cat Max232 link rx decode
I have checked the arduino rx and tx pins with scope they give signal.
So something in sketch not okay I think
Some body out there to give me a hint ?
-
Hello Every Body
Nice podcast with unity and time zones from pa0ete.
nm knots km/h meter/sec time zones
https://www.youtube.com/watch?v=4PCt01xZuSg (https://www.youtube.com/watch?v=4PCt01xZuSg)
-
Hello Every Body
A new sounddoppler.exe on PI4WAG
Looks like there is new info from when I last saved this blog to read. I'll print again and read, though am wondering what the latest links are for the files, i.e. what is the latest PI4WAG or where ever site with the archive? I'm finding broken links to down sites.
Thanks in advance and interesting project to see the latest.
I did find this site... though doesn't look up to date: http://verbed.home.xs4all.nl/hamspace/pa3bnx/sounddoppler/ (http://verbed.home.xs4all.nl/hamspace/pa3bnx/sounddoppler/)
I also found this site reference which makes me think maybe the above link is up to date: https://www.qrz.com/db/pa3bnx (https://www.qrz.com/db/pa3bnx)
Thanks again, neat project and interesting work!